All functions:
  Elements:
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/libxslt/tests/runtest.c:83,1
    - Dst: strlen
      Src: /src/libxslt/tests/runtest.c:84,1
    - Dst: memset
      Src: /src/libxslt/tests/runtest.c:96,1
    - Dst: FindFirstFileA
      Src: /src/libxslt/tests/runtest.c:98,1
    - Dst: malloc
      Src: /src/libxslt/tests/runtest.c:102,1
    - Dst: FindClose
      Src: /src/libxslt/tests/runtest.c:104,1
    - Dst: strncpy
      Src: /src/libxslt/tests/runtest.c:107,1
    - Dst: strdup
      Src: /src/libxslt/tests/runtest.c:108,1
    - Dst: FindNextFileA
      Src: /src/libxslt/tests/runtest.c:112,1
    - Dst: realloc
      Src: /src/libxslt/tests/runtest.c:116,1
    - Dst: strncpy
      Src: /src/libxslt/tests/runtest.c:122,1
    - Dst: strdup
      Src: /src/libxslt/tests/runtest.c:123,1
    - Dst: FindClose
      Src: /src/libxslt/tests/runtest.c:131,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 4
    argNames:
    - pattern
    - flags
    - errfunc
    - pglob
    argTypes:
    - char*
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 133
    functionName: glob
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - strncpy
    - FindFirstFileA
    - strlen
    - FindClose
    - malloc
    - FindNextFileA
    - strdup
    - realloc
    - memset
    linkageType: ''
    returnType: int
    signature: "int glob(const char *pattern, ATTRIBUTE_UNUSED int flags,\n                ATTRIBUTE_UNUSED
      int errfunc(const char *epath, int eerrno),\n                glob_t *pglob)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/libxslt/tests/runtest.c:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - pglob
    argTypes:
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 146
    functionName: globfree
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void globfree(glob_t *pglob)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:161,1
    - Dst: exit
      Src: /src/libxslt/tests/runtest.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: fatalError
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - exit
    linkageType: ''
    returnType: int
    signature: int fatalError(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxslt/tests/runtest.c:179,1
    - Dst: vsnprintf
      Src: /src/libxslt/tests/runtest.c:180,1
    - Dst: va_end
      Src: /src/libxslt/tests/runtest.c:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 192
    functionName: testErrorHandler
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - va_end
    - vsnprintf
    - va_start
    linkageType: ''
    returnType: void
    signature: void testErrorHandler(void *ctx  ATTRIBUTE_UNUSED, const char *msg,
      ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: chanl
      Src: /src/libxslt/tests/runtest.c:237,1
    - Dst: chanl
      Src: /src/libxslt/tests/runtest.c:249,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 32
    argCount: 3
    argNames:
    - input
    - chanl
    - data
    argTypes:
    - xmlParserInputPtr
    - xmlGenericErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 250
    functionName: xmlParserPrintFileContextInternal
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - chanl
    linkageType: ''
    returnType: void
    signature: "void xmlParserPrintFileContextInternal(xmlParserInputPtr input ,\n\t\txmlGenericErrorFunc
      chanl, void *data )"
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:301,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:303,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:307,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:309,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:312,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:318,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:321,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:325,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:328,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:331,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:334,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:337,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:340,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:343,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:346,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:349,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:352,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:355,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:358,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:361,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:364,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:367,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:370,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:373,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:382,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:385,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:388,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:391,1
    - Dst: xmlStrlen
      Src: /src/libxslt/tests/runtest.c:398,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:400,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:402,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:404,1
    - Dst: xmlParserPrintFileContextInternal
      Src: /src/libxslt/tests/runtest.c:410,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:413,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:415,1
    - Dst: xmlParserPrintFileContextInternal
      Src: /src/libxslt/tests/runtest.c:416,1
    - Dst: xmlStrlen
      Src: /src/libxslt/tests/runtest.c:421,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:425,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:430,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 148
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - err
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 432
    functionName: testStructuredErrorHandler
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - xmlParserPrintFileContextInternal
    - testErrorHandler
    - xmlStrlen
    linkageType: ''
    returnType: void
    signature: void testStructuredErrorHandler(void *ctx ATTRIBUTE_UNUSED, const xmlError
      *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFormatError
      Src: /src/libxslt/tests/runtest.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - err
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 439
    functionName: testStructuredErrorHandler
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - xmlFormatError
    linkageType: ''
    returnType: void
    signature: void testStructuredErrorHandler(void *ctx ATTRIBUTE_UNUSED, const xmlError
      *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxslt/tests/runtest.c:445,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxslt/tests/runtest.c:449,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxslt/tests/runtest.c:449,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxslt/tests/runtest.c:450,1
    - Dst: xsltSetGenericErrorFunc
      Src: /src/libxslt/tests/runtest.c:451,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxslt/tests/runtest.c:452,1
    - Dst: exsltRegisterAll
      Src: /src/libxslt/tests/runtest.c:454,1
    - Dst: xsltRegisterTestModule
      Src: /src/libxslt/tests/runtest.c:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 457
    functionName: initializeLibxml2
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - exsltRegisterAll
    - xmlSetGenericErrorFunc
    - xsltRegisterTestModule
    - xmlSetExternalEntityLoader
    - xsltSetGenericErrorFunc
    - xmlSetStructuredErrorFunc
    - xmlInitParser
    - xmlGetExternalEntityLoader
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strrchr
      Src: /src/libxslt/tests/runtest.c:473,1
    - Dst: strlen
      Src: /src/libxslt/tests/runtest.c:474,1
    - Dst: snprintf
      Src: /src/libxslt/tests/runtest.c:475,1
    - Dst: strdup
      Src: /src/libxslt/tests/runtest.c:477,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:479,1
    - Dst: fatalError
      Src: /src/libxslt/tests/runtest.c:480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - filename
    - suffix
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 484
    functionName: changeSuffix
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - fatalError
    - strrchr
    - strlen
    - strdup
    - snprintf
    - fprintf
    linkageType: ''
    returnType: char
    signature: 'char *

      changeSuffix(const char *filename, const char *suffix)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxslt/tests/runtest.c:490,1
    - Dst: S_ISREG
      Src: /src/libxslt/tests/runtest.c:497,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 486
    functionDepth: 1
    functionLinenumber: 486
    functionLinenumberEnd: 502
    functionName: checkTestFile
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - stat
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int checkTestFile(const char *filename)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: unlink
      Src: /src/libxslt/tests/runtest.c:513,1
    - Dst: open
      Src: /src/libxslt/tests/runtest.c:516,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:518,1
    - Dst: write
      Src: /src/libxslt/tests/runtest.c:521,1
    - Dst: close
      Src: /src/libxslt/tests/runtest.c:522,1
    - Dst: stat
      Src: /src/libxslt/tests/runtest.c:526,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:529,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:533,1
    - Dst: open
      Src: /src/libxslt/tests/runtest.c:537,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:539,1
    - Dst: read
      Src: /src/libxslt/tests/runtest.c:543,1
    - Dst: memcmp
      Src: /src/libxslt/tests/runtest.c:548,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:553,1
    - Dst: close
      Src: /src/libxslt/tests/runtest.c:554,1
    - Dst: close
      Src: /src/libxslt/tests/runtest.c:559,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:561,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 51
    argCount: 3
    argNames:
    - filename
    - mem
    - size
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 564
    functionName: compareFileMem
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - unlink
    - write
    - open
    - stat
    - memcmp
    - close
    - read
    - fprintf
    linkageType: ''
    returnType: int
    signature: int compareFileMem(const char *filename, const char *mem, int size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:589,1
    - Dst: xsltNewLocale
      Src: /src/libxslt/tests/runtest.c:590,1
    - Dst: xsltStrxfrm
      Src: /src/libxslt/tests/runtest.c:601,1
    - Dst: xsltStrxfrm
      Src: /src/libxslt/tests/runtest.c:602,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/tests/runtest.c:603,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/runtest.c:604,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/runtest.c:605,1
    - Dst: xsltFreeLocale
      Src: /src/libxslt/tests/runtest.c:606,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:609,1
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:616,1
    - Dst: xmlReadFile
      Src: /src/libxslt/tests/runtest.c:620,1
    - Dst: xsltLoadStylesheetPI
      Src: /src/libxslt/tests/runtest.c:621,1
    - Dst: strdup
      Src: /src/libxslt/tests/runtest.c:625,1
    - Dst: changeSuffix
      Src: /src/libxslt/tests/runtest.c:630,1
    - Dst: checkTestFile
      Src: /src/libxslt/tests/runtest.c:631,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/runtest.c:632,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/tests/runtest.c:635,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/runtest.c:637,1
    - Dst: xmlReadFile
      Src: /src/libxslt/tests/runtest.c:639,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/tests/runtest.c:653,1
    - Dst: testErrorHandler
      Src: /src/libxslt/tests/runtest.c:656,1
    - Dst: xsltSaveResultToString
      Src: /src/libxslt/tests/runtest.c:658,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/runtest.c:659,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/tests/runtest.c:661,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/runtest.c:663,1
    - Dst: changeSuffix
      Src: /src/libxslt/tests/runtest.c:665,1
    - Dst: compareFileMem
      Src: /src/libxslt/tests/runtest.c:666,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:668,1
    - Dst: free
      Src: /src/libxslt/tests/runtest.c:672,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/runtest.c:673,1
    - Dst: changeSuffix
      Src: /src/libxslt/tests/runtest.c:675,1
    - Dst: compareFileMem
      Src: /src/libxslt/tests/runtest.c:676,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:678,1
    - Dst: free
      Src: /src/libxslt/tests/runtest.c:682,1
    - Dst: free
      Src: /src/libxslt/tests/runtest.c:685,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 70
    argCount: 2
    argNames:
    - filename
    - options
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 687
    functionName: xsltTest
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - testErrorHandler
    - xsltNewLocale
    - checkTestFile
    - xsltApplyStylesheet
    - xmlFree
    - strcmp
    - xsltSaveResultToString
    - xsltStrxfrm
    - xmlStrcmp
    - fprintf
    - xsltFreeStylesheet
    - free
    - xsltLoadStylesheetPI
    - xsltFreeLocale
    - xsltParseStylesheetDoc
    - compareFileMem
    - changeSuffix
    - xmlReadFile
    - strdup
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xsltTest(const char *filename, int options)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: getcwd
      Src: /src/libxslt/tests/runtest.c:767,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:768,1
    - Dst: chdir
      Src: /src/libxslt/tests/runtest.c:772,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:773,1
    - Dst: glob
      Src: /src/libxslt/tests/runtest.c:783,1
    - Dst: testDescPtr::func
      Src: /src/libxslt/tests/runtest.c:788,1
    - Dst: xmlResetLastError
      Src: /src/libxslt/tests/runtest.c:789,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:791,1
    - Dst: globfree
      Src: /src/libxslt/tests/runtest.c:798,1
    - Dst: testDescPtr::func
      Src: /src/libxslt/tests/runtest.c:803,1
    - Dst: chdir
      Src: /src/libxslt/tests/runtest.c:810,1
    - Dst: fprintf
      Src: /src/libxslt/tests/runtest.c:811,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 1
    argNames:
    - tst
    argTypes:
    - testDescPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 760
    functionDepth: 1
    functionLinenumber: 760
    functionLinenumberEnd: 817
    functionName: launchTests
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - testDescPtr::func
    - chdir
    - getcwd
    - xmlResetLastError
    - glob
    - globfree
    - fprintf
    linkageType: ''
    returnType: int
    signature: int launchTests(testDescPtr tst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/tests/runtest.c:830,1
    - Dst: launchTests
      Src: /src/libxslt/tests/runtest.c:831,1
    - Dst: printf
      Src: /src/libxslt/tests/runtest.c:836,1
    - Dst: printf
      Src: /src/libxslt/tests/runtest.c:838,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 822
    functionDepth: 0
    functionLinenumber: 822
    functionLinenumberEnd: 843
    functionName: runtest
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - launchTests
    - printf
    linkageType: ''
    returnType: int
    signature: int runtest(int i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: setvbuf
      Src: /src/libxslt/tests/runtest.c:851,1
    - Dst: setvbuf
      Src: /src/libxslt/tests/runtest.c:852,1
    - Dst: _set_output_format
      Src: /src/libxslt/tests/runtest.c:856,1
    - Dst: initializeLibxml2
      Src: /src/libxslt/tests/runtest.c:859,1
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:862,1
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:864,1
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:866,1
    - Dst: strcmp
      Src: /src/libxslt/tests/runtest.c:868,1
    - Dst: strstr
      Src: /src/libxslt/tests/runtest.c:872,1
    - Dst: runtest
      Src: /src/libxslt/tests/runtest.c:873,1
    - Dst: runtest
      Src: /src/libxslt/tests/runtest.c:881,1
    - Dst: printf
      Src: /src/libxslt/tests/runtest.c:886,1
    - Dst: printf
      Src: /src/libxslt/tests/runtest.c:890,1
    - Dst: xmlCleanupParser
      Src: /src/libxslt/tests/runtest.c:893,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 845
    functionDepth: 1
    functionLinenumber: 845
    functionLinenumberEnd: 896
    functionName: main
    functionSourceFile: /src/libxslt/tests/runtest.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - _set_output_format
    - initializeLibxml2
    - strcmp
    - setvbuf
    - printf
    - runtest
    - strstr
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/tests/testplugin.c:75,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:78,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/tests/testplugin.c:81,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:83,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:89,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/tests/testplugin.c:89,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/tests/testplugin.c:94,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:96,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/tests/testplugin.c:96,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:101,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/tests/testplugin.c:101,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:106,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 109
    functionName: xsltExtFunctionTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    - xsltGetExtData
    - xsltXPathGetTransformContext
    linkageType: ''
    returnType: void
    signature: "void xsltExtFunctionTest(xmlXPathParserContextPtr ctxt,\n                    int
      nargs ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:125,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:130,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/tests/testplugin.c:133,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:135,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:143,1
    - Dst: xsltNewElemPreComp
      Src: /src/libxslt/tests/testplugin.c:149,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - style
    - inst
    - function
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 151
    functionName: xsltExtElementPreCompTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewElemPreComp
    - xsltStyleGetExtData
    - xsltGenericDebug
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr xsltExtElementPreCompTest(xsltStylesheetPtr style,
      xmlNodePtr inst,\n                          xsltTransformFunction function)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:170,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/tests/testplugin.c:173,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:175,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:181,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:186,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:191,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:196,1
    - Dst: xmlNewComment
      Src: /src/libxslt/tests/testplugin.c:200,1
    - Dst: xmlAddChild
      Src: /src/libxslt/tests/testplugin.c:202,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 203
    functionName: xsltExtElementTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltTransformError
    - xsltGetExtData
    - xmlAddChild
    - xmlNewComment
    linkageType: ''
    returnType: void
    signature: "void xsltExtElementTest(xsltTransformContextPtr ctxt, xmlNodePtr node,\n
      \                  xmlNodePtr inst,\n                   xsltElemPreCompPtr comp
      ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:218,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/tests/testplugin.c:221,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:223,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:229,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:234,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 237
    functionName: xsltExtInitTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltStyleGetExtData
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltExtInitTest(xsltTransformContextPtr ctxt, const xmlChar * URI)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:253,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:258,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctxt
    - URI
    - data
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 264
    functionName: xsltExtShutdownTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: "void xsltExtShutdownTest(xsltTransformContextPtr ctxt,\n                    const
      xmlChar * URI, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:280,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 288
    functionName: xsltExtStyleInitTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: "void *\nxsltExtStyleInitTest(xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n
      \                    const xmlChar * URI)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/tests/testplugin.c:304,1
    - Dst: xsltTransformError
      Src: /src/libxslt/tests/testplugin.c:309,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/tests/testplugin.c:313,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - URI
    - data
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 315
    functionName: xsltExtStyleShutdownTest
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void xsltExtStyleShutdownTest(xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n
      \                        const xmlChar * URI, void *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFull
      Src: /src/libxslt/tests/testplugin.c:326,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/tests/testplugin.c:330,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/tests/testplugin.c:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 337
    functionName: PLUGINPUBFUN::xmlsoft_org_xslt_testplugin_init
    functionSourceFile: /src/libxslt/tests/testplugin.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleElement
    - xsltRegisterExtModuleFunction
    - xsltRegisterExtModuleFull
    linkageType: ''
    returnType: void
    signature: void PLUGINPUBFUN xmlsoft_org_xslt_testplugin_init(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXPathInit
      Src: /src/libxslt/tests/fuzz/testTargets.c:20,1
    - Dst: xsltFuzzXPathCleanup
      Src: /src/libxslt/tests/fuzz/testTargets.c:21,1
    - Dst: xsltFuzzXPath
      Src: /src/libxslt/tests/fuzz/testTargets.c:25,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/testTargets.c:27,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/testTargets.c:30,1
    - Dst: xsltFuzzXPathFreeObject
      Src: /src/libxslt/tests/fuzz/testTargets.c:35,1
    - Dst: xsltFuzzXPathCleanup
      Src: /src/libxslt/tests/fuzz/testTargets.c:36,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 39
    functionName: testXPath
    functionSourceFile: /src/libxslt/tests/fuzz/testTargets.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXPathCleanup
    - xsltFuzzXPathFreeObject
    - xsltFuzzXPath
    - fprintf
    - xsltFuzzXPathInit
    linkageType: ''
    returnType: int
    signature: int testXPath(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXsltInit
      Src: /src/libxslt/tests/fuzz/testTargets.c:61,1
    - Dst: xsltFuzzXsltCleanup
      Src: /src/libxslt/tests/fuzz/testTargets.c:62,1
    - Dst: xsltFuzzXslt
      Src: /src/libxslt/tests/fuzz/testTargets.c:66,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/testTargets.c:68,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/tests/fuzz/testTargets.c:70,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/testTargets.c:71,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/testTargets.c:76,1
    - Dst: xsltFuzzXsltCleanup
      Src: /src/libxslt/tests/fuzz/testTargets.c:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 80
    functionName: testXslt
    functionSourceFile: /src/libxslt/tests/fuzz/testTargets.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXsltCleanup
    - xmlFree
    - xsltFuzzXsltInit
    - xmlStrcmp
    - fprintf
    - xsltFuzzXslt
    linkageType: ''
    returnType: int
    signature: int testXslt(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: testXPath
      Src: /src/libxslt/tests/fuzz/testTargets.c:86,1
    - Dst: testXslt
      Src: /src/libxslt/tests/fuzz/testTargets.c:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 92
    functionName: main
    functionSourceFile: /src/libxslt/tests/fuzz/testTargets.c
    functionUses: 0
    functionsReached:
    - testXslt
    - testXPath
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXsltInit
      Src: /src/libxslt/tests/fuzz/xslt.c:13,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 14
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxslt/tests/fuzz/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXsltInit
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc_p ATTRIBUTE_UNUSED,\n                     char
      ***argv_p ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXslt
      Src: /src/libxslt/tests/fuzz/xslt.c:18,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/xslt.c:19,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 16
    functionDepth: 1
    functionLinenumber: 16
    functionLinenumberEnd: 22
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxslt/tests/fuzz/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXslt
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNoNetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/genSeed.c:55,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/tests/fuzz/genSeed.c:60,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/tests/fuzz/genSeed.c:61,1
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxslt/tests/fuzz/genSeed.c:67,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:69,1
    - Dst: xmlFreeInputStream
      Src: /src/libxslt/tests/fuzz/genSeed.c:70,1
    - Dst: xmlStrdup
      Src: /src/libxslt/tests/fuzz/genSeed.c:75,1
    - Dst: xmlBufContent
      Src: /src/libxslt/tests/fuzz/genSeed.c:75,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:77,1
    - Dst: xmlFreeInputStream
      Src: /src/libxslt/tests/fuzz/genSeed.c:78,1
    - Dst: xmlFreeInputStream
      Src: /src/libxslt/tests/fuzz/genSeed.c:82,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/tests/fuzz/genSeed.c:84,1
    - Dst: xmlNoNetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/genSeed.c:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 3
    argNames:
    - URL
    - ID
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 87
    functionName: fuzzEntityRecorder
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlBufContent
    - xmlStrdup
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlParserInputBufferGrow
    - fprintf
    - xmlNoNetExternalEntityLoader
    - xmlHashCreate
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: xmlParserInputPtr fuzzEntityRecorder(const char *URL, const char *ID,
      xmlParserCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/tests/fuzz/genSeed.c:92,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/genSeed.c:93,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/genSeed.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - out
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionName: fuzzRecorderInit
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlHashCreate
    - xmlSetExternalEntityLoader
    - xmlGetExternalEntityLoader
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderInit(FILE *out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzWriteString
      Src: /src/libxslt/tests/fuzz/genSeed.c:100,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxslt/tests/fuzz/genSeed.c:101,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/genSeed.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - entry
    - file
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: fuzzRecorderWriteAndFree
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlFuzzWriteString
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderWriteAndFree(void *entry, const xmlChar *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxslt/tests/fuzz/genSeed.c:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionName: fuzzRecorderWrite
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderWrite(const char *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/genSeed.c:113,1
    - Dst: xmlHashFree
      Src: /src/libxslt/tests/fuzz/genSeed.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 119
    functionName: fuzzRecorderCleanup
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlSetExternalEntityLoader
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderCleanup()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxslt/tests/fuzz/genSeed.c:130,1
    - Dst: strcmp
      Src: /src/libxslt/tests/fuzz/genSeed.c:132,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:133,1
    - Dst: strncat
      Src: /src/libxslt/tests/fuzz/genSeed.c:136,1
    - Dst: snprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:139,1
    - Dst: snprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:141,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:145,1
    - Dst: stat
      Src: /src/libxslt/tests/fuzz/genSeed.c:150,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxslt/tests/fuzz/genSeed.c:154,1
    - Dst: fuzzRecorderInit
      Src: /src/libxslt/tests/fuzz/genSeed.c:156,1
    - Dst: xsltParseStylesheetFile
      Src: /src/libxslt/tests/fuzz/genSeed.c:158,1
    - Dst: xmlReadFile
      Src: /src/libxslt/tests/fuzz/genSeed.c:159,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/genSeed.c:160,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/tests/fuzz/genSeed.c:160,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/genSeed.c:161,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/tests/fuzz/genSeed.c:162,1
    - Dst: fuzzRecorderWrite
      Src: /src/libxslt/tests/fuzz/genSeed.c:164,1
    - Dst: fuzzRecorderWrite
      Src: /src/libxslt/tests/fuzz/genSeed.c:165,1
    - Dst: fuzzRecorderCleanup
      Src: /src/libxslt/tests/fuzz/genSeed.c:166,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - sheetFile
    - out
    argTypes:
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 169
    functionName: processXslt
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - fuzzRecorderInit
    - strlen
    - fuzzRecorderWrite
    - strcmp
    - xsltParseStylesheetFile
    - fuzzRecorderCleanup
    - stat
    - xmlReadFile
    - strncat
    - snprintf
    - xsltApplyStylesheet
    - fprintf
    - xmlFreeDoc
    - xmlFuzzWriteInt
    - xsltFreeStylesheet
    linkageType: ''
    returnType: int
    signature: int processXslt(const char *sheetFile, FILE *out)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: glob
      Src: /src/libxslt/tests/fuzz/genSeed.c:178,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:182,1
    - Dst: stat
      Src: /src/libxslt/tests/fuzz/genSeed.c:199,1
    - Dst: S_ISREG
      Src: /src/libxslt/tests/fuzz/genSeed.c:199,1
    - Dst: xmlCharStrdup
      Src: /src/libxslt/tests/fuzz/genSeed.c:202,1
    - Dst: xmlCharStrdup
      Src: /src/libxslt/tests/fuzz/genSeed.c:203,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:205,1
    - Dst: dirname
      Src: /src/libxslt/tests/fuzz/genSeed.c:209,1
    - Dst: basename
      Src: /src/libxslt/tests/fuzz/genSeed.c:210,1
    - Dst: snprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:212,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:215,1
    - Dst: fopen
      Src: /src/libxslt/tests/fuzz/genSeed.c:219,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:221,1
    - Dst: chdir
      Src: /src/libxslt/tests/fuzz/genSeed.c:225,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:226,1
    - Dst: processFile
      Src: /src/libxslt/tests/fuzz/genSeed.c:231,1
    - Dst: chdir
      Src: /src/libxslt/tests/fuzz/genSeed.c:234,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:235,1
    - Dst: fclose
      Src: /src/libxslt/tests/fuzz/genSeed.c:240,1
    - Dst: unlink
      Src: /src/libxslt/tests/fuzz/genSeed.c:242,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/genSeed.c:246,1
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/genSeed.c:247,1
    - Dst: globfree
      Src: /src/libxslt/tests/fuzz/genSeed.c:250,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 64
    argCount: 1
    argNames:
    - pattern
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 252
    functionName: processPattern
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    - unlink
    - xmlFree
    - dirname
    - chdir
    - fopen
    - glob
    - fclose
    - stat
    - globfree
    - snprintf
    - basename
    - fprintf
    - processFile
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int processPattern(const char *pattern)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:259,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:262,1
    - Dst: processPattern
      Src: /src/libxslt/tests/fuzz/genSeed.c:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - testsDir
    - subDir
    - docDir
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 268
    functionName: processTestDir
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - processPattern
    - fprintf
    - snprintf
    linkageType: ''
    returnType: int
    signature: int processTestDir(const char *testsDir, const char *subDir, const
      char *docDir)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: processTestDir
      Src: /src/libxslt/tests/fuzz/genSeed.c:272,1
    - Dst: processTestDir
      Src: /src/libxslt/tests/fuzz/genSeed.c:273,1
    - Dst: processTestDir
      Src: /src/libxslt/tests/fuzz/genSeed.c:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - testsDir
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 270
    functionDepth: 1
    functionLinenumber: 270
    functionLinenumberEnd: 277
    functionName: processTests
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - processTestDir
    linkageType: ''
    returnType: int
    signature: int processTests(const char *testsDir)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:432,1
    - Dst: fopen
      Src: /src/libxslt/tests/fuzz/genSeed.c:437,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxslt/tests/fuzz/genSeed.c:443,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxslt/tests/fuzz/genSeed.c:444,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxslt/tests/fuzz/genSeed.c:445,1
    - Dst: fclose
      Src: /src/libxslt/tests/fuzz/genSeed.c:447,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 451
    functionName: processXPath
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlFuzzWriteString
    - fopen
    - fclose
    - snprintf
    - xmlFuzzWriteInt
    linkageType: ''
    returnType: int
    signature: int processXPath(const char *testsDir ATTRIBUTE_UNUSED)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:460,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxslt/tests/fuzz/genSeed.c:464,1
    - Dst: xsltSetGenericErrorFunc
      Src: /src/libxslt/tests/fuzz/genSeed.c:465,1
    - Dst: strcmp
      Src: /src/libxslt/tests/fuzz/genSeed.c:468,1
    - Dst: strcmp
      Src: /src/libxslt/tests/fuzz/genSeed.c:470,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:473,1
    - Dst: getcwd
      Src: /src/libxslt/tests/fuzz/genSeed.c:478,1
    - Dst: fprintf
      Src: /src/libxslt/tests/fuzz/genSeed.c:479,1
    - Dst: process
      Src: /src/libxslt/tests/fuzz/genSeed.c:483,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 486
    functionName: main
    functionSourceFile: /src/libxslt/tests/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlSetGenericErrorFunc
    - getcwd
    - strcmp
    - xsltSetGenericErrorFunc
    - process
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc, const char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStopParser
      Src: /src/libxslt/tests/fuzz/fuzz.c:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: xsltFuzzXmlErrorFunc
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlStopParser
    linkageType: ''
    returnType: void
    signature: void xsltFuzzXmlErrorFunc(void *vctxt, const char *msg ATTRIBUTE_UNUSED,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: xsltFuzzXsltErrorFunc
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xsltFuzzXsltErrorFunc(void *vctxt ATTRIBUTE_UNUSED,\n                      const
      char *msg ATTRIBUTE_UNUSED, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxslt/tests/fuzz/fuzz.c:53,1
    - Dst: xmlInitParser
      Src: /src/libxslt/tests/fuzz/fuzz.c:56,1
    - Dst: xsltInit
      Src: /src/libxslt/tests/fuzz/fuzz.c:57,1
    - Dst: exsltRegisterAll
      Src: /src/libxslt/tests/fuzz/fuzz.c:58,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxslt/tests/fuzz/fuzz.c:61,1
    - Dst: xsltSetGenericErrorFunc
      Src: /src/libxslt/tests/fuzz/fuzz.c:62,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:70,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:72,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 76
    functionName: xsltFuzzInit
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - exsltRegisterAll
    - xmlSetGenericErrorFunc
    - xsltInit
    - xsltNewSecurityPrefs
    - xsltSetGenericErrorFunc
    - xsltSetSecurityPrefs
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xsltFuzzInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzInit
      Src: /src/libxslt/tests/fuzz/fuzz.c:115,1
    - Dst: xsltNewStylesheet
      Src: /src/libxslt/tests/fuzz/fuzz.c:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: xsltFuzzXPathInit
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xsltFuzzInit
    - xsltNewStylesheet
    linkageType: ''
    returnType: int
    signature: int xsltFuzzXPathInit(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxslt/tests/fuzz/fuzz.c:129,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxslt/tests/fuzz/fuzz.c:131,1
    - Dst: xmlFuzzReadString
      Src: /src/libxslt/tests/fuzz/fuzz.c:132,1
    - Dst: xmlFuzzReadString
      Src: /src/libxslt/tests/fuzz/fuzz.c:133,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/tests/fuzz/fuzz.c:136,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/tests/fuzz/fuzz.c:139,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:141,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:142,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:143,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/tests/fuzz/fuzz.c:146,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/fuzz.c:148,1
    - Dst: xsltSetCtxtSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:151,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/tests/fuzz/fuzz.c:162,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:171,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:172,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:173,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:176,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:177,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:178,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:179,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:180,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:181,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:182,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:183,1
    - Dst: xmlXPathRegisterVariable
      Src: /src/libxslt/tests/fuzz/fuzz.c:186,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/tests/fuzz/fuzz.c:186,1
    - Dst: xmlXPathRegisterVariable
      Src: /src/libxslt/tests/fuzz/fuzz.c:187,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/tests/fuzz/fuzz.c:187,1
    - Dst: xmlXPathRegisterVariable
      Src: /src/libxslt/tests/fuzz/fuzz.c:188,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/tests/fuzz/fuzz.c:189,1
    - Dst: xmlXPathRegisterVariable
      Src: /src/libxslt/tests/fuzz/fuzz.c:190,1
    - Dst: xmlXPathEval
      Src: /src/libxslt/tests/fuzz/fuzz.c:192,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/tests/fuzz/fuzz.c:195,1
    - Dst: xmlFuzzMemSetLimit
      Src: /src/libxslt/tests/fuzz/fuzz.c:201,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/tests/fuzz/fuzz.c:207,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/tests/fuzz/fuzz.c:208,1
    - Dst: xmlFuzzMemSetLimit
      Src: /src/libxslt/tests/fuzz/fuzz.c:211,1
    - Dst: xmlXPathRegisteredNsCleanup
      Src: /src/libxslt/tests/fuzz/fuzz.c:212,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxslt/tests/fuzz/fuzz.c:213,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 56
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 216
    functionName: xsltFuzzXPath
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewBoolean
    - xmlReadMemory
    - xmlFuzzReadInt
    - xmlFuzzMemSetLimit
    - xmlXPathFreeCompExpr
    - xsltNewTransformContext
    - xmlNewNs
    - xmlFuzzReadString
    - xmlXPathCtxtCompile
    - xmlDocGetRootElement
    - xsltSetCtxtSecurityPrefs
    - xmlFuzzDataCleanup
    - xmlXPathNewFloat
    - xmlXPathCompiledEval
    - xmlXPathNewString
    - xmlXPathRegisterNs
    - xmlFuzzDataInit
    - xmlXPathRegisteredNsCleanup
    - xmlXPathRegisterVariable
    - xmlXPathEval
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xsltFuzzXPath(const char *data, size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/tests/fuzz/fuzz.c:220,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/tests/fuzz/fuzz.c:225,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/fuzz.c:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 229
    functionName: xsltFuzzXPathFreeObject
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xsltFreeTransformContext
    - xmlXPathFreeObject
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xsltFuzzXPathFreeObject(xmlXPathObjectPtr obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:233,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/tests/fuzz/fuzz.c:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 237
    functionName: xsltFuzzXPathCleanup
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xsltFreeSecurityPrefs
    - xsltFreeStylesheet
    linkageType: ''
    returnType: void
    signature: void xsltFuzzXPathCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzInit
      Src: /src/libxslt/tests/fuzz/fuzz.c:256,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxslt/tests/fuzz/fuzz.c:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 259
    functionName: xsltFuzzXsltInit
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - xsltFuzzInit
    - xmlSetExternalEntityLoader
    linkageType: ''
    returnType: int
    signature: int xsltFuzzXsltInit(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxslt/tests/fuzz/fuzz.c:273,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxslt/tests/fuzz/fuzz.c:274,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxslt/tests/fuzz/fuzz.c:276,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxslt/tests/fuzz/fuzz.c:277,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxslt/tests/fuzz/fuzz.c:278,1
    - Dst: xmlFuzzSecondaryEntity
      Src: /src/libxslt/tests/fuzz/fuzz.c:279,1
    - Dst: xmlFuzzSecondaryUrl
      Src: /src/libxslt/tests/fuzz/fuzz.c:280,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/tests/fuzz/fuzz.c:284,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/tests/fuzz/fuzz.c:288,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/tests/fuzz/fuzz.c:292,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:294,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:295,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:296,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:297,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:298,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:299,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:300,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:301,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:302,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:303,1
    - Dst: xmlFuzzMemSetLimit
      Src: /src/libxslt/tests/fuzz/fuzz.c:306,1
    - Dst: xsltNewStylesheet
      Src: /src/libxslt/tests/fuzz/fuzz.c:307,1
    - Dst: xsltParseStylesheetUser
      Src: /src/libxslt/tests/fuzz/fuzz.c:313,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/tests/fuzz/fuzz.c:317,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:319,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:320,1
    - Dst: xmlNewNs
      Src: /src/libxslt/tests/fuzz/fuzz.c:321,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/tests/fuzz/fuzz.c:324,1
    - Dst: xsltSetCtxtSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:327,1
    - Dst: xsltApplyStylesheetUser
      Src: /src/libxslt/tests/fuzz/fuzz.c:333,1
    - Dst: xsltSaveResultToString
      Src: /src/libxslt/tests/fuzz/fuzz.c:335,1
    - Dst: xmlFuzzMemSetLimit
      Src: /src/libxslt/tests/fuzz/fuzz.c:338,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/fuzz.c:339,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/tests/fuzz/fuzz.c:340,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/tests/fuzz/fuzz.c:341,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/fuzz.c:342,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/tests/fuzz/fuzz.c:343,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxslt/tests/fuzz/fuzz.c:344,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 72
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 347
    functionName: xsltFuzzXslt
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - xsltFreeTransformContext
    - xmlFuzzMainUrl
    - xmlReadMemory
    - xmlFuzzReadEntities
    - xmlFuzzReadInt
    - xmlFuzzMemSetLimit
    - xsltNewTransformContext
    - xsltSaveResultToString
    - xmlNewNs
    - xmlDocGetRootElement
    - xsltFreeStylesheet
    - xsltNewStylesheet
    - xsltSetCtxtSecurityPrefs
    - xmlFuzzDataCleanup
    - xmlFuzzDataInit
    - xsltParseStylesheetUser
    - xmlFuzzMainEntity
    - xsltApplyStylesheetUser
    - xmlFuzzSecondaryUrl
    - xmlFreeDoc
    - xmlFuzzSecondaryEntity
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltFuzzXslt(const char *data, size_t size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeSecurityPrefs
      Src: /src/libxslt/tests/fuzz/fuzz.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 353
    functionName: xsltFuzzXsltCleanup
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xsltFreeSecurityPrefs
    linkageType: ''
    returnType: void
    signature: void xsltFuzzXsltCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionName: xmlFuzzErrorFunc
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlFuzzErrorFunc(void *ctx ATTRIBUTE_UNUSED, const char *msg
      ATTRIBUTE_UNUSED,\n                 ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/libxslt/tests/fuzz/fuzz.c:418,1
    - Dst: malloc
      Src: /src/libxslt/tests/fuzz/fuzz.c:424,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 425
    functionName: xmlFuzzMalloc
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - malloc
    - abort
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlFuzzMalloc(size_t size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/libxslt/tests/fuzz/fuzz.c:432,1
    - Dst: realloc
      Src: /src/libxslt/tests/fuzz/fuzz.c:438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 439
    functionName: xmlFuzzRealloc
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - abort
    - realloc
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlFuzzRealloc(void *ptr, size_t size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxslt/tests/fuzz/fuzz.c:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 444
    functionName: xmlFuzzMemSetup
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xmlMemSetup
    linkageType: ''
    returnType: void
    signature: void xmlFuzzMemSetup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - limit
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 450
    functionName: xmlFuzzMemSetLimit
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlFuzzMemSetLimit(size_t limit)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/tests/fuzz/fuzz.c:464,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/tests/fuzz/fuzz.c:467,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 472
    functionName: xmlFuzzDataInit
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: void xmlFuzzDataInit(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/tests/fuzz/fuzz.c:481,1
    - Dst: xmlHashFree
      Src: /src/libxslt/tests/fuzz/fuzz.c:482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 483
    functionName: xmlFuzzDataCleanup
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFuzzDataCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:498,1
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - out
    - v
    - size
    argTypes:
    - FILE*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 507
    functionName: xmlFuzzWriteInt
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - putc
    linkageType: ''
    returnType: void
    signature: void xmlFuzzWriteInt(FILE *out, size_t v, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - size
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 527
    functionName: xmlFuzzReadInt
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t xmlFuzzReadInt(int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 544
    functionName: xmlFuzzReadRemaining
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzReadRemaining(size_t *size)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:559,1
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:561,1
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:563,1
    - Dst: putc
      Src: /src/libxslt/tests/fuzz/fuzz.c:564,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - out
    - str
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 565
    functionName: xmlFuzzWriteString
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - putc
    linkageType: ''
    returnType: void
    signature: void xmlFuzzWriteString(FILE *out, const char *str)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 617
    functionName: xmlFuzzReadString
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzReadString(size_t *size)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzReadString
      Src: /src/libxslt/tests/fuzz/fuzz.c:634,1
    - Dst: xmlFuzzReadString
      Src: /src/libxslt/tests/fuzz/fuzz.c:637,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/tests/fuzz/fuzz.c:640,1
    - Dst: xmlMalloc
      Src: /src/libxslt/tests/fuzz/fuzz.c:641,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/tests/fuzz/fuzz.c:647,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 625
    functionDepth: 1
    functionLinenumber: 625
    functionLinenumberEnd: 660
    functionName: xmlFuzzReadEntities
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlHashLookup
    - xmlFuzzReadString
    - xmlHashAddEntry
    linkageType: ''
    returnType: void
    signature: void xmlFuzzReadEntities(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 670
    functionName: xmlFuzzMainUrl
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzMainUrl(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 684
    functionName: xmlFuzzMainEntity
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzMainEntity(size_t *size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionName: xmlFuzzSecondaryUrl
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzSecondaryUrl(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 708
    functionName: xmlFuzzSecondaryEntity
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzSecondaryEntity(size_t *size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxslt/tests/fuzz/fuzz.c:723,1
    - Dst: xmlParserInputBufferCreateMem
      Src: /src/libxslt/tests/fuzz/fuzz.c:727,1
    - Dst: xmlNewIOInputStream
      Src: /src/libxslt/tests/fuzz/fuzz.c:732,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - URL
    - ATTRIBUTE_UNUSED
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 733
    functionName: xmlFuzzEntityLoader
    functionSourceFile: /src/libxslt/tests/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlParserInputBufferCreateMem
    - xmlNewIOInputStream
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr xmlFuzzEntityLoader(const char *URL, const char
      *ID ATTRIBUTE_UNUSED,\n                    xmlParserCtxtPtr ctxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXPathInit
      Src: /src/libxslt/tests/fuzz/xpath.c:12,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 9
    functionDepth: 3
    functionLinenumber: 9
    functionLinenumberEnd: 13
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxslt/tests/fuzz/xpath.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXPathInit
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc_p ATTRIBUTE_UNUSED,\n                     char
      ***argv_p ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFuzzXPath
      Src: /src/libxslt/tests/fuzz/xpath.c:17,1
    - Dst: xsltFuzzXPathFreeObject
      Src: /src/libxslt/tests/fuzz/xpath.c:18,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 15
    functionDepth: 2
    functionLinenumber: 15
    functionLinenumberEnd: 21
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxslt/tests/fuzz/xpath.c
    functionUses: 0
    functionsReached:
    - xsltFuzzXPathFreeObject
    - xsltFuzzXPath
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: IS_TZO_CHAR
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_TZO_CHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 114
    functionName: VALID_ALWAYS
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ALWAYS(num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mon
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: VALID_MONTH
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MONTH(mon)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - day
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: VALID_DAY
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DAY(day)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - hr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: VALID_HOUR
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_HOUR(hr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - min
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: VALID_MIN
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MIN(min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sec
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: VALID_SEC
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_SEC(sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - tzo
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: VALID_TZO
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_TZO(tzo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: IS_LEAP
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_LEAP(y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - yr
    - ','
    - mon
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: MAX_DAYINMONTH
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX_DAYINMONTH(yr,mon)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: VALID_MDAY
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MDAY(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionName: VALID_DATE
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DATE(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: VALID_TIME
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_TIME(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: VALID_DATETIME
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DATETIME(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - day
    - ','
    - month
    - ','
    - year
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 169
    functionName: DAY_IN_YEAR
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DAY_IN_YEAR(day, month, year)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:229,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - exsltDateValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 234
    functionName: _exsltDateParseGYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    linkageType: ''
    returnType: int
    signature: int _exsltDateParseGYear (exsltDateValPtr dt, const xmlChar **str)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - cur
    - end
    - yr
    argTypes:
    - xmlChar**
    - xmlChar*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 271
    functionName: exsltFormatGYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltFormatGYear(xmlChar **cur, xmlChar *end, long yr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - func
    - ','
    - invalid
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 298
    functionName: PARSE_2_DIGITS
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_2_DIGITS(num, cur, func, invalid)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - cur
    - end
    - num
    argTypes:
    - xmlChar**
    - xmlChar*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 315
    functionName: exsltFormat2Digits
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltFormat2Digits(xmlChar **cur, xmlChar *end, unsigned int num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - invalid
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 342
    functionName: PARSE_FLOAT
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_FLOAT(num, cur, invalid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:360,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - exsltDateValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 372
    functionName: _exsltDateParseGMonth
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - PARSE_2_DIGITS
    - xsltGenericDebug
    linkageType: ''
    returnType: int
    signature: int _exsltDateParseGMonth (exsltDateValPtr dt, const xmlChar **str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:391,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - exsltDateValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 403
    functionName: _exsltDateParseGDay
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - PARSE_2_DIGITS
    - xsltGenericDebug
    linkageType: ''
    returnType: int
    signature: int _exsltDateParseGDay (exsltDateValPtr dt, const xmlChar **str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exsltFormatGYear
      Src: /src/libxslt/libexslt/date.c:417,1
    - Dst: exsltFormat2Digits
      Src: /src/libxslt/libexslt/date.c:420,1
    - Dst: exsltFormat2Digits
      Src: /src/libxslt/libexslt/date.c:423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - cur
    - end
    - dt
    argTypes:
    - xmlChar**
    - xmlChar*
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 414
    functionDepth: 1
    functionLinenumber: 414
    functionLinenumberEnd: 424
    functionName: exsltFormatYearMonthDay
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormat2Digits
    - exsltFormatGYear
    linkageType: ''
    returnType: void
    signature: void exsltFormatYearMonthDay(xmlChar **cur, xmlChar *end, const exsltDateValPtr
      dt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:445,1
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:456,1
    - Dst: PARSE_FLOAT
      Src: /src/libxslt/libexslt/date.c:464,1
    - Dst: VALID_TIME
      Src: /src/libxslt/libexslt/date.c:468,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:474,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - exsltDateValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 480
    functionName: _exsltDateParseTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - PARSE_FLOAT
    - PARSE_2_DIGITS
    - xsltGenericDebug
    - VALID_TIME
    linkageType: ''
    returnType: int
    signature: int _exsltDateParseTime (exsltDateValPtr dt, const xmlChar **str)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:521,1
    - Dst: PARSE_2_DIGITS
      Src: /src/libxslt/libexslt/date.c:531,1
    - Dst: VALID_TZO
      Src: /src/libxslt/libexslt/date.c:539,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:551,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - exsltDateValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 557
    functionName: _exsltDateParseTimeZone
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - VALID_TZO
    - PARSE_2_DIGITS
    - xsltGenericDebug
    linkageType: ''
    returnType: int
    signature: int _exsltDateParseTimeZone (exsltDateValPtr dt, const xmlChar **str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltFormat2Digits
      Src: /src/libxslt/libexslt/date.c:579,1
    - Dst: exsltFormat2Digits
      Src: /src/libxslt/libexslt/date.c:582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - cur
    - end
    - tzo
    argTypes:
    - xmlChar**
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 584
    functionName: exsltFormatTimeZone
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormat2Digits
    linkageType: ''
    returnType: void
    signature: void exsltFormatTimeZone(xmlChar **cur, xmlChar *end, int tzo)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/date.c:605,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/date.c:607,1
    - Dst: memset
      Src: /src/libxslt/libexslt/date.c:611,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - type
    argTypes:
    - exsltDateType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 620
    functionName: exsltDateCreateDate
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: exsltDateValPtr
    signature: exsltDateValPtr exsltDateCreateDate (exsltDateType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - date
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 634
    functionName: exsltDateFreeDate
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void exsltDateFreeDate (exsltDateValPtr date)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/date.c:648,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/date.c:650,1
    - Dst: memset
      Src: /src/libxslt/libexslt/date.c:654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 657
    functionName: exsltDateCreateDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: exsltDateDurValPtr
    signature: exsltDateDurValPtr exsltDateCreateDuration (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - duration
    argTypes:
    - exsltDateDurValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 665
    functionDepth: 0
    functionLinenumber: 665
    functionLinenumberEnd: 671
    functionName: exsltDateFreeDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void exsltDateFreeDuration (exsltDateDurValPtr duration)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCreateDate
      Src: /src/libxslt/libexslt/date.c:691,1
    - Dst: getenv
      Src: /src/libxslt/libexslt/date.c:699,1
    - Dst: strtol
      Src: /src/libxslt/libexslt/date.c:702,1
    - Dst: gmtime_s
      Src: /src/libxslt/libexslt/date.c:705,1
    - Dst: gmtime_r
      Src: /src/libxslt/libexslt/date.c:709,1
    - Dst: gmtime
      Src: /src/libxslt/libexslt/date.c:712,1
    - Dst: time
      Src: /src/libxslt/libexslt/date.c:723,1
    - Dst: localtime_s
      Src: /src/libxslt/libexslt/date.c:726,1
    - Dst: localtime_r
      Src: /src/libxslt/libexslt/date.c:728,1
    - Dst: localtime
      Src: /src/libxslt/libexslt/date.c:730,1
    - Dst: gmtime_s
      Src: /src/libxslt/libexslt/date.c:747,1
    - Dst: gmtime_r
      Src: /src/libxslt/libexslt/date.c:749,1
    - Dst: gmtime
      Src: /src/libxslt/libexslt/date.c:751,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 63
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 789
    functionName: exsltDateCurrent
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - localtime
    - strtol
    - gmtime_r
    - gmtime
    - localtime_s
    - exsltDateCreateDate
    - time
    - localtime_r
    - getenv
    - gmtime_s
    linkageType: ''
    returnType: exsltDateValPtr
    signature: exsltDateValPtr exsltDateCurrent (void)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCreateDate
      Src: /src/libxslt/libexslt/date.c:823,1
    - Dst: _exsltDateParseGDay
      Src: /src/libxslt/libexslt/date.c:837,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:841,1
    - Dst: _exsltDateParseGMonth
      Src: /src/libxslt/libexslt/date.c:849,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:860,1
    - Dst: _exsltDateParseGDay
      Src: /src/libxslt/libexslt/date.c:865,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:869,1
    - Dst: _exsltDateParseTime
      Src: /src/libxslt/libexslt/date.c:879,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:882,1
    - Dst: _exsltDateParseGYear
      Src: /src/libxslt/libexslt/date.c:889,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:894,1
    - Dst: _exsltDateParseGMonth
      Src: /src/libxslt/libexslt/date.c:900,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:905,1
    - Dst: _exsltDateParseGDay
      Src: /src/libxslt/libexslt/date.c:911,1
    - Dst: VALID_DATE
      Src: /src/libxslt/libexslt/date.c:912,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxslt/libexslt/date.c:916,1
    - Dst: _exsltDateParseTime
      Src: /src/libxslt/libexslt/date.c:923,1
    - Dst: _exsltDateParseTimeZone
      Src: /src/libxslt/libexslt/date.c:927,1
    - Dst: VALID_DATETIME
      Src: /src/libxslt/libexslt/date.c:928,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:937,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 91
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 939
    functionName: exsltDateParse
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - _exsltDateParseTimeZone
    - VALID_DATETIME
    - _exsltDateParseGDay
    - exsltDateFreeDate
    - exsltDateCreateDate
    - VALID_DATE
    - _exsltDateParseTime
    - _exsltDateParseGYear
    - _exsltDateParseGMonth
    - RETURN_TYPE_IF_VALID
    linkageType: ''
    returnType: exsltDateValPtr
    signature: exsltDateValPtr exsltDateParse (const xmlChar *dateTime)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 806
    functionDepth: 0
    functionLinenumber: 806
    functionLinenumberEnd: 816
    functionName: RETURN_TYPE_IF_VALID
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RETURN_TYPE_IF_VALID(t)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCreateDuration
      Src: /src/libxslt/libexslt/date.c:974,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:1098,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:1106,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 124
    argCount: 1
    argNames:
    - duration
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 949
    functionDepth: 1
    functionLinenumber: 949
    functionLinenumberEnd: 1108
    functionName: exsltDateParseDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDuration
    - xsltGenericDebug
    - exsltDateCreateDuration
    linkageType: ''
    returnType: exsltDateDurValPtr
    signature: exsltDateDurValPtr exsltDateParseDuration (const xmlChar *duration)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - cur
    - end
    - num
    argTypes:
    - xmlChar**
    - xmlChar*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1110
    functionDepth: 0
    functionLinenumber: 1110
    functionLinenumberEnd: 1126
    functionName: exsltFormatLong
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltFormatLong(xmlChar **cur, xmlChar *end, long num)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - cur
    - end
    - nsecs
    argTypes:
    - xmlChar**
    - xmlChar*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1144
      start: 1128
    functionDepth: 0
    functionLinenumber: 1128
    functionLinenumberEnd: 1144
    functionName: exsltFormatNanoseconds
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltFormatNanoseconds(xmlChar **cur, xmlChar *end, long nsecs)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1166,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1194,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1200,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1206,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:1211,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:1214,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1228,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1237,1
    - Dst: exsltFormatLong
      Src: /src/libxslt/libexslt/date.c:1243,1
    - Dst: exsltFormatNanoseconds
      Src: /src/libxslt/libexslt/date.c:1244,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1252,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 71
    argCount: 1
    argNames:
    - dur
    argTypes:
    - exsltDateDurValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1154
    functionDepth: 1
    functionLinenumber: 1154
    functionLinenumberEnd: 1253
    functionName: exsltDateFormatDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - exsltFormatLong
    - exsltFormatNanoseconds
    - floor
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateFormatDuration (const exsltDateDurValPtr dur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - cur
    - end
    - num
    argTypes:
    - xmlChar**
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1255
    functionDepth: 0
    functionLinenumber: 1255
    functionLinenumberEnd: 1263
    functionName: exsltFormatTwoDigits
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltFormatTwoDigits(xmlChar **cur, xmlChar *end, int num)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: exsltFormatTwoDigits
      Src: /src/libxslt/libexslt/date.c:1270,1
    - Dst: exsltFormatTwoDigits
      Src: /src/libxslt/libexslt/date.c:1274,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:1278,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:1284,1
    - Dst: exsltFormatTwoDigits
      Src: /src/libxslt/libexslt/date.c:1287,1
    - Dst: exsltFormatNanoseconds
      Src: /src/libxslt/libexslt/date.c:1288,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - cur
    - end
    - dt
    argTypes:
    - xmlChar**
    - xmlChar*
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1265
    functionDepth: 1
    functionLinenumber: 1265
    functionLinenumberEnd: 1289
    functionName: exsltFormatTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormatTwoDigits
    - floor
    - exsltFormatNanoseconds
    linkageType: ''
    returnType: void
    signature: void exsltFormatTime(xmlChar **cur, xmlChar *end, exsltDateValPtr dt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VALID_DATETIME
      Src: /src/libxslt/libexslt/date.c:1304,1
    - Dst: exsltFormatYearMonthDay
      Src: /src/libxslt/libexslt/date.c:1307,1
    - Dst: exsltFormatTime
      Src: /src/libxslt/libexslt/date.c:1310,1
    - Dst: exsltFormatTimeZone
      Src: /src/libxslt/libexslt/date.c:1311,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - dt
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1299
    functionDepth: 2
    functionLinenumber: 1299
    functionLinenumberEnd: 1315
    functionName: exsltDateFormatDateTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - exsltFormatYearMonthDay
    - exsltFormatTimeZone
    - VALID_DATETIME
    - exsltFormatTime
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateFormatDateTime (const exsltDateValPtr dt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VALID_DATETIME
      Src: /src/libxslt/libexslt/date.c:1330,1
    - Dst: exsltFormatYearMonthDay
      Src: /src/libxslt/libexslt/date.c:1333,1
    - Dst: exsltFormatTimeZone
      Src: /src/libxslt/libexslt/date.c:1335,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1339,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - dt
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1325
    functionDepth: 2
    functionLinenumber: 1325
    functionLinenumberEnd: 1340
    functionName: exsltDateFormatDate
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormatTimeZone
    - xmlStrdup
    - VALID_DATETIME
    - exsltFormatYearMonthDay
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateFormatDate (const exsltDateValPtr dt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VALID_TIME
      Src: /src/libxslt/libexslt/date.c:1355,1
    - Dst: exsltFormatTime
      Src: /src/libxslt/libexslt/date.c:1358,1
    - Dst: exsltFormatTimeZone
      Src: /src/libxslt/libexslt/date.c:1360,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1364,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - dt
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1350
    functionDepth: 2
    functionLinenumber: 1350
    functionLinenumberEnd: 1365
    functionName: exsltDateFormatTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormatTimeZone
    - xmlStrdup
    - exsltFormatTime
    - VALID_TIME
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateFormatTime (const exsltDateValPtr dt)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateFormatDateTime
      Src: /src/libxslt/libexslt/date.c:1385,1
    - Dst: exsltDateFormatDate
      Src: /src/libxslt/libexslt/date.c:1387,1
    - Dst: exsltDateFormatTime
      Src: /src/libxslt/libexslt/date.c:1389,1
    - Dst: exsltFormatGYear
      Src: /src/libxslt/libexslt/date.c:1397,1
    - Dst: exsltFormat2Digits
      Src: /src/libxslt/libexslt/date.c:1401,1
    - Dst: exsltFormatTimeZone
      Src: /src/libxslt/libexslt/date.c:1405,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:1408,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - dt
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1377
    functionDepth: 3
    functionLinenumber: 1377
    functionLinenumberEnd: 1412
    functionName: exsltDateFormat
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltFormat2Digits
    - xmlStrdup
    - exsltDateFormatDate
    - exsltFormatTimeZone
    - exsltDateFormatDateTime
    - exsltDateFormatTime
    - exsltFormatGYear
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateFormat (const exsltDateValPtr dt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:1434,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:1439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - dt
    argTypes:
    - exsltDateValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1425
    functionDepth: 0
    functionLinenumber: 1425
    functionLinenumberEnd: 1442
    functionName: _exsltDateCastYMToDays
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - DAY_IN_YEAR
    linkageType: ''
    returnType: long
    signature: long _exsltDateCastYMToDays (const exsltDateValPtr dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1455
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1455
    functionName: TIME_TO_NUMBER
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIME_TO_NUMBER(dt)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - dt
    - type
    argTypes:
    - exsltDateValPtr
    - exsltDateType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1465
    functionDepth: 0
    functionLinenumber: 1465
    functionLinenumberEnd: 1489
    functionName: _exsltDateTruncateDate
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int _exsltDateTruncateDate (exsltDateValPtr dt, exsltDateType type)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - yday
    - yr
    argTypes:
    - long
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1504
    functionDepth: 0
    functionLinenumber: 1504
    functionLinenumberEnd: 1518
    functionName: _exsltDateDayInWeek
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: long
    signature: long _exsltDateDayInWeek(long yday, long yr)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCreateDate
      Src: /src/libxslt/libexslt/date.c:1540,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1572,1
    - Dst: fmod
      Src: /src/libxslt/libexslt/date.c:1583,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxslt/libexslt/date.c:1605,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxslt/libexslt/date.c:1606,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1621,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxslt/libexslt/date.c:1627,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxslt/libexslt/date.c:1628,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxslt/libexslt/date.c:1629,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1635,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 89
    argCount: 2
    argNames:
    - dt
    - dur
    argTypes:
    - exsltDateValPtr
    - exsltDateDurValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1662
      start: 1530
    functionDepth: 1
    functionLinenumber: 1530
    functionLinenumberEnd: 1662
    functionName: _exsltDateAdd
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - MAX_DAYINMONTH
    - exsltDateCreateDate
    - fmod
    linkageType: ''
    returnType: exsltDateValPtr
    signature: exsltDateValPtr _exsltDateAdd (exsltDateValPtr dt, exsltDateDurValPtr
      dur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _exsltDateTruncateDate
      Src: /src/libxslt/libexslt/date.c:1694,1
    - Dst: _exsltDateTruncateDate
      Src: /src/libxslt/libexslt/date.c:1696,1
    - Dst: exsltDateCreateDuration
      Src: /src/libxslt/libexslt/date.c:1700,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:1709,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:1719,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxslt/libexslt/date.c:1723,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxslt/libexslt/date.c:1723,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:1725,1
    - Dst: _exsltDateCastYMToDays
      Src: /src/libxslt/libexslt/date.c:1728,1
    - Dst: _exsltDateCastYMToDays
      Src: /src/libxslt/libexslt/date.c:1728,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 35
    argCount: 3
    argNames:
    - x
    - y
    - flag
    argTypes:
    - exsltDateValPtr
    - exsltDateValPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1734
      start: 1676
    functionDepth: 1
    functionLinenumber: 1676
    functionLinenumberEnd: 1734
    functionName: _exsltDateDifference
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - floor
    - TIME_TO_NUMBER
    - exsltDateCreateDuration
    - _exsltDateCastYMToDays
    - _exsltDateTruncateDate
    - exsltDateFreeDuration
    linkageType: ''
    returnType: exsltDateDurValPtr
    signature: exsltDateDurValPtr _exsltDateDifference (exsltDateValPtr x, exsltDateValPtr
      y, int flag)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 3
    argNames:
    - ret
    - x
    - y
    argTypes:
    - exsltDateDurValPtr
    - exsltDateDurValPtr
    - exsltDateDurValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1747
    functionDepth: 0
    functionLinenumber: 1747
    functionLinenumberEnd: 1791
    functionName: _exsltDateAddDurCalc
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int _exsltDateAddDurCalc (exsltDateDurValPtr ret, exsltDateDurValPtr
      x,\n\t\t      exsltDateDurValPtr y)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCreateDuration
      Src: /src/libxslt/libexslt/date.c:1810,1
    - Dst: _exsltDateAddDurCalc
      Src: /src/libxslt/libexslt/date.c:1814,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:1817,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - exsltDateDurValPtr
    - exsltDateDurValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1819
      start: 1802
    functionDepth: 1
    functionLinenumber: 1802
    functionLinenumberEnd: 1819
    functionName: _exsltDateAddDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDuration
    - _exsltDateAddDurCalc
    - exsltDateCreateDuration
    linkageType: ''
    returnType: exsltDateDurValPtr
    signature: exsltDateDurValPtr _exsltDateAddDuration (exsltDateDurValPtr x, exsltDateDurValPtr
      y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:1841,1
    - Dst: exsltDateFormatDateTime
      Src: /src/libxslt/libexslt/date.c:1843,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1844,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1835
    functionDepth: 3
    functionLinenumber: 1835
    functionLinenumberEnd: 1848
    functionName: exsltDateDateTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateFormatDateTime
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDateTime (void)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:1873,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:1877,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1881,1
    - Dst: exsltDateFormatDate
      Src: /src/libxslt/libexslt/date.c:1886,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1887,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1866
    functionDepth: 3
    functionLinenumber: 1866
    functionLinenumberEnd: 1890
    functionName: exsltDateDate
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateFormatDate
    - exsltDateParse
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDate (const xmlChar *dateTime)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:1915,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:1919,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1923,1
    - Dst: exsltDateFormatTime
      Src: /src/libxslt/libexslt/date.c:1928,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1908
    functionDepth: 3
    functionLinenumber: 1908
    functionLinenumberEnd: 1932
    functionName: exsltDateTime
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    - exsltDateFormatTime
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateTime (const xmlChar *dateTime)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:1962,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:1966,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1971,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:1979,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1982
      start: 1954
    functionDepth: 2
    functionLinenumber: 1954
    functionLinenumberEnd: 1982
    functionName: exsltDateYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateYear (const xmlChar *dateTime)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2011,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2013,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2017,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/libexslt/date.c:2023,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libexslt/date.c:2026,1
    - Dst: IS_LEAP
      Src: /src/libxslt/libexslt/date.c:2026,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2027,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2031
      start: 2004
    functionDepth: 2
    functionLinenumber: 2004
    functionLinenumberEnd: 2031
    functionName: exsltDateLeapYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewFloat
    - xmlXPathNewBoolean
    - exsltDateCurrent
    - IS_LEAP
    - exsltDateParse
    - exsltDateFreeDate
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr exsltDateLeapYear (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2061,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2065,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2071,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2077,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2054
    functionDepth: 2
    functionLinenumber: 2054
    functionLinenumberEnd: 2080
    functionName: exsltDateMonthInYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateMonthInYear (const xmlChar *dateTime)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateMonthInYear
      Src: /src/libxslt/libexslt/date.c:2125,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/date.c:2126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2129
      start: 2105
    functionDepth: 3
    functionLinenumber: 2105
    functionLinenumberEnd: 2129
    functionName: exsltDateMonthName
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - exsltDateMonthInYear
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateMonthName (const xmlChar *dateTime)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateMonthInYear
      Src: /src/libxslt/libexslt/date.c:2174,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/date.c:2175,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2178
      start: 2154
    functionDepth: 3
    functionLinenumber: 2154
    functionLinenumberEnd: 2178
    functionName: exsltDateMonthAbbreviation
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - exsltDateMonthInYear
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateMonthAbbreviation (const xmlChar *dateTime)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2208,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2212,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2216,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2221,1
    - Dst: _exsltDateDayInWeek
      Src: /src/libxslt/libexslt/date.c:2227,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2234,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2235,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2236,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2241,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2244
      start: 2201
    functionDepth: 2
    functionLinenumber: 2201
    functionLinenumberEnd: 2244
    functionName: exsltDateWeekInYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateCurrent
    - exsltDateParse
    - _exsltDateDayInWeek
    - DAY_IN_YEAR
    - exsltDateFreeDate
    linkageType: ''
    returnType: double
    signature: double exsltDateWeekInYear (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2274,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2278,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2282,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2287,1
    - Dst: _exsltDateDayInWeek
      Src: /src/libxslt/libexslt/date.c:2292,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2296,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2299
      start: 2267
    functionDepth: 2
    functionLinenumber: 2267
    functionLinenumberEnd: 2299
    functionName: exsltDateWeekInMonth
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateCurrent
    - exsltDateParse
    - _exsltDateDayInWeek
    - DAY_IN_YEAR
    - exsltDateFreeDate
    linkageType: ''
    returnType: double
    signature: double exsltDateWeekInMonth (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2326,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2330,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2334,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2339,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2319
    functionDepth: 2
    functionLinenumber: 2319
    functionLinenumberEnd: 2344
    functionName: exsltDateDayInYear
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - DAY_IN_YEAR
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateDayInYear (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2373,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2377,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2382,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2388,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2391
      start: 2366
    functionDepth: 2
    functionLinenumber: 2366
    functionLinenumberEnd: 2391
    functionName: exsltDateDayInMonth
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateDayInMonth (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2419,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2423,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2427,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2434,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2437
      start: 2412
    functionDepth: 2
    functionLinenumber: 2412
    functionLinenumberEnd: 2437
    functionName: exsltDateDayOfWeekInMonth
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateDayOfWeekInMonth (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2466,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2470,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2474,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxslt/libexslt/date.c:2479,1
    - Dst: _exsltDateDayInWeek
      Src: /src/libxslt/libexslt/date.c:2481,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2483,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2459
    functionDepth: 2
    functionLinenumber: 2459
    functionLinenumberEnd: 2486
    functionName: exsltDateDayInWeek
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 3
    functionsReached:
    - exsltDateCurrent
    - exsltDateParse
    - _exsltDateDayInWeek
    - DAY_IN_YEAR
    - exsltDateFreeDate
    linkageType: ''
    returnType: double
    signature: double exsltDateDayInWeek (const xmlChar *dateTime)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateDayInWeek
      Src: /src/libxslt/libexslt/date.c:2523,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/date.c:2524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2527
      start: 2508
    functionDepth: 3
    functionLinenumber: 2508
    functionLinenumberEnd: 2527
    functionName: exsltDateDayName
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDayInWeek
    - xmlXPathIsNaN
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDayName (const xmlChar *dateTime)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateDayInWeek
      Src: /src/libxslt/libexslt/date.c:2564,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/date.c:2565,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2568
      start: 2549
    functionDepth: 3
    functionLinenumber: 2549
    functionLinenumberEnd: 2568
    functionName: exsltDateDayAbbreviation
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDayInWeek
    - xmlXPathIsNaN
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDayAbbreviation (const xmlChar *dateTime)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2595,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2599,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2603,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2609,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2612
      start: 2588
    functionDepth: 2
    functionLinenumber: 2588
    functionLinenumberEnd: 2612
    functionName: exsltDateHourInDay
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateHourInDay (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2639,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2643,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2647,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2653,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2656
      start: 2632
    functionDepth: 2
    functionLinenumber: 2632
    functionLinenumberEnd: 2656
    functionName: exsltDateMinuteInHour
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateMinuteInHour (const xmlChar *dateTime)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2685,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2689,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2693,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2699,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2678
    functionDepth: 2
    functionLinenumber: 2678
    functionLinenumberEnd: 2702
    functionName: exsltDateSecondInMinute
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateFreeDate
    - exsltDateCurrent
    - exsltDateParse
    linkageType: ''
    returnType: double
    signature: double exsltDateSecondInMinute (const xmlChar *dateTime)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2738,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2742,1
    - Dst: exsltDateParseDuration
      Src: /src/libxslt/libexslt/date.c:2746,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2748,1
    - Dst: _exsltDateAdd
      Src: /src/libxslt/libexslt/date.c:2752,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2754,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2755,1
    - Dst: exsltDateFormat
      Src: /src/libxslt/libexslt/date.c:2760,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2761,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - xstr
    - ystr
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2728
    functionDepth: 4
    functionLinenumber: 2728
    functionLinenumberEnd: 2764
    functionName: exsltDateAdd
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 1
    functionsReached:
    - exsltDateParse
    - _exsltDateAdd
    - exsltDateFormat
    - exsltDateParseDuration
    - exsltDateFreeDuration
    - exsltDateFreeDate
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateAdd (const xmlChar *xstr, const xmlChar *ystr)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateParseDuration
      Src: /src/libxslt/libexslt/date.c:2796,1
    - Dst: exsltDateParseDuration
      Src: /src/libxslt/libexslt/date.c:2800,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2802,1
    - Dst: _exsltDateAddDuration
      Src: /src/libxslt/libexslt/date.c:2806,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2808,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2809,1
    - Dst: exsltDateFormatDuration
      Src: /src/libxslt/libexslt/date.c:2814,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2815,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - xstr
    - ystr
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2787
    functionDepth: 2
    functionLinenumber: 2787
    functionLinenumberEnd: 2818
    functionName: exsltDateAddDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 1
    functionsReached:
    - exsltDateFreeDuration
    - exsltDateFormatDuration
    - _exsltDateAddDuration
    - exsltDateParseDuration
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateAddDuration (const xmlChar *xstr, const xmlChar *ystr)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:2850,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/date.c:2861,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:2862,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:2866,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2868,1
    - Dst: exsltDateCreateDuration
      Src: /src/libxslt/libexslt/date.c:2872,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2874,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libexslt/date.c:2880,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2882,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2883,1
    - Dst: exsltDateParseDuration
      Src: /src/libxslt/libexslt/date.c:2887,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:2889,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2890,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2891,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:2892,1
    - Dst: _exsltDateAddDurCalc
      Src: /src/libxslt/libexslt/date.c:2896,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2898,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:2899,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2901,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2902,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:2903,1
    - Dst: exsltDateFormatDuration
      Src: /src/libxslt/libexslt/date.c:2908,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2909,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/date.c:2911,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libexslt/date.c:2913,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:2916,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:2918,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 57
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2919
      start: 2839
    functionDepth: 2
    functionLinenumber: 2839
    functionLinenumberEnd: 2919
    functionName: exsltDateSumFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - exsltDateCreateDuration
    - exsltDateFormatDuration
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    - exsltDateFreeDuration
    - exsltDateParseDuration
    - xmlXPathCastNodeToString
    - _exsltDateAddDurCalc
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltDateSumFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateCurrent
      Src: /src/libxslt/libexslt/date.c:2957,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:2961,1
    - Dst: exsltDateParseDuration
      Src: /src/libxslt/libexslt/date.c:2963,1
    - Dst: exsltDateCreateDate
      Src: /src/libxslt/libexslt/date.c:2974,1
    - Dst: _exsltDateDifference
      Src: /src/libxslt/libexslt/date.c:2981,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2984,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2986,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:2994,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:2996,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 1
    argNames:
    - dateTime
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2999
      start: 2949
    functionDepth: 2
    functionLinenumber: 2949
    functionLinenumberEnd: 2999
    functionName: exsltDateSeconds
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateCurrent
    - exsltDateParse
    - exsltDateCreateDate
    - exsltDateParseDuration
    - exsltDateFreeDuration
    - exsltDateFreeDate
    - _exsltDateDifference
    linkageType: ''
    returnType: double
    signature: double exsltDateSeconds (const xmlChar *dateTime)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:3048,1
    - Dst: exsltDateParse
      Src: /src/libxslt/libexslt/date.c:3052,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:3054,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:3060,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:3061,1
    - Dst: _exsltDateDifference
      Src: /src/libxslt/libexslt/date.c:3065,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:3067,1
    - Dst: exsltDateFreeDate
      Src: /src/libxslt/libexslt/date.c:3068,1
    - Dst: exsltDateFormatDuration
      Src: /src/libxslt/libexslt/date.c:3073,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:3074,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - xstr
    - ystr
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3077
      start: 3038
    functionDepth: 2
    functionLinenumber: 3038
    functionLinenumberEnd: 3077
    functionName: exsltDateDifference
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 2
    functionsReached:
    - exsltDateParse
    - exsltDateFormatDuration
    - exsltDateFreeDuration
    - exsltDateFreeDate
    - _exsltDateDifference
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDifference (const xmlChar *xstr, const xmlChar *ystr)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: exsltDateSeconds
      Src: /src/libxslt/libexslt/date.c:3107,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxslt/libexslt/date.c:3109,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/date.c:3111,1
    - Dst: floor
      Src: /src/libxslt/libexslt/date.c:3114,1
    - Dst: exsltDateCreateDuration
      Src: /src/libxslt/libexslt/date.c:3118,1
    - Dst: exsltDateFormatDuration
      Src: /src/libxslt/libexslt/date.c:3125,1
    - Dst: exsltDateFreeDuration
      Src: /src/libxslt/libexslt/date.c:3126,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - number
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3129
      start: 3099
    functionDepth: 3
    functionLinenumber: 3099
    functionLinenumberEnd: 3129
    functionName: exsltDateDuration
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - floor
    - exsltDateSeconds
    - exsltDateCreateDuration
    - exsltDateFormatDuration
    - exsltDateFreeDuration
    - xmlXPathCastStringToNumber
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exsltDateDuration (const xmlChar *number)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3150,1
    - Dst: exsltDateDateTime
      Src: /src/libxslt/libexslt/date.c:3154,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3156,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3159
      start: 3144
    functionDepth: 4
    functionLinenumber: 3144
    functionLinenumberEnd: 3159
    functionName: exsltDateDateTimeFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDateTime
    - xmlXPathReturnEmptyString
    - xmlXPathSetArityError
    - xmlXPathReturnString
    linkageType: ''
    returnType: void
    signature: void exsltDateDateTimeFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3174,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3178,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3179,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3180,1
    - Dst: exsltDateDate
      Src: /src/libxslt/libexslt/date.c:3185,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:3188,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3191,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3193,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3198
      start: 3168
    functionDepth: 4
    functionLinenumber: 3168
    functionLinenumberEnd: 3198
    functionName: exsltDateDateFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDate
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xsltGenericDebug
    - xmlXPathReturnString
    - xmlFree
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateDateFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3213,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3217,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3218,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3219,1
    - Dst: exsltDateTime
      Src: /src/libxslt/libexslt/date.c:3224,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/date.c:3227,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3230,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3232,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3236,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3237
      start: 3207
    functionDepth: 4
    functionLinenumber: 3207
    functionLinenumberEnd: 3237
    functionName: exsltDateTimeFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateTime
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xsltGenericDebug
    - xmlXPathReturnString
    - xmlFree
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateTimeFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3253,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3258,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3259,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3260,1
    - Dst: exsltDateYear
      Src: /src/libxslt/libexslt/date.c:3265,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3268,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/date.c:3270,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3271
      start: 3246
    functionDepth: 3
    functionLinenumber: 3246
    functionLinenumberEnd: 3271
    functionName: exsltDateYearFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - exsltDateYear
    - xmlFree
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltDateYearFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3287,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3292,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3293,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3294,1
    - Dst: exsltDateLeapYear
      Src: /src/libxslt/libexslt/date.c:3299,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3302,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/date.c:3304,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3305
      start: 3280
    functionDepth: 3
    functionLinenumber: 3280
    functionLinenumberEnd: 3305
    functionName: exsltDateLeapYearFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - exsltDateLeapYear
    - xmlFree
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - valuePush
    linkageType: ''
    returnType: void
    signature: void exsltDateLeapYearFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3334
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3334
    functionName: X_IN_Y
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X_IN_Y(x, y)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3358,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3363,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3364,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3365,1
    - Dst: exsltDateMonthName
      Src: /src/libxslt/libexslt/date.c:3370,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3373,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3376,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3378,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:3378,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3351
    functionDepth: 4
    functionLinenumber: 3351
    functionLinenumberEnd: 3379
    functionName: exsltDateMonthNameFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateMonthName
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateMonthNameFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3395,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3400,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3401,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3402,1
    - Dst: exsltDateMonthAbbreviation
      Src: /src/libxslt/libexslt/date.c:3407,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3410,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3413,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3415,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:3415,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3388
    functionDepth: 4
    functionLinenumber: 3388
    functionLinenumberEnd: 3416
    functionName: exsltDateMonthAbbreviationFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - exsltDateMonthAbbreviation
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateMonthAbbreviationFunction (xmlXPathParserContextPtr ctxt,
      int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3486,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3491,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3492,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3493,1
    - Dst: exsltDateDayName
      Src: /src/libxslt/libexslt/date.c:3498,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3501,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3504,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3506,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:3506,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3507
      start: 3479
    functionDepth: 4
    functionLinenumber: 3479
    functionLinenumberEnd: 3507
    functionName: exsltDateDayNameFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDayName
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateDayNameFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3523,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3528,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3529,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3530,1
    - Dst: exsltDateDayAbbreviation
      Src: /src/libxslt/libexslt/date.c:3535,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3538,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3541,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3543,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/date.c:3543,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3544
      start: 3516
    functionDepth: 4
    functionLinenumber: 3516
    functionLinenumberEnd: 3544
    functionName: exsltDateDayAbbreviationFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    - exsltDateDayAbbreviation
    linkageType: ''
    returnType: void
    signature: void exsltDateDayAbbreviationFunction (xmlXPathParserContextPtr ctxt,
      int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3588,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3593,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3594,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3595,1
    - Dst: exsltDateSeconds
      Src: /src/libxslt/libexslt/date.c:3600,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3602,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/date.c:3604,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3605
      start: 3581
    functionDepth: 3
    functionLinenumber: 3581
    functionLinenumberEnd: 3605
    functionName: exsltDateSecondsFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - exsltDateSeconds
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltDateSecondsFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3620,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3623,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3624,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3627,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3628,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3629,1
    - Dst: exsltDateAdd
      Src: /src/libxslt/libexslt/date.c:3633,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3635,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3636,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3639,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3641,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3614
    functionDepth: 5
    functionLinenumber: 3614
    functionLinenumberEnd: 3642
    functionName: exsltDateAddFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    - exsltDateAdd
    linkageType: ''
    returnType: void
    signature: void exsltDateAddFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3657,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3660,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3661,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3664,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3665,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3666,1
    - Dst: exsltDateAddDuration
      Src: /src/libxslt/libexslt/date.c:3670,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3672,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3673,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3676,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3678,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3679
      start: 3651
    functionDepth: 3
    functionLinenumber: 3651
    functionLinenumberEnd: 3679
    functionName: exsltDateAddDurationFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - exsltDateAddDuration
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateAddDurationFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3694,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3697,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3698,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3701,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3702,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3703,1
    - Dst: exsltDateDifference
      Src: /src/libxslt/libexslt/date.c:3707,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3709,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3710,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3713,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3715,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3716
      start: 3688
    functionDepth: 3
    functionLinenumber: 3688
    functionLinenumberEnd: 3716
    functionName: exsltDateDifferenceFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    - exsltDateDifference
    linkageType: ''
    returnType: void
    signature: void exsltDateDifferenceFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/date.c:3732,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/date.c:3737,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/date.c:3738,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/date.c:3739,1
    - Dst: exsltDateDuration
      Src: /src/libxslt/libexslt/date.c:3744,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/date.c:3747,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/date.c:3750,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/date.c:3752,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3753
      start: 3725
    functionDepth: 4
    functionLinenumber: 3725
    functionLinenumberEnd: 3753
    functionName: exsltDateDurationFunction
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - exsltDateDuration
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: void
    signature: void exsltDateDurationFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3763,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3766,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3769,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3772,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3775,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3778,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3781,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3784,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3787,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3790,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3793,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3796,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3799,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3802,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3805,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3808,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3811,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3814,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3817,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3820,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3823,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3826,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3829,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3832,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/date.c:3835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3838
      start: 3760
    functionDepth: 1
    functionLinenumber: 3760
    functionLinenumberEnd: 3838
    functionName: exsltDateRegister
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltDateRegister (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/libexslt/date.c:3850,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3853,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3857,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3861,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3865,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3869,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3873,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3877,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3881,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3885,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3889,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3893,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3897,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3901,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3905,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3909,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3913,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3917,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3921,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3925,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3929,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3933,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3937,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3941,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3945,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/date.c:3949,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3956
      start: 3845
    functionDepth: 1
    functionLinenumber: 3845
    functionLinenumberEnd: 3956
    functionName: exsltDateXpathCtxtRegister
    functionSourceFile: /src/libxslt/libexslt/date.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterFuncNS
    - xmlXPathRegisterNs
    linkageType: ''
    returnType: int
    signature: int exsltDateXpathCtxtRegister (xmlXPathContextPtr ctxt, const xmlChar
      *prefix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/functions.c:75,1
    - Dst: xsltRegisterExtFunction
      Src: /src/libxslt/libexslt/functions.c:78,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 5
    argNames:
    - payload
    - vctxt
    - URI
    - name
    - ignored
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 80
    functionName: exsltFuncRegisterFunc
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtFunction
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: "void exsltFuncRegisterFunc (void *payload, void *vctxt,\n\t\t       const
      xmlChar *URI, const xmlChar *name,\n\t\t       ATTRIBUTE_UNUSED const xmlChar
      *ignored)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libexslt/functions.c:107,1
    - Dst: exsltFuncNewFunctionData
      Src: /src/libxslt/libexslt/functions.c:109,1
    - Dst: memcpy
      Src: /src/libxslt/libexslt/functions.c:112,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libexslt/functions.c:113,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:114,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:117,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/functions.c:119,1
    - Dst: xsltRegisterExtFunction
      Src: /src/libxslt/libexslt/functions.c:122,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 5
    argNames:
    - payload
    - vctxt
    - URI
    - name
    - ignored
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 126
    functionName: exsltFuncRegisterImportFunc
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xsltRegisterExtFunction
    - xsltGenericDebug
    - xmlFree
    - exsltFuncNewFunctionData
    - memcpy
    - xmlHashAddEntry2
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void exsltFuncRegisterImportFunc (void *payload, void *vctxt,\n\t\t\t
      \    const xmlChar *URI, const xmlChar *name,\n\t\t\t     ATTRIBUTE_UNUSED const
      xmlChar *ignored)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/functions.c:148,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:150,1
    - Dst: memset
      Src: /src/libxslt/libexslt/functions.c:154,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/libexslt/functions.c:159,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libexslt/functions.c:161,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libexslt/functions.c:164,1
    - Dst: xsltGetExtInfo
      Src: /src/libxslt/libexslt/functions.c:165,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libexslt/functions.c:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 172
    functionName: exsltFuncInit
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xsltNextImport
    - xmlMalloc
    - xsltStyleGetExtData
    - xsltGetExtInfo
    - xmlHashScanFull
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      exsltFuncInit (xsltTransformContextPtr ctxt, const xmlChar *URI)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/functions.c:191,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:192,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - vdata
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 194
    functionName: exsltFuncShutdown
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeObject
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void exsltFuncShutdown (xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t
      \  const xmlChar *URI ATTRIBUTE_UNUSED,\n\t\t   void *vdata)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libexslt/functions.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 210
    functionName: exsltFuncStyleInit
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: "void *\nexsltFuncStyleInit (xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n\t\t
      \   const xmlChar *URI ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionName: exsltFuncFreeDataEntry
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void exsltFuncFreeDataEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libexslt/functions.c:231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - vdata
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: exsltFuncStyleShutdown
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: "void exsltFuncStyleShutdown (xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n\t\t\tconst
      xmlChar *URI ATTRIBUTE_UNUSED,\n\t\t\tvoid *vdata)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/functions.c:245,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:247,1
    - Dst: memset
      Src: /src/libxslt/libexslt/functions.c:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 257
    functionName: exsltFuncNewFunctionData
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: exsltFuncFunctionData
    signature: 'exsltFuncFunctionData *

      exsltFuncNewFunctionData (void)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libexslt/functions.c:273,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:275,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:276,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ecomp
    argTypes:
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 277
    functionName: exsltFreeFuncResultPreComp
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void exsltFreeFuncResultPreComp (xsltElemPreCompPtr ecomp)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/functions.c:295,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/libexslt/functions.c:302,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libexslt/functions.c:307,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:312,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:323,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:335,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/functions.c:347,1
    - Dst: xmlNewDocNode
      Src: /src/libxslt/libexslt/functions.c:359,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/functions.c:389,1
    - Dst: valuePop
      Src: /src/libxslt/libexslt/functions.c:394,1
    - Dst: xsltParseStylesheetCallerParam
      Src: /src/libxslt/libexslt/functions.c:413,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libexslt/functions.c:415,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libexslt/functions.c:416,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/functions.c:418,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/functions.c:424,1
    - Dst: xsltLocalVariablePush
      Src: /src/libxslt/libexslt/functions.c:427,1
    - Dst: xsltApplyOneTemplate
      Src: /src/libxslt/libexslt/functions.c:444,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libexslt/functions.c:446,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libexslt/functions.c:452,1
    - Dst: xsltFlagRVTs
      Src: /src/libxslt/libexslt/functions.c:465,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/functions.c:467,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:476,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/functions.c:480,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/functions.c:483,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:486,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libexslt/functions.c:487,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 109
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 489
    functionName: exsltFuncFunctionFunction
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xsltLocalVariablePush
    - xsltLocalVariablePop
    - xsltParseStylesheetCallerParam
    - xmlXPathFreeObject
    - xsltGenericError
    - xsltFreeStackElemList
    - xmlHashLookup2
    - xmlFree
    - xmlMalloc
    - xmlXPathNewCString
    - valuePush
    - xmlFreeNode
    - xsltFlagRVTs
    - xsltTransformError
    - xsltGetExtData
    - xsltXPathGetTransformContext
    - xmlNewDocNode
    - valuePop
    - xsltApplyOneTemplate
    linkageType: ''
    returnType: void
    signature: void exsltFuncFunctionFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxslt/libexslt/functions.c:505,1
    - Dst: xmlSplitQName2
      Src: /src/libxslt/libexslt/functions.c:506,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:507,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:510,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:513,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libexslt/functions.c:517,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:519,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:522,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:523,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:526,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libexslt/functions.c:528,1
    - Dst: exsltFuncNewFunctionData
      Src: /src/libxslt/libexslt/functions.c:533,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:535,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libexslt/functions.c:539,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libexslt/functions.c:540,1
    - Dst: xsltStyleStylesheetLevelGetExtData
      Src: /src/libxslt/libexslt/functions.c:556,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/libexslt/functions.c:560,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:563,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:565,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:566,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libexslt/functions.c:570,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/functions.c:571,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:575,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libexslt/functions.c:577,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:581,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 582
    functionName: exsltFuncFunctionComp
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName2
    - xsltParseTemplateContent
    - xmlGetProp
    - IS_XSLT_NAME
    - xsltGenericDebug
    - xmlFree
    - xsltStyleStylesheetLevelGetExtData
    - xsltTransformError
    - exsltFuncNewFunctionData
    - xmlSearchNs
    - xsltStyleGetExtData
    - IS_XSLT_ELEM
    - xmlHashAddEntry2
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltFuncFunctionComp (xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libexslt/functions.c:603,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libexslt/functions.c:603,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:605,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libexslt/functions.c:625,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libexslt/functions.c:626,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:627,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/functions.c:634,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/functions.c:635,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/functions.c:638,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:639,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libexslt/functions.c:646,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libexslt/functions.c:647,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libexslt/functions.c:648,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:649,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/functions.c:661,1
    - Dst: xsltPrintErrorContext
      Src: /src/libxslt/libexslt/functions.c:663,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:664,1
    - Dst: memset
      Src: /src/libxslt/libexslt/functions.c:669,1
    - Dst: xsltInitElemPreComp
      Src: /src/libxslt/libexslt/functions.c:671,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libexslt/functions.c:678,1
    - Dst: xsltXPathCompileFlags
      Src: /src/libxslt/libexslt/functions.c:680,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/functions.c:681,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libexslt/functions.c:686,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 56
    argCount: 3
    argNames:
    - style
    - inst
    - function
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 584
    functionDepth: 1
    functionLinenumber: 584
    functionLinenumberEnd: 694
    functionName: exsltFuncResultComp
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xmlStrEqual
    - xmlFree
    - xsltInitElemPreComp
    - xmlGetNsList
    - xmlMalloc
    - xmlGetNsProp
    - IS_XSLT_ELEM
    - xsltPrintErrorContext
    - xsltXPathCompileFlags
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr exsltFuncResultComp (xsltStylesheetPtr style, xmlNodePtr
      inst,\n\t\t     xsltTransformFunction function)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetExtData
      Src: /src/libxslt/libexslt/functions.c:709,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:711,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:716,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:739,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libexslt/functions.c:753,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:760,1
    - Dst: xsltFlagRVTs
      Src: /src/libxslt/libexslt/functions.c:768,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/functions.c:778,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:780,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/functions.c:786,1
    - Dst: xsltApplyOneTemplate
      Src: /src/libxslt/libexslt/functions.c:791,1
    - Dst: xmlXPathNewValueTree
      Src: /src/libxslt/libexslt/functions.c:795,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/functions.c:797,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/functions.c:812,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 58
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - inst
    - ecomp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 696
    functionDepth: 1
    functionLinenumber: 696
    functionLinenumberEnd: 815
    functionName: exsltFuncResultElem
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewValueTree
    - xmlXPathCompiledEval
    - xsltFlagRVTs
    - xsltGetExtData
    - xmlXPathNewCString
    - xsltCreateRVT
    - xsltRegisterLocalRVT
    - xsltApplyOneTemplate
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void exsltFuncResultElem (xsltTransformContextPtr ctxt,\n\t             xmlNodePtr
      node ATTRIBUTE_UNUSED, xmlNodePtr inst,\n\t\t     xsltElemPreCompPtr ecomp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFull
      Src: /src/libxslt/libexslt/functions.c:824,1
    - Dst: xsltRegisterExtModuleTopLevel
      Src: /src/libxslt/libexslt/functions.c:830,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libexslt/functions.c:833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 822
    functionDepth: 1
    functionLinenumber: 822
    functionLinenumberEnd: 837
    functionName: exsltFuncRegister
    functionSourceFile: /src/libxslt/libexslt/functions.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleTopLevel
    - xsltRegisterExtModuleElement
    - xsltRegisterExtModuleFull
    linkageType: ''
    returnType: void
    signature: void exsltFuncRegister (void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:26,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:30,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:31,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:34,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:35,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:36,1
    - Dst: xmlXPathDifference
      Src: /src/libxslt/libexslt/sets.c:40,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:43,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:44,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:46,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 47
    functionName: exsltSetsDifferenceFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathReturnNodeSet
    - xmlXPathDifference
    - xmlXPathCheckError
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltSetsDifferenceFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:61,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:65,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:66,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:69,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:70,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:71,1
    - Dst: xmlXPathIntersection
      Src: /src/libxslt/libexslt/sets.c:75,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:77,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:78,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:80,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 81
    functionName: exsltSetsIntersectionFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathIntersection
    - xmlXPathSetArityError
    - xmlXPathReturnNodeSet
    - xmlXPathCheckError
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltSetsIntersectionFunction (xmlXPathParserContextPtr ctxt,
      int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:98,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:108,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:109,1
    - Dst: xmlXPathDistinctSorted
      Src: /src/libxslt/libexslt/sets.c:113,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:116,1
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxslt/libexslt/sets.c:118,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/sets.c:123,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 124
    functionName: exsltSetsDistinctFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathDistinctSorted
    - xmlXPathCheckError
    - valuePush
    - xmlXPathWrapNodeSet
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltSetsDistinctFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:140,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:144,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:145,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:148,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:149,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:150,1
    - Dst: xmlXPathHasSameNodes
      Src: /src/libxslt/libexslt/sets.c:154,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:156,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:157,1
    - Dst: xmlXPathReturnBoolean
      Src: /src/libxslt/libexslt/sets.c:159,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 160
    functionName: exsltSetsHasSameNodesFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathHasSameNodes
    - xmlXPathCheckError
    - xmlXPathReturnBoolean
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: "void exsltSetsHasSameNodesFunction (xmlXPathParserContextPtr ctxt,\n\t\t\t
      \     int nargs)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:174,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:178,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:179,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:182,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:183,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:184,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxslt/libexslt/sets.c:191,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:192,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:194,1
    - Dst: xmlXPathNodeLeadingSorted
      Src: /src/libxslt/libexslt/sets.c:199,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxslt/libexslt/sets.c:199,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:201,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:202,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 205
    functionName: exsltSetsLeadingFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeLeadingSorted
    - xmlXPathSetArityError
    - xmlXPathNodeSetItem
    - xmlXPathReturnNodeSet
    - xmlXPathNodeSetIsEmpty
    - xmlXPathCheckError
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltSetsLeadingFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/sets.c:219,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:223,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:224,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/sets.c:227,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/sets.c:228,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:229,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxslt/libexslt/sets.c:236,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:237,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:239,1
    - Dst: xmlXPathNodeTrailingSorted
      Src: /src/libxslt/libexslt/sets.c:244,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxslt/libexslt/sets.c:244,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:246,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/sets.c:247,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/sets.c:249,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 250
    functionName: exsltSetsTrailingFunction
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathNodeSetItem
    - xmlXPathReturnNodeSet
    - xmlXPathNodeTrailingSorted
    - xmlXPathNodeSetIsEmpty
    - xmlXPathCheckError
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltSetsTrailingFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:260,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:263,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:266,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:269,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:272,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/sets.c:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 278
    functionName: exsltSetsRegister
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltSetsRegister (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/libexslt/sets.c:290,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:293,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:297,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:301,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:305,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:309,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/sets.c:313,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 320
    functionName: exsltSetsXpathCtxtRegister
    functionSourceFile: /src/libxslt/libexslt/sets.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterFuncNS
    - xmlXPathRegisterNs
    linkageType: ''
    returnType: int
    signature: int exsltSetsXpathCtxtRegister (xmlXPathContextPtr ctxt, const xmlChar
      *prefix)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/common.c:20,1
    - Dst: xmlXPathStackIsNodeSet
      Src: /src/libxslt/libexslt/common.c:23,1
    - Dst: xsltFunctionNodeSet
      Src: /src/libxslt/libexslt/common.c:24,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/common.c:28,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/common.c:38,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/common.c:40,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/common.c:45,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/common.c:47,1
    - Dst: xmlNewDocText
      Src: /src/libxslt/libexslt/common.c:49,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/common.c:50,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/common.c:51,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/common.c:53,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/common.c:58,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/common.c:60,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 62
    functionName: exsltNodeSetFunction
    functionSourceFile: /src/libxslt/libexslt/common.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopString
    - xmlFree
    - xsltFunctionNodeSet
    - xsltTransformError
    - xsltXPathGetTransformContext
    - xmlAddChild
    - xmlXPathNewNodeSet
    - valuePush
    - xmlNewDocText
    - xsltCreateRVT
    - xmlXPathStackIsNodeSet
    - xsltRegisterLocalRVT
    linkageType: ''
    returnType: void
    signature: void exsltNodeSetFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/common.c:69,1
    - Dst: valuePop
      Src: /src/libxslt/libexslt/common.c:73,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:77,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:80,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:83,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:86,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:89,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libexslt/common.c:92,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/common.c:95,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/common.c:98,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/common.c:101,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/common.c:102,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 103
    functionName: exsltObjectTypeFunction
    functionSourceFile: /src/libxslt/libexslt/common.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - valuePop
    - xmlXPathNewCString
    - valuePush
    - xmlXPathFreeObject
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltObjectTypeFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/common.c:114,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/common.c:117,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libexslt/common.c:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 124
    functionName: exsltCommonRegister
    functionSourceFile: /src/libxslt/libexslt/common.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleElement
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltCommonRegister (void)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:37,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:42,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:43,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/strings.c:46,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:51,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:52,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:53,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/strings.c:58,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/strings.c:60,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/strings.c:60,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/strings.c:65,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/strings.c:67,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/strings.c:68,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:71,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:76,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:78,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:79,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:83,1
    - Dst: xmlUTF8Charcmp
      Src: /src/libxslt/libexslt/strings.c:84,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:91,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:93,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:94,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:102,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:104,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:105,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:112,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:114,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/strings.c:116,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/strings.c:118,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/strings.c:118,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 73
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 119
    functionName: exsltStrTokenizeFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xsltTransformError
    - xmlNewDocRawNode
    - xsltXPathGetTransformContext
    - xmlAddChild
    - xmlXPathCheckError
    - xmlXPathNewNodeSet
    - valuePush
    - xsltCreateRVT
    - xmlUTF8Charcmp
    - xmlXPathNodeSetAddUnique
    - xsltRegisterLocalRVT
    - xmlUTF8Strsize
    linkageType: ''
    returnType: void
    signature: void exsltStrTokenizeFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:140,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:145,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:146,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/strings.c:149,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/strings.c:153,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:155,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:156,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:157,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/strings.c:162,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/strings.c:164,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/strings.c:164,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/strings.c:172,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/strings.c:174,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/strings.c:175,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:182,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:184,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:185,1
    - Dst: xmlStrncasecmp
      Src: /src/libxslt/libexslt/strings.c:190,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:198,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:200,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:201,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxslt/libexslt/strings.c:208,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:210,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/strings.c:211,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:218,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:220,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/strings.c:222,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/strings.c:224,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/strings.c:224,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 73
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 225
    functionName: exsltStrSplitFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrncasecmp
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlStrlen
    - xmlFree
    - xsltTransformError
    - xmlNewDocRawNode
    - xsltXPathGetTransformContext
    - xmlAddChild
    - xmlXPathCheckError
    - xmlXPathNewNodeSet
    - valuePush
    - xsltCreateRVT
    - xmlXPathNodeSetAddUnique
    - xsltRegisterLocalRVT
    linkageType: ''
    returnType: void
    signature: void exsltStrSplitFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:240,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:247,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:248,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/libexslt/strings.c:248,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:249,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:250,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:253,1
    - Dst: xmlXPathPopBoolean
      Src: /src/libxslt/libexslt/strings.c:256,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:258,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:259,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/strings.c:263,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:265,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:266,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxslt/libexslt/strings.c:270,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:271,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:274,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 275
    functionName: exsltStrEncodeUriFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlXPathPopBoolean
    - xmlURIEscapeStr
    - xmlStrcmp
    - xmlUTF8Strlen
    - xmlXPathReturnEmptyString
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltStrEncodeUriFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:290,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:297,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:298,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/libexslt/strings.c:298,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:299,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:300,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:303,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:306,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:307,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/strings.c:311,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:313,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:314,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxslt/libexslt/strings.c:318,1
    - Dst: xmlCheckUTF8
      Src: /src/libxslt/libexslt/strings.c:319,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:322,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:323,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:324,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:328,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:331,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 332
    functionName: exsltStrDecodeUriFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlURIUnescapeString
    - xmlXPathReturnString
    - xmlCheckUTF8
    - xmlStrcmp
    - xmlUTF8Strlen
    - xmlXPathReturnEmptyString
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltStrDecodeUriFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:349,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:354,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:355,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/strings.c:356,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/strings.c:359,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/strings.c:363,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:365,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:366,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:369,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/strings.c:370,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/strings.c:375,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:385,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:386,1
    - Dst: xmlBufferCreateSize
      Src: /src/libxslt/libexslt/strings.c:390,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:392,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:393,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxslt/libexslt/strings.c:396,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:399,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:403,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:404,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:407,1
    - Dst: xmlBufferDetach
      Src: /src/libxslt/libexslt/strings.c:407,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libexslt/strings.c:409,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:411,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 412
    functionName: exsltStrPaddingFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlBufferDetach
    - xmlBufferFree
    - xmlXPathPopNumber
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlStrlen
    - xmlFree
    - xmlXPathIsNaN
    - xmlBufferCreateSize
    - xmlBufferAdd
    - xmlXPathReturnString
    - xmlUTF8Strlen
    - xmlXPathReturnEmptyString
    - xmlBufferSetAllocationScheme
    - xmlUTF8Strsize
    - xmlXPathSetError
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltStrPaddingFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:427,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:432,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:436,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:437,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:439,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxslt/libexslt/strings.c:440,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/strings.c:443,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:445,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:446,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:447,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:448,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:453,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:454,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:455,1
    - Dst: xmlUTF8Strndup
      Src: /src/libxslt/libexslt/strings.c:460,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/strings.c:462,1
    - Dst: xmlUTF8Strndup
      Src: /src/libxslt/libexslt/strings.c:463,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libexslt/strings.c:464,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/strings.c:465,1
    - Dst: xmlUTF8Strndup
      Src: /src/libxslt/libexslt/strings.c:469,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libexslt/strings.c:470,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:472,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libexslt/strings.c:473,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:477,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/strings.c:478,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libexslt/strings.c:479,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:483,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:485,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:486,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:487,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 488
    functionName: exsltStrAlignFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - xmlStrEqual
    - xmlUTF8Strlen
    - xmlXPathReturnEmptyString
    - xmlUTF8Strndup
    - xmlStrcat
    - xmlUTF8Strsize
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltStrAlignFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:506,1
    - Dst: xmlXPathStackIsNodeSet
      Src: /src/libxslt/libexslt/strings.c:510,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/strings.c:511,1
    - Dst: valuePop
      Src: /src/libxslt/libexslt/strings.c:515,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxslt/libexslt/strings.c:517,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/strings.c:518,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/strings.c:519,1
    - Dst: xmlBufferCreate
      Src: /src/libxslt/libexslt/strings.c:523,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:525,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/strings.c:526,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxslt/libexslt/strings.c:529,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libexslt/strings.c:533,1
    - Dst: xmlBufferCat
      Src: /src/libxslt/libexslt/strings.c:535,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:537,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/strings.c:540,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/strings.c:542,1
    - Dst: xmlBufferDetach
      Src: /src/libxslt/libexslt/strings.c:542,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libexslt/strings.c:543,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 544
    functionName: exsltStrConcatFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlBufferDetach
    - xmlBufferFree
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathReturnString
    - valuePop
    - xmlXPathCastNodeToString
    - xmlXPathNodeSetIsEmpty
    - xmlXPathSetTypeError
    - xmlXPathReturnEmptyString
    - xmlBufferCreate
    - xmlBufferCat
    - xmlBufferSetAllocationScheme
    - xmlXPathSetError
    - xmlXPathStackIsNodeSet
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void exsltStrConcatFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/strings.c:558,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/strings.c:563,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:565,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/strings.c:568,1
    - Dst: xmlNewTextLen
      Src: /src/libxslt/libexslt/strings.c:570,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:572,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libexslt/strings.c:575,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/strings.c:577,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:579,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/strings.c:583,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ctxt
    - str
    - len
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 554
    functionDepth: 1
    functionLinenumber: 554
    functionLinenumberEnd: 586
    functionName: exsltStrReturnString
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xsltXPathGetTransformContext
    - xmlAddChild
    - xmlNewTextLen
    - xmlXPathNewNodeSet
    - valuePush
    - xsltCreateRVT
    - xsltRegisterLocalRVT
    - xmlXPathSetError
    linkageType: ''
    returnType: int
    signature: "int exsltStrReturnString(xmlXPathParserContextPtr ctxt, const xmlChar
      *str,\n                     int len)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/strings.c:607,1
    - Dst: xmlXPathStackIsNodeSet
      Src: /src/libxslt/libexslt/strings.c:613,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:614,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/strings.c:616,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:618,1
    - Dst: xmlXPathStackIsNodeSet
      Src: /src/libxslt/libexslt/strings.c:623,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:624,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/strings.c:628,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:632,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/strings.c:637,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/strings.c:638,1
    - Dst: exsltStrReturnString
      Src: /src/libxslt/libexslt/strings.c:644,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/strings.c:644,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libexslt/strings.c:657,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:659,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libexslt/strings.c:674,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/strings.c:681,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libexslt/strings.c:687,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/strings.c:706,1
    - Dst: xmlBufferCreate
      Src: /src/libxslt/libexslt/strings.c:714,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:716,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxslt/libexslt/strings.c:719,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/libexslt/strings.c:729,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:738,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:739,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:741,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libexslt/strings.c:747,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:751,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:753,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:755,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libexslt/strings.c:764,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/strings.c:765,1
    - Dst: exsltStrReturnString
      Src: /src/libxslt/libexslt/strings.c:771,1
    - Dst: xmlBufferContent
      Src: /src/libxslt/libexslt/strings.c:771,1
    - Dst: xmlBufferLength
      Src: /src/libxslt/libexslt/strings.c:771,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libexslt/strings.c:776,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:782,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:787,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:792,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:796,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/strings.c:800,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:802,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/strings.c:806,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/strings.c:808,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 160
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 812
    functionName: exsltStrReplaceFunction
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlBufferAdd
    - xmlXPathCheckError
    - xmlXPathCastNodeToString
    - xmlBufferContent
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlMalloc
    - xmlBufferSetAllocationScheme
    - exsltStrReturnString
    - xmlStrlen
    - xmlXPathStackIsNodeSet
    - xmlUTF8Strsize
    - xmlXPathSetError
    - xmlBufferLength
    - xmlBufferCreate
    - xmlStrncmp
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltStrReplaceFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:822,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:825,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:828,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:831,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:834,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:837,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:840,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/strings.c:843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 820
    functionDepth: 1
    functionLinenumber: 820
    functionLinenumberEnd: 846
    functionName: exsltStrRegister
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltStrRegister (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/libexslt/strings.c:858,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/strings.c:861,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/strings.c:865,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/strings.c:869,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/strings.c:873,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/strings.c:877,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 884
    functionName: exsltStrXpathCtxtRegister
    functionSourceFile: /src/libxslt/libexslt/strings.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterFuncNS
    - xmlXPathRegisterNs
    linkageType: ''
    returnType: int
    signature: int exsltStrXpathCtxtRegister (xmlXPathContextPtr ctxt, const xmlChar
      *prefix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libexslt/exslt.c:22,1
    - Dst: exsltCommonRegister
      Src: /src/libxslt/libexslt/exslt.c:23,1
    - Dst: exsltCryptoRegister
      Src: /src/libxslt/libexslt/exslt.c:25,1
    - Dst: exsltMathRegister
      Src: /src/libxslt/libexslt/exslt.c:27,1
    - Dst: exsltSetsRegister
      Src: /src/libxslt/libexslt/exslt.c:28,1
    - Dst: exsltFuncRegister
      Src: /src/libxslt/libexslt/exslt.c:29,1
    - Dst: exsltStrRegister
      Src: /src/libxslt/libexslt/exslt.c:30,1
    - Dst: exsltDateRegister
      Src: /src/libxslt/libexslt/exslt.c:31,1
    - Dst: exsltSaxonRegister
      Src: /src/libxslt/libexslt/exslt.c:32,1
    - Dst: exsltDynRegister
      Src: /src/libxslt/libexslt/exslt.c:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 20
    functionDepth: 2
    functionLinenumber: 20
    functionLinenumberEnd: 34
    functionName: exsltRegisterAll
    functionSourceFile: /src/libxslt/libexslt/exslt.c
    functionUses: 2
    functionsReached:
    - exsltSetsRegister
    - exsltFuncRegister
    - exsltStrRegister
    - exsltSaxonRegister
    - exsltCryptoRegister
    - exsltDynRegister
    - xsltInitGlobals
    - exsltDateRegister
    - exsltMathRegister
    - exsltCommonRegister
    linkageType: ''
    returnType: void
    signature: void exsltRegisterAll (void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:35,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:36,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:39,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:40,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 46
    functionName: exsltMathMin
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathCastNodeToNumber
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathMin (xmlNodeSetPtr ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/math.c:62,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/math.c:73,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:74,1
    - Dst: exsltMathMin
      Src: /src/libxslt/libexslt/math.c:77,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/math.c:79,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libexslt/math.c:81,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:83,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 84
    functionName: exsltMathMinFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - exsltMathMin
    - xsltGenericError
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltMathMinFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:104,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:105,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:108,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 115
    functionName: exsltMathMax
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathCastNodeToNumber
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathMax (xmlNodeSetPtr ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:131,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/math.c:141,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:142,1
    - Dst: exsltMathMax
      Src: /src/libxslt/libexslt/math.c:145,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/math.c:147,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libexslt/math.c:150,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:151,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 152
    functionName: exsltMathMaxFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXPathSetArityError
    - exsltMathMax
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltMathMaxFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxslt/libexslt/math.c:166,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:173,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:174,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:177,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:180,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:181,1
    - Dst: xmlXPathEmptyNodeSet
      Src: /src/libxslt/libexslt/math.c:182,1
    - Dst: xmlXPathEmptyNodeSet
      Src: /src/libxslt/libexslt/math.c:189,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:190,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:193,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 196
    functionName: exsltMathHighest
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - xmlXPathNodeSetCreate
    - xmlXPathCastNodeToNumber
    - xmlXPathEmptyNodeSet
    - xmlXPathNodeSetAddUnique
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr exsltMathHighest (xmlNodeSetPtr ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:211,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/math.c:221,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:222,1
    - Dst: exsltMathHighest
      Src: /src/libxslt/libexslt/math.c:225,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/math.c:227,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libexslt/math.c:229,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/math.c:231,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 232
    functionName: exsltMathHighestFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXPathSetArityError
    - xmlXPathReturnNodeSet
    - xmlXPathCheckError
    - exsltMathHighest
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltMathHighestFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxslt/libexslt/math.c:246,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:253,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:254,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:257,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxslt/libexslt/math.c:260,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:261,1
    - Dst: xmlXPathEmptyNodeSet
      Src: /src/libxslt/libexslt/math.c:262,1
    - Dst: xmlXPathEmptyNodeSet
      Src: /src/libxslt/libexslt/math.c:269,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:270,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/math.c:273,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 276
    functionName: exsltMathLowest
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - xmlXPathNodeSetCreate
    - xmlXPathCastNodeToNumber
    - xmlXPathEmptyNodeSet
    - xmlXPathNodeSetAddUnique
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr exsltMathLowest (xmlNodeSetPtr ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:292,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/math.c:302,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:303,1
    - Dst: exsltMathLowest
      Src: /src/libxslt/libexslt/math.c:306,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/math.c:308,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libexslt/math.c:310,1
    - Dst: xmlXPathReturnNodeSet
      Src: /src/libxslt/libexslt/math.c:312,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 313
    functionName: exsltMathLowestFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXPathSetArityError
    - xmlXPathReturnNodeSet
    - xmlXPathCheckError
    - exsltMathLowest
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltMathLowestFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:350,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:354,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:355,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:360,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:362,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:363,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:368,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:370,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:371,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:376,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:378,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:379,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:384,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:386,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:387,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:392,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:394,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:395,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:400,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libexslt/math.c:402,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/math.c:403,1
    - Dst: xmlStrsub
      Src: /src/libxslt/libexslt/math.c:408,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxslt/libexslt/math.c:415,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/math.c:416,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 2
    argNames:
    - name
    - precision
    argTypes:
    - xmlChar*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 418
    functionName: exsltMathConstant
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlStrlen
    - xmlXPathIsNaN
    - xmlXPathCastStringToNumber
    - xmlStrsub
    linkageType: ''
    returnType: double
    signature: double exsltMathConstant (xmlChar *name, double precision)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:433,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:436,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:437,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/math.c:440,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:441,1
    - Dst: exsltMathConstant
      Src: /src/libxslt/libexslt/math.c:444,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/math.c:446,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:448,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 427
    functionDepth: 2
    functionLinenumber: 427
    functionLinenumberEnd: 449
    functionName: exsltMathConstantFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - exsltMathConstant
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlFree
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathConstantFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/libxslt/libexslt/math.c:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 459
    functionDepth: 0
    functionLinenumber: 459
    functionLinenumberEnd: 467
    functionName: exsltMathRandom
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - rand
    linkageType: ''
    returnType: double
    signature: double exsltMathRandom (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:481,1
    - Dst: exsltMathRandom
      Src: /src/libxslt/libexslt/math.c:485,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:487,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 488
    functionName: exsltMathRandomFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - exsltMathRandom
    - xmlXPathSetArityError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathRandomFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:503,1
    - Dst: fabs
      Src: /src/libxslt/libexslt/math.c:505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 507
    functionName: exsltMathAbs
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - fabs
    linkageType: ''
    returnType: double
    signature: double exsltMathAbs (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:521,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:524,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:525,1
    - Dst: exsltMathAbs
      Src: /src/libxslt/libexslt/math.c:528,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 516
    functionDepth: 2
    functionLinenumber: 516
    functionLinenumberEnd: 531
    functionName: exsltMathAbsFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - exsltMathAbs
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathAbsFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:546,1
    - Dst: sqrt
      Src: /src/libxslt/libexslt/math.c:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 550
    functionName: exsltMathSqrt
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - sqrt
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathSqrt (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:564,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:567,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:568,1
    - Dst: exsltMathSqrt
      Src: /src/libxslt/libexslt/math.c:571,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 559
    functionDepth: 2
    functionLinenumber: 559
    functionLinenumberEnd: 574
    functionName: exsltMathSqrtFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - exsltMathSqrt
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathSqrtFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:591,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:591,1
    - Dst: pow
      Src: /src/libxslt/libexslt/math.c:593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - base
    - power
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 595
    functionName: exsltMathPower
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - pow
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathPower (double base, double power)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:609,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:612,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:613,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:617,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:618,1
    - Dst: exsltMathPower
      Src: /src/libxslt/libexslt/math.c:621,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:623,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 604
    functionDepth: 2
    functionLinenumber: 604
    functionLinenumberEnd: 624
    functionName: exsltMathPowerFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - exsltMathPower
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathPowerFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:639,1
    - Dst: log
      Src: /src/libxslt/libexslt/math.c:641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 635
    functionDepth: 1
    functionLinenumber: 635
    functionLinenumberEnd: 643
    functionName: exsltMathLog
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - log
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathLog (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:657,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:660,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:661,1
    - Dst: exsltMathLog
      Src: /src/libxslt/libexslt/math.c:664,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 652
    functionDepth: 2
    functionLinenumber: 652
    functionLinenumberEnd: 667
    functionName: exsltMathLogFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - exsltMathLog
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathLogFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:682,1
    - Dst: sin
      Src: /src/libxslt/libexslt/math.c:684,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 686
    functionName: exsltMathSin
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - sin
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathSin (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:700,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:703,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:704,1
    - Dst: exsltMathSin
      Src: /src/libxslt/libexslt/math.c:707,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:709,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 710
    functionName: exsltMathSinFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - exsltMathSin
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathSinFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:725,1
    - Dst: cos
      Src: /src/libxslt/libexslt/math.c:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 729
    functionName: exsltMathCos
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - cos
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathCos (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:743,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:746,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:747,1
    - Dst: exsltMathCos
      Src: /src/libxslt/libexslt/math.c:750,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 753
    functionName: exsltMathCosFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - exsltMathCos
    linkageType: ''
    returnType: void
    signature: void exsltMathCosFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:768,1
    - Dst: tan
      Src: /src/libxslt/libexslt/math.c:770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 764
    functionDepth: 1
    functionLinenumber: 764
    functionLinenumberEnd: 772
    functionName: exsltMathTan
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - tan
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathTan (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:786,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:789,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:790,1
    - Dst: exsltMathTan
      Src: /src/libxslt/libexslt/math.c:793,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 781
    functionDepth: 2
    functionLinenumber: 781
    functionLinenumberEnd: 796
    functionName: exsltMathTanFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - exsltMathTan
    linkageType: ''
    returnType: void
    signature: void exsltMathTanFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:811,1
    - Dst: asin
      Src: /src/libxslt/libexslt/math.c:813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 807
    functionDepth: 1
    functionLinenumber: 807
    functionLinenumberEnd: 815
    functionName: exsltMathAsin
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - asin
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathAsin (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:829,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:832,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:833,1
    - Dst: exsltMathAsin
      Src: /src/libxslt/libexslt/math.c:836,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 824
    functionDepth: 2
    functionLinenumber: 824
    functionLinenumberEnd: 839
    functionName: exsltMathAsinFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - exsltMathAsin
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathAsinFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:854,1
    - Dst: acos
      Src: /src/libxslt/libexslt/math.c:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 858
    functionName: exsltMathAcos
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - acos
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathAcos (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:872,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:875,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:876,1
    - Dst: exsltMathAcos
      Src: /src/libxslt/libexslt/math.c:879,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:881,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 867
    functionDepth: 2
    functionLinenumber: 867
    functionLinenumberEnd: 882
    functionName: exsltMathAcosFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - exsltMathAcos
    linkageType: ''
    returnType: void
    signature: void exsltMathAcosFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:897,1
    - Dst: atan
      Src: /src/libxslt/libexslt/math.c:899,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 893
    functionDepth: 1
    functionLinenumber: 893
    functionLinenumberEnd: 901
    functionName: exsltMathAtan
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - atan
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathAtan (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:915,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:918,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:919,1
    - Dst: exsltMathAtan
      Src: /src/libxslt/libexslt/math.c:922,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:924,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 910
    functionDepth: 2
    functionLinenumber: 910
    functionLinenumberEnd: 925
    functionName: exsltMathAtanFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - exsltMathAtan
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathAtanFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:942,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:942,1
    - Dst: atan2
      Src: /src/libxslt/libexslt/math.c:944,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - y
    - x
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 938
    functionDepth: 1
    functionLinenumber: 938
    functionLinenumberEnd: 946
    functionName: exsltMathAtan2
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - atan2
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathAtan2 (double y, double x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:960,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:963,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:964,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:968,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:969,1
    - Dst: exsltMathAtan2
      Src: /src/libxslt/libexslt/math.c:972,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:974,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 955
    functionDepth: 2
    functionLinenumber: 955
    functionLinenumberEnd: 975
    functionName: exsltMathAtan2Function
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - xmlXPathReturnNumber
    - exsltMathAtan2
    linkageType: ''
    returnType: void
    signature: void exsltMathAtan2Function (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libexslt/math.c:991,1
    - Dst: exp
      Src: /src/libxslt/libexslt/math.c:993,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - num
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 995
    functionName: exsltMathExp
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - exp
    - xmlXPathIsNaN
    linkageType: ''
    returnType: double
    signature: double exsltMathExp (double num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/math.c:1009,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxslt/libexslt/math.c:1012,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/math.c:1013,1
    - Dst: exsltMathExp
      Src: /src/libxslt/libexslt/math.c:1016,1
    - Dst: xmlXPathReturnNumber
      Src: /src/libxslt/libexslt/math.c:1018,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1004
    functionDepth: 2
    functionLinenumber: 1004
    functionLinenumberEnd: 1019
    functionName: exsltMathExpFunction
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathSetArityError
    - xmlXPathPopNumber
    - xmlXPathCheckError
    - exsltMathExp
    - xmlXPathReturnNumber
    linkageType: ''
    returnType: void
    signature: void exsltMathExpFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1029,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1032,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1035,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1038,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1041,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1044,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1047,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1050,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1053,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1056,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1059,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1062,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1065,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1068,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1071,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1074,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1077,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/math.c:1080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1083
      start: 1027
    functionDepth: 1
    functionLinenumber: 1027
    functionLinenumberEnd: 1083
    functionName: exsltMathRegister
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltMathRegister (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterNs
      Src: /src/libxslt/libexslt/math.c:1095,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1098,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1102,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1106,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1110,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1114,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1118,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1122,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1126,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1130,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1134,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1138,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1142,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1146,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1150,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1154,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1158,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1162,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libexslt/math.c:1166,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1090
    functionDepth: 1
    functionLinenumber: 1090
    functionLinenumberEnd: 1173
    functionName: exsltMathXpathCtxtRegister
    functionSourceFile: /src/libxslt/libexslt/math.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterFuncNS
    - xmlXPathRegisterNs
    linkageType: ''
    returnType: int
    signature: int exsltMathXpathCtxtRegister (xmlXPathContextPtr ctxt, const xmlChar
      *prefix)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltPrintErrorContext
      Src: /src/libxslt/libexslt/dynamic.c:54,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/dynamic.c:54,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/dynamic.c:55,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/dynamic.c:60,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/dynamic.c:62,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/dynamic.c:63,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/dynamic.c:64,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/dynamic.c:64,1
    - Dst: xmlXPathEval
      Src: /src/libxslt/libexslt/dynamic.c:73,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/dynamic.c:78,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/dynamic.c:80,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/dynamic.c:82,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/dynamic.c:82,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/dynamic.c:84,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 86
    functionName: exsltDynEvaluateFunction
    functionSourceFile: /src/libxslt/libexslt/dynamic.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlFree
    - xmlStrlen
    - xsltXPathGetTransformContext
    - xmlXPathNewNodeSet
    - valuePush
    - xsltPrintErrorContext
    - xmlXPathEval
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltDynEvaluateFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/dynamic.c:114,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/dynamic.c:117,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/dynamic.c:118,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxslt/libexslt/dynamic.c:121,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/dynamic.c:122,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libexslt/dynamic.c:125,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/dynamic.c:127,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/dynamic.c:132,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/dynamic.c:134,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/dynamic.c:134,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/dynamic.c:139,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libexslt/dynamic.c:140,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libexslt/dynamic.c:152,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/dynamic.c:154,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libexslt/dynamic.c:158,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxslt/libexslt/dynamic.c:160,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/dynamic.c:177,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libexslt/dynamic.c:187,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxslt/libexslt/dynamic.c:194,1
    - Dst: xmlNewTextChild
      Src: /src/libxslt/libexslt/dynamic.c:201,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libexslt/dynamic.c:203,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libexslt/dynamic.c:207,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/dynamic.c:211,1
    - Dst: xmlXPathCastNumberToString
      Src: /src/libxslt/libexslt/dynamic.c:219,1
    - Dst: xmlNewTextChild
      Src: /src/libxslt/libexslt/dynamic.c:222,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/dynamic.c:225,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libexslt/dynamic.c:229,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/dynamic.c:233,1
    - Dst: xmlNewTextChild
      Src: /src/libxslt/libexslt/dynamic.c:241,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libexslt/dynamic.c:246,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libexslt/dynamic.c:250,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/dynamic.c:258,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libexslt/dynamic.c:271,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libexslt/dynamic.c:273,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/dynamic.c:275,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/dynamic.c:276,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 111
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 278
    functionName: exsltDynMapFunction
    functionSourceFile: /src/libxslt/libexslt/dynamic.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetSort
    - xmlXPathCheckError
    - xsltCreateRVT
    - xmlXPathFreeObject
    - xsltGenericError
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathFreeCompExpr
    - xmlNewNs
    - valuePush
    - xmlXPathCtxtCompile
    - xmlStrlen
    - xsltTransformError
    - BAD_CAST
    - xsltXPathGetTransformContext
    - xmlXPathNewNodeSet
    - xmlXPathNodeSetAdd
    - xmlXPathCastNumberToString
    - xmlXPathNodeSetAddUnique
    - xsltRegisterLocalRVT
    - xmlXPathCompiledEval
    - xmlNewTextChild
    - xmlXPathPopNodeSet
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void exsltDynMapFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/dynamic.c:289,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/dynamic.c:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 296
    functionName: exsltDynRegister
    functionSourceFile: /src/libxslt/libexslt/dynamic.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltDynRegister (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - bin
    - binlen
    - hex
    - hexlen
    argTypes:
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 66
    functionName: exsltCryptoBin2Hex
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoBin2Hex (const unsigned char *bin, int binlen,\n\t\t
      \   unsigned char *hex, int hexlen)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 4
    argNames:
    - hex
    - hexlen
    - bin
    - binlen
    argTypes:
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 104
    functionName: exsltCryptoHex2Bin
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int exsltCryptoHex2Bin (const unsigned char *hex, int hexlen,\n\t\t
      \   unsigned char *bin, int binlen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetLastError
      Src: /src/libxslt/libexslt/crypto.c:126,1
    - Dst: FormatMessageA
      Src: /src/libxslt/libexslt/crypto.c:128,1
    - Dst: MAKELANGID
      Src: /src/libxslt/libexslt/crypto.c:130,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:133,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:133,1
    - Dst: LocalFree
      Src: /src/libxslt/libexslt/crypto.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - line
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 137
    functionName: exsltCryptoCryptoApiReportError
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - GetLastError
    - xsltTransformError
    - xsltXPathGetTransformContext
    - LocalFree
    - MAKELANGID
    - FormatMessageA
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoCryptoApiReportError (xmlXPathParserContextPtr ctxt,\n\t\t\t\t
      int line)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CryptCreateHash
      Src: /src/libxslt/libexslt/crypto.c:148,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:149,1
    - Dst: CryptHashData
      Src: /src/libxslt/libexslt/crypto.c:153,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:154,1
    - Dst: CryptGetHashParam
      Src: /src/libxslt/libexslt/crypto.c:158,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:159,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 7
    argNames:
    - ctxt
    - hCryptProv
    - algorithm
    - msg
    - msglen
    - dest
    - destlen
    argTypes:
    - xmlXPathParserContextPtr
    - HCRYPTPROV
    - ALG_ID
    - unsigned char*
    - unsigned int
    - char*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 165
    functionName: exsltCryptoCryptoApiCreateHash
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - CryptHashData
    - CryptGetHashParam
    - exsltCryptoCryptoApiReportError
    - CryptCreateHash
    linkageType: ''
    returnType: HCRYPTHASH
    signature: "HCRYPTHASH exsltCryptoCryptoApiCreateHash (xmlXPathParserContextPtr
      ctxt,\n\t\t\t\tHCRYPTPROV hCryptProv, ALG_ID algorithm,\n\t\t\t\tconst unsigned
      char *msg, unsigned int msglen,\n\t\t\t\tchar *dest, unsigned int destlen)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CryptAcquireContext
      Src: /src/libxslt/libexslt/crypto.c:186,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:188,1
    - Dst: exsltCryptoCryptoApiCreateHash
      Src: /src/libxslt/libexslt/crypto.c:192,1
    - Dst: CryptDestroyHash
      Src: /src/libxslt/libexslt/crypto.c:196,1
    - Dst: CryptReleaseContext
      Src: /src/libxslt/libexslt/crypto.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - ctxt
    - algorithm
    - msg
    - msglen
    - dest
    argTypes:
    - xmlXPathParserContextPtr
    - ALG_ID
    - char*
    - unsigned long
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 200
    functionName: exsltCryptoCryptoApiHash
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - CryptAcquireContext
    - exsltCryptoCryptoApiCreateHash
    - CryptDestroyHash
    - CryptReleaseContext
    - exsltCryptoCryptoApiReportError
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoCryptoApiHash (xmlXPathParserContextPtr ctxt,\n\t\t\t
      \ ALG_ID algorithm, const char *msg,\n\t\t\t  unsigned long msglen,\n\t\t\t
      \ char dest[HASH_DIGEST_LENGTH])"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:214,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:214,1
    - Dst: CryptAcquireContext
      Src: /src/libxslt/libexslt/crypto.c:220,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:222,1
    - Dst: exsltCryptoCryptoApiCreateHash
      Src: /src/libxslt/libexslt/crypto.c:226,1
    - Dst: CryptDeriveKey
      Src: /src/libxslt/libexslt/crypto.c:231,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:233,1
    - Dst: memcpy
      Src: /src/libxslt/libexslt/crypto.c:238,1
    - Dst: CryptEncrypt
      Src: /src/libxslt/libexslt/crypto.c:239,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:240,1
    - Dst: CryptDestroyHash
      Src: /src/libxslt/libexslt/crypto.c:246,1
    - Dst: CryptDestroyKey
      Src: /src/libxslt/libexslt/crypto.c:249,1
    - Dst: CryptReleaseContext
      Src: /src/libxslt/libexslt/crypto.c:250,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 6
    argNames:
    - ctxt
    - key
    - msg
    - msglen
    - dest
    - destlen
    argTypes:
    - xmlXPathParserContextPtr
    - unsigned char*
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 251
    functionName: exsltCryptoCryptoApiRc4Encrypt
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - CryptAcquireContext
    - CryptDestroyKey
    - exsltCryptoCryptoApiCreateHash
    - xsltTransformError
    - CryptDeriveKey
    - xsltXPathGetTransformContext
    - CryptDestroyHash
    - CryptReleaseContext
    - memcpy
    - CryptEncrypt
    - exsltCryptoCryptoApiReportError
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoCryptoApiRc4Encrypt (xmlXPathParserContextPtr ctxt,\n\t\t\t\tconst
      unsigned char *key,\n\t\t\t\tconst unsigned char *msg, int msglen,\n\t\t\t\tunsigned
      char *dest, int destlen)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:265,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:265,1
    - Dst: CryptAcquireContext
      Src: /src/libxslt/libexslt/crypto.c:271,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:273,1
    - Dst: exsltCryptoCryptoApiCreateHash
      Src: /src/libxslt/libexslt/crypto.c:277,1
    - Dst: CryptDeriveKey
      Src: /src/libxslt/libexslt/crypto.c:282,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:284,1
    - Dst: memcpy
      Src: /src/libxslt/libexslt/crypto.c:289,1
    - Dst: CryptDecrypt
      Src: /src/libxslt/libexslt/crypto.c:290,1
    - Dst: exsltCryptoCryptoApiReportError
      Src: /src/libxslt/libexslt/crypto.c:291,1
    - Dst: CryptDestroyHash
      Src: /src/libxslt/libexslt/crypto.c:297,1
    - Dst: CryptDestroyKey
      Src: /src/libxslt/libexslt/crypto.c:300,1
    - Dst: CryptReleaseContext
      Src: /src/libxslt/libexslt/crypto.c:301,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 6
    argNames:
    - ctxt
    - key
    - msg
    - msglen
    - dest
    - destlen
    argTypes:
    - xmlXPathParserContextPtr
    - unsigned char*
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 253
    functionDepth: 3
    functionLinenumber: 253
    functionLinenumberEnd: 302
    functionName: exsltCryptoCryptoApiRc4Decrypt
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - CryptAcquireContext
    - CryptDestroyKey
    - exsltCryptoCryptoApiCreateHash
    - CryptDecrypt
    - xsltTransformError
    - CryptDeriveKey
    - xsltXPathGetTransformContext
    - CryptDestroyHash
    - CryptReleaseContext
    - memcpy
    - exsltCryptoCryptoApiReportError
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoCryptoApiRc4Decrypt (xmlXPathParserContextPtr ctxt,\n\t\t\t\tconst
      unsigned char *key,\n\t\t\t\tconst unsigned char *msg, int msglen,\n\t\t\t\tunsigned
      char *dest, int destlen)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlLockLibrary
      Src: /src/libxslt/libexslt/crypto.c:328,1
    - Dst: gcry_check_version
      Src: /src/libxslt/libexslt/crypto.c:338,1
    - Dst: xmlUnlockLibrary
      Src: /src/libxslt/libexslt/crypto.c:342,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 343
    functionName: exsltCryptoGcryptInit
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlUnlockLibrary
    - gcry_check_version
    - xmlLockLibrary
    linkageType: ''
    returnType: void
    signature: void exsltCryptoGcryptInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoGcryptInit
      Src: /src/libxslt/libexslt/crypto.c:362,1
    - Dst: gcry_md_hash_buffer
      Src: /src/libxslt/libexslt/crypto.c:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - algorithm
    - msg
    - msglen
    - dest
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - char*
    - unsigned long
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 364
    functionName: exsltCryptoGcryptHash
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - exsltCryptoGcryptInit
    - gcry_md_hash_buffer
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoGcryptHash (xmlXPathParserContextPtr ctxt ATTRIBUTE_UNUSED,\n/*
      changed the enum to int */\n\t\t       int algorithm, const char *msg,\n\t\t
      \      unsigned long msglen,\n\t\t       char dest[HASH_DIGEST_LENGTH])"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoGcryptInit
      Src: /src/libxslt/libexslt/crypto.c:374,1
    - Dst: gcry_cipher_open
      Src: /src/libxslt/libexslt/crypto.c:376,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:379,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:379,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:382,1
    - Dst: gcry_cipher_setkey
      Src: /src/libxslt/libexslt/crypto.c:385,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:387,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:387,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:390,1
    - Dst: gcry_cipher_encrypt
      Src: /src/libxslt/libexslt/crypto.c:393,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:396,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:396,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:399,1
    - Dst: gcry_cipher_close
      Src: /src/libxslt/libexslt/crypto.c:402,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - key
    - msg
    - msglen
    - dest
    - destlen
    argTypes:
    - xmlXPathParserContextPtr
    - unsigned char*
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 366
    functionDepth: 2
    functionLinenumber: 366
    functionLinenumberEnd: 403
    functionName: exsltCryptoGcryptRc4Encrypt
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - gcry_strerror
    - exsltCryptoGcryptInit
    - xsltTransformError
    - gcry_cipher_open
    - xsltXPathGetTransformContext
    - gcry_cipher_encrypt
    - gcry_cipher_close
    - gcry_cipher_setkey
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoGcryptRc4Encrypt (xmlXPathParserContextPtr ctxt,\n\t\t\t
      \    const unsigned char *key,\n\t\t\t     const unsigned char *msg, int msglen,\n\t\t\t
      \    unsigned char *dest, int destlen)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoGcryptInit
      Src: /src/libxslt/libexslt/crypto.c:413,1
    - Dst: gcry_cipher_open
      Src: /src/libxslt/libexslt/crypto.c:415,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:418,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:418,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:421,1
    - Dst: gcry_cipher_setkey
      Src: /src/libxslt/libexslt/crypto.c:424,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:426,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:426,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:429,1
    - Dst: gcry_cipher_decrypt
      Src: /src/libxslt/libexslt/crypto.c:432,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:435,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:435,1
    - Dst: gcry_strerror
      Src: /src/libxslt/libexslt/crypto.c:438,1
    - Dst: gcry_cipher_close
      Src: /src/libxslt/libexslt/crypto.c:441,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - key
    - msg
    - msglen
    - dest
    - destlen
    argTypes:
    - xmlXPathParserContextPtr
    - unsigned char*
    - unsigned char*
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 442
    functionName: exsltCryptoGcryptRc4Decrypt
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_decrypt
    - gcry_strerror
    - exsltCryptoGcryptInit
    - xsltTransformError
    - gcry_cipher_open
    - xsltXPathGetTransformContext
    - gcry_cipher_close
    - gcry_cipher_setkey
    linkageType: ''
    returnType: void
    signature: "void exsltCryptoGcryptRc4Decrypt (xmlXPathParserContextPtr ctxt,\n\t\t\t
      \    const unsigned char *key,\n\t\t\t     const unsigned char *msg, int msglen,\n\t\t\t
      \    unsigned char *dest, int destlen)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/crypto.c:463,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/crypto.c:467,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/crypto.c:468,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:471,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:472,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - nargs
    - str
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 477
    functionName: exsltCryptoPopString
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlStrlen
    - xmlXPathReturnEmptyString
    linkageType: ''
    returnType: int
    signature: "int exsltCryptoPopString (xmlXPathParserContextPtr ctxt, int nargs,\n\t\t
      \     xmlChar ** str)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoPopString
      Src: /src/libxslt/libexslt/crypto.c:494,1
    - Dst: PLATFORM_HASH
      Src: /src/libxslt/libexslt/crypto.c:498,1
    - Dst: exsltCryptoBin2Hex
      Src: /src/libxslt/libexslt/crypto.c:500,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/crypto.c:502,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/crypto.c:503,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:506,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 486
    functionDepth: 2
    functionLinenumber: 486
    functionLinenumberEnd: 507
    functionName: exsltCryptoMd4Function
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - exsltCryptoPopString
    - xmlStrdup
    - xmlXPathReturnString
    - xmlFree
    - PLATFORM_HASH
    - exsltCryptoBin2Hex
    linkageType: ''
    returnType: void
    signature: void exsltCryptoMd4Function (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoPopString
      Src: /src/libxslt/libexslt/crypto.c:524,1
    - Dst: PLATFORM_HASH
      Src: /src/libxslt/libexslt/crypto.c:528,1
    - Dst: exsltCryptoBin2Hex
      Src: /src/libxslt/libexslt/crypto.c:530,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/crypto.c:532,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/crypto.c:533,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:536,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 516
    functionDepth: 2
    functionLinenumber: 516
    functionLinenumberEnd: 537
    functionName: exsltCryptoMd5Function
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - exsltCryptoPopString
    - xmlStrdup
    - xmlXPathReturnString
    - xmlFree
    - PLATFORM_HASH
    - exsltCryptoBin2Hex
    linkageType: ''
    returnType: void
    signature: void exsltCryptoMd5Function (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: exsltCryptoPopString
      Src: /src/libxslt/libexslt/crypto.c:554,1
    - Dst: PLATFORM_HASH
      Src: /src/libxslt/libexslt/crypto.c:558,1
    - Dst: exsltCryptoBin2Hex
      Src: /src/libxslt/libexslt/crypto.c:560,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/crypto.c:562,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/crypto.c:563,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 546
    functionDepth: 2
    functionLinenumber: 546
    functionLinenumberEnd: 567
    functionName: exsltCryptoSha1Function
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - exsltCryptoPopString
    - xmlStrdup
    - xmlXPathReturnString
    - xmlFree
    - PLATFORM_HASH
    - exsltCryptoBin2Hex
    linkageType: ''
    returnType: void
    signature: void exsltCryptoSha1Function (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/crypto.c:586,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:589,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/crypto.c:591,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/crypto.c:592,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:595,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:596,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/crypto.c:600,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/crypto.c:601,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:604,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:605,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:606,1
    - Dst: xmlMallocAtomic
      Src: /src/libxslt/libexslt/crypto.c:610,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:612,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:615,1
    - Dst: memset
      Src: /src/libxslt/libexslt/crypto.c:618,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:621,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:624,1
    - Dst: memcpy
      Src: /src/libxslt/libexslt/crypto.c:627,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libexslt/crypto.c:631,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:633,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:636,1
    - Dst: PLATFORM_RC4_ENCRYPT
      Src: /src/libxslt/libexslt/crypto.c:639,1
    - Dst: xmlMallocAtomic
      Src: /src/libxslt/libexslt/crypto.c:643,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:645,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:648,1
    - Dst: exsltCryptoBin2Hex
      Src: /src/libxslt/libexslt/crypto.c:652,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/crypto.c:653,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:657,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:659,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:661,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:663,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 69
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 664
    functionName: exsltCryptoRc4EncryptFunction
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - PLATFORM_RC4_ENCRYPT
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlStrlen
    - xmlFree
    - xmlXPathReturnString
    - xsltTransformError
    - xmlMallocAtomic
    - xsltXPathGetTransformContext
    - exsltCryptoBin2Hex
    - xmlXPathReturnEmptyString
    - memcpy
    - memset
    linkageType: ''
    returnType: void
    signature: void exsltCryptoRc4EncryptFunction (xmlXPathParserContextPtr ctxt,
      int nargs)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/crypto.c:683,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/crypto.c:686,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/crypto.c:688,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/crypto.c:689,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:692,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:693,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/crypto.c:697,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libexslt/crypto.c:698,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:701,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:702,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:703,1
    - Dst: xmlMallocAtomic
      Src: /src/libxslt/libexslt/crypto.c:707,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:709,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:712,1
    - Dst: memset
      Src: /src/libxslt/libexslt/crypto.c:715,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:717,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:720,1
    - Dst: memcpy
      Src: /src/libxslt/libexslt/crypto.c:723,1
    - Dst: xmlMallocAtomic
      Src: /src/libxslt/libexslt/crypto.c:727,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:729,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:732,1
    - Dst: exsltCryptoHex2Bin
      Src: /src/libxslt/libexslt/crypto.c:735,1
    - Dst: xmlMallocAtomic
      Src: /src/libxslt/libexslt/crypto.c:738,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:740,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:743,1
    - Dst: PLATFORM_RC4_DECRYPT
      Src: /src/libxslt/libexslt/crypto.c:746,1
    - Dst: xmlCheckUTF8
      Src: /src/libxslt/libexslt/crypto.c:749,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/crypto.c:750,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:752,1
    - Dst: xmlXPathReturnEmptyString
      Src: /src/libxslt/libexslt/crypto.c:753,1
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/libexslt/crypto.c:755,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:760,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:762,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:764,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/crypto.c:766,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 75
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 673
    functionDepth: 1
    functionLinenumber: 673
    functionLinenumberEnd: 767
    functionName: exsltCryptoRc4DecryptFunction
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlStrlen
    - xmlFree
    - xmlXPathReturnString
    - xsltTransformError
    - xmlCheckUTF8
    - xmlMallocAtomic
    - xsltXPathGetTransformContext
    - PLATFORM_RC4_DECRYPT
    - exsltCryptoHex2Bin
    - xmlXPathReturnEmptyString
    - memcpy
    - memset
    linkageType: ''
    returnType: void
    signature: void exsltCryptoRc4DecryptFunction (xmlXPathParserContextPtr ctxt,
      int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/crypto.c:777,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/crypto.c:780,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/crypto.c:783,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/crypto.c:786,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/crypto.c:789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 775
    functionDepth: 1
    functionLinenumber: 775
    functionLinenumberEnd: 792
    functionName: exsltCryptoRegister
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void exsltCryptoRegister (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 800
    functionDepth: 0
    functionLinenumber: 800
    functionLinenumberEnd: 802
    functionName: exsltCryptoRegister
    functionSourceFile: /src/libxslt/libexslt/crypto.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void exsltCryptoRegister (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libexslt/saxon.c:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: exsltSaxonInit
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: "void *\nexsltSaxonInit (xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\tconst
      xmlChar *URI ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libexslt/saxon.c:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionName: exsltSaxonFreeCompExprEntry
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    linkageType: ''
    returnType: void
    signature: "void exsltSaxonFreeCompExprEntry(void *payload,\n                            const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libexslt/saxon.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - vdata
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionName: exsltSaxonShutdown
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: "void exsltSaxonShutdown (xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t
      \   const xmlChar *URI ATTRIBUTE_UNUSED,\n\t\t    void *vdata)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/saxon.c:82,1
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/saxon.c:85,1
    - Dst: xmlXPathPopString
      Src: /src/libxslt/libexslt/saxon.c:89,1
    - Dst: xmlXPathCheckError
      Src: /src/libxslt/libexslt/saxon.c:90,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/saxon.c:91,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/libexslt/saxon.c:95,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libexslt/saxon.c:98,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libexslt/saxon.c:101,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/saxon.c:103,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/saxon.c:104,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libexslt/saxon.c:107,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libexslt/saxon.c:108,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/saxon.c:109,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/saxon.c:110,1
    - Dst: xmlFree
      Src: /src/libxslt/libexslt/saxon.c:115,1
    - Dst: xmlXPathReturnExternal
      Src: /src/libxslt/libexslt/saxon.c:117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 118
    functionName: exsltSaxonExpressionFunction
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopString
    - xmlXPathSetArityError
    - xmlFree
    - xmlXPathFreeCompExpr
    - xmlHashLookup
    - xmlHashAddEntry
    - xsltGetExtData
    - xsltXPathGetTransformContext
    - xmlXPathSetTypeError
    - xmlXPathCheckError
    - xmlXPathCtxtCompile
    - xmlXPathReturnExternal
    - xmlXPathSetError
    linkageType: ''
    returnType: void
    signature: void exsltSaxonExpressionFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/saxon.c:141,1
    - Dst: xmlXPathStackIsExternal
      Src: /src/libxslt/libexslt/saxon.c:145,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxslt/libexslt/saxon.c:146,1
    - Dst: xmlXPathPopExternal
      Src: /src/libxslt/libexslt/saxon.c:150,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libexslt/saxon.c:152,1
    - Dst: xmlXPathSetError
      Src: /src/libxslt/libexslt/saxon.c:154,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/saxon.c:158,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 159
    functionName: exsltSaxonEvalFunction
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlXPathPopExternal
    - xmlXPathCompiledEval
    - xmlXPathSetArityError
    - xmlXPathSetTypeError
    - valuePush
    - xmlXPathStackIsExternal
    - xmlXPathSetError
    linkageType: ''
    returnType: void
    signature: void exsltSaxonEvalFunction (xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/saxon.c:181,1
    - Dst: exsltSaxonExpressionFunction
      Src: /src/libxslt/libexslt/saxon.c:185,1
    - Dst: exsltSaxonEvalFunction
      Src: /src/libxslt/libexslt/saxon.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: exsltSaxonEvaluateFunction
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - exsltSaxonEvalFunction
    - xmlXPathSetArityError
    - exsltSaxonExpressionFunction
    linkageType: ''
    returnType: void
    signature: void exsltSaxonEvaluateFunction (xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetArityError
      Src: /src/libxslt/libexslt/saxon.c:204,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/saxon.c:210,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libexslt/saxon.c:210,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/saxon.c:212,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libexslt/saxon.c:212,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 213
    functionName: exsltSaxonSystemIdFunction
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - valuePush
    - xmlXPathSetArityError
    - xmlXPathNewString
    linkageType: ''
    returnType: void
    signature: void exsltSaxonSystemIdFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/saxon.c:247,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/saxon.c:247,1
    - Dst: valuePop
      Src: /src/libxslt/libexslt/saxon.c:253,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxslt/libexslt/saxon.c:258,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libexslt/saxon.c:264,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libexslt/saxon.c:264,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libexslt/saxon.c:278,1
    - Dst: xmlGetLineNo
      Src: /src/libxslt/libexslt/saxon.c:286,1
    - Dst: valuePush
      Src: /src/libxslt/libexslt/saxon.c:288,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/libexslt/saxon.c:288,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libexslt/saxon.c:290,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 291
    functionName: exsltSaxonLineNumberFunction
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 0
    functionsReached:
    - xmlXPathCmpNodes
    - xmlXPathNewFloat
    - valuePop
    - xsltTransformError
    - xsltXPathGetTransformContext
    - xmlGetLineNo
    - valuePush
    - xmlXPathFreeObject
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void exsltSaxonLineNumberFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModule
      Src: /src/libxslt/libexslt/saxon.c:300,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/saxon.c:303,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/saxon.c:306,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/saxon.c:309,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/saxon.c:312,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libexslt/saxon.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 318
    functionName: exsltSaxonRegister
    functionSourceFile: /src/libxslt/libexslt/saxon.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleFunction
    - xsltRegisterExtModule
    linkageType: ''
    returnType: void
    signature: void exsltSaxonRegister (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:21,1
    - Dst: printf
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:23,1
    - Dst: printf
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 25
    functionName: usage
    functionSourceFile: /src/libxslt/doc/tutorial2/libxslt_pipes.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:36,1
    - Dst: calloc
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:37,1
    - Dst: usage
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:42,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:51,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:52,1
    - Dst: fprintf
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:57,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:61,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:62,1
    - Dst: fopen
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:64,1
    - Dst: fprintf
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:66,1
    - Dst: usage
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:67,1
    - Dst: malloc
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:77,1
    - Dst: strlen
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:77,1
    - Dst: strcpy
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:78,1
    - Dst: strtok
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:79,1
    - Dst: strtok
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:80,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:81,1
    - Dst: xsltParseStylesheetFile
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:83,1
    - Dst: xmlParseFile
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:85,1
    - Dst: xmlParseFile
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:88,1
    - Dst: free
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:90,1
    - Dst: xmlSubstituteEntitiesDefault
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:93,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:101,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:102,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:107,1
    - Dst: xmlDocDump
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:109,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:111,1
    - Dst: fclose
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:114,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:117,1
    - Dst: xsltCleanupGlobals
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:120,1
    - Dst: xmlCleanupParser
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:121,1
    - Dst: free
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:124,1
    - Dst: free
      Src: /src/libxslt/doc/tutorial2/libxslt_pipes.c:125,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 127
    functionName: main
    functionSourceFile: /src/libxslt/doc/tutorial2/libxslt_pipes.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlCleanupParser
    - xmlSubstituteEntitiesDefault
    - fclose
    - xsltApplyStylesheet
    - calloc
    - xsltSaveResultToFile
    - strcpy
    - strcmp
    - xsltParseStylesheetFile
    - fprintf
    - xsltFreeStylesheet
    - free
    - strtok
    - usage
    - xsltCleanupGlobals
    - fopen
    - xmlParseFile
    - malloc
    - xmlDocDump
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:29,1
    - Dst: printf
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionName: usage
    functionSourceFile: /src/libxslt/doc/tutorial/libxslt_tutorial.c
    functionUses: 1
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:43,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:51,1
    - Dst: strcmp
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:52,1
    - Dst: fprintf
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:57,1
    - Dst: fprintf
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:61,1
    - Dst: usage
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:62,1
    - Dst: xmlSubstituteEntitiesDefault
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:68,1
    - Dst: xsltParseStylesheetFile
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:70,1
    - Dst: xmlParseFile
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:72,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:73,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:74,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:76,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:77,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:78,1
    - Dst: xsltCleanupGlobals
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:80,1
    - Dst: xmlCleanupParser
      Src: /src/libxslt/doc/tutorial/libxslt_tutorial.c:81,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 84
    functionName: main
    functionSourceFile: /src/libxslt/doc/tutorial/libxslt_tutorial.c
    functionUses: 0
    functionsReached:
    - usage
    - xsltCleanupGlobals
    - xmlCleanupParser
    - xmlSubstituteEntitiesDefault
    - xsltParseStylesheetFile
    - strcmp
    - xmlParseFile
    - xsltFreeStylesheet
    - xsltApplyStylesheet
    - fprintf
    - xmlFreeDoc
    - xsltSaveResultToFile
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - expression
    - function
    - file
    - line
    - pReserved
    argTypes:
    - wchar_t*
    - wchar_t*
    - wchar_t*
    - unsigned int
    - uintptr_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionName: myInvalidParameterHandler
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void myInvalidParameterHandler(const wchar_t *expression,\n                          const
      wchar_t *function,\n                          const wchar_t *file,\n                          unsigned
      int   line,\n                          uintptr_t      pReserved)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_AsFileDescriptor
      Src: /src/libxslt/python/types.c:87,1
    - Dst: _set_invalid_parameter_handler
      Src: /src/libxslt/python/types.c:103,1
    - Dst: _CrtSetReportMode
      Src: /src/libxslt/python/types.c:106,1
    - Dst: _get_osfhandle
      Src: /src/libxslt/python/types.c:109,1
    - Dst: GetModuleHandleW
      Src: /src/libxslt/python/types.c:114,1
    - Dst: GetProcAddress
      Src: /src/libxslt/python/types.c:119,1
    - Dst: NtQueryInformationFile
      Src: /src/libxslt/python/types.c:122,1
    - Dst: FreeLibrary
      Src: /src/libxslt/python/types.c:155,1
    - Dst: fcntl
      Src: /src/libxslt/python/types.c:178,1
    - Dst: dup
      Src: /src/libxslt/python/types.c:213,1
    - Dst: fdopen
      Src: /src/libxslt/python/types.c:216,1
    - Dst: close
      Src: /src/libxslt/python/types.c:218,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 76
    argCount: 1
    argNames:
    - f
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 222
    functionName: libxml_PyFileGet
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - fdopen
    - GetModuleHandleW
    - NtQueryInformationFile
    - GetProcAddress
    - _set_invalid_parameter_handler
    - FreeLibrary
    - dup
    - _CrtSetReportMode
    - close
    - PyObject_AsFileDescriptor
    - fcntl
    - _get_osfhandle
    linkageType: ''
    returnType: FILE
    signature: 'FILE *

      libxml_PyFileGet(PyObject *f)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/libxslt/python/types.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: libxml_PyFileRelease
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - fclose
    linkageType: ''
    returnType: void
    signature: void libxml_PyFileRelease(FILE *f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:236,1
    - Dst: PY_IMPORT_INT
      Src: /src/libxslt/python/types.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionName: libxml_intWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_INT
    - printf
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_intWrap(int val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:248,1
    - Dst: PY_IMPORT_INT
      Src: /src/libxslt/python/types.c:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 252
    functionName: libxml_longWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_INT
    - printf
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_longWrap(long val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:260,1
    - Dst: PyFloat_FromDouble
      Src: /src/libxslt/python/types.c:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 264
    functionName: libxml_doubleWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyFloat_FromDouble
    - printf
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_doubleWrap(double val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:272,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:275,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:279,1
    - Dst: xmlFree
      Src: /src/libxslt/python/types.c:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 282
    functionName: libxml_charPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    - xmlFree
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_charPtrWrap(char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:290,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:293,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 299
    functionName: libxml_charPtrConstWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_charPtrConstWrap(const char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:307,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:310,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:314,1
    - Dst: xmlFree
      Src: /src/libxslt/python/types.c:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 317
    functionName: libxml_xmlCharPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    - xmlFree
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCharPtrWrap(xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:325,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:328,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 334
    functionName: libxml_xmlCharPtrConstWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCharPtrConstWrap(const xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:342,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:345,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:349,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 351
    functionName: libxml_constcharPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_constcharPtrWrap(const char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:359,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:362,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 368
    functionName: libxml_constxmlCharPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_constxmlCharPtrWrap(const xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:376,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:379,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 385
    functionName: libxml_xmlDocPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlDocPtrWrap(xmlDocPtr doc)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:393,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:396,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:399,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 401
    functionName: libxml_xmlNodePtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNodePtrWrap(xmlNodePtr node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:409,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:412,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:415,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - uri
    argTypes:
    - xmlURIPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 417
    functionName: libxml_xmlURIPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlURIPtrWrap(xmlURIPtr uri)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:425,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:428,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 433
    functionName: libxml_xmlNsPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNsPtrWrap(xmlNsPtr ns)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:441,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:444,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 449
    functionName: libxml_xmlAttrPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlAttrPtrWrap(xmlAttrPtr attr)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:457,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:460,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 465
    functionName: libxml_xmlAttributePtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlAttributePtrWrap(xmlAttributePtr attr)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:473,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:476,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:479,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xmlElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 481
    functionName: libxml_xmlElementPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlElementPtrWrap(xmlElementPtr elem)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:489,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:492,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 497
    functionName: libxml_xmlXPathContextPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathContextPtrWrap(xmlXPathContextPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:505,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:508,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 514
    functionName: libxml_xmlXPathParserContextPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathParserContextPtrWrap(xmlXPathParserContextPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:522,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:525,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:528,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 530
    functionName: libxml_xmlParserCtxtPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserCtxtPtrWrap(xmlParserCtxtPtr ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/python/types.c:551,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxslt/python/types.c:554,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxslt/python/types.c:556,1
    - Dst: PyCapsule_GetPointer
      Src: /src/libxslt/python/types.c:556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - cap
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 558
    functionName: libxml_xmlXPathDestructNsNode
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlXPathNodeSetFreeNs
    - PyCapsule_GetPointer
    linkageType: ''
    returnType: void
    signature: void libxml_xmlXPathDestructNsNode(PyObject *cap)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:566,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:569,1
    - Dst: PyList_New
      Src: /src/libxslt/python/types.c:577,1
    - Dst: PyList_New
      Src: /src/libxslt/python/types.c:587,1
    - Dst: PyList_SetItem
      Src: /src/libxslt/python/types.c:590,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxslt/python/types.c:590,1
    - Dst: PyList_New
      Src: /src/libxslt/python/types.c:602,1
    - Dst: PyList_New
      Src: /src/libxslt/python/types.c:607,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:612,1
    - Dst: PyList_SetItem
      Src: /src/libxslt/python/types.c:615,1
    - Dst: PyList_SetItem
      Src: /src/libxslt/python/types.c:619,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxslt/python/types.c:619,1
    - Dst: PY_IMPORT_INT
      Src: /src/libxslt/python/types.c:625,1
    - Dst: PyFloat_FromDouble
      Src: /src/libxslt/python/types.c:628,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxslt/python/types.c:631,1
    - Dst: printf
      Src: /src/libxslt/python/types.c:635,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:637,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/python/types.c:640,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 57
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 642
    functionName: libxml_xmlXPathObjectPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyList_SetItem
    - libxml_xmlNodePtrWrap
    - Py_INCREF
    - PY_IMPORT_INT
    - PyList_New
    - PyCapsule_New
    - PY_IMPORT_STRING
    - printf
    - PyFloat_FromDouble
    - xmlXPathFreeObject
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathObjectPtrWrap(xmlXPathObjectPtr obj)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:650,1
    - Dst: PyFloat_Check
      Src: /src/libxslt/python/types.c:655,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/python/types.c:656,1
    - Dst: PyFloat_AS_DOUBLE
      Src: /src/libxslt/python/types.c:656,1
    - Dst: PyLong_Check
      Src: /src/libxslt/python/types.c:657,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/python/types.c:659,1
    - Dst: PyLong_AS_LONG
      Src: /src/libxslt/python/types.c:659,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxslt/python/types.c:661,1
    - Dst: PyInt_AS_LONG
      Src: /src/libxslt/python/types.c:661,1
    - Dst: PyBool_Check
      Src: /src/libxslt/python/types.c:664,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/python/types.c:667,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/python/types.c:670,1
    - Dst: PyBytes_Check
      Src: /src/libxslt/python/types.c:673,1
    - Dst: xmlStrndup
      Src: /src/libxslt/python/types.c:676,1
    - Dst: PyBytes_AS_STRING
      Src: /src/libxslt/python/types.c:676,1
    - Dst: PyBytes_GET_SIZE
      Src: /src/libxslt/python/types.c:677,1
    - Dst: xmlXPathWrapString
      Src: /src/libxslt/python/types.c:678,1
    - Dst: PyUnicode_Check
      Src: /src/libxslt/python/types.c:680,1
    - Dst: PyUnicode_AsUTF8AndSize
      Src: /src/libxslt/python/types.c:687,1
    - Dst: xmlStrndup
      Src: /src/libxslt/python/types.c:688,1
    - Dst: xmlXPathWrapString
      Src: /src/libxslt/python/types.c:689,1
    - Dst: PyUnicode_AsUTF8String
      Src: /src/libxslt/python/types.c:694,1
    - Dst: xmlStrndup
      Src: /src/libxslt/python/types.c:696,1
    - Dst: PyBytes_AS_STRING
      Src: /src/libxslt/python/types.c:696,1
    - Dst: PyBytes_GET_SIZE
      Src: /src/libxslt/python/types.c:697,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/types.c:698,1
    - Dst: xmlXPathWrapString
      Src: /src/libxslt/python/types.c:700,1
    - Dst: PyList_Check
      Src: /src/libxslt/python/types.c:703,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxslt/python/types.c:709,1
    - Dst: PyList_Size
      Src: /src/libxslt/python/types.c:711,1
    - Dst: PyList_GetItem
      Src: /src/libxslt/python/types.c:712,1
    - Dst: PyCapsule_CheckExact
      Src: /src/libxslt/python/types.c:717,1
    - Dst: printf
      Src: /src/libxslt/python/types.c:719,1
    - Dst: PyxmlNode_Get
      Src: /src/libxslt/python/types.c:721,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/types.c:722,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/types.c:723,1
    - Dst: PyObject_GetAttrString
      Src: /src/libxslt/python/types.c:726,1
    - Dst: PyxmlNode_Get
      Src: /src/libxslt/python/types.c:728,1
    - Dst: printf
      Src: /src/libxslt/python/types.c:731,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxslt/python/types.c:735,1
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxslt/python/types.c:738,1
    - Dst: printf
      Src: /src/libxslt/python/types.c:741,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 1
    argNames:
    - obj
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 745
    functionName: libxml_xmlXPathObjectPtrConvert
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyUnicode_Check
    - PyList_GetItem
    - xmlXPathNewBoolean
    - PyObject_GetAttrString
    - PyFloat_AS_DOUBLE
    - PyBytes_GET_SIZE
    - PyBytes_Check
    - PyLong_Check
    - PyBytes_AS_STRING
    - PyUnicode_AsUTF8AndSize
    - PyInt_AS_LONG
    - PyBool_Check
    - xmlXPathWrapNodeSet
    - PyList_Size
    - PyCapsule_CheckExact
    - PyList_Check
    - xmlXPathNodeSetCreate
    - PyObject_HasAttrString
    - xmlXPathNodeSetAdd
    - PyLong_AS_LONG
    - xmlXPathNewFloat
    - PyUnicode_AsUTF8String
    - Py_DECREF
    - xmlStrndup
    - PyFloat_Check
    - printf
    - xmlXPathWrapString
    - PyxmlNode_Get
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr libxml_xmlXPathObjectPtrConvert(PyObject *obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:753,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:756,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:759,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 761
    functionName: libxml_xmlOutputBufferPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlOutputBufferPtrWrap(xmlOutputBufferPtr buffer)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/types.c:769,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/types.c:772,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/types.c:775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlParserInputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 778
    functionName: libxml_xmlParserInputBufferPtrWrap
    functionSourceFile: /src/libxslt/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserInputBufferPtrWrap(xmlParserInputBufferPtr buffer)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: Pystylesheet_Get
    functionSourceFile: /src/libxslt/python/libxslt_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Pystylesheet_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: PytransformCtxt_Get
    functionSourceFile: /src/libxslt/python/libxslt_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PytransformCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: PycompiledStyle_Get
    functionSourceFile: /src/libxslt/python/libxslt_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PycompiledStyle_Get(v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _vsnprintf_s
      Src: /src/libxslt/python/libxslt.c:40,1
    - Dst: _vscprintf
      Src: /src/libxslt/python/libxslt.c:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - outBuf
    - size
    - format
    - ap
    argTypes:
    - char*
    - size_t
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: c99_vsnprintf
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - _vsnprintf_s
    - _vscprintf
    linkageType: ''
    returnType: int
    signature: int c99_vsnprintf(char *outBuf, size_t size, const char *format, va_list
      ap)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:71,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:74,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/libxslt.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 80
    functionName: libxslt_xsltStylesheetPtrWrap
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxslt_xsltStylesheetPtrWrap(xsltStylesheetPtr style)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:87,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:90,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/libxslt.c:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 96
    functionName: libxslt_xsltTransformContextPtrWrap
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxslt_xsltTransformContextPtrWrap(xsltTransformContextPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:103,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:106,1
    - Dst: PyCapsule_New
      Src: /src/libxslt/python/libxslt.c:109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 111
    functionName: libxslt_xsltElemPreCompPtrWrap
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - printf
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxslt_xsltElemPreCompPtrWrap(xsltElemPreCompPtr ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:203,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 207
    functionName: deallocateCallback
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - printf
    linkageType: ''
    returnType: void
    signature: void deallocateCallback(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:214,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 218
    functionName: deallocateClasse
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - printf
    linkageType: ''
    returnType: void
    signature: void deallocateClasse(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:242,1
    - Dst: xsltTransformError
      Src: /src/libxslt/python/libxslt.c:246,1
    - Dst: xsltTransformError
      Src: /src/libxslt/python/libxslt.c:252,1
    - Dst: xsltTransformError
      Src: /src/libxslt/python/libxslt.c:265,1
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:267,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/python/libxslt.c:275,1
    - Dst: xsltTransformError
      Src: /src/libxslt/python/libxslt.c:278,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/python/libxslt.c:284,1
    - Dst: xsltTransformError
      Src: /src/libxslt/python/libxslt.c:287,1
    - Dst: Py_BuildValue
      Src: /src/libxslt/python/libxslt.c:293,1
    - Dst: libxslt_xsltStylesheetPtrWrap
      Src: /src/libxslt/python/libxslt.c:294,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxslt/python/libxslt.c:295,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:298,1
    - Dst: PyObject_CallObject
      Src: /src/libxslt/python/libxslt.c:299,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:300,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:301,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:306,1
    - Dst: xsltNewElemPreComp
      Src: /src/libxslt/python/libxslt.c:308,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 3
    argNames:
    - style
    - inst
    - function
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 310
    functionName: libxslt_xsltElementPreCompCallback
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - libxml_xmlNodePtrWrap
    - Py_XDECREF
    - Py_INCREF
    - Py_BuildValue
    - Py_DECREF
    - xsltTransformError
    - libxslt_xsltStylesheetPtrWrap
    - xsltNewElemPreComp
    - printf
    - PyObject_CallObject
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr libxslt_xsltElementPreCompCallback(xsltStylesheetPtr
      style, xmlNodePtr inst,\n              xsltTransformFunction function)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:331,1
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:336,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/python/libxslt.c:342,1
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:345,1
    - Dst: Py_BuildValue
      Src: /src/libxslt/python/libxslt.c:350,1
    - Dst: libxslt_xsltTransformContextPtrWrap
      Src: /src/libxslt/python/libxslt.c:351,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxslt/python/libxslt.c:352,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxslt/python/libxslt.c:353,1
    - Dst: libxslt_xsltElemPreCompPtrWrap
      Src: /src/libxslt/python/libxslt.c:354,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:356,1
    - Dst: PyObject_CallObject
      Src: /src/libxslt/python/libxslt.c:357,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:358,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:359,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:363,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 313
    functionDepth: 1
    functionLinenumber: 313
    functionLinenumberEnd: 364
    functionName: libxslt_xsltElementTransformCallback
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - libxslt_xsltTransformContextPtrWrap
    - xmlHashLookup2
    - libxml_xmlNodePtrWrap
    - Py_XDECREF
    - Py_INCREF
    - Py_BuildValue
    - Py_DECREF
    - libxslt_xsltElemPreCompPtrWrap
    - printf
    - PyObject_CallObject
    linkageType: ''
    returnType: void
    signature: "void libxslt_xsltElementTransformCallback(xsltTransformContextPtr
      ctxt,\n\t\t\t\t    xmlNodePtr node,\n\t\t\t\t    xmlNodePtr inst,\n\t\t\t\t
      \   xsltElemPreCompPtr comp)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:445,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/python/libxslt.c:451,1
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:454,1
    - Dst: PyTuple_New
      Src: /src/libxslt/python/libxslt.c:459,1
    - Dst: PyTuple_SetItem
      Src: /src/libxslt/python/libxslt.c:460,1
    - Dst: libxml_xmlXPathParserContextPtrWrap
      Src: /src/libxslt/python/libxslt.c:460,1
    - Dst: valuePop
      Src: /src/libxslt/python/libxslt.c:462,1
    - Dst: libxml_xmlXPathObjectPtrWrap
      Src: /src/libxslt/python/libxslt.c:463,1
    - Dst: PyTuple_SetItem
      Src: /src/libxslt/python/libxslt.c:464,1
    - Dst: Py_INCREF
      Src: /src/libxslt/python/libxslt.c:467,1
    - Dst: PyObject_CallObject
      Src: /src/libxslt/python/libxslt.c:468,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:469,1
    - Dst: Py_DECREF
      Src: /src/libxslt/python/libxslt.c:470,1
    - Dst: libxml_xmlXPathObjectPtrConvert
      Src: /src/libxslt/python/libxslt.c:474,1
    - Dst: valuePush
      Src: /src/libxslt/python/libxslt.c:475,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 477
    functionName: libxslt_xmlXPathFuncCallback
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - PyTuple_New
    - xmlHashLookup2
    - libxml_xmlXPathParserContextPtrWrap
    - Py_INCREF
    - Py_DECREF
    - valuePop
    - libxml_xmlXPathObjectPtrWrap
    - valuePush
    - printf
    - PyObject_CallObject
    - libxml_xmlXPathObjectPtrConvert
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxslt_xmlXPathFuncCallback(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxslt/python/libxslt.c:538,1
    - Dst: xmlDictFree
      Src: /src/libxslt/python/libxslt.c:542,1
    - Dst: xmlDictReference
      Src: /src/libxslt/python/libxslt.c:547,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/python/libxslt.c:549,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxslt/python/libxslt.c:553,1
    - Dst: libxml_xmlParserCtxtPtrWrap
      Src: /src/libxslt/python/libxslt.c:561,1
    - Dst: libxslt_xsltTransformContextPtrWrap
      Src: /src/libxslt/python/libxslt.c:564,1
    - Dst: PyObject_CallFunction
      Src: /src/libxslt/python/libxslt.c:565,1
    - Dst: libxslt_xsltStylesheetPtrWrap
      Src: /src/libxslt/python/libxslt.c:569,1
    - Dst: PyObject_CallFunction
      Src: /src/libxslt/python/libxslt.c:570,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:574,1
    - Dst: PyObject_GetAttrString
      Src: /src/libxslt/python/libxslt.c:581,1
    - Dst: PyxmlNode_Get
      Src: /src/libxslt/python/libxslt.c:582,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/python/libxslt.c:589,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/python/libxslt.c:593,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 5
    argNames:
    - URI
    - dict
    - options
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlChar*
    - xmlDictPtr
    - int
    - void*
    - xsltLoadType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 530
    functionDepth: 1
    functionLinenumber: 530
    functionLinenumberEnd: 603
    functionName: pythonDocLoaderFuncWrapper
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - libxslt_xsltTransformContextPtrWrap
    - xsltGenericDebug
    - xmlCtxtUseOptions
    - Py_XDECREF
    - xmlNewParserCtxt
    - libxslt_xsltStylesheetPtrWrap
    - xmlDictReference
    - PyObject_GetAttrString
    - PyxmlNode_Get
    - PyObject_CallFunction
    - xmlFreeDoc
    - libxml_xmlParserCtxtPtrWrap
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr pythonDocLoaderFuncWrapper(const xmlChar * URI, xmlDictPtr
      dict, int options,\n                           void *ctxt ATTRIBUTE_UNUSED,\n
      \                          xsltLoadType type ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:925,1
    - Dst: va_start
      Src: /src/libxslt/python/libxslt.c:930,1
    - Dst: vfprintf
      Src: /src/libxslt/python/libxslt.c:931,1
    - Dst: va_end
      Src: /src/libxslt/python/libxslt.c:932,1
    - Dst: xmlMalloc
      Src: /src/libxslt/python/libxslt.c:934,1
    - Dst: va_start
      Src: /src/libxslt/python/libxslt.c:941,1
    - Dst: vsnprintf
      Src: /src/libxslt/python/libxslt.c:942,1
    - Dst: va_end
      Src: /src/libxslt/python/libxslt.c:943,1
    - Dst: xmlRealloc
      Src: /src/libxslt/python/libxslt.c:950,1
    - Dst: xmlFree
      Src: /src/libxslt/python/libxslt.c:951,1
    - Dst: PyTuple_New
      Src: /src/libxslt/python/libxslt.c:957,1
    - Dst: PyTuple_SetItem
      Src: /src/libxslt/python/libxslt.c:958,1
    - Dst: Py_XINCREF
      Src: /src/libxslt/python/libxslt.c:959,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxslt/python/libxslt.c:960,1
    - Dst: PyTuple_SetItem
      Src: /src/libxslt/python/libxslt.c:961,1
    - Dst: PyObject_CallObject
      Src: /src/libxslt/python/libxslt.c:962,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:963,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:964,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 912
    functionDepth: 0
    functionLinenumber: 912
    functionLinenumberEnd: 966
    functionName: libxslt_xsltErrorFuncHandler
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - xmlRealloc
    - va_end
    - xmlFree
    - Py_XDECREF
    - vsnprintf
    - libxml_charPtrWrap
    - xmlMalloc
    - va_start
    - printf
    - PyObject_CallObject
    - vfprintf
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: "void libxslt_xsltErrorFuncHandler(void *ctx ATTRIBUTE_UNUSED, const
      char *msg,\n                           ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:972,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxslt/python/libxslt.c:974,1
    - Dst: xsltSetGenericErrorFunc
      Src: /src/libxslt/python/libxslt.c:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 968
    functionDepth: 1
    functionLinenumber: 968
    functionLinenumberEnd: 976
    functionName: libxslt_xsltErrorInitialize
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - xmlSetGenericErrorFunc
    - printf
    - xsltSetGenericErrorFunc
    linkageType: ''
    returnType: void
    signature: void libxslt_xsltErrorInitialize(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:1029,1
    - Dst: fprintf
      Src: /src/libxslt/python/libxslt.c:1041,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/libxslt.c:1045,1
    - Dst: PyObject_CallMethod
      Src: /src/libxslt/python/libxslt.c:1046,1
    - Dst: libxslt_xsltStylesheetPtrWrap
      Src: /src/libxslt/python/libxslt.c:1047,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1050
    functionName: libxslt_xsltPythonExtModuleStyleInit
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - libxslt_xsltStylesheetPtrWrap
    - PyObject_HasAttrString
    - printf
    - fprintf
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void *\nlibxslt_xsltPythonExtModuleStyleInit(xsltStylesheetPtr style,\n\t
      \                           const xmlChar * URI)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:1058,1
    - Dst: fprintf
      Src: /src/libxslt/python/libxslt.c:1070,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/libxslt.c:1074,1
    - Dst: PyObject_CallMethod
      Src: /src/libxslt/python/libxslt.c:1075,1
    - Dst: libxslt_xsltStylesheetPtrWrap
      Src: /src/libxslt/python/libxslt.c:1076,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:1078,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:1079,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - style
    - URI
    - data
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1051
    functionDepth: 1
    functionLinenumber: 1051
    functionLinenumberEnd: 1081
    functionName: libxslt_xsltPythonExtModuleStyleShutdown
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - libxslt_xsltStylesheetPtrWrap
    - PyObject_HasAttrString
    - printf
    - fprintf
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void libxslt_xsltPythonExtModuleStyleShutdown(xsltStylesheetPtr style,\n\t
      \                               const xmlChar * URI, void *data)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:1090,1
    - Dst: fprintf
      Src: /src/libxslt/python/libxslt.c:1102,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/libxslt.c:1106,1
    - Dst: PyObject_CallMethod
      Src: /src/libxslt/python/libxslt.c:1107,1
    - Dst: libxslt_xsltTransformContextPtrWrap
      Src: /src/libxslt/python/libxslt.c:1108,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1112
      start: 1083
    functionDepth: 1
    functionLinenumber: 1083
    functionLinenumberEnd: 1112
    functionName: libxslt_xsltPythonExtModuleCtxtInit
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - libxslt_xsltTransformContextPtrWrap
    - PyObject_HasAttrString
    - printf
    - fprintf
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void *\nlibxslt_xsltPythonExtModuleCtxtInit(xsltTransformContextPtr
      ctxt,\n\t                            const xmlChar * URI)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/python/libxslt.c:1120,1
    - Dst: fprintf
      Src: /src/libxslt/python/libxslt.c:1132,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxslt/python/libxslt.c:1136,1
    - Dst: PyObject_CallMethod
      Src: /src/libxslt/python/libxslt.c:1137,1
    - Dst: libxslt_xsltTransformContextPtrWrap
      Src: /src/libxslt/python/libxslt.c:1138,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:1140,1
    - Dst: Py_XDECREF
      Src: /src/libxslt/python/libxslt.c:1141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - URI
    - data
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1113
    functionDepth: 1
    functionLinenumber: 1113
    functionLinenumberEnd: 1143
    functionName: libxslt_xsltPythonExtModuleCtxtShutdown
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - libxslt_xsltTransformContextPtrWrap
    - Py_XDECREF
    - PyObject_HasAttrString
    - printf
    - fprintf
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void libxslt_xsltPythonExtModuleCtxtShutdown(xsltTransformContextPtr
      ctxt,\n\t                                const xmlChar * URI, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyInit_libxml2mod
      Src: /src/libxslt/python/libxslt.c:1263,1
    - Dst: initlibxml2mod
      Src: /src/libxslt/python/libxslt.c:1265,1
    - Dst: PyModule_Create
      Src: /src/libxslt/python/libxslt.c:1270,1
    - Dst: Py_InitModule
      Src: /src/libxslt/python/libxslt.c:1272,1
    - Dst: libxslt_xsltErrorInitialize
      Src: /src/libxslt/python/libxslt.c:1279,1
    - Dst: exsltRegisterAll
      Src: /src/libxslt/python/libxslt.c:1283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1257
    functionDepth: 3
    functionLinenumber: 1257
    functionLinenumberEnd: 1287
    functionName: initlibxsltmod
    functionSourceFile: /src/libxslt/python/libxslt.c
    functionUses: 0
    functionsReached:
    - exsltRegisterAll
    - libxslt_xsltErrorInitialize
    - Py_InitModule
    - PyInit_libxml2mod
    - initlibxml2mod
    - PyModule_Create
    linkageType: ''
    returnType: void
    signature: void initlibxsltmod(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - o
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 32
    functionName: PyCapsule_GetPointer
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyCapsule_GetPointer(o, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: PyxmlNode_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlNode_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: PyxmlXPathContext_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlXPathContext_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: PyxmlXPathParserContext_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlXPathParserContext_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: PyparserCtxt_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyparserCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: PyFile_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: PyFile_Release
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Release(f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: PyFile_Get
    functionSourceFile: /src/libxslt/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Get(v)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxslt/libxslt/xsltutils.c:88,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:102,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:104,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:106,1
    - Dst: xmlNodeListGetString
      Src: /src/libxslt/libxslt/xsltutils.c:108,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:110,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:112,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:113,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxslt/libxslt/xsltutils.c:129,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxslt/libxslt/xsltutils.c:131,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xsltutils.c:137,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:138,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:139,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 37
    argCount: 4
    argNames:
    - style
    - node
    - name
    - nameSpace
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 145
    functionName: xsltGetCNsProp
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlSearchNs
    - xmlGetDtdAttrDesc
    - xmlNodeListGetString
    - xmlDictLookup
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltGetCNsProp(xsltStylesheetPtr style, xmlNodePtr node,\n
      \             const xmlChar *name, const xmlChar *nameSpace)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxslt/libxslt/xsltutils.c:175,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:198,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:200,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:202,1
    - Dst: xmlNodeListGetString
      Src: /src/libxslt/libxslt/xsltutils.c:205,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xsltutils.c:206,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxslt/libxslt/xsltutils.c:221,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxslt/libxslt/xsltutils.c:223,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xsltutils.c:229,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:230,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xsltutils.c:231,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 33
    argCount: 3
    argNames:
    - node
    - name
    - nameSpace
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 236
    functionName: xsltGetNsProp
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlGetProp
    - xmlStrEqual
    - xmlSearchNs
    - xmlGetDtdAttrDesc
    - xmlNodeListGetString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltGetNsProp(xmlNodePtr node, const xmlChar *name, const xmlChar *nameSpace)'
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 57
    argCount: 2
    argNames:
    - utf
    - len
    argTypes:
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 306
    functionName: xsltGetUTF8Char
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltGetUTF8Char(const unsigned char *utf, int *len)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 2
    argNames:
    - utf
    - len
    argTypes:
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 366
    functionName: xsltGetUTF8CharZ
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltGetUTF8CharZ(const unsigned char *utf, int *len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:389,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:392,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/xsltutils.c:400,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:403,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - list
    - item
    - initialSize
    argTypes:
    - xsltPointerListPtr
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 411
    functionName: xsltPointerListAddSize
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xsltGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltPointerListAddSize(xsltPointerListPtr list,\n\t\t       void
      *item,\n\t\t       int initialSize)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:426,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:428,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xsltutils.c:432,1
    - Dst: xsltPointerListAddSize
      Src: /src/libxslt/libxslt/xsltutils.c:434,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - initialSize
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 438
    functionName: xsltPointerListCreate
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltPointerListAddSize
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: xsltPointerListPtr
    signature: xsltPointerListPtr xsltPointerListCreate(int initialSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:453,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - xsltPointerListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 455
    functionName: xsltPointerListFree
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltPointerListFree(xsltPointerListPtr list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - list
    argTypes:
    - xsltPointerListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 473
    functionName: xsltPointerListClear
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltPointerListClear(xsltPointerListPtr list)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xsltutils.c:506,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:508,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:510,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltutils.c:513,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:516,1
    - Dst: xsltEvalTemplateString
      Src: /src/libxslt/libxslt/xsltutils.c:518,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/xsltutils.c:520,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:522,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:524,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:525,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 3
    argNames:
    - ctxt
    - node
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 529
    functionName: xsltMessage
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlStrlen
    - xsltTransformError
    - xmlGetNsProp
    - xsltEvalTemplateString
    - error
    linkageType: ''
    returnType: void
    signature: void xsltMessage(xsltTransformContextPtr ctxt, xmlNodePtr node, xmlNodePtr
      inst)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - msg
    - ','
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 566
    functionName: XSLT_GET_VAR_STR
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_GET_VAR_STR(msg, str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxslt/libxslt/xsltutils.c:581,1
    - Dst: vfprintf
      Src: /src/libxslt/libxslt/xsltutils.c:582,1
    - Dst: va_end
      Src: /src/libxslt/libxslt/xsltutils.c:583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 584
    functionName: xsltGenericErrorDefaultFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - va_end
    - va_start
    linkageType: ''
    returnType: void
    signature: void xsltGenericErrorDefaultFunc(void *ctx ATTRIBUTE_UNUSED, const
      char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlGenericErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 610
    functionName: xsltSetGenericErrorFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxslt/libxslt/xsltutils.c:627,1
    - Dst: vfprintf
      Src: /src/libxslt/libxslt/xsltutils.c:628,1
    - Dst: va_end
      Src: /src/libxslt/libxslt/xsltutils.c:629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 630
    functionName: xsltGenericDebugDefaultFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - va_end
    - va_start
    linkageType: ''
    returnType: void
    signature: void xsltGenericDebugDefaultFunc(void *ctx ATTRIBUTE_UNUSED, const
      char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlGenericErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 649
    functionDepth: 0
    functionLinenumber: 649
    functionLinenumberEnd: 656
    functionName: xsltSetGenericDebugFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetGenericDebugFunc(void *ctx, xmlGenericErrorFunc handler)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNo
      Src: /src/libxslt/libxslt/xsltutils.c:694,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xsltutils.c:706,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:716,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:719,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:721,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:723,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:725,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:727,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 41
    argCount: 3
    argNames:
    - ctxt
    - style
    - node
    argTypes:
    - xsltTransformContextPtr
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 728
    functionName: xsltPrintErrorContext
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 2
    functionsReached:
    - error
    - XSLT_CCTXT
    - xmlGetLineNo
    linkageType: ''
    returnType: void
    signature: "void xsltPrintErrorContext(xsltTransformContextPtr ctxt,\n\t              xsltStylesheetPtr
      style, xmlNodePtr node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctxt
    - ctx
    - handler
    argTypes:
    - xsltTransformContextPtr
    - void*
    - xmlGenericErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 742
    functionDepth: 0
    functionLinenumber: 742
    functionLinenumberEnd: 748
    functionName: xsltSetTransformErrorFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xsltSetTransformErrorFunc(xsltTransformContextPtr ctxt,\n                          void
      *ctx, xmlGenericErrorFunc handler)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltPrintErrorContext
      Src: /src/libxslt/libxslt/xsltutils.c:780,1
    - Dst: XSLT_GET_VAR_STR
      Src: /src/libxslt/libxslt/xsltutils.c:781,1
    - Dst: error
      Src: /src/libxslt/libxslt/xsltutils.c:782,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:784,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - ctxt
    - style
    - node
    - msg
    argTypes:
    - xsltTransformContextPtr
    - xsltStylesheetPtr
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 761
    functionDepth: 2
    functionLinenumber: 761
    functionLinenumberEnd: 785
    functionName: xsltTransformError
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 23
    functionsReached:
    - xsltPrintErrorContext
    - error
    - XSLT_GET_VAR_STR
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void xsltTransformError(xsltTransformContextPtr ctxt,\n\t\t   xsltStylesheetPtr
      style,\n\t\t   xmlNodePtr node,\n\t\t   const char *msg, ...)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:811,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:813,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:814,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:815,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - dict
    - name
    - prefix
    argTypes:
    - xmlDictPtr
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 817
    functionName: xsltSplitQName
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltSplitQName(xmlDictPtr dict, const xmlChar *name, const xmlChar **prefix)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:849,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:852,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xsltutils.c:878,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:879,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xsltutils.c:884,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:886,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:890,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xsltutils.c:893,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:894,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNodePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 896
    functionName: xsltGetQNameURI
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSearchNs
    - xsltGenericError
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltGetQNameURI(xmlNodePtr node, xmlChar ** name)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:923,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:947,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xsltutils.c:951,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xsltutils.c:952,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltutils.c:955,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:960,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:965,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xsltutils.c:968,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:969,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 3
    argNames:
    - style
    - node
    - name
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 910
    functionDepth: 3
    functionLinenumber: 910
    functionLinenumberEnd: 971
    functionName: xsltGetQNameURI2
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xsltTransformError
    - xmlStrndup
    - xmlSearchNs
    - xmlDictLookup
    - xsltGenericError
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltGetQNameURI2(xsltStylesheetPtr style, xmlNodePtr node,\n\t\t
      const xmlChar **name)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCmpNodes
      Src: /src/libxslt/libxslt/xsltutils.c:1000,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 986
    functionDepth: 1
    functionLinenumber: 986
    functionLinenumberEnd: 1008
    functionName: xsltDocumentSortFunction
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlXPathCmpNodes
    linkageType: ''
    returnType: void
    signature: void xsltDocumentSortFunction(xmlNodeSetPtr list)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:1043,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:1061,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:1063,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/xsltutils.c:1092,1
    - Dst: xmlXPathConvertString
      Src: /src/libxslt/libxslt/xsltutils.c:1095,1
    - Dst: xmlXPathConvertNumber
      Src: /src/libxslt/libxslt/xsltutils.c:1097,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xsltutils.c:1106,1
    - Dst: xsltTransformContextPtr::genSortKey
      Src: /src/libxslt/libxslt/xsltutils.c:1115,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltutils.c:1118,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:1122,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xsltutils.c:1129,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 82
    argCount: 4
    argNames:
    - ctxt
    - sort
    - number
    - locale
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1022
    functionDepth: 3
    functionLinenumber: 1022
    functionLinenumberEnd: 1148
    functionName: xsltComputeSortResultInternal
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - xsltTransformContextPtr::genSortKey
    - xmlXPathConvertString
    - xmlMalloc
    - xmlXPathConvertNumber
    - xsltGenericError
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr *\nxsltComputeSortResultInternal(xsltTransformContextPtr
      ctxt, xmlNodePtr sort,\n                              int number, void *locale)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltComputeSortResultInternal
      Src: /src/libxslt/libxslt/xsltutils.c:1167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - sort
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1160
    functionDepth: 4
    functionLinenumber: 1160
    functionLinenumberEnd: 1169
    functionName: xsltComputeSortResult
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltComputeSortResultInternal
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: 'xmlXPathObjectPtr *

      xsltComputeSortResult(xsltTransformContextPtr ctxt, xmlNodePtr sort)'
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/xsltutils.c:1219,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1223,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1225,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltutils.c:1228,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:1232,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/xsltutils.c:1238,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1242,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1244,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltutils.c:1247,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:1251,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/xsltutils.c:1257,1
    - Dst: xsltTransformContextPtr::newLocale
      Src: /src/libxslt/libxslt/xsltutils.c:1264,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:1266,1
    - Dst: xsltComputeSortResultInternal
      Src: /src/libxslt/libxslt/xsltutils.c:1274,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1299,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1300,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1304,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/libxslt/xsltutils.c:1314,1
    - Dst: xsltComputeSortResultInternal
      Src: /src/libxslt/libxslt/xsltutils.c:1338,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1354,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1355,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/xsltutils.c:1360,1
    - Dst: xmlStrcmp
      Src: /src/libxslt/libxslt/xsltutils.c:1371,1
    - Dst: xsltTransformContextPtr::freeLocale
      Src: /src/libxslt/libxslt/xsltutils.c:1419,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/xsltutils.c:1423,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:1424,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 174
    argCount: 3
    argNames:
    - ctxt
    - sorts
    - nbsorts
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1180
    functionDepth: 4
    functionLinenumber: 1180
    functionLinenumberEnd: 1427
    functionName: xsltDefaultSortFunction
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlXPathIsNaN
    - xsltTransformError
    - xsltEvalAttrValueTemplate
    - xsltTransformContextPtr::newLocale
    - xmlStrcmp
    - xsltComputeSortResultInternal
    - xsltTransformContextPtr::freeLocale
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltDefaultSortFunction(xsltTransformContextPtr ctxt, xmlNodePtr
      *sorts,\n\t           int nbsorts)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltSortFunction
      Src: /src/libxslt/libxslt/xsltutils.c:1453,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - sorts
    - nbsorts
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1454
    functionName: xsltDoSortFunction
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltSortFunction
    linkageType: ''
    returnType: void
    signature: "void xsltDoSortFunction(xsltTransformContextPtr ctxt, xmlNodePtr *
      sorts,\n                   int nbsorts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - handler
    argTypes:
    - xsltSortFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1465
    functionDepth: 0
    functionLinenumber: 1465
    functionLinenumberEnd: 1471
    functionName: xsltSetSortFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetSortFunc(xsltSortFunc handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - handler
    argTypes:
    - xsltTransformContextPtr
    - xsltSortFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1488
      start: 1485
    functionDepth: 0
    functionLinenumber: 1485
    functionLinenumberEnd: 1488
    functionName: xsltSetCtxtSortFunc
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetCtxtSortFunc(xsltTransformContextPtr ctxt, xsltSortFunc
      handler)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctxt
    - newLocale
    - freeLocale
    - genSortKey
    argTypes:
    - xsltTransformContextPtr
    - xsltNewLocaleFunc
    - xsltFreeLocaleFunc
    - xsltGenSortKeyFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1510
      start: 1499
    functionDepth: 0
    functionLinenumber: 1499
    functionLinenumberEnd: 1510
    functionName: xsltSetCtxtLocaleHandlers
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xsltSetCtxtLocaleHandlers(xsltTransformContextPtr ctxt,\n                          xsltNewLocaleFunc
      newLocale,\n                          xsltFreeLocaleFunc freeLocale,\n                          xsltGenSortKeyFunc
      genSortKey)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xsltTransformContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1528
    functionDepth: 0
    functionLinenumber: 1528
    functionLinenumberEnd: 1544
    functionName: xsltSetCtxtParseOptions
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltSetCtxtParseOptions(xsltTransformContextPtr ctxt, int options)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1580,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xsltutils.c:1581,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1588,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1589,1
    - Dst: XSLT_GET_IMPORT_INT
      Src: /src/libxslt/libxslt/xsltutils.c:1590,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1596,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxslt/libxslt/xsltutils.c:1598,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxslt/libxslt/xsltutils.c:1600,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxslt/libxslt/xsltutils.c:1604,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxslt/libxslt/xsltutils.c:1606,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1608,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxslt/libxslt/xsltutils.c:1610,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxslt/libxslt/xsltutils.c:1612,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxslt/libxslt/xsltutils.c:1614,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxslt/libxslt/xsltutils.c:1615,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xsltutils.c:1617,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1623,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxslt/libxslt/xsltutils.c:1655,1
    - Dst: XSLT_GET_IMPORT_INT
      Src: /src/libxslt/libxslt/xsltutils.c:1660,1
    - Dst: XSLT_GET_IMPORT_INT
      Src: /src/libxslt/libxslt/xsltutils.c:1661,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1664,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1666,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1667,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1668,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1670,1
    - Dst: xmlGetCharEncodingName
      Src: /src/libxslt/libxslt/xsltutils.c:1676,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1680,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1681,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1682,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1683,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1687,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1690,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1695,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxslt/libxslt/xsltutils.c:1709,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1714,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxslt/libxslt/xsltutils.c:1718,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxslt/libxslt/xsltutils.c:1722,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 115
    argCount: 3
    argNames:
    - buf
    - result
    - style
    argTypes:
    - xmlOutputBufferPtr
    - xmlDocPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1563
    functionDepth: 1
    functionLinenumber: 1563
    functionLinenumberEnd: 1725
    functionName: xsltSaveResultTo
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - htmlDocContentDumpFormatOutput
    - htmlDocContentDumpOutput
    - xsltGenericError
    - xmlStrEqual
    - xmlOutputBufferWriteString
    - xmlOutputBufferFlush
    - XSLT_GET_IMPORT_INT
    - xmlGetCharEncodingName
    - XSLT_GET_IMPORT_PTR
    - xmlNodeDumpOutput
    - htmlSetMetaEncoding
    linkageType: ''
    returnType: int
    signature: "int xsltSaveResultTo(xmlOutputBufferPtr buf, xmlDocPtr result,\n\t
      \      xsltStylesheetPtr style)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1751,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1756,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1757,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxslt/libxslt/xsltutils.c:1758,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxslt/libxslt/xsltutils.c:1759,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxslt/libxslt/xsltutils.c:1761,1
    - Dst: xsltSaveResultTo
      Src: /src/libxslt/libxslt/xsltutils.c:1765,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxslt/libxslt/xsltutils.c:1766,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 4
    argNames:
    - URL
    - result
    - style
    - compression
    argTypes:
    - char*
    - xmlDocPtr
    - xsltStylesheetPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1739
    functionDepth: 2
    functionLinenumber: 1739
    functionLinenumberEnd: 1768
    functionName: xsltSaveResultToFilename
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltSaveResultTo
    - xmlFindCharEncodingHandler
    - xmlOutputBufferClose
    - XSLT_GET_IMPORT_PTR
    - xmlStrcasecmp
    - xmlOutputBufferCreateFilename
    linkageType: ''
    returnType: int
    signature: "int xsltSaveResultToFilename(const char *URL, xmlDocPtr result,\n\t\t\t
      xsltStylesheetPtr style, int compression)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1793,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1798,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1799,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxslt/libxslt/xsltutils.c:1800,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxslt/libxslt/xsltutils.c:1801,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxslt/libxslt/xsltutils.c:1803,1
    - Dst: xsltSaveResultTo
      Src: /src/libxslt/libxslt/xsltutils.c:1808,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxslt/libxslt/xsltutils.c:1809,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - file
    - result
    - style
    argTypes:
    - FILE*
    - xmlDocPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1811
      start: 1782
    functionDepth: 2
    functionLinenumber: 1782
    functionLinenumberEnd: 1811
    functionName: xsltSaveResultToFile
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 2
    functionsReached:
    - xsltSaveResultTo
    - xmlFindCharEncodingHandler
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - XSLT_GET_IMPORT_PTR
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: int xsltSaveResultToFile(FILE *file, xmlDocPtr result, xsltStylesheetPtr
      style)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1836,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1841,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1842,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxslt/libxslt/xsltutils.c:1843,1
    - Dst: xmlOutputBufferCreateFd
      Src: /src/libxslt/libxslt/xsltutils.c:1844,1
    - Dst: xmlOutputBufferCreateFd
      Src: /src/libxslt/libxslt/xsltutils.c:1846,1
    - Dst: xsltSaveResultTo
      Src: /src/libxslt/libxslt/xsltutils.c:1850,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxslt/libxslt/xsltutils.c:1851,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - fd
    - result
    - style
    argTypes:
    - int
    - xmlDocPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1825
    functionDepth: 2
    functionLinenumber: 1825
    functionLinenumberEnd: 1853
    functionName: xsltSaveResultToFd
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltSaveResultTo
    - xmlFindCharEncodingHandler
    - xmlOutputBufferCreateFd
    - xmlOutputBufferClose
    - XSLT_GET_IMPORT_PTR
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: int xsltSaveResultToFd(int fd, xmlDocPtr result, xsltStylesheetPtr
      style)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/xsltutils.c:1878,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1883,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xsltutils.c:1884,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxslt/libxslt/xsltutils.c:1885,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxslt/libxslt/xsltutils.c:1886,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxslt/libxslt/xsltutils.c:1888,1
    - Dst: xsltSaveResultTo
      Src: /src/libxslt/libxslt/xsltutils.c:1892,1
    - Dst: xmlBufUse
      Src: /src/libxslt/libxslt/xsltutils.c:1895,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xsltutils.c:1896,1
    - Dst: xmlBufContent
      Src: /src/libxslt/libxslt/xsltutils.c:1896,1
    - Dst: xmlBufUse
      Src: /src/libxslt/libxslt/xsltutils.c:1898,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xsltutils.c:1899,1
    - Dst: xmlBufContent
      Src: /src/libxslt/libxslt/xsltutils.c:1899,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xsltutils.c:1904,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xsltutils.c:1907,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxslt/libxslt/xsltutils.c:1910,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 4
    argNames:
    - doc_txt_ptr
    - doc_txt_len
    - result
    - style
    argTypes:
    - xmlChar**
    - int*
    - xmlDocPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1867
    functionDepth: 2
    functionLinenumber: 1867
    functionLinenumberEnd: 1912
    functionName: xsltSaveResultToString
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 2
    functionsReached:
    - xmlBufContent
    - xsltSaveResultTo
    - xmlBufUse
    - xmlStrndup
    - xmlAllocOutputBuffer
    - xmlFindCharEncodingHandler
    - xmlOutputBufferClose
    - XSLT_GET_IMPORT_PTR
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: "int xsltSaveResultToString(xmlChar **doc_txt_ptr, int * doc_txt_len,\n\t\t
      \      xmlDocPtr result, xsltStylesheetPtr style)"
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1947
      start: 1920
    functionDepth: 0
    functionLinenumber: 1920
    functionLinenumberEnd: 1947
    functionName: xsltGetSourceNodeFlags
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltGetSourceNodeFlags(xmlNodePtr node)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 3
    argNames:
    - ctxt
    - node
    - flags
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1958
    functionDepth: 0
    functionLinenumber: 1958
    functionLinenumberEnd: 1985
    functionName: xsltSetSourceNodeFlags
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltSetSourceNodeFlags(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n                       int flags)"
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - flags
    argTypes:
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 1996
    functionDepth: 0
    functionLinenumber: 1996
    functionLinenumberEnd: 2019
    functionName: xsltClearSourceNodeFlags
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltClearSourceNodeFlags(xmlNodePtr node, int flags)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 2027
    functionDepth: 0
    functionLinenumber: 2027
    functionLinenumberEnd: 2047
    functionName: xsltGetPSVIPtr
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void **

      xsltGetPSVIPtr(xmlNodePtr cur)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltTimestamp
      Src: /src/libxslt/libxslt/xsltutils.c:2074,1
    - Dst: xsltTimestamp
      Src: /src/libxslt/libxslt/xsltutils.c:2075,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2069
    functionDepth: 1
    functionLinenumber: 2069
    functionLinenumberEnd: 2076
    functionName: xsltCalibrateTimestamps
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltTimestamp
    linkageType: ''
    returnType: long
    signature: long xsltCalibrateTimestamps(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - delta
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2088
      start: 2085
    functionDepth: 0
    functionLinenumber: 2085
    functionLinenumberEnd: 2088
    functionName: xsltCalibrateAdjust
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltCalibrateAdjust(long delta)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceCounter
      Src: /src/libxslt/libxslt/xsltutils.c:2110,1
    - Dst: QueryPerformanceFrequency
      Src: /src/libxslt/libxslt/xsltutils.c:2116,1
    - Dst: clock_gettime
      Src: /src/libxslt/libxslt/xsltutils.c:2142,1
    - Dst: xsltCalibrateTimestamps
      Src: /src/libxslt/libxslt/xsltutils.c:2144,1
    - Dst: clock_gettime
      Src: /src/libxslt/libxslt/xsltutils.c:2145,1
    - Dst: clock_gettime
      Src: /src/libxslt/libxslt/xsltutils.c:2149,1
    - Dst: gettimeofday
      Src: /src/libxslt/libxslt/xsltutils.c:2163,1
    - Dst: xsltCalibrateTimestamps
      Src: /src/libxslt/libxslt/xsltutils.c:2165,1
    - Dst: gettimeofday
      Src: /src/libxslt/libxslt/xsltutils.c:2166,1
    - Dst: gettimeofday
      Src: /src/libxslt/libxslt/xsltutils.c:2170,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2098
    functionDepth: 2
    functionLinenumber: 2098
    functionLinenumberEnd: 2185
    functionName: xsltTimestamp
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 1
    functionsReached:
    - QueryPerformanceFrequency
    - QueryPerformanceCounter
    - clock_gettime
    - xsltCalibrateTimestamps
    - gettimeofday
    linkageType: ''
    returnType: long
    signature: long xsltTimestamp(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - templ
    argTypes:
    - xsltTemplatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2187
    functionDepth: 0
    functionLinenumber: 2187
    functionLinenumberEnd: 2209
    functionName: pretty_templ_match
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      pretty_templ_match(xsltTemplatePtr templ)'
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:2238,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/xsltutils.c:2254,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2272,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2278,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/xsltutils.c:2280,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2281,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2283,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2285,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/xsltutils.c:2288,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2289,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2291,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2293,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/xsltutils.c:2296,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2297,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2299,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2301,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2303,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2304,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2309,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:2314,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2334,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2349,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2350,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2351,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2355,1
    - Dst: pretty_templ_match
      Src: /src/libxslt/libxslt/xsltutils.c:2357,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2360,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2361,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2362,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2363,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2364,1
    - Dst: pretty_templ_match
      Src: /src/libxslt/libxslt/xsltutils.c:2367,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2385,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2386,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2387,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2390,1
    - Dst: pretty_templ_match
      Src: /src/libxslt/libxslt/xsltutils.c:2392,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2396,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2399,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2402,1
    - Dst: pretty_templ_match
      Src: /src/libxslt/libxslt/xsltutils.c:2403,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2407,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:2408,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:2410,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 130
    argCount: 2
    argNames:
    - ctxt
    - output
    argTypes:
    - xsltTransformContextPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2220
    functionDepth: 1
    functionLinenumber: 2220
    functionLinenumberEnd: 2411
    functionName: xsltSaveProfiling
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltNextImport
    - xmlStrlen
    - xmlFree
    - pretty_templ_match
    - xmlMalloc
    - snprintf
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xsltSaveProfiling(xsltTransformContextPtr ctxt, FILE *output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltutils.c:2461,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/xsltutils.c:2480,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/xsltutils.c:2501,1
    - Dst: xmlNewDocNode
      Src: /src/libxslt/libxslt/xsltutils.c:2502,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxslt/libxslt/xsltutils.c:2503,1
    - Dst: xmlNewChild
      Src: /src/libxslt/libxslt/xsltutils.c:2506,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2507,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2508,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2509,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2510,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2511,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2513,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2514,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2516,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2517,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/xsltutils.c:2519,1
    - Dst: xmlSetProp
      Src: /src/libxslt/libxslt/xsltutils.c:2520,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltutils.c:2523,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2526
      start: 2440
    functionDepth: 1
    functionLinenumber: 2440
    functionLinenumberEnd: 2526
    functionName: xsltGetProfileInformation
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xsltNextImport
    - xmlFree
    - xmlNewDoc
    - xmlNewChild
    - xmlMalloc
    - snprintf
    - xmlSetProp
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xsltGetProfileInformation(xsltTransformContextPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewContext
      Src: /src/libxslt/libxslt/xsltutils.c:2558,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libxslt/xsltutils.c:2567,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxslt/libxslt/xsltutils.c:2570,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - style
    - str
    - flags
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2578
      start: 2547
    functionDepth: 1
    functionLinenumber: 2547
    functionLinenumberEnd: 2578
    functionName: xsltXPathCompileFlags
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewContext
    - xmlXPathCtxtCompile
    - xmlXPathFreeContext
    linkageType: ''
    returnType: xmlXPathCompExprPtr
    signature: xmlXPathCompExprPtr xsltXPathCompileFlags(xsltStylesheetPtr style,
      const xmlChar *str, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathCompileFlags
      Src: /src/libxslt/libxslt/xsltutils.c:2592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - style
    - str
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2593
      start: 2590
    functionDepth: 2
    functionLinenumber: 2590
    functionLinenumberEnd: 2593
    functionName: xsltXPathCompile
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - xsltXPathCompileFlags
    linkageType: ''
    returnType: xmlXPathCompExprPtr
    signature: xmlXPathCompExprPtr xsltXPathCompile(xsltStylesheetPtr style, const
      xmlChar *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2614
      start: 2610
    functionDepth: 0
    functionLinenumber: 2610
    functionLinenumberEnd: 2614
    functionName: xsltGetDebuggerStatus
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltGetDebuggerStatus(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2648
      start: 2644
    functionDepth: 0
    functionLinenumber: 2644
    functionLinenumberEnd: 2648
    functionName: xsltSetDebuggerStatus
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetDebuggerStatus(int value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - 'no'
    - block
    argTypes:
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2674
      start: 2661
    functionDepth: 0
    functionLinenumber: 2661
    functionLinenumberEnd: 2674
    functionName: xsltSetDebuggerCallbacks
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltSetDebuggerCallbacks(int no, void *block)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: handler
      Src: /src/libxslt/libxslt/xsltutils.c:2692,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 4
    argNames:
    - cur
    - node
    - templ
    - ctxt
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    - xsltTemplatePtr
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2687
    functionDepth: 0
    functionLinenumber: 2687
    functionLinenumberEnd: 2693
    functionName: xslHandleDebugger
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - handler
    linkageType: ''
    returnType: void
    signature: "void xslHandleDebugger(xmlNodePtr cur, xmlNodePtr node, xsltTemplatePtr
      templ,\n\t          xsltTransformContextPtr ctxt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: add
      Src: /src/libxslt/libxslt/xsltutils.c:2708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - templ
    - source
    argTypes:
    - xsltTemplatePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2704
    functionDepth: 0
    functionLinenumber: 2704
    functionLinenumberEnd: 2710
    functionName: xslAddCall
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - add
    linkageType: ''
    returnType: int
    signature: int xslAddCall(xsltTemplatePtr templ, xmlNodePtr source)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: drop
      Src: /src/libxslt/libxslt/xsltutils.c:2721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2722
      start: 2717
    functionDepth: 0
    functionLinenumber: 2717
    functionLinenumberEnd: 2722
    functionName: xslDropCall
    functionSourceFile: /src/libxslt/libxslt/xsltutils.c
    functionUses: 0
    functionsReached:
    - drop
    linkageType: ''
    returnType: void
    signature: void xslDropCall(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _vsnprintf_s
      Src: /src/libxslt/libxslt/win32config.h:28,1
    - Dst: _vscprintf
      Src: /src/libxslt/libxslt/win32config.h:30,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - outBuf
    - size
    - format
    - ap
    argTypes:
    - char*
    - size_t
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 33
    functionName: c99_vsnprintf
    functionSourceFile: /src/libxslt/libxslt/win32config.h
    functionUses: 0
    functionsReached:
    - _vsnprintf_s
    - _vscprintf
    linkageType: ''
    returnType: int
    signature: int c99_vsnprintf(char *outBuf, size_t size, const char *format, va_list
      ap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxslt/libxslt/win32config.h:40,1
    - Dst: c99_vsnprintf
      Src: /src/libxslt/libxslt/win32config.h:41,1
    - Dst: va_end
      Src: /src/libxslt/libxslt/win32config.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - outBuf
    - size
    - format
    argTypes:
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: c99_snprintf
    functionSourceFile: /src/libxslt/libxslt/win32config.h
    functionUses: 0
    functionsReached:
    - va_end
    - c99_vsnprintf
    - va_start
    linkageType: ''
    returnType: int
    signature: int c99_snprintf(char *outBuf, size_t size, const char *format, ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/functions.c:70,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/functions.c:78,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/functions.c:78,1
    - Dst: xsltExtModuleFunctionLookup
      Src: /src/libxslt/libxslt/functions.c:81,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/functions.c:85,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - vctxt
    - name
    - ns_uri
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 89
    functionName: xsltXPathFunctionLookup
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - XML_CAST_FPTR
    - xsltGenericDebug
    - xsltExtModuleFunctionLookup
    linkageType: ''
    returnType: xmlXPathFunction
    signature: "xmlXPathFunction xsltXPathFunctionLookup (void *vctxt,\n\t\t\t const
      xmlChar *name, const xmlChar *ns_uri)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:110,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:112,1
    - Dst: xsltLoadDocument
      Src: /src/libxslt/libxslt/functions.c:117,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:123,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:136,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:136,1
    - Dst: xmlXPathNewContext
      Src: /src/libxslt/libxslt/functions.c:142,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:144,1
    - Dst: xmlXPtrEval
      Src: /src/libxslt/libxslt/functions.c:155,1
    - Dst: xmlXPtrEval
      Src: /src/libxslt/libxslt/functions.c:159,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxslt/libxslt/functions.c:162,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:166,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:169,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:175,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:176,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 3
    argNames:
    - ctxt
    - URI
    - fragment
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 98
    functionDepth: 3
    functionLinenumber: 98
    functionLinenumberEnd: 177
    functionName: xsltDocumentFunctionLoadDocument
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlStrEqual
    - xsltTransformError
    - xsltLoadDocument
    - xmlXPathNewContext
    - xmlXPtrEval
    - xsltXPathGetTransformContext
    - xmlXPathNewNodeSet
    - valuePush
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltDocumentFunctionLoadDocument(xmlXPathParserContextPtr ctxt,\n
      \                                const xmlChar* URI, const xmlChar *fragment)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:196,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:196,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:203,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:203,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:211,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:211,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:217,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:224,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:225,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:229,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:230,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:231,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:233,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxslt/libxslt/functions.c:233,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:235,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:236,1
    - Dst: xsltDocumentFunction
      Src: /src/libxslt/libxslt/functions.c:241,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:242,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxslt/libxslt/functions.c:244,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:246,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:252,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:254,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:255,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:261,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:263,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:263,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:267,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:270,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:272,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:272,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:278,1
    - Dst: xmlParseURI
      Src: /src/libxslt/libxslt/functions.c:282,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:284,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:286,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:286,1
    - Dst: xmlSaveUri
      Src: /src/libxslt/libxslt/functions.c:296,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/functions.c:299,1
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/functions.c:303,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/functions.c:311,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/functions.c:314,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/functions.c:317,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/functions.c:322,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:324,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:328,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:330,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:330,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:332,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:332,1
    - Dst: xsltDocumentFunctionLoadDocument
      Src: /src/libxslt/libxslt/functions.c:335,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:336,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:341,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:342,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:343,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:345,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 111
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 187
    functionDepth: 4
    functionLinenumber: 187
    functionLinenumberEnd: 346
    functionName: xsltDocumentFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 1
    functionsReached:
    - IS_XSLT_REAL_NODE
    - xmlXPathFreeObject
    - xmlSaveUri
    - xmlNodeGetBase
    - xmlFree
    - valuePush
    - xmlXPathObjectCopy
    - xmlFreeURI
    - xmlStrEqual
    - xsltDocumentFunction
    - xsltDocumentFunctionLoadDocument
    - xmlBuildURI
    - xsltTransformError
    - xsltXPathGetTransformContext
    - xmlXPathNewNodeSet
    - xmlXPathNodeSetMerge
    - xmlParseURI
    - valuePop
    - xmlXPathStringFunction
    linkageType: ''
    returnType: void
    signature: void xsltDocumentFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:361,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:361,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:370,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:371,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:374,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:374,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:377,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:384,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:390,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:393,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:394,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:400,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxslt/libxslt/functions.c:400,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:401,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:402,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:403,1
    - Dst: xsltKeyFunction
      Src: /src/libxslt/libxslt/functions.c:404,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:405,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxslt/libxslt/functions.c:407,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:409,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:412,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:423,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:428,1
    - Dst: xmlSplitQName2
      Src: /src/libxslt/libxslt/functions.c:438,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/functions.c:440,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:443,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxslt/libxslt/functions.c:446,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:448,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:454,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:463,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:464,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:465,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:467,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:499,1
    - Dst: xsltNewDocument
      Src: /src/libxslt/libxslt/functions.c:513,1
    - Dst: xsltFindDocument
      Src: /src/libxslt/libxslt/functions.c:523,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:526,1
    - Dst: xsltGetKey
      Src: /src/libxslt/libxslt/functions.c:536,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:540,1
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxslt/libxslt/functions.c:540,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxslt/libxslt/functions.c:541,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:543,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:547,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:549,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 115
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 356
    functionDepth: 3
    functionLinenumber: 356
    functionLinenumberEnd: 550
    functionName: xsltKeyFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xsltFindDocument
    - xmlXPathWrapNodeSet
    - xmlFree
    - xmlXPathNsLookup
    - valuePop
    - xsltTransformError
    - xsltGetKey
    - xsltKeyFunction
    - xsltXPathGetTransformContext
    - xmlXPathStringFunction
    - xsltNewDocument
    - xmlXPathNewNodeSet
    - valuePush
    - xmlXPathObjectCopy
    - xmlXPathNodeSetMerge
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltKeyFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/functions.c:566,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:571,1
    - Dst: xmlXPathConvertString
      Src: /src/libxslt/libxslt/functions.c:573,1
    - Dst: xmlXPathErr
      Src: /src/libxslt/libxslt/functions.c:575,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:582,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:582,1
    - Dst: xmlGetDocEntity
      Src: /src/libxslt/libxslt/functions.c:586,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:588,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:588,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:591,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:591,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:593,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:593,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:596,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 597
    functionName: xsltUnparsedEntityURIFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewString
    - valuePop
    - xmlXPathConvertString
    - xmlGetDocEntity
    - valuePush
    - xmlXPathErr
    - xmlXPathFreeObject
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void xsltUnparsedEntityURIFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:621,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:632,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:633,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/functions.c:634,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/functions.c:636,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:638,1
    - Dst: xsltDecimalFormatGetByQName
      Src: /src/libxslt/libxslt/functions.c:649,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:652,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:659,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:660,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxslt/libxslt/functions.c:662,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:663,1
    - Dst: xmlXPathErr
      Src: /src/libxslt/libxslt/functions.c:666,1
    - Dst: xsltFormatNumberConversion
      Src: /src/libxslt/libxslt/functions.c:672,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:676,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:676,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:677,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:681,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:682,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:683,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 50
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 607
    functionDepth: 3
    functionLinenumber: 607
    functionLinenumberEnd: 684
    functionName: xsltFormatNumberFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xsltSplitQName
    - xmlXPathNewString
    - valuePop
    - xsltTransformError
    - xsltDecimalFormatGetByQName
    - xmlSearchNs
    - xsltXPathGetTransformContext
    - xmlXPathStringFunction
    - xmlXPathNumberFunction
    - valuePush
    - xmlXPathErr
    - xsltFormatNumberConversion
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltFormatNumberFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:705,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:715,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:719,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:722,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libxslt/functions.c:722,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxslt/libxslt/functions.c:727,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:732,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/functions.c:746,1
    - Dst: xsltGetPSVIPtr
      Src: /src/libxslt/libxslt/functions.c:754,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:756,1
    - Dst: xsltGetSourceNodeFlags
      Src: /src/libxslt/libxslt/functions.c:762,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:769,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:776,1
    - Dst: xsltSetSourceNodeFlags
      Src: /src/libxslt/libxslt/functions.c:784,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/functions.c:787,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:789,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/functions.c:795,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/functions.c:799,1
    - Dst: strlen
      Src: /src/libxslt/libxslt/functions.c:804,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:818,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 93
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 694
    functionDepth: 3
    functionLinenumber: 694
    functionLinenumberEnd: 819
    functionName: xsltGenerateIdFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathCmpNodes
    - strlen
    - xmlStrlen
    - valuePop
    - xsltTransformError
    - xsltSetSourceNodeFlags
    - xsltXPathGetTransformContext
    - xmlMalloc
    - xmlXPathNewCString
    - valuePush
    - xsltGetPSVIPtr
    - xsltGetSourceNodeFlags
    - snprintf
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltGenerateIdFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:836,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:836,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:842,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:842,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:847,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:849,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:849,1
    - Dst: xmlSplitQName2
      Src: /src/libxslt/libxslt/functions.c:851,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/functions.c:853,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxslt/libxslt/functions.c:855,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:857,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:857,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:862,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:864,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:868,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:870,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:872,1
    - Dst: xmlStrstr
      Src: /src/libxslt/libxslt/functions.c:879,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:881,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:881,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:885,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:885,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:890,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:891,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:891,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:895,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:896,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:896,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/functions.c:898,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:899,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:899,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:902,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:902,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:905,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/functions.c:905,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:908,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:910,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:912,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 56
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 829
    functionDepth: 3
    functionLinenumber: 829
    functionLinenumberEnd: 913
    functionName: xsltSystemPropertyFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlStrEqual
    - xmlXPathNsLookup
    - xmlXPathNewString
    - xmlFree
    - valuePop
    - xsltTransformError
    - xsltXPathGetTransformContext
    - valuePush
    - xmlStrstr
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltSystemPropertyFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:931,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:931,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:936,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:938,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:938,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:943,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:944,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:946,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:946,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:948,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:949,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libxslt/functions.c:949,1
    - Dst: xmlSplitQName2
      Src: /src/libxslt/libxslt/functions.c:954,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/functions.c:958,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/functions.c:959,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxslt/libxslt/functions.c:962,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:964,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:964,1
    - Dst: xsltExtElementLookup
      Src: /src/libxslt/libxslt/functions.c:969,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:970,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libxslt/functions.c:970,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:972,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libxslt/functions.c:972,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:975,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:977,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:979,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 923
    functionDepth: 3
    functionLinenumber: 923
    functionLinenumberEnd: 980
    functionName: xsltElementAvailableFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlXPathNewBoolean
    - xmlXPathNsLookup
    - xmlFree
    - valuePop
    - xsltTransformError
    - xmlSearchNs
    - xsltXPathGetTransformContext
    - xmlXPathStringFunction
    - xsltExtElementLookup
    - valuePush
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltElementAvailableFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:997,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:997,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxslt/libxslt/functions.c:1002,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:1004,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:1004,1
    - Dst: valuePop
      Src: /src/libxslt/libxslt/functions.c:1009,1
    - Dst: xmlSplitQName2
      Src: /src/libxslt/libxslt/functions.c:1011,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/functions.c:1013,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxslt/libxslt/functions.c:1015,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:1017,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:1017,1
    - Dst: xmlXPathFunctionLookupNS
      Src: /src/libxslt/libxslt/functions.c:1022,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:1023,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libxslt/functions.c:1023,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:1025,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxslt/libxslt/functions.c:1025,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/functions.c:1028,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:1030,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/functions.c:1032,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 990
    functionDepth: 3
    functionLinenumber: 990
    functionLinenumberEnd: 1033
    functionName: xsltFunctionAvailableFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlXPathNewBoolean
    - xmlXPathNsLookup
    - xmlFree
    - valuePop
    - xsltTransformError
    - xsltXPathGetTransformContext
    - xmlXPathStringFunction
    - xmlXPathFunctionLookupNS
    - valuePush
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xsltFunctionAvailableFunction(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:1048,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:1048,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:1053,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/functions.c:1055,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/functions.c:1055,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:1057,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:1057,1
    - Dst: valuePush
      Src: /src/libxslt/libxslt/functions.c:1059,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxslt/libxslt/functions.c:1059,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 1043
    functionDepth: 3
    functionLinenumber: 1043
    functionLinenumberEnd: 1061
    functionName: xsltCurrentFunction
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlXPathNewNodeSet
    - valuePush
    - xsltXPathGetTransformContext
    linkageType: ''
    returnType: void
    signature: void xsltCurrentFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1078,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1080,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1082,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1083,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1085,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1087,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1089,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1091,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxslt/libxslt/functions.c:1093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1075
    functionDepth: 1
    functionLinenumber: 1075
    functionLinenumberEnd: 1095
    functionName: xsltRegisterAllFunctions
    functionSourceFile: /src/libxslt/libxslt/functions.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterFunc
    linkageType: ''
    returnType: void
    signature: void xsltRegisterAllFunctions(xmlXPathContextPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: IS_BLANK
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: IS_BLANK_NODE
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_NODE(n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:126,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:127,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:131,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - style
    - node
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 119
    functionDepth: 3
    functionLinenumber: 119
    functionLinenumberEnd: 135
    functionName: xsltParseContentError
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - IS_XSLT_ELEM
    linkageType: ''
    returnType: void
    signature: "void xsltParseContentError(xsltStylesheetPtr style,\n\t\t       xmlNodePtr
      node)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:160,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:166,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/xslt.c:173,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:176,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - style
    - orig
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 185
    functionName: exclPrefixPush
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlStrEqual
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: int exclPrefixPush(xsltStylesheetPtr style, xmlChar * orig)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 209
    functionName: exclPrefixPop
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      exclPrefixPop(xsltStylesheetPtr style)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewRMutex
      Src: /src/libxslt/libxslt/xslt.c:230,1
    - Dst: xsltRegisterAllExtras
      Src: /src/libxslt/libxslt/xslt.c:232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 234
    functionName: xsltInit
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xmlNewRMutex
    - xsltRegisterAllExtras
    linkageType: ''
    returnType: void
    signature: void xsltInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeRMutex
      Src: /src/libxslt/libxslt/xslt.c:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 248
    functionName: xsltUninit
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFreeRMutex
    linkageType: ''
    returnType: void
    signature: void xsltUninit (void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:263,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 267
    functionName: xsltIsBlank
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - IS_BLANK
    linkageType: ''
    returnType: int
    signature: int xsltIsBlank(xmlChar *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:281,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:288,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:288,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:289,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:289,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:290,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:290,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:291,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:291,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:292,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:292,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:293,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:293,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:294,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:294,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:295,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:295,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:296,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:296,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:297,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - nsUri
    - name
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 300
    functionName: xsltNewDecimalFormat
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - BAD_CAST
    linkageType: ''
    returnType: xsltDecimalFormatPtr
    signature: xsltDecimalFormatPtr xsltNewDecimalFormat(const xmlChar *nsUri, xmlChar
      *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:307,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:309,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:311,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:313,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:315,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:317,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:319,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:321,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:323,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:325,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:327,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:328,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - self
    argTypes:
    - xsltDecimalFormatPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 330
    functionName: xsltFreeDecimalFormat
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeDecimalFormat(xsltDecimalFormatPtr self)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeDecimalFormat
      Src: /src/libxslt/libxslt/xslt.c:344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - self
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 347
    functionName: xsltFreeDecimalFormatList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFreeDecimalFormat
    linkageType: ''
    returnType: void
    signature: void xsltFreeDecimalFormatList(xsltStylesheetPtr self)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:370,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/xslt.c:373,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - style
    - name
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 358
    functionDepth: 1
    functionLinenumber: 358
    functionLinenumberEnd: 376
    functionName: xsltDecimalFormatGetByName
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltNextImport
    linkageType: ''
    returnType: xsltDecimalFormatPtr
    signature: xsltDecimalFormatPtr xsltDecimalFormatGetByName(xsltStylesheetPtr style,
      xmlChar *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:401,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:402,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/xslt.c:405,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - style
    - nsUri
    - name
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 408
    functionName: xsltDecimalFormatGetByQName
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xsltNextImport
    linkageType: ''
    returnType: xsltDecimalFormatPtr
    signature: "xsltDecimalFormatPtr xsltDecimalFormatGetByQName(xsltStylesheetPtr
      style, const xmlChar *nsUri,\n                            const xmlChar *name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:422,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:424,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 418
    functionDepth: 3
    functionLinenumber: 418
    functionLinenumberEnd: 431
    functionName: xsltNewTemplate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltTemplatePtr
    signature: xsltTemplatePtr xsltNewTemplate(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:453,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:457,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:459,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:460,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 439
    functionDepth: 0
    functionLinenumber: 439
    functionLinenumberEnd: 461
    functionName: xsltFreeTemplate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeTemplate(xsltTemplatePtr template)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeTemplate
      Src: /src/libxslt/libxslt/xslt.c:476,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 478
    functionName: xsltFreeTemplateList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFreeTemplate
    linkageType: ''
    returnType: void
    signature: void xsltFreeTemplateList(xsltTemplatePtr template)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - item
    argTypes:
    - xsltNsAliasPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 493
    functionName: xsltFreeNsAliasList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeNsAliasList(xsltNsAliasPtr item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - item
    argTypes:
    - xsltNsMapPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 507
    functionName: xsltFreeNamespaceMap
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeNamespaceMap(xsltNsMapPtr item)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:520,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:522,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:527,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - cctxt
    - doc
    - ns
    - elem
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlDocPtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 509
    functionDepth: 3
    functionLinenumber: 509
    functionLinenumberEnd: 539
    functionName: xsltNewNamespaceMapItem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltNsMapPtr
    signature: "xsltNsMapPtr xsltNewNamespaceMapItem(xsltCompilerCtxtPtr cctxt,\n\t\t\txmlDocPtr
      doc,\n\t\t\txmlNsPtr ns,\n\t\t\txmlNodePtr elem)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:556,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - cctxt
    argTypes:
    - xsltCompilerCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 558
    functionName: xsltCompilerVarInfoFree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltCompilerVarInfoFree(xsltCompilerCtxtPtr cctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:571,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:573,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:575,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:586,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:590,1
    - Dst: xsltFreeNsAliasList
      Src: /src/libxslt/libxslt/xslt.c:592,1
    - Dst: xsltCompilerVarInfoFree
      Src: /src/libxslt/libxslt/xslt.c:595,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:597,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - cctxt
    argTypes:
    - xsltCompilerCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 598
    functionName: xsltCompilationCtxtFree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlFree
    - xsltFreeNsAliasList
    - xsltPointerListFree
    - xsltCompilerVarInfoFree
    linkageType: ''
    returnType: void
    signature: void xsltCompilationCtxtFree(xsltCompilerCtxtPtr cctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:612,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:614,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:619,1
    - Dst: xsltPointerListCreate
      Src: /src/libxslt/libxslt/xslt.c:622,1
    - Dst: xsltCompilationCtxtFree
      Src: /src/libxslt/libxslt/xslt.c:630,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 608
    functionDepth: 3
    functionLinenumber: 608
    functionLinenumberEnd: 632
    functionName: xsltCompilationCtxtCreate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltPointerListCreate
    - xsltTransformError
    - xmlMalloc
    - xsltCompilationCtxtFree
    - memset
    linkageType: ''
    returnType: xsltCompilerCtxtPtr
    signature: xsltCompilerCtxtPtr xsltCompilationCtxtCreate(xsltStylesheetPtr style)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:642,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - first
    argTypes:
    - xsltEffectiveNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 644
    functionName: xsltLREEffectiveNsNodesFree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltLREEffectiveNsNodesFree(xsltEffectiveNsPtr first)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:664,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:665,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:667,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:677,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:679,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:689,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:691,1
    - Dst: xsltLREEffectiveNsNodesFree
      Src: /src/libxslt/libxslt/xslt.c:695,1
    - Dst: xsltFreeNamespaceMap
      Src: /src/libxslt/libxslt/xslt.c:699,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:701,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - data
    argTypes:
    - xsltPrincipalStylesheetDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 646
    functionDepth: 1
    functionLinenumber: 646
    functionLinenumberEnd: 702
    functionName: xsltFreePrincipalStylesheetData
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltLREEffectiveNsNodesFree
    - xsltFreeNamespaceMap
    - xmlFree
    - xsltPointerListFree
    linkageType: ''
    returnType: void
    signature: void xsltFreePrincipalStylesheetData(xsltPrincipalStylesheetDataPtr
      data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:710,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:712,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:716,1
    - Dst: xsltPointerListCreate
      Src: /src/libxslt/libxslt/xslt.c:721,1
    - Dst: xsltPointerListCreate
      Src: /src/libxslt/libxslt/xslt.c:727,1
    - Dst: xsltPointerListCreate
      Src: /src/libxslt/libxslt/xslt.c:733,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 704
    functionDepth: 3
    functionLinenumber: 704
    functionLinenumberEnd: 742
    functionName: xsltNewPrincipalStylesheetData
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xsltPointerListCreate
    - memset
    linkageType: ''
    returnType: xsltPrincipalStylesheetDataPtr
    signature: xsltPrincipalStylesheetDataPtr xsltNewPrincipalStylesheetData(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:758,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:760,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:764,1
    - Dst: xsltNewDecimalFormat
      Src: /src/libxslt/libxslt/xslt.c:769,1
    - Dst: xmlDictCreate
      Src: /src/libxslt/libxslt/xslt.c:781,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:783,1
    - Dst: xmlXPathNewContext
      Src: /src/libxslt/libxslt/xslt.c:790,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:792,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxslt/libxslt/xslt.c:796,1
    - Dst: xsltInit
      Src: /src/libxslt/libxslt/xslt.c:802,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/libxslt/xslt.c:808,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 754
    functionDepth: 3
    functionLinenumber: 754
    functionLinenumberEnd: 810
    functionName: xsltNewStylesheetInternal
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltInit
    - xsltTransformError
    - xmlXPathNewContext
    - xmlMalloc
    - xsltNewDecimalFormat
    - xmlDictCreate
    - xmlXPathContextSetCache
    - xsltFreeStylesheet
    - memset
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltNewStylesheetInternal(xsltStylesheetPtr parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylesheetInternal
      Src: /src/libxslt/libxslt/xslt.c:821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 819
    functionDepth: 4
    functionLinenumber: 819
    functionLinenumberEnd: 822
    functionName: xsltNewStylesheet
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 2
    functionsReached:
    - xsltNewStylesheetInternal
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltNewStylesheet(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 833
    functionDepth: 0
    functionLinenumber: 833
    functionLinenumberEnd: 837
    functionName: xsltAllocateExtra
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltAllocateExtra(xsltStylesheetPtr style)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:857,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:859,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/xslt.c:873,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:876,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 849
    functionDepth: 3
    functionLinenumber: 849
    functionLinenumberEnd: 889
    functionName: xsltAllocateExtraCtxt
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xsltAllocateExtraCtxt(xsltTransformContextPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/libxslt/xslt.c:903,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 906
    functionName: xsltFreeStylesheetList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFreeStylesheet
    linkageType: ''
    returnType: void
    signature: void xsltFreeStylesheetList(xsltStylesheetPtr style)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 26
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 966
    functionName: xsltCleanupStylesheetTree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltCleanupStylesheetTree(xmlDocPtr doc ATTRIBUTE_UNUSED,\n\t\t\t
      \ xmlNodePtr rootElem ATTRIBUTE_UNUSED)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xsltCleanupStylesheetTree
      Src: /src/libxslt/libxslt/xslt.c:985,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:986,1
    - Dst: XSLT_HAS_INTERNAL_NSMAP
      Src: /src/libxslt/libxslt/xslt.c:992,1
    - Dst: xsltRestoreDocumentNamespaces
      Src: /src/libxslt/libxslt/xslt.c:994,1
    - Dst: XSLT_GET_INTERNAL_NSMAP
      Src: /src/libxslt/libxslt/xslt.c:994,1
    - Dst: xsltCleanupStylesheetTree
      Src: /src/libxslt/libxslt/xslt.c:1003,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:1004,1
    - Dst: xsltFreeKeys
      Src: /src/libxslt/libxslt/xslt.c:1007,1
    - Dst: xsltFreeExts
      Src: /src/libxslt/libxslt/xslt.c:1008,1
    - Dst: xsltFreeTemplateHashes
      Src: /src/libxslt/libxslt/xslt.c:1009,1
    - Dst: xsltFreeDecimalFormatList
      Src: /src/libxslt/libxslt/xslt.c:1010,1
    - Dst: xsltFreeTemplateList
      Src: /src/libxslt/libxslt/xslt.c:1011,1
    - Dst: xsltFreeAttributeSetsHashes
      Src: /src/libxslt/libxslt/xslt.c:1012,1
    - Dst: xsltFreeNamespaceAliasHashes
      Src: /src/libxslt/libxslt/xslt.c:1013,1
    - Dst: xsltFreeStylePreComps
      Src: /src/libxslt/libxslt/xslt.c:1014,1
    - Dst: xsltFreeStyleDocuments
      Src: /src/libxslt/libxslt/xslt.c:1019,1
    - Dst: xsltShutdownExts
      Src: /src/libxslt/libxslt/xslt.c:1023,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/xslt.c:1026,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/xslt.c:1028,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/xslt.c:1030,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/xslt.c:1032,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1034,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1036,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1038,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1040,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1042,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1044,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1046,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1048,1
    - Dst: xsltFreeAVTList
      Src: /src/libxslt/libxslt/xslt.c:1050,1
    - Dst: xsltFreeStylesheetList
      Src: /src/libxslt/libxslt/xslt.c:1052,1
    - Dst: xsltFreePrincipalStylesheetData
      Src: /src/libxslt/libxslt/xslt.c:1061,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/xslt.c:1071,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1075,1
    - Dst: xmlDictFree
      Src: /src/libxslt/libxslt/xslt.c:1078,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxslt/libxslt/xslt.c:1081,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:1083,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1084,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 63
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 974
    functionDepth: 2
    functionLinenumber: 974
    functionLinenumberEnd: 1085
    functionName: xsltFreeStylesheet
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 8
    functionsReached:
    - xmlDictFree
    - xsltFreeTemplateHashes
    - xsltFreeAttributeSetsHashes
    - xsltFreePrincipalStylesheetData
    - xsltFreeStyleDocuments
    - xsltFreeKeys
    - xsltFreeStylePreComps
    - xsltFreeAVTList
    - xsltFreeStackElemList
    - xmlFree
    - XSLT_GET_INTERNAL_NSMAP
    - xsltFreeStylesheetList
    - xmlDocGetRootElement
    - xsltGenericDebug
    - xsltFreeExts
    - xsltFreeTemplateList
    - XSLT_HAS_INTERNAL_NSMAP
    - xsltCleanupStylesheetTree
    - xsltShutdownExts
    - memset
    - xmlXPathFreeContext
    - xsltFreeDecimalFormatList
    - xmlHashFree
    - xsltRestoreDocumentNamespaces
    - xsltFreeNamespaceAliasHashes
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xsltFreeStylesheet(xsltStylesheetPtr style)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1128,1
    - Dst: xsltCheckExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:1132,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1140,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1148,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/xslt.c:1154,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:1157,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1159,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1175,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 47
    argCount: 2
    argNames:
    - style
    - node
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1110
    functionDepth: 1
    functionLinenumber: 1110
    functionLinenumberEnd: 1182
    functionName: xsltGetInheritedNsList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlRealloc
    - xsltGenericDebug
    - xsltCheckExtPrefix
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltGetInheritedNsList(xsltStylesheetPtr style,\n\t               xsltTemplatePtr
      template,\n\t               xmlNodePtr node)"
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1205,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1208,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1212,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1215,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1222,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1227,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1230,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:1236,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1240,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1241,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1242,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1245,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1248,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:1252,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1256,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1259,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1263,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1266,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1270,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1272,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1274,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1277,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1281,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1284,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1286,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1288,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1291,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1295,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1298,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1300,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1302,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1305,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1310,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1313,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/xslt.c:1317,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1319,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1325,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1330,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:1332,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1335,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/xslt.c:1339,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1340,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1343,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:1351,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1357,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1373,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/xslt.c:1377,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1379,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1385,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1388,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1391,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:1395,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 146
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1397
      start: 1194
    functionDepth: 4
    functionLinenumber: 1194
    functionLinenumberEnd: 1397
    functionName: xsltParseStylesheetOutput
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xsltGenericDebug
    - xsltTransformError
    - xsltGetQNameURI
    - IS_BLANK
    - xmlStrndup
    - xmlSearchNs
    - xmlGetNsProp
    - xmlValidateQName
    - xsltParseContentError
    - xmlHashCreate
    - xmlHashAddEntry2
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetOutput(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1426,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/xslt.c:1426,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/xslt.c:1430,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1431,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1434,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:1440,1
    - Dst: xsltDecimalFormatGetByQName
      Src: /src/libxslt/libxslt/xslt.c:1445,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1447,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1450,1
    - Dst: xsltNewDecimalFormat
      Src: /src/libxslt/libxslt/xslt.c:1453,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1455,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1458,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1468,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1470,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1474,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1476,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1480,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1482,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1486,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1488,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1492,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1494,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1498,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1500,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1504,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1506,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1510,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1512,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1516,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1518,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1522,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1524,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:1528,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 99
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1414
    functionDepth: 4
    functionLinenumber: 1414
    functionLinenumberEnd: 1530
    functionName: xsltParseStylesheetDecimalFormat
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xsltTransformError
    - xsltGetQNameURI
    - BAD_CAST
    - xsltDecimalFormatGetByQName
    - xmlGetNsProp
    - xmlValidateQName
    - xsltNewDecimalFormat
    - xsltParseContentError
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetDecimalFormat(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1549,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1551,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/xslt.c:1558,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1560,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1566,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1570,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:1571,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1574,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1577,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:1585,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/xslt.c:1587,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1590,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1594,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:1596,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 42
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1598
      start: 1541
    functionDepth: 4
    functionLinenumber: 1541
    functionLinenumberEnd: 1598
    functionName: xsltParseStylesheetPreserveSpace
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlFree
    - xmlStrEqual
    - xsltTransformError
    - IS_BLANK
    - xmlStrndup
    - xsltGetQNameURI
    - xmlGetNsProp
    - xsltParseContentError
    - xmlHashCreate
    - xmlHashAddEntry2
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetPreserveSpace(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1627,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1631,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1640,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1644,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:1645,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1649,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1650,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1652,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1654,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1660,1
    - Dst: xsltRegisterExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:1663,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1665,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1669,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 3
    argNames:
    - style
    - cur
    - isXsltElem
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1616
    functionDepth: 3
    functionLinenumber: 1616
    functionLinenumberEnd: 1670
    functionName: xsltParseStylesheetExtPrefix
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - IS_BLANK
    - xmlStrndup
    - xmlSearchNs
    - xmlGetNsProp
    - xsltRegisterExtPrefix
    linkageType: ''
    returnType: void
    signature: "void xsltParseStylesheetExtPrefix(xsltStylesheetPtr style, xmlNodePtr
      cur,\n\t\t\t     int isXsltElem)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/xslt.c:1691,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1695,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1697,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1705,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1709,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:1710,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1713,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1716,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:1724,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/xslt.c:1726,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1729,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1733,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:1735,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1682
    functionDepth: 4
    functionLinenumber: 1682
    functionLinenumberEnd: 1737
    functionName: xsltParseStylesheetStripSpace
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - IS_BLANK
    - xmlStrndup
    - xsltGetQNameURI
    - xmlGetNsProp
    - xsltParseContentError
    - xmlHashCreate
    - xmlHashAddEntry2
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetStripSpace(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1764,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:1767,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1776,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:1780,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:1781,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1785,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1786,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1788,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1790,1
    - Dst: exclPrefixPush
      Src: /src/libxslt/libxslt/xslt.c:1795,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:1797,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1803,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:1807,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 3
    argNames:
    - style
    - cur
    - isXsltElem
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1809
      start: 1752
    functionDepth: 3
    functionLinenumber: 1752
    functionLinenumberEnd: 1809
    functionName: xsltParseStylesheetExcludePrefix
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - IS_BLANK
    - xmlStrndup
    - exclPrefixPush
    - xmlSearchNs
    - xmlGetNsProp
    linkageType: ''
    returnType: int
    signature: "int xsltParseStylesheetExcludePrefix(xsltStylesheetPtr style, xmlNodePtr
      cur,\n\t\t\t\t int isXsltElem)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:1833,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:1835,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:1840,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:1847,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:1849,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:1851,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:1853,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1824
    functionDepth: 1
    functionLinenumber: 1824
    functionLinenumberEnd: 1857
    functionName: xsltTreeEnsureXMLDecl
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlMalloc
    - xmlDictLookup
    - xmlGenericError
    - memset
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xsltTreeEnsureXMLDecl(xmlDocPtr doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltTreeEnsureXMLDecl
      Src: /src/libxslt/libxslt/xslt.c:1885,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1895,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1899,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1900,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/xslt.c:1910,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 3
    argNames:
    - doc
    - nsName
    - prefix
    argTypes:
    - xmlDocPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1873
    functionDepth: 2
    functionLinenumber: 1873
    functionLinenumberEnd: 1912
    functionName: xsltTreeAcquireStoredNs
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlNewNs
    - xmlStrEqual
    - xsltTreeEnsureXMLDecl
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltTreeAcquireStoredNs(xmlDocPtr doc,\n\t\t\tconst xmlChar
      *nsName,\n\t\t\tconst xmlChar *prefix)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1941,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:1964,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:1971,1
    - Dst: xsltTreeAcquireStoredNs
      Src: /src/libxslt/libxslt/xslt.c:1984,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:1989,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2031,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:2039,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2042,1
    - Dst: xsltTreeAcquireStoredNs
      Src: /src/libxslt/libxslt/xslt.c:2044,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2049,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 65
    argCount: 2
    argNames:
    - cctxt
    - elem
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 1920
    functionDepth: 3
    functionLinenumber: 1920
    functionLinenumberEnd: 2076
    functionName: xsltLREBuildEffectiveNs
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltTreeAcquireStoredNs
    - xmlStrEqual
    - xmlSearchNs
    linkageType: ''
    returnType: int
    signature: "int xsltLREBuildEffectiveNs(xsltCompilerCtxtPtr cctxt,\n\t\t\txmlNodePtr
      elem)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2125,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2157,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2174,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2190,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2198,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2223,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2225,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 82
    argCount: 4
    argNames:
    - cctxt
    - item
    - elem
    - isLRE
    argTypes:
    - xsltCompilerCtxtPtr
    - xsltStyleItemLRElementInfoPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2091
    functionDepth: 3
    functionLinenumber: 2091
    functionLinenumberEnd: 2254
    functionName: xsltLREBuildEffectiveNsNodes
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xsltLREBuildEffectiveNsNodes(xsltCompilerCtxtPtr cctxt,\n\t\t\t
      \    xsltStyleItemLRElementInfoPtr item,\n\t\t\t     xmlNodePtr elem,\n\t\t\t
      \    int isLRE)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2275,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2277,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:2283,1
    - Dst: xsltLREBuildEffectiveNsNodes
      Src: /src/libxslt/libxslt/xslt.c:2297,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - cctxt
    - elem
    - isLRE
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2264
    functionDepth: 4
    functionLinenumber: 2264
    functionLinenumberEnd: 2303
    functionName: xsltLREInfoCreate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xsltLREBuildEffectiveNsNodes
    - memset
    linkageType: ''
    returnType: int
    signature: "int xsltLREInfoCreate(xsltCompilerCtxtPtr cctxt,\n\t\t  xmlNodePtr
      elem,\n\t\t  int isLRE)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2326,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2328,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 4
    argNames:
    - cctxt
    - inst
    - name
    - nsName
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2348
      start: 2313
    functionDepth: 3
    functionLinenumber: 2313
    functionLinenumberEnd: 2348
    functionName: xsltCompilerVarInfoPush
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    linkageType: ''
    returnType: xsltVarInfoPtr
    signature: "xsltVarInfoPtr xsltCompilerVarInfoPush(xsltCompilerCtxtPtr cctxt,\n\t\t\t\t
      \ xmlNodePtr inst,\n\t\t\t\t  const xmlChar *name,\n\t\t\t\t  const xmlChar
      *nsName)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - cctxt
    argTypes:
    - xsltCompilerCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2366
      start: 2357
    functionDepth: 0
    functionLinenumber: 2357
    functionLinenumberEnd: 2366
    functionName: xsltCompilerVarInfoPop
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltCompilerVarInfoPop(xsltCompilerCtxtPtr cctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2393,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2395,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:2399,1
    - Dst: xsltLREInfoCreate
      Src: /src/libxslt/libxslt/xslt.c:2414,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 53
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2473
      start: 2379
    functionDepth: 5
    functionLinenumber: 2379
    functionLinenumberEnd: 2473
    functionName: xsltCompilerNodePush
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xsltLREInfoCreate
    - memset
    linkageType: ''
    returnType: xsltCompilerNodeInfoPtr
    signature: xsltCompilerNodeInfoPtr xsltCompilerNodePush(xsltCompilerCtxtPtr cctxt,
      xmlNodePtr node)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:2487,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:2496,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:2501,1
    - Dst: xsltCompilerVarInfoPop
      Src: /src/libxslt/libxslt/xslt.c:2510,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:2551,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:2554,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2483
    functionDepth: 1
    functionLinenumber: 2483
    functionLinenumberEnd: 2558
    functionName: xsltCompilerNodePop
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlGenericError
    - xsltCompilerVarInfoPop
    linkageType: ''
    returnType: void
    signature: void xsltCompilerNodePop(xsltCompilerCtxtPtr cctxt, xmlNodePtr node)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2589,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2591,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:2596,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:2598,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2600,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2612,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/xslt.c:2619,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2622,1
    - Dst: xsltPointerListAddSize
      Src: /src/libxslt/libxslt/xslt.c:2655,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:2659,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2661,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:2675,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 71
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2570
    functionDepth: 3
    functionLinenumber: 2570
    functionLinenumberEnd: 2678
    functionName: xsltCompilerBuildInScopeNsList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - xmlMalloc
    - xsltPointerListAddSize
    - memset
    linkageType: ''
    returnType: xsltNsListContainerPtr
    signature: xsltNsListContainerPtr xsltCompilerBuildInScopeNsList(xsltCompilerCtxtPtr
      cctxt, xmlNodePtr node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:2696,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:2700,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:2701,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:2714,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:2715,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/xslt.c:2717,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2724,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:2735,1
    - Dst: xsltPointerListAddSize
      Src: /src/libxslt/libxslt/xslt.c:2741,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:2742,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:2745,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:2749,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 4
    argNames:
    - cctxt
    - list
    - node
    - value
    argTypes:
    - xsltCompilerCtxtPtr
    - xsltPointerListPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2680
    functionDepth: 3
    functionLinenumber: 2680
    functionLinenumberEnd: 2758
    functionName: xsltParseNsPrefixList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - IS_BLANK
    - xmlStrndup
    - xmlSearchNs
    - xsltPointerListAddSize
    - xmlDictLookup
    linkageType: ''
    returnType: int
    signature: "int xsltParseNsPrefixList(xsltCompilerCtxtPtr cctxt,\n\t\t      xsltPointerListPtr
      list,\n\t\t      xmlNodePtr node,\n\t\t      const xmlChar *value)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltPointerListCreate
      Src: /src/libxslt/libxslt/xslt.c:2786,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xslt.c:2793,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xslt.c:2796,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xslt.c:2799,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 2
    argNames:
    - first
    - second
    argTypes:
    - xsltPointerListPtr
    - xsltPointerListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2803
      start: 2771
    functionDepth: 2
    functionLinenumber: 2771
    functionLinenumberEnd: 2803
    functionName: xsltCompilerUtilsCreateMergedList
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - memcpy
    - xsltPointerListCreate
    linkageType: ''
    returnType: xsltPointerListPtr
    signature: "xsltPointerListPtr xsltCompilerUtilsCreateMergedList(xsltPointerListPtr
      first,\n\t\t\t    xsltPointerListPtr second)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:2828,1
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:2830,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2846,1
    - Dst: xsltParseNsPrefixList
      Src: /src/libxslt/libxslt/xslt.c:2852,1
    - Dst: xsltCompilerUtilsCreateMergedList
      Src: /src/libxslt/libxslt/xslt.c:2860,1
    - Dst: xsltPointerListAddSize
      Src: /src/libxslt/libxslt/xslt.c:2866,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:2869,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 4
    argNames:
    - cctxt
    - node
    - def
    - instrCategory
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - xsltPointerListPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2884
      start: 2815
    functionDepth: 4
    functionLinenumber: 2815
    functionLinenumberEnd: 2884
    functionName: xsltParseExclResultPrefixes
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlHasNsProp
    - xsltParseNsPrefixList
    - xsltTransformError
    - xsltCompilerUtilsCreateMergedList
    - xsltPointerListAddSize
    - xsltPointerListFree
    linkageType: ''
    returnType: xsltPointerListPtr
    signature: "xsltPointerListPtr xsltParseExclResultPrefixes(xsltCompilerCtxtPtr
      cctxt, xmlNodePtr node,\n\t\t\t    xsltPointerListPtr def,\n\t\t\t    int instrCategory)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:2910,1
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:2912,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:2928,1
    - Dst: xsltParseNsPrefixList
      Src: /src/libxslt/libxslt/xslt.c:2935,1
    - Dst: xsltRegisterExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:2945,1
    - Dst: xsltCompilerUtilsCreateMergedList
      Src: /src/libxslt/libxslt/xslt.c:2950,1
    - Dst: xsltPointerListAddSize
      Src: /src/libxslt/libxslt/xslt.c:2956,1
    - Dst: xsltPointerListFree
      Src: /src/libxslt/libxslt/xslt.c:2959,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 42
    argCount: 4
    argNames:
    - cctxt
    - node
    - def
    - instrCategory
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - xsltPointerListPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2974
      start: 2896
    functionDepth: 4
    functionLinenumber: 2896
    functionLinenumberEnd: 2974
    functionName: xsltParseExtElemPrefixes
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlHasNsProp
    - xsltParseNsPrefixList
    - xsltTransformError
    - xsltCompilerUtilsCreateMergedList
    - xsltRegisterExtPrefix
    - xsltPointerListAddSize
    - xsltPointerListFree
    linkageType: ''
    returnType: xsltPointerListPtr
    signature: "xsltPointerListPtr xsltParseExtElemPrefixes(xsltCompilerCtxtPtr cctxt,
      xmlNodePtr node,\n\t\t\t xsltPointerListPtr def,\n\t\t\t int instrCategory)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:2999,1
    - Dst: xmlHasNsProp
      Src: /src/libxslt/libxslt/xslt.c:3001,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3012,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3018,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3030,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - cctxt
    - node
    - instrCategory
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3049
      start: 2988
    functionDepth: 3
    functionLinenumber: 2988
    functionLinenumberEnd: 3049
    functionName: xsltParseAttrXSLTVersion
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlHasNsProp
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xsltParseAttrXSLTVersion(xsltCompilerCtxtPtr cctxt, xmlNodePtr
      node,\n\t\t\t int instrCategory)"
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxslt/libxslt/xslt.c:3092,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:3110,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3113,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3114,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:3124,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:3133,1
    - Dst: xsltNewNamespaceMapItem
      Src: /src/libxslt/libxslt/xslt.c:3136,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3195,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3196,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3200,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3201,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3202,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3225,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3226,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:3229,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3231,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3232,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3260,1
    - Dst: xsltNewNamespaceMapItem
      Src: /src/libxslt/libxslt/xslt.c:3262,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/xslt.c:3281,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:3283,1
    - Dst: xmlNodeSetContent
      Src: /src/libxslt/libxslt/xslt.c:3285,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:3303,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3306,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3308,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3312,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:3317,1
    - Dst: xmlNodeAddContent
      Src: /src/libxslt/libxslt/xslt.c:3363,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3396,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:3415,1
    - Dst: xsltIsBlank
      Src: /src/libxslt/libxslt/xslt.c:3416,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3419,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3420,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/xslt.c:3436,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:3441,1
    - Dst: xmlNodeSetContent
      Src: /src/libxslt/libxslt/xslt.c:3443,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:3456,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:3470,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3473,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3474,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 217
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3480
      start: 3051
    functionDepth: 6
    functionLinenumber: 3051
    functionLinenumberEnd: 3480
    functionName: xsltParsePreprocessStylesheetTree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetSpacePreserve
    - xmlUnlinkNode
    - IS_XSLT_ELEM
    - xmlDictLookup
    - xsltCompilerNodePop
    - xmlFree
    - IS_BLANK
    - xmlNodeAddContent
    - xmlGetNsProp
    - xmlDictOwns
    - xsltIsBlank
    - xmlFreeNode
    - IS_BLANK_NODE
    - xsltGenericDebug
    - xmlStrEqual
    - xsltTransformError
    - xsltNewNamespaceMapItem
    - xmlNodeSetContent
    - xsltCompilerNodePush
    linkageType: ''
    returnType: int
    signature: int xsltParsePreprocessStylesheetTree(xsltCompilerCtxtPtr cctxt, xmlNodePtr
      node)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:3501,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3502,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:3517,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3520,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3521,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/xslt.c:3537,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:3546,1
    - Dst: xmlNodeSetContent
      Src: /src/libxslt/libxslt/xslt.c:3549,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:3556,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3558,1
    - Dst: exclPrefixPop
      Src: /src/libxslt/libxslt/xslt.c:3560,1
    - Dst: xsltParseStylesheetExcludePrefix
      Src: /src/libxslt/libxslt/xslt.c:3564,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:3572,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3579,1
    - Dst: xsltPreprocessStylesheet
      Src: /src/libxslt/libxslt/xslt.c:3608,1
    - Dst: exclPrefixPop
      Src: /src/libxslt/libxslt/xslt.c:3610,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:3614,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxslt/libxslt/xslt.c:3615,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/xslt.c:3619,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:3627,1
    - Dst: xmlNodeSetContent
      Src: /src/libxslt/libxslt/xslt.c:3628,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3644,1
    - Dst: xsltCheckExtURI
      Src: /src/libxslt/libxslt/xslt.c:3645,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:3674,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:3677,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:3678,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 127
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3680
      start: 3486
    functionDepth: 4
    functionLinenumber: 3486
    functionLinenumberEnd: 3680
    functionName: xsltPreprocessStylesheet
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetSpacePreserve
    - IS_XSLT_NAME
    - xmlUnlinkNode
    - IS_BLANK_NODE
    - xsltGenericDebug
    - xmlStrEqual
    - exclPrefixPop
    - xsltCheckExtURI
    - xmlNodeSetContent
    - xsltPreprocessStylesheet
    - IS_XSLT_ELEM
    - xmlDictOwns
    - xsltParseStylesheetExcludePrefix
    - xmlDictLookup
    - xmlDocGetRootElement
    - xmlFreeNode
    linkageType: ''
    returnType: void
    signature: void xsltPreprocessStylesheet(xsltStylesheetPtr style, xmlNodePtr cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:3710,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/xslt.c:3717,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3719,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/xslt.c:3725,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:3726,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:3727,1
    - Dst: xmlHashUpdateEntry
      Src: /src/libxslt/libxslt/xslt.c:3731,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:3735,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3772
      start: 3691
    functionDepth: 3
    functionLinenumber: 3691
    functionLinenumberEnd: 3772
    functionName: xsltGatherNamespaces
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltGenericDebug
    - xsltTransformError
    - xmlHashLookup
    - xmlHashUpdateEntry
    - xmlHashCreate
    - xmlDocGetRootElement
    linkageType: ''
    returnType: void
    signature: void xsltGatherNamespaces(xsltStylesheetPtr style)
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3785,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3787,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3789,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3791,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3795,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3797,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3799,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3801,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3803,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3807,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3809,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3813,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3817,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3819,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3823,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3825,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3827,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3831,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3835,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3839,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3841,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3845,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3847,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3851,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3853,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3855,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3859,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3861,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3863,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3867,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3869,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3871,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3875,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3877,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3881,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:3883,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 106
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3887
      start: 3776
    functionDepth: 1
    functionLinenumber: 3776
    functionLinenumberEnd: 3887
    functionName: xsltGetXSLTElementTypeByNode
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    linkageType: ''
    returnType: xsltStyleType
    signature: "xsltStyleType xsltGetXSLTElementTypeByNode(xsltCompilerCtxtPtr cctxt,\n\t\t\t
      \    xmlNodePtr node)"
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:3909,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:3918,1
    - Dst: xsltGetXSLTElementTypeByNode
      Src: /src/libxslt/libxslt/xslt.c:3926,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:3932,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/xslt.c:3939,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4010,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4047,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:4066,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4070,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4083,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4084,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4086,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4087,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4089,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4091,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4093,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4106,1
    - Dst: xsltGetXSLTElementTypeByNode
      Src: /src/libxslt/libxslt/xslt.c:4109,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4112,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4114,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4117,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4131,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:4149,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4151,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4174,1
    - Dst: xsltGetXSLTElementTypeByNode
      Src: /src/libxslt/libxslt/xslt.c:4177,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4181,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4186,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4189,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4194,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4203,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4205,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:4207,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4216,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4240,1
    - Dst: xsltGetXSLTElementTypeByNode
      Src: /src/libxslt/libxslt/xslt.c:4242,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4246,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:4257,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:4266,1
    - Dst: xsltCompilerVarInfoPush
      Src: /src/libxslt/libxslt/xslt.c:4279,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:4287,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:4291,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 274
    argCount: 2
    argNames:
    - cctxt
    - elem
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4293
      start: 3900
    functionDepth: 6
    functionLinenumber: 3900
    functionLinenumberEnd: 4293
    functionName: xsltParseAnyXSLTElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - IS_BLANK_NODE
    - xsltParseSequenceConstructor
    - xsltCompilerNodePop
    - xsltGenericDebug
    - xsltCompilerBuildInScopeNsList
    - xmlStrEqual
    - xsltCompilerVarInfoPush
    - xsltTransformError
    - xsltParseAnyXSLTElem
    - IS_XSLT_ELEM_FAST
    - xsltParseContentError
    - xsltGetXSLTElementTypeByNode
    - xsltStylePreCompute
    - xsltCompilerNodePush
    linkageType: ''
    returnType: int
    signature: int xsltParseAnyXSLTElem(xsltCompilerCtxtPtr cctxt, xmlNodePtr elem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:4310,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4312,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:4318,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - cctxt
    argTypes:
    - xsltCompilerCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4326
      start: 4305
    functionDepth: 3
    functionLinenumber: 4305
    functionLinenumberEnd: 4326
    functionName: xsltForwardsCompatUnkownItemCreate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltStyleItemUknownPtr
    signature: xsltStyleItemUknownPtr xsltForwardsCompatUnkownItemCreate(xsltCompilerCtxtPtr
      cctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4359,1
    - Dst: xsltForwardsCompatUnkownItemCreate
      Src: /src/libxslt/libxslt/xslt.c:4378,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:4390,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:4396,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4402,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:4403,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4406,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:4411,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4414
      start: 4342
    functionDepth: 7
    functionLinenumber: 4342
    functionLinenumberEnd: 4414
    functionName: xsltParseUnknownXSLTElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xsltCompilerNodePop
    - xsltCompilerBuildInScopeNsList
    - xsltForwardsCompatUnkownItemCreate
    - xsltTransformError
    - xsltParseAnyXSLTElem
    - IS_XSLT_ELEM_FAST
    - xsltCompilerNodePush
    linkageType: ''
    returnType: int
    signature: "int xsltParseUnknownXSLTElem(xsltCompilerCtxtPtr cctxt,\n\t\t\t    xmlNodePtr
      node)"
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/xslt.c:4432,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:4477,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:4480,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:4481,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:4514,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxslt/libxslt/xslt.c:4515,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4516,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:4518,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4522,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4539,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4547,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4558,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4561,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4573,1
    - Dst: xsltGetXSLTElementTypeByNode
      Src: /src/libxslt/libxslt/xslt.c:4583,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4608,1
    - Dst: xsltParseUnknownXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4611,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:4620,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:4626,1
    - Dst: xsltParseExtElemPrefixes
      Src: /src/libxslt/libxslt/xslt.c:4656,1
    - Dst: xsltCheckExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:4664,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4678,1
    - Dst: xsltPreComputeExtModuleElement
      Src: /src/libxslt/libxslt/xslt.c:4686,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:4730,1
    - Dst: xsltParseExclResultPrefixes
      Src: /src/libxslt/libxslt/xslt.c:4750,1
    - Dst: xsltParseAttrXSLTVersion
      Src: /src/libxslt/libxslt/xslt.c:4756,1
    - Dst: IS_XSLT_ATTR_FAST
      Src: /src/libxslt/libxslt/xslt.c:4769,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4771,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4774,1
    - Dst: xsltLREInfoCreate
      Src: /src/libxslt/libxslt/xslt.c:4793,1
    - Dst: xsltLREBuildEffectiveNs
      Src: /src/libxslt/libxslt/xslt.c:4799,1
    - Dst: xsltCompileAttr
      Src: /src/libxslt/libxslt/xslt.c:4807,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:4816,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:4822,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:4829,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:4832,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:4833,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 153
    argCount: 2
    argNames:
    - cctxt
    - cur
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4836
      start: 4425
    functionDepth: 8
    functionLinenumber: 4425
    functionLinenumberEnd: 4836
    functionName: xsltParseSequenceConstructor
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 2
    functionsReached:
    - xsltParseSequenceConstructor
    - xmlUnlinkNode
    - xsltParseAttrXSLTVersion
    - xsltLREInfoCreate
    - IS_XSLT_ELEM_FAST
    - IS_XSLT_ATTR_FAST
    - xsltCompilerNodePop
    - xsltCompilerBuildInScopeNsList
    - xsltCompileAttr
    - xmlAddPrevSibling
    - xmlFreeNode
    - xsltGenericDebug
    - xmlStrEqual
    - xsltLREBuildEffectiveNs
    - xsltTransformError
    - xmlGenericError
    - xsltCheckExtPrefix
    - xsltGetXSLTElementTypeByNode
    - xsltPreComputeExtModuleElement
    - xsltParseAnyXSLTElem
    - xsltParseUnknownXSLTElem
    - xsltParseExtElemPrefixes
    - xsltCompilerNodePush
    - xsltParseExclResultPrefixes
    linkageType: ''
    returnType: void
    signature: void xsltParseSequenceConstructor(xsltCompilerCtxtPtr cctxt, xmlNodePtr
      cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:4861,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:4862,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:4876,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:4877,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:4879,1
    - Dst: xsltParseAnyXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:4880,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:4880,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:4888,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:4888,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - style
    - templ
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4890
      start: 4852
    functionDepth: 9
    functionLinenumber: 4852
    functionLinenumberEnd: 4890
    functionName: xsltParseTemplateContent
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xsltParseSequenceConstructor
    - XSLT_CCTXT
    - IS_XSLT_NAME
    - xsltParseAnyXSLTElem
    - IS_XSLT_ELEM_FAST
    linkageType: ''
    returnType: void
    signature: void xsltParseTemplateContent(xsltStylesheetPtr style, xmlNodePtr templ)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:4922,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:4929,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/xslt.c:4930,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:4932,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:4945,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:4950,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4953,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:4955,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4957,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:4962,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:4972,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/xslt.c:4990,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:4998,1
    - Dst: xmlNodeSetContent
      Src: /src/libxslt/libxslt/xslt.c:5001,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:5008,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxslt/libxslt/xslt.c:5009,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5010,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:5012,1
    - Dst: xsltCheckExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:5023,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/xslt.c:5028,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxslt/libxslt/xslt.c:5037,1
    - Dst: xsltCompileAttr
      Src: /src/libxslt/libxslt/xslt.c:5044,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5080,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:5093,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5093,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:5102,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5102,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5105,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:5109,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:5110,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 129
    argCount: 2
    argNames:
    - style
    - templ
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5114
      start: 4903
    functionDepth: 3
    functionLinenumber: 4903
    functionLinenumberEnd: 5114
    functionName: xsltParseTemplateContent
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - IS_XSLT_NAME
    - xmlUnlinkNode
    - xsltGenericDebug
    - xmlStrEqual
    - xmlFree
    - xsltCompileAttr
    - xsltTransformError
    - xmlSearchNsByHref
    - xmlAddPrevSibling
    - xmlGetNsProp
    - xsltCheckExtPrefix
    - xmlNodeSetContent
    - IS_XSLT_ELEM
    - xsltStylePreCompute
    - xmlDictLookup
    - xmlFreeNode
    - xmlDictOwns
    linkageType: ''
    returnType: void
    signature: void xsltParseTemplateContent(xsltStylesheetPtr style, xmlNodePtr templ)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5143,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:5150,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:5157,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5160,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5164,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5170,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5172,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5178,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5180,1
    - Dst: xsltAddKey
      Src: /src/libxslt/libxslt/xslt.c:5189,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5194,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5196,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5198,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5200,1
    - Dst: xsltParseContentError
      Src: /src/libxslt/libxslt/xslt.c:5203,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 2
    argNames:
    - style
    - key
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5205
      start: 5129
    functionDepth: 4
    functionLinenumber: 5129
    functionLinenumberEnd: 5205
    functionName: xsltParseStylesheetKey
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xsltGenericDebug
    - xmlFree
    - xsltAddKey
    - xsltTransformError
    - xsltGetQNameURI
    - xmlGetNsProp
    - xsltParseContentError
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetKey(xsltStylesheetPtr style, xmlNodePtr key)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewTemplate
      Src: /src/libxslt/libxslt/xslt.c:5234,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:5238,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:5241,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5250,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:5260,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5265,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5266,1
    - Dst: xmlValidateNCName
      Src: /src/libxslt/libxslt/xslt.c:5268,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5269,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5276,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5278,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5285,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5293,1
    - Dst: xmlXPathStringEvalNumber
      Src: /src/libxslt/libxslt/xslt.c:5295,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5297,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5303,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:5311,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5316,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5317,1
    - Dst: xmlValidateNCName
      Src: /src/libxslt/libxslt/xslt.c:5319,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5320,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5327,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:5330,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:5331,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:5333,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5335,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/xslt.c:5344,1
    - Dst: xsltAddTemplate
      Src: /src/libxslt/libxslt/xslt.c:5364,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:5367,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 85
    argCount: 2
    argNames:
    - cctxt
    - templNode
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5369
      start: 5221
    functionDepth: 10
    functionLinenumber: 5221
    functionLinenumberEnd: 5369
    functionName: xsltParseXSLTTemplate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xsltParseTemplateContent
    - xsltCompilerNodePop
    - xsltGenericDebug
    - xsltCompilerBuildInScopeNsList
    - xmlFree
    - xmlStrEqual
    - xsltGetQNameURI
    - xsltTransformError
    - xsltNewTemplate
    - xmlXPathStringEvalNumber
    - xmlGetNsProp
    - xmlDictLookup
    - xsltCompilerNodePush
    - xsltAddTemplate
    linkageType: ''
    returnType: void
    signature: void xsltParseXSLTTemplate(xsltCompilerCtxtPtr cctxt, xmlNodePtr templNode)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5395,1
    - Dst: xsltNewTemplate
      Src: /src/libxslt/libxslt/xslt.c:5405,1
    - Dst: xsltGetInheritedNsList
      Src: /src/libxslt/libxslt/xslt.c:5419,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5424,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:5431,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:5438,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5440,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5441,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5443,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5446,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5447,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5449,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5451,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5455,1
    - Dst: xmlXPathStringEvalNumber
      Src: /src/libxslt/libxslt/xslt.c:5457,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5459,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:5462,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/xslt.c:5469,1
    - Dst: xmlValidateNCName
      Src: /src/libxslt/libxslt/xslt.c:5474,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5475,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5478,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5481,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:5482,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/xslt.c:5485,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/xslt.c:5494,1
    - Dst: xsltAddTemplate
      Src: /src/libxslt/libxslt/xslt.c:5497,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5501
      start: 5381
    functionDepth: 10
    functionLinenumber: 5381
    functionLinenumberEnd: 5501
    functionName: xsltParseStylesheetTemplate
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xmlStrdup
    - xsltParseTemplateContent
    - xsltGetInheritedNsList
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - xsltGetQNameURI
    - xsltNewTemplate
    - xmlXPathStringEvalNumber
    - xmlGetNsProp
    - xmlDictLookup
    - xsltAddTemplate
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetTemplate(xsltStylesheetPtr style, xmlNodePtr
      template)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xslt.c:5522,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5524,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xslt.c:5529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5539
      start: 5514
    functionDepth: 3
    functionLinenumber: 5514
    functionLinenumberEnd: 5539
    functionName: xsltCompileXSLTIncludeElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltStyleItemIncludePtr
    signature: xsltStyleItemIncludePtr xsltCompileXSLTIncludeElem(xsltCompilerCtxtPtr
      cctxt, xmlNodePtr node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:5557,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:5558,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 6
    argNames:
    - cctxt
    - cur
    - name
    - namespaceURI
    - breakOnOtherElem
    - resultNode
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - int
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5571
      start: 5541
    functionDepth: 1
    functionLinenumber: 5541
    functionLinenumberEnd: 5571
    functionName: xsltParseFindTopLevelElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xsltParseFindTopLevelElem(xsltCompilerCtxtPtr cctxt,\n\t\t\t      xmlNodePtr
      cur,\n\t\t\t      const xmlChar *name,\n\t\t\t      const xmlChar *namespaceURI,\n\t\t\t
      \     int breakOnOtherElem,\n\t\t\t      xmlNodePtr *resultNode)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:5589,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:5592,1
    - Dst: xsltCompileXSLTIncludeElem
      Src: /src/libxslt/libxslt/xslt.c:5600,1
    - Dst: xsltParseStylesheetInclude
      Src: /src/libxslt/libxslt/xslt.c:5608,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/xslt.c:5615,1
    - Dst: xsltParseGlobalParam
      Src: /src/libxslt/libxslt/xslt.c:5616,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/xslt.c:5619,1
    - Dst: xsltParseGlobalVariable
      Src: /src/libxslt/libxslt/xslt.c:5620,1
    - Dst: xsltParseStylesheetAttributeSet
      Src: /src/libxslt/libxslt/xslt.c:5623,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5626,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:5634,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - cctxt
    - node
    - type
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    - xsltStyleType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5637
      start: 5573
    functionDepth: 6
    functionLinenumber: 5573
    functionLinenumberEnd: 5637
    functionName: xsltParseTopLevelXSLTElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltCompilerNodePop
    - xsltCompilerBuildInScopeNsList
    - xsltTransformError
    - xsltParseStylesheetInclude
    - xsltParseGlobalVariable
    - xsltCompileXSLTIncludeElem
    - xsltParseGlobalParam
    - xsltStylePreCompute
    - xsltCompilerNodePush
    - xsltParseStylesheetAttributeSet
    linkageType: ''
    returnType: int
    signature: "int xsltParseTopLevelXSLTElem(xsltCompilerCtxtPtr cctxt,\n\t\t\t  xmlNodePtr
      node,\n\t\t\t  xsltStyleType type)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:5650,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:5651,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:5656,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/xslt.c:5661,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/xslt.c:5662,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5667
      start: 5640
    functionDepth: 1
    functionLinenumber: 5640
    functionLinenumberEnd: 5667
    functionName: xsltParseRemoveWhitespace
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_NODE
    - xmlUnlinkNode
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int xsltParseRemoveWhitespace(xmlNodePtr node)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:5689,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5689,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:5710,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:5721,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:5737,1
    - Dst: xsltParseAttrXSLTVersion
      Src: /src/libxslt/libxslt/xslt.c:5748,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5761,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5766,1
    - Dst: xsltParseExtElemPrefixes
      Src: /src/libxslt/libxslt/xslt.c:5781,1
    - Dst: xsltParseExclResultPrefixes
      Src: /src/libxslt/libxslt/xslt.c:5787,1
    - Dst: xsltLREInfoCreate
      Src: /src/libxslt/libxslt/xslt.c:5793,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5819,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5824,1
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:5834,1
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:5845,1
    - Dst: xsltParseTopLevelXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:5848,1
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:5856,1
    - Dst: xsltParseTopLevelXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:5859,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5872,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/xslt.c:5881,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5885,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5886,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5896,1
    - Dst: xsltParseXSLTTemplate
      Src: /src/libxslt/libxslt/xslt.c:5905,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5906,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5908,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5910,1
    - Dst: xsltParseXSLTStylesheetElemCore
      Src: /src/libxslt/libxslt/xslt.c:5912,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5914,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5920,1
    - Dst: xsltParseStylesheetStripSpace
      Src: /src/libxslt/libxslt/xslt.c:5922,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5923,1
    - Dst: xsltParseStylesheetPreserveSpace
      Src: /src/libxslt/libxslt/xslt.c:5925,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5926,1
    - Dst: xsltParseStylesheetOutput
      Src: /src/libxslt/libxslt/xslt.c:5928,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5929,1
    - Dst: xsltParseStylesheetKey
      Src: /src/libxslt/libxslt/xslt.c:5931,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5932,1
    - Dst: xsltParseStylesheetDecimalFormat
      Src: /src/libxslt/libxslt/xslt.c:5934,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5935,1
    - Dst: xsltParseTopLevelXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:5936,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:5938,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5953,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:5958,1
    - Dst: xsltExtModuleTopLevelLookup
      Src: /src/libxslt/libxslt/xslt.c:5974,1
    - Dst: function
      Src: /src/libxslt/libxslt/xslt.c:5977,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5979,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5994,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5997,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:5999,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:6004,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 135
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6006
      start: 5670
    functionDepth: 11
    functionLinenumber: 5670
    functionLinenumberEnd: 6006
    functionName: xsltParseXSLTStylesheetElemCore
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xsltParseXSLTStylesheetElemCore
    - xsltParseAttrXSLTVersion
    - xsltLREInfoCreate
    - IS_XSLT_ELEM_FAST
    - xsltParseStylesheetStripSpace
    - xsltParseXSLTTemplate
    - xsltParseTopLevelXSLTElem
    - xsltCompilerNodePop
    - xsltCompilerBuildInScopeNsList
    - xsltParseFindTopLevelElem
    - function
    - xmlDocGetRootElement
    - xsltParseStylesheetKey
    - IS_XSLT_NAME
    - xsltGenericDebug
    - xsltTransformError
    - xsltParseStylesheetPreserveSpace
    - xsltParseStylesheetDecimalFormat
    - xsltParseStylesheetOutput
    - xsltExtModuleTopLevelLookup
    - xsltParseExtElemPrefixes
    - xsltCompilerNodePush
    - xsltParseExclResultPrefixes
    linkageType: ''
    returnType: int
    signature: int xsltParseXSLTStylesheetElemCore(xsltCompilerCtxtPtr cctxt, xmlNodePtr
      node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:6054,1
    - Dst: xsltParseStylesheetImport
      Src: /src/libxslt/libxslt/xslt.c:6057,1
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:6070,1
    - Dst: xsltParseTopLevelXSLTElem
      Src: /src/libxslt/libxslt/xslt.c:6073,1
    - Dst: xsltParseFindTopLevelElem
      Src: /src/libxslt/libxslt/xslt.c:6083,1
    - Dst: xsltNamespaceAlias
      Src: /src/libxslt/libxslt/xslt.c:6086,1
    - Dst: xsltParseXSLTStylesheetElemCore
      Src: /src/libxslt/libxslt/xslt.c:6100,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 35
    argCount: 2
    argNames:
    - cctxt
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6104
      start: 6030
    functionDepth: 12
    functionLinenumber: 6030
    functionLinenumberEnd: 6104
    functionName: xsltParseXSLTStylesheetElem
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltParseXSLTStylesheetElemCore
    - xsltParseFindTopLevelElem
    - xsltParseStylesheetImport
    - xsltNamespaceAlias
    - xsltParseTopLevelXSLTElem
    linkageType: ''
    returnType: int
    signature: int xsltParseXSLTStylesheetElem(xsltCompilerCtxtPtr cctxt, xmlNodePtr
      node)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6128,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:6135,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6137,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:6141,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:6142,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6143,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6150,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:6160,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:6164,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6164,1
    - Dst: xsltParseStylesheetImport
      Src: /src/libxslt/libxslt/xslt.c:6165,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/xslt.c:6178,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6184,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/xslt.c:6192,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:6199,1
    - Dst: xsltExtModuleTopLevelLookup
      Src: /src/libxslt/libxslt/xslt.c:6202,1
    - Dst: function
      Src: /src/libxslt/libxslt/xslt.c:6205,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6208,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6215,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6216,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6219,1
    - Dst: xsltParseStylesheetInclude
      Src: /src/libxslt/libxslt/xslt.c:6220,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6222,1
    - Dst: xsltParseStylesheetStripSpace
      Src: /src/libxslt/libxslt/xslt.c:6223,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6224,1
    - Dst: xsltParseStylesheetPreserveSpace
      Src: /src/libxslt/libxslt/xslt.c:6225,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6226,1
    - Dst: xsltParseStylesheetOutput
      Src: /src/libxslt/libxslt/xslt.c:6227,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6228,1
    - Dst: xsltParseStylesheetKey
      Src: /src/libxslt/libxslt/xslt.c:6229,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6230,1
    - Dst: xsltParseStylesheetDecimalFormat
      Src: /src/libxslt/libxslt/xslt.c:6231,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6232,1
    - Dst: xsltParseStylesheetAttributeSet
      Src: /src/libxslt/libxslt/xslt.c:6233,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6234,1
    - Dst: xsltParseGlobalVariable
      Src: /src/libxslt/libxslt/xslt.c:6235,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6236,1
    - Dst: xsltParseGlobalParam
      Src: /src/libxslt/libxslt/xslt.c:6237,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6238,1
    - Dst: xsltParseStylesheetTemplate
      Src: /src/libxslt/libxslt/xslt.c:6242,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6243,1
    - Dst: xsltNamespaceAlias
      Src: /src/libxslt/libxslt/xslt.c:6244,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6247,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6256,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 120
    argCount: 2
    argNames:
    - style
    - top
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6259
      start: 6115
    functionDepth: 11
    functionLinenumber: 6115
    functionLinenumberEnd: 6259
    functionName: xsltParseStylesheetTop
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltParseStylesheetImport
    - xsltParseStylesheetStripSpace
    - IS_XSLT_ELEM
    - xsltGenericError
    - xmlFree
    - xsltParseGlobalVariable
    - xmlGetNsProp
    - xsltNamespaceAlias
    - xsltParseStylesheetAttributeSet
    - function
    - xsltParseStylesheetKey
    - IS_BLANK_NODE
    - IS_XSLT_NAME
    - xmlStrEqual
    - xsltGenericDebug
    - xsltTransformError
    - xsltParseStylesheetPreserveSpace
    - xsltParseStylesheetDecimalFormat
    - xsltParseStylesheetOutput
    - xsltParseStylesheetTemplate
    - xsltExtModuleTopLevelLookup
    - xsltParseStylesheetInclude
    - xsltParseGlobalParam
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetTop(xsltStylesheetPtr style, xmlNodePtr top)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltParseAttrXSLTVersion
      Src: /src/libxslt/libxslt/xslt.c:6284,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6290,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6298,1
    - Dst: xsltNewTemplate
      Src: /src/libxslt/libxslt/xslt.c:6305,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:6311,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:6316,1
    - Dst: xsltCompilerBuildInScopeNsList
      Src: /src/libxslt/libxslt/xslt.c:6325,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/xslt.c:6329,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:6330,1
    - Dst: xsltAddTemplate
      Src: /src/libxslt/libxslt/xslt.c:6334,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - cctxt
    - doc
    - node
    argTypes:
    - xsltCompilerCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6337
      start: 6274
    functionDepth: 9
    functionLinenumber: 6274
    functionLinenumberEnd: 6337
    functionName: xsltParseSimplifiedStylesheetTree
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xsltParseSequenceConstructor
    - xsltCompilerNodePop
    - xsltGenericDebug
    - xsltCompilerBuildInScopeNsList
    - xsltTransformError
    - xsltNewTemplate
    - xsltParseAttrXSLTVersion
    - xsltCompilerNodePush
    - xsltAddTemplate
    linkageType: ''
    returnType: int
    signature: "int xsltParseSimplifiedStylesheetTree(xsltCompilerCtxtPtr cctxt,\n\t\t\t\t
      \ xmlDocPtr doc,\n\t\t\t\t  xmlNodePtr node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ns
    - doc
    argTypes:
    - xsltNsMapPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6367
      start: 6349
    functionDepth: 0
    functionLinenumber: 6349
    functionLinenumberEnd: 6367
    functionName: xsltRestoreDocumentNamespaces
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltRestoreDocumentNamespaces(xsltNsMapPtr ns, xmlDocPtr doc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/xslt.c:6390,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/xslt.c:6395,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:6397,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6399,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:6405,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6406,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6407,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6409,1
    - Dst: xsltParsePreprocessStylesheetTree
      Src: /src/libxslt/libxslt/xslt.c:6424,1
    - Dst: xsltParseXSLTStylesheetElem
      Src: /src/libxslt/libxslt/xslt.c:6429,1
    - Dst: xsltParseSimplifiedStylesheetTree
      Src: /src/libxslt/libxslt/xslt.c:6432,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - style
    - doc
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6439
      start: 6383
    functionDepth: 13
    functionLinenumber: 6383
    functionLinenumberEnd: 6439
    functionName: xsltParseStylesheetProcess
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - XSLT_CCTXT
    - IS_XSLT_NAME
    - xsltGenericDebug
    - xsltParsePreprocessStylesheetTree
    - xsltTransformError
    - xsltParseXSLTStylesheetElem
    - xsltParseSimplifiedStylesheetTree
    - IS_XSLT_ELEM
    - xsltInitGlobals
    - xmlDocGetRootElement
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltParseStylesheetProcess(xsltStylesheetPtr style,
      xmlDocPtr doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/xslt.c:6460,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:6472,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6474,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/xslt.c:6479,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6480,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/xslt.c:6481,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6483,1
    - Dst: xsltParseStylesheetExcludePrefix
      Src: /src/libxslt/libxslt/xslt.c:6487,1
    - Dst: xsltParseStylesheetExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:6488,1
    - Dst: xsltParseStylesheetExcludePrefix
      Src: /src/libxslt/libxslt/xslt.c:6490,1
    - Dst: xsltParseStylesheetExtPrefix
      Src: /src/libxslt/libxslt/xslt.c:6491,1
    - Dst: xsltPreprocessStylesheet
      Src: /src/libxslt/libxslt/xslt.c:6495,1
    - Dst: xsltParseStylesheetTop
      Src: /src/libxslt/libxslt/xslt.c:6498,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/xslt.c:6506,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6508,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6514,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:6518,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:6519,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6520,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6525,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/xslt.c:6536,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/xslt.c:6541,1
    - Dst: xsltAddTemplate
      Src: /src/libxslt/libxslt/xslt.c:6544,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - ret
    - doc
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6549
      start: 6456
    functionDepth: 12
    functionLinenumber: 6456
    functionLinenumberEnd: 6549
    functionName: xsltParseStylesheetProcess
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xmlStrdup
    - xsltParseTemplateContent
    - xsltGenericDebug
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - xsltParseStylesheetExtPrefix
    - xsltParseStylesheetTop
    - xmlGetNsProp
    - xsltPreprocessStylesheet
    - IS_XSLT_ELEM
    - xsltInitGlobals
    - xsltParseStylesheetExcludePrefix
    - xmlDocGetRootElement
    - xsltAddTemplate
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltParseStylesheetProcess(xsltStylesheetPtr ret,
      xmlDocPtr doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylesheetInternal
      Src: /src/libxslt/libxslt/xslt.c:6572,1
    - Dst: xsltParseStylesheetUser
      Src: /src/libxslt/libxslt/xslt.c:6576,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/libxslt/xslt.c:6577,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - doc
    - parentStyle
    argTypes:
    - xmlDocPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6582
      start: 6564
    functionDepth: 4
    functionLinenumber: 6564
    functionLinenumberEnd: 6582
    functionName: xsltParseStylesheetImportedDoc
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xsltParseStylesheetUser
    - xsltNewStylesheetInternal
    - xsltFreeStylesheet
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: "xsltStylesheetPtr xsltParseStylesheetImportedDoc(xmlDocPtr doc,\n\t\t\t
      \      xsltStylesheetPtr parentStyle)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictFree
      Src: /src/libxslt/libxslt/xslt.c:6602,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6605,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/xslt.c:6609,1
    - Dst: xsltGatherNamespaces
      Src: /src/libxslt/libxslt/xslt.c:6616,1
    - Dst: xsltNewPrincipalStylesheetData
      Src: /src/libxslt/libxslt/xslt.c:6628,1
    - Dst: xsltCompilationCtxtCreate
      Src: /src/libxslt/libxslt/xslt.c:6640,1
    - Dst: xsltCompilerNodePush
      Src: /src/libxslt/libxslt/xslt.c:6652,1
    - Dst: xsltParseStylesheetProcess
      Src: /src/libxslt/libxslt/xslt.c:6668,1
    - Dst: xsltCompilerNodePop
      Src: /src/libxslt/libxslt/xslt.c:6675,1
    - Dst: xsltRestoreDocumentNamespaces
      Src: /src/libxslt/libxslt/xslt.c:6691,1
    - Dst: xsltCompilationCtxtFree
      Src: /src/libxslt/libxslt/xslt.c:6696,1
    - Dst: xsltParseStylesheetProcess
      Src: /src/libxslt/libxslt/xslt.c:6706,1
    - Dst: xsltResolveStylesheetAttributeSet
      Src: /src/libxslt/libxslt/xslt.c:6713,1
    - Dst: xsltCleanupStylesheetTree
      Src: /src/libxslt/libxslt/xslt.c:6725,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/xslt.c:6725,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 2
    argNames:
    - style
    - doc
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6730
      start: 6593
    functionDepth: 14
    functionLinenumber: 6593
    functionLinenumberEnd: 6730
    functionName: xsltParseStylesheetUser
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 2
    functionsReached:
    - xmlDictFree
    - xsltCompilerNodePop
    - xsltResolveStylesheetAttributeSet
    - xsltGenericDebug
    - xsltParseStylesheetProcess
    - xmlDictReference
    - xsltGatherNamespaces
    - xsltNewPrincipalStylesheetData
    - xsltRestoreDocumentNamespaces
    - xsltCompilationCtxtCreate
    - xsltCleanupStylesheetTree
    - xsltCompilerNodePush
    - xmlDocGetRootElement
    - xsltCompilationCtxtFree
    linkageType: ''
    returnType: int
    signature: int xsltParseStylesheetUser(xsltStylesheetPtr style, xmlDocPtr doc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/xslt.c:6747,1
    - Dst: xsltParseStylesheetImportedDoc
      Src: /src/libxslt/libxslt/xslt.c:6749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6750
      start: 6745
    functionDepth: 5
    functionLinenumber: 6745
    functionLinenumberEnd: 6750
    functionName: xsltParseStylesheetDoc
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xsltParseStylesheetImportedDoc
    - xsltInitGlobals
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltParseStylesheetDoc(xmlDocPtr doc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/xslt.c:6767,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6773,1
    - Dst: xsltGetDefaultSecurityPrefs
      Src: /src/libxslt/libxslt/xslt.c:6780,1
    - Dst: xsltCheckRead
      Src: /src/libxslt/libxslt/xslt.c:6784,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6787,1
    - Dst: xsltDocDefaultLoader
      Src: /src/libxslt/libxslt/xslt.c:6794,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6797,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/libxslt/xslt.c:6801,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/xslt.c:6803,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - filename
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6808
      start: 6761
    functionDepth: 6
    functionLinenumber: 6761
    functionLinenumberEnd: 6808
    functionName: xsltParseStylesheetFile
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 3
    functionsReached:
    - xsltGenericDebug
    - xsltCheckRead
    - xsltParseStylesheetDoc
    - xsltTransformError
    - xsltDocDefaultLoader
    - xsltInitGlobals
    - xsltGetDefaultSecurityPrefs
    - xmlFreeDoc
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltParseStylesheetFile(const xmlChar* filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6818
      start: 6817
    functionDepth: 0
    functionLinenumber: 6817
    functionLinenumberEnd: 6818
    functionName: SKIP
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6819
      start: 6818
    functionDepth: 0
    functionLinenumber: 6818
    functionLinenumberEnd: 6819
    functionName: NXT
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6848,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6848,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6849,1
    - Dst: SKIP
      Src: /src/libxslt/libxslt/xslt.c:6850,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:6864,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xslt.c:6868,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xslt.c:6869,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/xslt.c:6870,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6871,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6875,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6876,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6876,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/xslt.c:6877,1
    - Dst: SKIP
      Src: /src/libxslt/libxslt/xslt.c:6878,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/xslt.c:6893,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/xslt.c:6896,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6904,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 61
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6908
      start: 6833
    functionDepth: 1
    functionLinenumber: 6833
    functionLinenumberEnd: 6908
    functionName: xsltParseStylesheetPI
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - IS_BLANK
    - xmlStrndup
    - NXT
    - xmlStrcasecmp
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltParseStylesheetPI(const xmlChar *value)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/xslt.c:6931,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/xslt.c:6942,1
    - Dst: xsltParseStylesheetPI
      Src: /src/libxslt/libxslt/xslt.c:6943,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6955,1
    - Dst: xmlParseURI
      Src: /src/libxslt/libxslt/xslt.c:6958,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6960,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:6962,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6972,1
    - Dst: xmlGetID
      Src: /src/libxslt/libxslt/xslt.c:6976,1
    - Dst: xmlGetID
      Src: /src/libxslt/libxslt/xslt.c:6978,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xslt.c:6980,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:6988,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/xslt.c:6997,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/xslt.c:7004,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:7006,1
    - Dst: xmlDocCopyNode
      Src: /src/libxslt/libxslt/xslt.c:7011,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/xslt.c:7013,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:7015,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/xslt.c:7026,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libxslt/xslt.c:7030,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/libxslt/xslt.c:7031,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/xslt.c:7033,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/xslt.c:7043,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/xslt.c:7044,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:7047,1
    - Dst: xsltParseStylesheetFile
      Src: /src/libxslt/libxslt/xslt.c:7050,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:7051,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/xslt.c:7054,1
    - Dst: xsltParseStylesheetFile
      Src: /src/libxslt/libxslt/xslt.c:7057,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:7060,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/xslt.c:7062,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xslt.c:7063,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 68
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7066
      start: 6924
    functionDepth: 7
    functionLinenumber: 6924
    functionLinenumberEnd: 7066
    functionName: xsltLoadStylesheetPI
    functionSourceFile: /src/libxslt/libxslt/xslt.c
    functionUses: 1
    functionsReached:
    - xmlDocCopyNode
    - xmlNodeGetBase
    - xmlFree
    - xsltParseStylesheetPI
    - xsltParseStylesheetFile
    - xmlAddChild
    - xmlNewNs
    - xmlFreeURI
    - xsltInitGlobals
    - xsltGenericDebug
    - xmlStrEqual
    - xmlNewDoc
    - xmlBuildURI
    - xsltTransformError
    - xmlDictReference
    - xmlGetID
    - xmlParseURI
    - xsltParseStylesheetDoc
    - xmlFreeDoc
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltLoadStylesheetPI(xmlDocPtr doc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:80,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:88,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:89,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:90,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:92,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 19
    argCount: 3
    argNames:
    - style
    - inst
    - err
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 100
    functionName: xsltCheckTopLevelElement
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xsltCheckTopLevelElement(xsltStylesheetPtr style, xmlNodePtr inst,
      int err)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:122,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:130,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:131,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:132,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:133,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:134,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/preproc.c:143,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:148,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 20
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 109
    functionDepth: 3
    functionLinenumber: 109
    functionLinenumberEnd: 152
    functionName: xsltCheckInstructionElement
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlStrEqual
    - xmlHashLookup
    linkageType: ''
    returnType: void
    signature: void xsltCheckInstructionElement(xsltStylesheetPtr style, xmlNodePtr
      inst)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:175,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:182,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:183,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:184,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/preproc.c:195,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:201,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 21
    argCount: 4
    argNames:
    - style
    - inst
    - allow1
    - allow2
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 164
    functionDepth: 3
    functionLinenumber: 164
    functionLinenumberEnd: 205
    functionName: xsltCheckParentElement
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlStrEqual
    - xmlHashLookup
    linkageType: ''
    returnType: void
    signature: "void xsltCheckParentElement(xsltStylesheetPtr style, xmlNodePtr inst,\n
      \                      const xmlChar *allow1, const xmlChar *allow2)"
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:285,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/preproc.c:293,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:295,1
    - Dst: memset
      Src: /src/libxslt/libxslt/preproc.c:300,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/preproc.c:306,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:308,1
    - Dst: memset
      Src: /src/libxslt/libxslt/preproc.c:313,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:363,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 157
    argCount: 2
    argNames:
    - style
    - type
    argTypes:
    - xsltStylesheetPtr
    - xsltStyleType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 224
    functionDepth: 3
    functionLinenumber: 224
    functionLinenumberEnd: 372
    functionName: xsltNewStylePreComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltStylePreCompPtr
    signature: xsltStylePreCompPtr xsltNewStylePreComp(xsltStylesheetPtr style, xsltStyleType
      type)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:396,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:412,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:418,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/preproc.c:424,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/preproc.c:426,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:437,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:445,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:452,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:461,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:468,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:475,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:482,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/preproc.c:498,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/preproc.c:500,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/preproc.c:502,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/preproc.c:504,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/preproc.c:507,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 101
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xsltStylePreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 508
    functionName: xsltFreeStylePreComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xsltFreeCompMatchList
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeStylePreComp(xsltStylePreCompPtr comp)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:551,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:553,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:561,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/preproc.c:563,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:574,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:577,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/preproc.c:579,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:591,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:593,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/preproc.c:600,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:604,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/preproc.c:608,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:611,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/preproc.c:614,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:647,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - style
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 527
    functionDepth: 4
    functionLinenumber: 527
    functionLinenumberEnd: 657
    functionName: xsltDocumentComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    - xsltGenericDebug
    - xmlStrEqual
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr xsltDocumentComp(xsltStylesheetPtr style, xmlNodePtr
      inst,\n\t\t xsltTransformFunction function ATTRIBUTE_UNUSED)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:683,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:685,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:693,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:697,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:699,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:702,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:708,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:712,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:714,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:717,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:723,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:727,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:729,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:732,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:739,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:743,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:750,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:752,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:754,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:760,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 61
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 672
    functionDepth: 4
    functionLinenumber: 672
    functionLinenumberEnd: 764
    functionName: xsltSortComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetCNsProp
    - xmlStrEqual
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    - xmlDictLookup
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: void
    signature: void xsltSortComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:784,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:786,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:795,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 773
    functionDepth: 4
    functionLinenumber: 773
    functionLinenumberEnd: 801
    functionName: xsltCopyComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    - xsltGetCNsProp
    linkageType: ''
    returnType: void
    signature: void xsltCopyComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:829,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:831,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:839,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:843,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:845,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:847,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 816
    functionDepth: 4
    functionLinenumber: 816
    functionLinenumberEnd: 852
    functionName: xsltTextComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltGetCNsProp
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: void xsltTextComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:882,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:884,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:898,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:901,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:912,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/preproc.c:916,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:917,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/preproc.c:924,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/preproc.c:935,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:937,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:946,1
    - Dst: xmlStrncasecmp
      Src: /src/libxslt/libxslt/preproc.c:955,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:967,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 862
    functionDepth: 4
    functionLinenumber: 862
    functionLinenumberEnd: 973
    functionName: xsltElementComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xmlStrncasecmp
    - xsltSplitQName
    - xsltTransformError
    - xsltNewStylePreComp
    - xmlSearchNs
    - xmlValidateQName
    - xmlDictLookup
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: void
    signature: void xsltElementComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1001,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1004,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:1018,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1022,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:1033,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/preproc.c:1038,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1039,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1043,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1044,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/preproc.c:1050,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/preproc.c:1062,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:1064,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1073,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1085
      start: 982
    functionDepth: 4
    functionLinenumber: 982
    functionLinenumberEnd: 1085
    functionName: xsltAttributeComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltSplitQName
    - xsltTransformError
    - xsltNewStylePreComp
    - xmlSearchNs
    - xmlValidateQName
    - xmlDictLookup
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: void
    signature: void xsltAttributeComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1106,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1108,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1094
    functionDepth: 4
    functionLinenumber: 1094
    functionLinenumberEnd: 1115
    functionName: xsltCommentComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltCommentComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1136,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1138,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:1146,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1124
    functionDepth: 4
    functionLinenumber: 1124
    functionLinenumberEnd: 1149
    functionName: xsltProcessingInstructionComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: void
    signature: void xsltProcessingInstructionComp(xsltStylesheetPtr style, xmlNodePtr
      inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1170,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1172,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1180,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1183,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1188,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1190,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1158
    functionDepth: 4
    functionLinenumber: 1158
    functionLinenumberEnd: 1195
    functionName: xsltCopyOfComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltGetCNsProp
    - xsltXPathCompile
    linkageType: ''
    returnType: void
    signature: void xsltCopyOfComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1217,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1219,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1227,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1231,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1233,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1235,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1240,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1243,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1248,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1250,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1255
      start: 1204
    functionDepth: 4
    functionLinenumber: 1204
    functionLinenumberEnd: 1255
    functionName: xsltValueOfComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetCNsProp
    - xmlStrEqual
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltValueOfComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1273,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1276,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/preproc.c:1284,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1285,1
    - Dst: xsltGetQNameURI2
      Src: /src/libxslt/libxslt/preproc.c:1294,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:1309,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 7
    argNames:
    - style
    - inst
    - propName
    - mandatory
    - hasProp
    - nsName
    - localName
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar*
    - int
    - int*
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1257
    functionDepth: 4
    functionLinenumber: 1257
    functionLinenumberEnd: 1316
    functionName: xsltGetQNameProperty
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameURI2
    - xsltGetCNsProp
    - xsltTransformError
    - xmlValidateQName
    - xmlDictLookup
    linkageType: ''
    returnType: void
    signature: "void xsltGetQNameProperty(xsltStylesheetPtr style, xmlNodePtr inst,\n\t\t
      \    const xmlChar *propName,\n\t\t     int mandatory,\n\t\t     int *hasProp,
      const xmlChar **nsName,\n\t\t     const xmlChar** localName)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1343,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1345,1
    - Dst: xsltGetQNameProperty
      Src: /src/libxslt/libxslt/preproc.c:1356,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1363,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1366,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1368,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1374,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1331
    functionDepth: 5
    functionLinenumber: 1331
    functionLinenumberEnd: 1380
    functionName: xsltWithParamComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameProperty
    - xsltGetCNsProp
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltWithParamComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1402,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1404,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1413,1
    - Dst: xsltEvalStaticAttrValueTemplate
      Src: /src/libxslt/libxslt/preproc.c:1416,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:1420,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1425,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1427,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1430,1
    - Dst: xsltCompilePattern
      Src: /src/libxslt/libxslt/preproc.c:1432,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1436,1
    - Dst: xsltCompilePattern
      Src: /src/libxslt/libxslt/preproc.c:1438,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1442,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1444,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/preproc.c:1444,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1445,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/preproc.c:1445,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1446,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/preproc.c:1446,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1449,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1455,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1457,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1462,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1464,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/preproc.c:1464,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1465,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:1469,1
    - Dst: BAD_CAST
      Src: /src/libxslt/libxslt/preproc.c:1469,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1470,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1475,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1481,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/preproc.c:1484,1
    - Dst: xsltGetUTF8Char
      Src: /src/libxslt/libxslt/preproc.c:1486,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1491,1
    - Dst: sscanf
      Src: /src/libxslt/libxslt/preproc.c:1493,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/preproc.c:1501,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 79
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1389
    functionDepth: 4
    functionLinenumber: 1389
    functionLinenumberEnd: 1506
    functionName: xsltNumberComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetCNsProp
    - xmlStrEqual
    - xmlStrlen
    - xsltTransformError
    - xsltNewStylePreComp
    - BAD_CAST
    - xsltGetUTF8Char
    - xsltCompilePattern
    - xmlDictLookup
    - sscanf
    - xsltEvalStaticAttrValueTemplate
    linkageType: ''
    returnType: void
    signature: void xsltNumberComp(xsltStylesheetPtr style, xmlNodePtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1527,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1515
    functionDepth: 4
    functionLinenumber: 1515
    functionLinenumberEnd: 1536
    functionName: xsltApplyImportsComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltApplyImportsComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1558,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1560,1
    - Dst: xsltGetQNameProperty
      Src: /src/libxslt/libxslt/preproc.c:1571,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1575
      start: 1545
    functionDepth: 5
    functionLinenumber: 1545
    functionLinenumberEnd: 1575
    functionName: xsltCallTemplateComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameProperty
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltCallTemplateComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1597,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1599,1
    - Dst: xsltGetQNameProperty
      Src: /src/libxslt/libxslt/preproc.c:1610,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1615,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1618,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1620,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1584
    functionDepth: 5
    functionLinenumber: 1584
    functionLinenumberEnd: 1627
    functionName: xsltApplyTemplatesComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameProperty
    - xsltGetCNsProp
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltApplyTemplatesComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1649,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1651,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1636
    functionDepth: 4
    functionLinenumber: 1636
    functionLinenumberEnd: 1658
    functionName: xsltChooseComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltChooseComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1680,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1682,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1690,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1692,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1697,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1699,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1667
    functionDepth: 4
    functionLinenumber: 1667
    functionLinenumberEnd: 1704
    functionName: xsltIfComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltGetCNsProp
    - xsltXPathCompile
    linkageType: ''
    returnType: void
    signature: void xsltIfComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1726,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1728,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1736,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1738,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1743,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1745,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1750
      start: 1713
    functionDepth: 4
    functionLinenumber: 1713
    functionLinenumberEnd: 1750
    functionName: xsltWhenComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltGetCNsProp
    - xsltXPathCompile
    linkageType: ''
    returnType: void
    signature: void xsltWhenComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1772,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1774,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1782,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1785,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1789,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1791,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1798
      start: 1759
    functionDepth: 4
    functionLinenumber: 1759
    functionLinenumberEnd: 1798
    functionName: xsltForEachComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltGetCNsProp
    - xsltXPathCompile
    linkageType: ''
    returnType: void
    signature: void xsltForEachComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1820,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1822,1
    - Dst: xsltGetQNameProperty
      Src: /src/libxslt/libxslt/preproc.c:1837,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1844,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1850,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1852,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1859,1
    - Dst: xsltIsBlank
      Src: /src/libxslt/libxslt/preproc.c:1867,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1869,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1807
    functionDepth: 5
    functionLinenumber: 1807
    functionLinenumberEnd: 1877
    functionName: xsltVariableComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameProperty
    - xsltGetCNsProp
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    - xsltIsBlank
    linkageType: ''
    returnType: void
    signature: void xsltVariableComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1899,1
    - Dst: xsltNewStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1901,1
    - Dst: xsltGetQNameProperty
      Src: /src/libxslt/libxslt/preproc.c:1912,1
    - Dst: xsltGetCNsProp
      Src: /src/libxslt/libxslt/preproc.c:1919,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/preproc.c:1922,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1924,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:1930,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1936
      start: 1886
    functionDepth: 5
    functionLinenumber: 1886
    functionLinenumberEnd: 1936
    functionName: xsltParamComp
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 0
    functionsReached:
    - xsltGetQNameProperty
    - xsltGetCNsProp
    - xsltXPathCompile
    - xsltTransformError
    - xsltNewStylePreComp
    linkageType: ''
    returnType: void
    signature: void xsltParamComp(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltElemPreCompPtr::free
      Src: /src/libxslt/libxslt/preproc.c:1961,1
    - Dst: xsltFreeStylePreComp
      Src: /src/libxslt/libxslt/preproc.c:1963,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1950
    functionDepth: 2
    functionLinenumber: 1950
    functionLinenumberEnd: 1966
    functionName: xsltFreeStylePreComps
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 1
    functionsReached:
    - xsltFreeStylePreComp
    - xsltElemPreCompPtr::free
    linkageType: ''
    returnType: void
    signature: void xsltFreeStylePreComps(xsltStylesheetPtr style)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/preproc.c:1992,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/preproc.c:1996,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/preproc.c:1997,1
    - Dst: xsltApplyTemplatesComp
      Src: /src/libxslt/libxslt/preproc.c:1999,1
    - Dst: xsltWithParamComp
      Src: /src/libxslt/libxslt/preproc.c:2002,1
    - Dst: xsltValueOfComp
      Src: /src/libxslt/libxslt/preproc.c:2005,1
    - Dst: xsltCopyComp
      Src: /src/libxslt/libxslt/preproc.c:2008,1
    - Dst: xsltCopyOfComp
      Src: /src/libxslt/libxslt/preproc.c:2011,1
    - Dst: xsltIfComp
      Src: /src/libxslt/libxslt/preproc.c:2014,1
    - Dst: xsltChooseComp
      Src: /src/libxslt/libxslt/preproc.c:2017,1
    - Dst: xsltWhenComp
      Src: /src/libxslt/libxslt/preproc.c:2020,1
    - Dst: xsltForEachComp
      Src: /src/libxslt/libxslt/preproc.c:2026,1
    - Dst: xsltApplyImportsComp
      Src: /src/libxslt/libxslt/preproc.c:2029,1
    - Dst: xsltAttributeComp
      Src: /src/libxslt/libxslt/preproc.c:2032,1
    - Dst: xsltElementComp
      Src: /src/libxslt/libxslt/preproc.c:2035,1
    - Dst: xsltSortComp
      Src: /src/libxslt/libxslt/preproc.c:2038,1
    - Dst: xsltCommentComp
      Src: /src/libxslt/libxslt/preproc.c:2041,1
    - Dst: xsltNumberComp
      Src: /src/libxslt/libxslt/preproc.c:2044,1
    - Dst: xsltProcessingInstructionComp
      Src: /src/libxslt/libxslt/preproc.c:2047,1
    - Dst: xsltCallTemplateComp
      Src: /src/libxslt/libxslt/preproc.c:2050,1
    - Dst: xsltParamComp
      Src: /src/libxslt/libxslt/preproc.c:2053,1
    - Dst: xsltVariableComp
      Src: /src/libxslt/libxslt/preproc.c:2056,1
    - Dst: xsltDocumentComp
      Src: /src/libxslt/libxslt/preproc.c:2063,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:2075,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2085,1
    - Dst: xsltApplyTemplatesComp
      Src: /src/libxslt/libxslt/preproc.c:2086,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2087,1
    - Dst: xsltWithParamComp
      Src: /src/libxslt/libxslt/preproc.c:2088,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2089,1
    - Dst: xsltValueOfComp
      Src: /src/libxslt/libxslt/preproc.c:2090,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2091,1
    - Dst: xsltCopyComp
      Src: /src/libxslt/libxslt/preproc.c:2092,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2093,1
    - Dst: xsltCopyOfComp
      Src: /src/libxslt/libxslt/preproc.c:2094,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2095,1
    - Dst: xsltIfComp
      Src: /src/libxslt/libxslt/preproc.c:2096,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2097,1
    - Dst: xsltChooseComp
      Src: /src/libxslt/libxslt/preproc.c:2098,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2099,1
    - Dst: xsltWhenComp
      Src: /src/libxslt/libxslt/preproc.c:2100,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2101,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2104,1
    - Dst: xsltForEachComp
      Src: /src/libxslt/libxslt/preproc.c:2105,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2106,1
    - Dst: xsltApplyImportsComp
      Src: /src/libxslt/libxslt/preproc.c:2107,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2108,1
    - Dst: xsltAttributeComp
      Src: /src/libxslt/libxslt/preproc.c:2109,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2110,1
    - Dst: xsltElementComp
      Src: /src/libxslt/libxslt/preproc.c:2111,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2112,1
    - Dst: xsltSortComp
      Src: /src/libxslt/libxslt/preproc.c:2113,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2114,1
    - Dst: xsltCommentComp
      Src: /src/libxslt/libxslt/preproc.c:2115,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2116,1
    - Dst: xsltNumberComp
      Src: /src/libxslt/libxslt/preproc.c:2117,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2118,1
    - Dst: xsltProcessingInstructionComp
      Src: /src/libxslt/libxslt/preproc.c:2119,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2120,1
    - Dst: xsltCallTemplateComp
      Src: /src/libxslt/libxslt/preproc.c:2121,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2122,1
    - Dst: xsltParamComp
      Src: /src/libxslt/libxslt/preproc.c:2123,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2124,1
    - Dst: xsltVariableComp
      Src: /src/libxslt/libxslt/preproc.c:2125,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2126,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2129,1
    - Dst: xsltDocumentComp
      Src: /src/libxslt/libxslt/preproc.c:2131,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2133,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2136,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2139,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2142,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2145,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2147,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2150,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2153,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2156,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:2164,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/preproc.c:2177,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 185
    argCount: 2
    argNames:
    - style
    - node
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 1979
    functionDepth: 6
    functionLinenumber: 1979
    functionLinenumberEnd: 2179
    functionName: xsltStylePreCompute
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 3
    functionsReached:
    - xsltCopyComp
    - xsltIfComp
    - IS_XSLT_ELEM_FAST
    - xsltElementComp
    - xsltWhenComp
    - xsltDocumentComp
    - xsltProcessingInstructionComp
    - xsltCopyOfComp
    - xsltSortComp
    - xsltVariableComp
    - IS_XSLT_NAME
    - xsltTransformError
    - xsltCallTemplateComp
    - xsltApplyImportsComp
    - xsltCommentComp
    - xsltForEachComp
    - XSLT_CCTXT
    - xsltValueOfComp
    - xsltWithParamComp
    - xsltChooseComp
    - xsltApplyTemplatesComp
    - xsltParamComp
    - xsltAttributeComp
    - xsltNumberComp
    linkageType: ''
    returnType: void
    signature: void xsltStylePreCompute(xsltStylesheetPtr style, xmlNodePtr node)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/preproc.c:2205,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2208,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2209,1
    - Dst: xsltApplyTemplatesComp
      Src: /src/libxslt/libxslt/preproc.c:2210,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2211,1
    - Dst: xsltCheckParentElement
      Src: /src/libxslt/libxslt/preproc.c:2212,1
    - Dst: xsltWithParamComp
      Src: /src/libxslt/libxslt/preproc.c:2214,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2215,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2216,1
    - Dst: xsltValueOfComp
      Src: /src/libxslt/libxslt/preproc.c:2217,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2218,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2219,1
    - Dst: xsltCopyComp
      Src: /src/libxslt/libxslt/preproc.c:2220,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2221,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2222,1
    - Dst: xsltCopyOfComp
      Src: /src/libxslt/libxslt/preproc.c:2223,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2224,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2225,1
    - Dst: xsltIfComp
      Src: /src/libxslt/libxslt/preproc.c:2226,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2227,1
    - Dst: xsltCheckParentElement
      Src: /src/libxslt/libxslt/preproc.c:2228,1
    - Dst: xsltWhenComp
      Src: /src/libxslt/libxslt/preproc.c:2229,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2230,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2231,1
    - Dst: xsltChooseComp
      Src: /src/libxslt/libxslt/preproc.c:2232,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2233,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2234,1
    - Dst: xsltForEachComp
      Src: /src/libxslt/libxslt/preproc.c:2235,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2236,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2237,1
    - Dst: xsltApplyImportsComp
      Src: /src/libxslt/libxslt/preproc.c:2238,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2239,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:2245,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/preproc.c:2246,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2247,1
    - Dst: xsltAttributeComp
      Src: /src/libxslt/libxslt/preproc.c:2249,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2250,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2251,1
    - Dst: xsltElementComp
      Src: /src/libxslt/libxslt/preproc.c:2252,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2253,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2254,1
    - Dst: xsltTextComp
      Src: /src/libxslt/libxslt/preproc.c:2255,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2256,1
    - Dst: xsltCheckParentElement
      Src: /src/libxslt/libxslt/preproc.c:2257,1
    - Dst: xsltSortComp
      Src: /src/libxslt/libxslt/preproc.c:2259,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2260,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2261,1
    - Dst: xsltCommentComp
      Src: /src/libxslt/libxslt/preproc.c:2262,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2263,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2264,1
    - Dst: xsltNumberComp
      Src: /src/libxslt/libxslt/preproc.c:2265,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2266,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2267,1
    - Dst: xsltProcessingInstructionComp
      Src: /src/libxslt/libxslt/preproc.c:2268,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2269,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2270,1
    - Dst: xsltCallTemplateComp
      Src: /src/libxslt/libxslt/preproc.c:2271,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2272,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2273,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2274,1
    - Dst: xsltParamComp
      Src: /src/libxslt/libxslt/preproc.c:2275,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2276,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2277,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2278,1
    - Dst: xsltVariableComp
      Src: /src/libxslt/libxslt/preproc.c:2279,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2280,1
    - Dst: xsltCheckParentElement
      Src: /src/libxslt/libxslt/preproc.c:2281,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2282,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2284,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2285,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2287,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2288,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2290,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2291,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2293,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2294,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2296,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2297,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:2301,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2307,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2308,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2310,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2311,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2313,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2314,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2316,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2317,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2319,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2320,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2322,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2323,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2325,1
    - Dst: xsltCheckTopLevelElement
      Src: /src/libxslt/libxslt/preproc.c:2326,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2328,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2329,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/preproc.c:2331,1
    - Dst: xsltCheckInstructionElement
      Src: /src/libxslt/libxslt/preproc.c:2332,1
    - Dst: xsltDocumentComp
      Src: /src/libxslt/libxslt/preproc.c:2333,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/preproc.c:2336,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/preproc.c:2349,1
    - Dst: xsltPreComputeExtModuleElement
      Src: /src/libxslt/libxslt/preproc.c:2358,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 171
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2367
      start: 2190
    functionDepth: 6
    functionLinenumber: 2190
    functionLinenumberEnd: 2367
    functionName: xsltStylePreCompute
    functionSourceFile: /src/libxslt/libxslt/preproc.c
    functionUses: 3
    functionsReached:
    - xsltCopyComp
    - xsltIfComp
    - xmlGetNsList
    - IS_XSLT_ELEM
    - xsltElementComp
    - xsltWhenComp
    - xsltDocumentComp
    - xsltCheckTopLevelElement
    - xsltProcessingInstructionComp
    - xsltTextComp
    - xsltCopyOfComp
    - xsltSortComp
    - xsltCheckInstructionElement
    - xsltVariableComp
    - IS_XSLT_NAME
    - xmlStrEqual
    - xsltTransformError
    - xsltCallTemplateComp
    - xsltApplyImportsComp
    - xsltCommentComp
    - xsltForEachComp
    - xsltPreComputeExtModuleElement
    - xsltChooseComp
    - xsltWithParamComp
    - xsltValueOfComp
    - xsltApplyTemplatesComp
    - xsltCheckParentElement
    - xsltParamComp
    - xsltAttributeComp
    - xsltNumberComp
    linkageType: ''
    returnType: void
    signature: void xsltStylePreCompute(xsltStylesheetPtr style, xmlNodePtr inst)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: TRIO_SUFFIX_LONG
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_SUFFIX_LONG(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: TRIO_PROTO
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_PROTO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - list
    - ','
    - a1
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 138
    functionName: TRIO_ARGS1
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS1(list,a1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 139
    functionName: TRIO_ARGS2
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS2(list,a1,a2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: TRIO_ARGS3
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS3(list,a1,a2,a3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: TRIO_ARGS4
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS4(list,a1,a2,a3,a4)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - ','
    - a5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: TRIO_ARGS5
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS5(list,a1,a2,a3,a4,a5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - ','
    - a5
    - ','
    - a6
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 143
    functionName: TRIO_ARGS6
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: TRIO_VARGS2
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VARGS2(list,a1,a2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: TRIO_VARGS3
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VARGS3(list,a1,a2,a3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: TRIO_VARGS4
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VARGS4(list,a1,a2,a3,a4)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - ','
    - a5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: TRIO_VARGS5
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VARGS5(list,a1,a2,a3,a4,a5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 149
    functionName: TRIO_VA_START
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VA_START(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: TRIO_VA_END
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VA_END(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: TRIO_SUFFIX_LONG
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_SUFFIX_LONG(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: TRIO_PROTO
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_PROTO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - list
    - ','
    - a1
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: TRIO_ARGS1
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS1(list,a1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: TRIO_ARGS2
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS2(list,a1,a2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: TRIO_ARGS3
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS3(list,a1,a2,a3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: TRIO_ARGS4
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS4(list,a1,a2,a3,a4)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - ','
    - a5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: TRIO_ARGS5
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS5(list,a1,a2,a3,a4,a5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - list
    - ','
    - a1
    - ','
    - a2
    - ','
    - a3
    - ','
    - a4
    - ','
    - a5
    - ','
    - a6
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 165
    functionName: TRIO_ARGS6
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: TRIO_VA_START
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VA_START(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 172
    functionName: TRIO_VA_END
    functionSourceFile: /src/libxslt/libxslt/triodef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_VA_END(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: IS_BLANK_NODE
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_NODE(n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:127,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xsltTransformContextPtr
    - xsltTemplatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 139
    functionName: templPush
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: int templPush(xsltTransformContextPtr ctxt, xsltTemplatePtr value)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 163
    functionName: templPop
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xsltTemplatePtr
    signature: xsltTemplatePtr templPop(xsltTransformContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/transform.c:192,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - limitNr
    - level
    argTypes:
    - xsltTransformContextPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 199
    functionName: xsltLocalVariablePop
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xsltFreeStackElemList
    linkageType: ''
    returnType: void
    signature: void xsltLocalVariablePop(xsltTransformContextPtr ctxt, int limitNr,
      int level)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/transform.c:219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 226
    functionName: xsltTemplateParamsCleanup
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltFreeStackElemList
    linkageType: ''
    returnType: void
    signature: void xsltTemplateParamsCleanup(xsltTransformContextPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:245,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:247,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:254,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:257,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xsltTransformContextPtr
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 264
    functionName: profPush
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: int profPush(xsltTransformContextPtr ctxt, long value)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 288
    functionName: profPop
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: long
    signature: long profPop(xsltTransformContextPtr ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:298,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:301,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:304,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:311,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:315,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:319,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - templ
    - parent
    argTypes:
    - xsltTemplatePtr
    - xsltTemplatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 336
    functionName: profCallgraphAdd
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: void
    signature: void profCallgraphAdd(xsltTemplatePtr templ, xsltTemplatePtr parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/transform.c:378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - node
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStylePreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 387
    functionName: xsltPreCompEval
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr xsltPreCompEval(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n                xsltStylePreCompPtr comp)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEvalToBoolean
      Src: /src/libxslt/libxslt/transform.c:427,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - node
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStylePreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 436
    functionName: xsltPreCompEvalToBoolean
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEvalToBoolean
    linkageType: ''
    returnType: int
    signature: "int xsltPreCompEvalToBoolean(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n                         xsltStylePreCompPtr comp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - xinclude
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionName: xsltSetXIncludeDefault
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetXIncludeDefault(int xinclude)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionName: xsltGetXIncludeDefault
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltGetXIncludeDefault(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - xsltDebugTraceCodes
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 479
    functionName: xsltDebugSetDefaultTrace
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltDebugSetDefaultTrace(xsltDebugTraceCodes val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 490
    functionName: xsltDebugGetDefaultTrace
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xsltDebugTraceCodes
    signature: xsltDebugTraceCodes xsltDebugGetDefaultTrace(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:503,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:505,1
    - Dst: memset
      Src: /src/libxslt/libxslt/transform.c:509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 498
    functionDepth: 3
    functionLinenumber: 498
    functionLinenumberEnd: 511
    functionName: xsltTransformCacheCreate
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltTransformCachePtr
    signature: xsltTransformCachePtr xsltTransformCacheCreate(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/transform.c:530,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:531,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/transform.c:533,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:548,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:551,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - cache
    argTypes:
    - xsltTransformCachePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 552
    functionName: xsltTransformCacheFree
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlFreeDoc
    - xmlFree
    - xsltFreeDocumentKeys
    linkageType: ''
    returnType: void
    signature: void xsltTransformCacheFree(xsltTransformCachePtr cache)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/transform.c:569,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:571,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:573,1
    - Dst: memset
      Src: /src/libxslt/libxslt/transform.c:577,1
    - Dst: xsltTransformCacheCreate
      Src: /src/libxslt/libxslt/transform.c:579,1
    - Dst: xmlDictCreateSub
      Src: /src/libxslt/libxslt/transform.c:586,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:589,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:597,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:599,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:612,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:614,1
    - Dst: xmlXPathNewContext
      Src: /src/libxslt/libxslt/transform.c:633,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:635,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxslt/libxslt/transform.c:642,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/transform.c:650,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:652,1
    - Dst: XSLT_REGISTER_VARIABLE_LOOKUP
      Src: /src/libxslt/libxslt/transform.c:668,1
    - Dst: XSLT_REGISTER_FUNCTION_LOOKUP
      Src: /src/libxslt/libxslt/transform.c:669,1
    - Dst: xsltInitCtxtExts
      Src: /src/libxslt/libxslt/transform.c:674,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxslt/libxslt/transform.c:680,1
    - Dst: xsltNewDocument
      Src: /src/libxslt/libxslt/transform.c:686,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:688,1
    - Dst: xsltGetDefaultSecurityPrefs
      Src: /src/libxslt/libxslt/transform.c:696,1
    - Dst: xsltGetXIncludeDefault
      Src: /src/libxslt/libxslt/transform.c:699,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/libxslt/transform.c:710,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 100
    argCount: 2
    argNames:
    - style
    - doc
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 563
    functionDepth: 4
    functionLinenumber: 563
    functionLinenumberEnd: 712
    functionName: xsltNewTransformContext
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 2
    functionsReached:
    - xsltGenericDebug
    - xmlDictCreateSub
    - xsltTransformError
    - xmlXPathNewContext
    - XSLT_REGISTER_FUNCTION_LOOKUP
    - xmlXPathOrderDocElems
    - xsltFreeTransformContext
    - xsltGetXIncludeDefault
    - xmlMalloc
    - xsltNewDocument
    - xsltInitCtxtExts
    - XSLT_REGISTER_VARIABLE_LOOKUP
    - xsltGetDefaultSecurityPrefs
    - xsltInitGlobals
    - xsltTransformCacheCreate
    - xmlXPathContextSetCache
    - xmlGenericError
    - memset
    linkageType: ''
    returnType: xsltTransformContextPtr
    signature: xsltTransformContextPtr xsltNewTransformContext(xsltStylesheetPtr style,
      xmlDocPtr doc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltShutdownCtxtExts
      Src: /src/libxslt/libxslt/transform.c:729,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxslt/libxslt/transform.c:733,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:736,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:738,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:740,1
    - Dst: deallocate
      Src: /src/libxslt/libxslt/transform.c:747,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:749,1
    - Dst: xsltFreeGlobalVariables
      Src: /src/libxslt/libxslt/transform.c:751,1
    - Dst: xsltFreeDocuments
      Src: /src/libxslt/libxslt/transform.c:752,1
    - Dst: xsltFreeCtxtExts
      Src: /src/libxslt/libxslt/transform.c:753,1
    - Dst: xsltFreeRVTs
      Src: /src/libxslt/libxslt/transform.c:754,1
    - Dst: xsltTransformCacheFree
      Src: /src/libxslt/libxslt/transform.c:755,1
    - Dst: xmlDictFree
      Src: /src/libxslt/libxslt/transform.c:756,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:758,1
    - Dst: memset
      Src: /src/libxslt/libxslt/transform.c:761,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:762,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 720
    functionDepth: 2
    functionLinenumber: 720
    functionLinenumberEnd: 763
    functionName: xsltFreeTransformContext
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 3
    functionsReached:
    - xsltFreeDocuments
    - xmlDictFree
    - xmlXPathFreeContext
    - xsltGenericDebug
    - xmlFree
    - deallocate
    - xsltFreeGlobalVariables
    - xsltFreeRVTs
    - xsltTransformCacheFree
    - xsltShutdownCtxtExts
    - xsltFreeCtxtExts
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeTransformContext(xsltTransformContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/transform.c:789,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libxslt/transform.c:792,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - parent
    - cur
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 795
    functionName: xsltAddChild
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlAddChild
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xsltAddChild(xmlNodePtr parent, xmlNodePtr cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:822,1
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:844,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:846,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/transform.c:854,1
    - Dst: xmlNodeAddContent
      Src: /src/libxslt/libxslt/transform.c:858,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:860,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 4
    argNames:
    - ctxt
    - target
    - string
    - len
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 808
    functionDepth: 3
    functionLinenumber: 808
    functionLinenumberEnd: 865
    functionName: xsltAddTextString
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlStrlen
    - xsltTransformError
    - xmlNodeAddContent
    - memcpy
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltAddTextString(xsltTransformContextPtr ctxt, xmlNodePtr
      target,\n\t\t  const xmlChar *string, int len)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:891,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:891,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:905,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/transform.c:911,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/transform.c:914,1
    - Dst: xsltAddTextString
      Src: /src/libxslt/libxslt/transform.c:923,1
    - Dst: xmlNewCDataBlock
      Src: /src/libxslt/libxslt/transform.c:925,1
    - Dst: xsltAddTextString
      Src: /src/libxslt/libxslt/transform.c:934,1
    - Dst: xmlNewTextLen
      Src: /src/libxslt/libxslt/transform.c:936,1
    - Dst: xsltAddTextString
      Src: /src/libxslt/libxslt/transform.c:946,1
    - Dst: xmlNewTextLen
      Src: /src/libxslt/libxslt/transform.c:948,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:951,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:957,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 38
    argCount: 4
    argNames:
    - ctxt
    - target
    - string
    - noescape
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 880
    functionDepth: 4
    functionLinenumber: 880
    functionLinenumberEnd: 962
    functionName: xsltCopyTextString
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xsltGenericDebug
    - xmlStrlen
    - xsltTransformError
    - xmlNewCDataBlock
    - xsltAddTextString
    - xmlNewTextLen
    - XSLT_TRACE
    - xsltAddChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltCopyTextString(xsltTransformContextPtr ctxt, xmlNodePtr
      target,\n\t           const xmlChar *string, int noescape)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:990,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:990,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:994,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:994,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:998,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:998,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/transform.c:1017,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/transform.c:1020,1
    - Dst: xsltAddTextString
      Src: /src/libxslt/libxslt/transform.c:1040,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:1041,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:1046,1
    - Dst: xmlNewCDataBlock
      Src: /src/libxslt/libxslt/transform.c:1047,1
    - Dst: xsltAddTextString
      Src: /src/libxslt/libxslt/transform.c:1066,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:1067,1
    - Dst: xmlNewTextLen
      Src: /src/libxslt/libxslt/transform.c:1076,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/transform.c:1087,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:1090,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/transform.c:1091,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:1104,1
    - Dst: xmlNewTextLen
      Src: /src/libxslt/libxslt/transform.c:1105,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:1122,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1125,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1131,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 79
    argCount: 4
    argNames:
    - ctxt
    - target
    - cur
    - interned
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 976
    functionDepth: 4
    functionLinenumber: 976
    functionLinenumberEnd: 1137
    functionName: xsltCopyText
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xmlStrdup
    - xsltGenericDebug
    - xmlStrlen
    - xsltTransformError
    - xmlNewCDataBlock
    - xsltAddTextString
    - xmlNewTextLen
    - xmlDictOwns
    - XSLT_TRACE
    - xmlFreeNode
    - xsltAddChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltCopyText(xsltTransformContextPtr ctxt, xmlNodePtr target,\n\t
      \    xmlNodePtr cur, int interned)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1165,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1171,1
    - Dst: xmlNodeListGetString
      Src: /src/libxslt/libxslt/transform.c:1177,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1181,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1184,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/transform.c:1196,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/transform.c:1198,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:1201,1
    - Dst: xmlNodeListGetString
      Src: /src/libxslt/libxslt/transform.c:1217,1
    - Dst: xmlNewDocText
      Src: /src/libxslt/libxslt/transform.c:1219,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/transform.c:1226,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:1228,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 4
    argNames:
    - ctxt
    - invocNode
    - target
    - attr
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1154
    functionDepth: 3
    functionLinenumber: 1154
    functionLinenumberEnd: 1236
    functionName: xsltShallowCopyAttr
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xsltGetSpecialNamespace
    - xsltTransformError
    - xmlNodeListGetString
    - xmlSetNsProp
    - xmlNewDocText
    - xmlDictLookup
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xsltShallowCopyAttr(xsltTransformContextPtr ctxt, xmlNodePtr
      invocNode,\n\t     xmlNodePtr target, xmlAttrPtr attr)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1274,1
    - Dst: xmlNewNsProp
      Src: /src/libxslt/libxslt/transform.c:1287,1
    - Dst: xmlNodeListGetString
      Src: /src/libxslt/libxslt/transform.c:1290,1
    - Dst: xmlNewNsProp
      Src: /src/libxslt/libxslt/transform.c:1291,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:1292,1
    - Dst: xmlNewNsProp
      Src: /src/libxslt/libxslt/transform.c:1294,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 4
    argNames:
    - ctxt
    - invocNode
    - target
    - attr
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1253
    functionDepth: 1
    functionLinenumber: 1253
    functionLinenumberEnd: 1303
    functionName: xsltCopyAttrListNoOverwrite
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlNodeListGetString
    - xmlNewNsProp
    - xmlFree
    - xsltGetSpecialNamespace
    linkageType: ''
    returnType: int
    signature: "int xsltCopyAttrListNoOverwrite(xsltTransformContextPtr ctxt,\n\t\t\t
      \   xmlNodePtr invocNode,\n\t\t\t    xmlNodePtr target, xmlAttrPtr attr)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:1339,1
    - Dst: xmlDocCopyNode
      Src: /src/libxslt/libxslt/transform.c:1341,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:1344,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1346,1
    - Dst: xsltCopyNamespaceList
      Src: /src/libxslt/libxslt/transform.c:1361,1
    - Dst: xsltCopyNamespaceListInternal
      Src: /src/libxslt/libxslt/transform.c:1363,1
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/transform.c:1380,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1382,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1392,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1396,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 4
    argNames:
    - ctxt
    - node
    - insert
    - isLRE
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1329
    functionDepth: 5
    functionLinenumber: 1329
    functionLinenumberEnd: 1400
    functionName: xsltShallowCopyElem
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlDocCopyNode
    - xsltGetSpecialNamespace
    - xsltCopyText
    - xsltTransformError
    - xsltCopyNamespaceListInternal
    - xsltGetNamespace
    - xsltCopyNamespaceList
    - xsltAddChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltShallowCopyElem(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t\t    xmlNodePtr insert, int isLRE)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltCopyTree
      Src: /src/libxslt/libxslt/transform.c:1429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - ctxt
    - invocNode
    - list
    - insert
    - isLRE
    - topElemVisited
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1421
    functionDepth: 1
    functionLinenumber: 1421
    functionLinenumberEnd: 1439
    functionName: xsltCopyTreeList
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltCopyTree
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltCopyTreeList(xsltTransformContextPtr ctxt, xmlNodePtr
      invocNode,\n\t\t xmlNodePtr list,\n\t\t xmlNodePtr insert, int isLRE, int topElemVisited)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1478,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1479,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:1484,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1485,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/transform.c:1491,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 2
    argNames:
    - elem
    - ns
    argTypes:
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1457
    functionDepth: 1
    functionLinenumber: 1457
    functionLinenumberEnd: 1501
    functionName: xsltCopyNamespaceListInternal
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xmlNewNs
    - xmlStrEqual
    - xmlSearchNs
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xsltCopyNamespaceListInternal(xmlNodePtr elem, xmlNsPtr ns)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1530,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1561,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1574,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1579,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:1587,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1588,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/transform.c:1596,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 4
    argNames:
    - ctxt
    - invocNode
    - insert
    - ns
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1514
    functionDepth: 3
    functionLinenumber: 1514
    functionLinenumberEnd: 1604
    functionName: xsltShallowCopyNsNode
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlNewNs
    - xmlStrEqual
    - xmlSearchNs
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltShallowCopyNsNode(xsltTransformContextPtr ctxt,\n\t\t
      \     xmlNodePtr invocNode,\n\t\t      xmlNodePtr insert,\n\t\t      xmlNsPtr
      ns)"
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: xsltCopyTextString
      Src: /src/libxslt/libxslt/transform.c:1648,1
    - Dst: xsltCopyTextString
      Src: /src/libxslt/libxslt/transform.c:1651,1
    - Dst: xsltShallowCopyAttr
      Src: /src/libxslt/libxslt/transform.c:1654,1
    - Dst: xsltShallowCopyNsNode
      Src: /src/libxslt/libxslt/transform.c:1656,1
    - Dst: XSLT_IS_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/transform.c:1670,1
    - Dst: xsltCopyTreeList
      Src: /src/libxslt/libxslt/transform.c:1672,1
    - Dst: xmlDocCopyNode
      Src: /src/libxslt/libxslt/transform.c:1678,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:1681,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1683,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/transform.c:1722,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:1730,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1734,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxslt/libxslt/transform.c:1742,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/transform.c:1750,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:1763,1
    - Dst: xsltCopyNamespaceList
      Src: /src/libxslt/libxslt/transform.c:1771,1
    - Dst: xsltCopyNamespaceListInternal
      Src: /src/libxslt/libxslt/transform.c:1773,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1785,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:1794,1
    - Dst: xsltCopyAttrListNoOverwrite
      Src: /src/libxslt/libxslt/transform.c:1800,1
    - Dst: xsltCopyTreeList
      Src: /src/libxslt/libxslt/transform.c:1810,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1814,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 100
    argCount: 6
    argNames:
    - ctxt
    - invocNode
    - node
    - insert
    - isLRE
    - topElemVisited
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1625
    functionDepth: 5
    functionLinenumber: 1625
    functionLinenumberEnd: 1818
    functionName: xsltCopyTree
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xmlDocCopyNode
    - xmlStrEqual
    - xmlFree
    - xsltGetSpecialNamespace
    - xsltTransformError
    - xsltShallowCopyAttr
    - xmlSearchNs
    - xsltCopyTextString
    - xmlGetNsList
    - xmlSearchNsByHref
    - xsltShallowCopyNsNode
    - xmlNewNs
    - xsltCopyNamespaceList
    - xsltCopyTreeList
    - xsltCopyNamespaceListInternal
    - xsltCopyAttrListNoOverwrite
    - XSLT_IS_RES_TREE_FRAG
    - xsltAddChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltCopyTree(xsltTransformContextPtr ctxt, xmlNodePtr invocNode,\n\t
      \    xmlNodePtr node, xmlNodePtr insert, int isLRE,\n\t     int topElemVisited)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:1849,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:1850,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1852,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:1856,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - node
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1862
      start: 1836
    functionDepth: 1
    functionLinenumber: 1836
    functionLinenumberEnd: 1862
    functionName: xsltApplyFallbacks
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltApplySequenceConstructor
    - xsltGenericDebug
    - xmlStrEqual
    - IS_XSLT_ELEM
    linkageType: ''
    returnType: int
    signature: "int xsltApplyFallbacks(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:1912,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1912,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:1916,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1918,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:1925,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1925,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:1929,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1929,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:1934,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1936,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1945,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:1950,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1950,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:1953,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:1953,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:1958,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1960,1
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/transform.c:1973,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:1997,1
    - Dst: xsltProcessOneNode
      Src: /src/libxslt/libxslt/transform.c:2008,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2015,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2015,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:2022,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2026,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2026,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:2030,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2032,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2041,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2041,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:2050,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2055,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2055,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2058,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2058,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:2063,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2065,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2076,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2076,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2080,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2080,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:2089,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 120
    argCount: 3
    argNames:
    - ctxt
    - node
    - params
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 1892
    functionDepth: 5
    functionLinenumber: 1892
    functionLinenumberEnd: 2095
    functionName: xsltDefaultProcessOneNode
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltCopyText
    - xsltTransformError
    - IS_XSLT_REAL_NODE
    - xsltProcessOneNode
    - xsltApplyXSLTTemplate
    - XSLT_TRACE
    linkageType: ''
    returnType: void
    signature: "void xsltDefaultProcessOneNode(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t\t\t  xsltStackElemPtr params)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetTemplate
      Src: /src/libxslt/libxslt/transform.c:2118,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2125,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2125,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2128,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2128,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2131,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2131,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2135,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2135,1
    - Dst: xsltDefaultProcessOneNode
      Src: /src/libxslt/libxslt/transform.c:2141,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2154,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2154,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:2158,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2170,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2170,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2174,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2174,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:2179,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 3
    argNames:
    - ctxt
    - contextNode
    - withParams
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2111
    functionDepth: 6
    functionLinenumber: 2111
    functionLinenumberEnd: 2183
    functionName: xsltProcessOneNode
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xsltGenericDebug
    - xsltGetTemplate
    - xsltApplyXSLTTemplate
    - XSLT_TRACE
    - xsltDefaultProcessOneNode
    linkageType: ''
    returnType: void
    signature: "void xsltProcessOneNode(xsltTransformContextPtr ctxt, xmlNodePtr contextNode,\n\t
      \          xsltStackElemPtr withParams)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xslAddCall
      Src: /src/libxslt/libxslt/transform.c:2197,1
    - Dst: xslAddCall
      Src: /src/libxslt/libxslt/transform.c:2199,1
    - Dst: xslDropCall
      Src: /src/libxslt/libxslt/transform.c:2205,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:2209,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:2212,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:2215,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 5
    argNames:
    - ctxt
    - contextNode
    - list
    - templ
    - addCallResult
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltTemplatePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2186
    functionDepth: 1
    functionLinenumber: 2186
    functionLinenumberEnd: 2220
    functionName: xsltDebuggerStartSequenceConstructor
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xslAddCall
    - xslHandleDebugger
    - xslDropCall
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xsltDebuggerStartSequenceConstructor(xsltTransformContextPtr
      ctxt,\n\t\t\t\t     xmlNodePtr contextNode,\n\t\t\t\t     xmlNodePtr list,\n\t\t\t\t
      \    xsltTemplatePtr templ,\n\t\t\t\t     int *addCallResult)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/transform.c:2244,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:2247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - ctxt
    - variable
    - level
    argTypes:
    - xsltTransformContextPtr
    - xsltStackElemPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2257
      start: 2235
    functionDepth: 0
    functionLinenumber: 2235
    functionLinenumberEnd: 2257
    functionName: xsltLocalVariablePush
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltLocalVariablePush(xsltTransformContextPtr ctxt,\n\t\t      xsltStackElemPtr
      variable,\n\t\t      int level)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2273,1
    - Dst: xsltReleaseRVT
      Src: /src/libxslt/libxslt/transform.c:2284,1
    - Dst: xsltRegisterPersistRVT
      Src: /src/libxslt/libxslt/transform.c:2286,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libxslt/transform.c:2292,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/transform.c:2295,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - ctxt
    - base
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2265
    functionDepth: 3
    functionLinenumber: 2265
    functionLinenumberEnd: 2300
    functionName: xsltReleaseLocalRVTs
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltReleaseRVT
    - xsltRegisterLocalRVT
    - xmlGenericError
    - xsltRegisterPersistRVT
    linkageType: ''
    returnType: void
    signature: void xsltReleaseLocalRVTs(xsltTransformContextPtr ctxt, xmlDocPtr base)
  - BBCount: 82
    BranchProfiles: []
    Callsites:
    - Dst: xsltDebuggerStartSequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:2342,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2358,1
    - Dst: xsltDebug
      Src: /src/libxslt/libxslt/transform.c:2365,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2387,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2412,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2412,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:2420,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/transform.c:2440,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:2440,1
    - Dst: xsltMessage
      Src: /src/libxslt/libxslt/transform.c:2441,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2447,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2463,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2464,1
    - Dst: xmlDocCopyNode
      Src: /src/libxslt/libxslt/transform.c:2474,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2476,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:2486,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:2501,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:2503,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/transform.c:2508,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2510,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:2538,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:2560,1
    - Dst: xsltAttrListTemplateProcess
      Src: /src/libxslt/libxslt/transform.c:2573,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/transform.c:2575,1
    - Dst: xsltApplyFallbacks
      Src: /src/libxslt/libxslt/transform.c:2586,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2587,1
    - Dst: xsltStylePreCompPtr::func
      Src: /src/libxslt/libxslt/transform.c:2599,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:2606,1
    - Dst: xsltParseStylesheetVariable
      Src: /src/libxslt/libxslt/transform.c:2612,1
    - Dst: xsltMessage
      Src: /src/libxslt/libxslt/transform.c:2627,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2629,1
    - Dst: xsltExtElementLookup
      Src: /src/libxslt/libxslt/transform.c:2649,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2660,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2661,1
    - Dst: xsltApplyFallbacks
      Src: /src/libxslt/libxslt/transform.c:2666,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2667,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2677,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2677,1
    - Dst: func
      Src: /src/libxslt/libxslt/transform.c:2695,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:2701,1
    - Dst: XSLT_IS_TEXT_NODE
      Src: /src/libxslt/libxslt/transform.c:2708,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2715,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2716,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2720,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2721,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:2726,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:2732,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:2739,1
    - Dst: xsltMessage
      Src: /src/libxslt/libxslt/transform.c:2740,1
    - Dst: xsltApplyFallbacks
      Src: /src/libxslt/libxslt/transform.c:2746,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/transform.c:2747,1
    - Dst: xsltStylePreCompPtr::func
      Src: /src/libxslt/libxslt/transform.c:2761,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:2767,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:2774,1
    - Dst: xsltParseStylesheetVariable
      Src: /src/libxslt/libxslt/transform.c:2780,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:2793,1
    - Dst: xsltMessage
      Src: /src/libxslt/libxslt/transform.c:2794,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2796,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2810,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2810,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2814,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2814,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2818,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2818,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:2823,1
    - Dst: xsltExtElementLookup
      Src: /src/libxslt/libxslt/transform.c:2835,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2845,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2845,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:2855,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:2856,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:2859,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:2867,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2873,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2873,1
    - Dst: function
      Src: /src/libxslt/libxslt/transform.c:2892,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:2897,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:2906,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:2906,1
    - Dst: xsltShallowCopyElem
      Src: /src/libxslt/libxslt/transform.c:2913,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:2934,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/transform.c:2941,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/transform.c:2945,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:2955,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:2956,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/transform.c:2958,1
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/transform.c:2965,1
    - Dst: xsltAttrListTemplateProcess
      Src: /src/libxslt/libxslt/transform.c:2972,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libxslt/transform.c:3012,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libxslt/transform.c:3034,1
    - Dst: xslDropCall
      Src: /src/libxslt/libxslt/transform.c:3044,1
    CyclomaticComplexity: 128
    EdgeCount: 128
    ICount: 343
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - list
    - templ
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltTemplatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3047
      start: 2317
    functionDepth: 6
    functionLinenumber: 2317
    functionLinenumberEnd: 3047
    functionName: xsltApplySequenceConstructor
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 2
    functionsReached:
    - xmlDocCopyNode
    - xsltNextImport
    - xsltGetSpecialNamespace
    - IS_XSLT_ELEM_FAST
    - xsltLocalVariablePop
    - IS_XSLT_ELEM
    - XSLT_TRACE
    - xsltApplyFallbacks
    - xsltMessage
    - xsltGenericError
    - xslDropCall
    - xsltCopyText
    - xsltParseStylesheetVariable
    - xmlHashLookup
    - xsltAttrListTemplateProcess
    - xmlNewNs
    - xslHandleDebugger
    - function
    - XSLT_IS_TEXT_NODE
    - IS_XSLT_NAME
    - xsltGenericDebug
    - xmlStrEqual
    - xsltTransformError
    - xsltExtElementLookup
    - func
    - xsltDebug
    - xsltGetNamespace
    - xsltApplySequenceConstructor
    - xsltReleaseLocalRVTs
    - xmlSearchNs
    - xsltStylePreCompPtr::func
    - xsltShallowCopyElem
    - xsltDebuggerStartSequenceConstructor
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltApplySequenceConstructor(xsltTransformContextPtr ctxt,\n\t\t\t
      \    xmlNodePtr contextNode, xmlNodePtr list,\n\t\t\t     xsltTemplatePtr templ)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3093,1
    - Dst: xsltDebuggerStartSequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:3100,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3112,1
    - Dst: xsltDebug
      Src: /src/libxslt/libxslt/transform.c:3118,1
    - Dst: xsltTimestamp
      Src: /src/libxslt/libxslt/transform.c:3137,1
    - Dst: profPush
      Src: /src/libxslt/libxslt/transform.c:3138,1
    - Dst: profCallgraphAdd
      Src: /src/libxslt/libxslt/transform.c:3139,1
    - Dst: templPush
      Src: /src/libxslt/libxslt/transform.c:3146,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3150,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3150,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3166,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:3167,1
    - Dst: xsltLocalVariablePush
      Src: /src/libxslt/libxslt/transform.c:3198,1
    - Dst: xsltParseStylesheetParam
      Src: /src/libxslt/libxslt/transform.c:3212,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:3219,1
    - Dst: xsltTemplateParamsCleanup
      Src: /src/libxslt/libxslt/transform.c:3226,1
    - Dst: xsltReleaseRVT
      Src: /src/libxslt/libxslt/transform.c:3241,1
    - Dst: templPop
      Src: /src/libxslt/libxslt/transform.c:3249,1
    - Dst: xsltTimestamp
      Src: /src/libxslt/libxslt/transform.c:3255,1
    - Dst: profPop
      Src: /src/libxslt/libxslt/transform.c:3256,1
    - Dst: xsltCalibrateAdjust
      Src: /src/libxslt/libxslt/transform.c:3264,1
    - Dst: xslDropCall
      Src: /src/libxslt/libxslt/transform.c:3276,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 91
    argCount: 5
    argNames:
    - ctxt
    - contextNode
    - list
    - templ
    - withParams
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltTemplatePtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3279
      start: 3065
    functionDepth: 7
    functionLinenumber: 3065
    functionLinenumberEnd: 3279
    functionName: xsltApplyXSLTTemplate
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 2
    functionsReached:
    - profPush
    - xsltCalibrateAdjust
    - xsltTimestamp
    - xsltLocalVariablePush
    - profCallgraphAdd
    - IS_XSLT_ELEM
    - profPop
    - XSLT_TRACE
    - templPop
    - xsltTemplateParamsCleanup
    - xslDropCall
    - xsltGenericDebug
    - xmlStrEqual
    - xsltTransformError
    - xsltParseStylesheetParam
    - xsltDebug
    - xsltApplySequenceConstructor
    - templPush
    - xsltReleaseRVT
    - xsltDebuggerStartSequenceConstructor
    linkageType: ''
    returnType: void
    signature: "void xsltApplyXSLTTemplate(xsltTransformContextPtr ctxt,\n\t\t      xmlNodePtr
      contextNode,\n\t\t      xmlNodePtr list,\n\t\t      xsltTemplatePtr templ,\n\t\t
      \     xsltStackElemPtr withParams)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltLocalVariablePush
      Src: /src/libxslt/libxslt/transform.c:3335,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:3338,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libxslt/transform.c:3342,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:3344,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 5
    argNames:
    - ctxt
    - contextNode
    - list
    - ATTRIBUTE_UNUSED
    - params
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltTemplatePtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3345
      start: 3312
    functionDepth: 7
    functionLinenumber: 3312
    functionLinenumberEnd: 3345
    functionName: xsltApplyOneTemplate
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 2
    functionsReached:
    - xsltApplySequenceConstructor
    - xsltLocalVariablePop
    - xsltLocalVariablePush
    linkageType: ''
    returnType: void
    signature: "void xsltApplyOneTemplate(xsltTransformContextPtr ctxt,\n\t\t     xmlNodePtr
      contextNode,\n                     xmlNodePtr list,\n\t\t     xsltTemplatePtr
      templ ATTRIBUTE_UNUSED,\n                     xsltStackElemPtr params)"
  - BBCount: 83
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3393,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3400,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3403,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3408,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3411,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3413,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3416,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libxslt/transform.c:3430,1
    - Dst: xsltEvalXPathString
      Src: /src/libxslt/libxslt/transform.c:3431,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/transform.c:3432,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3433,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3437,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3442,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3446,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3447,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:3453,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3457,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/transform.c:3465,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxslt/libxslt/transform.c:3469,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/transform.c:3471,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3472,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3477,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3480,1
    - Dst: xsltCheckWrite
      Src: /src/libxslt/libxslt/transform.c:3488,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3491,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3494,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3495,1
    - Dst: xsltNewStylesheet
      Src: /src/libxslt/libxslt/transform.c:3506,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3508,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3517,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3522,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3525,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3530,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3533,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3540,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3543,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/transform.c:3546,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3550,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3551,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3552,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3555,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:3561,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3564,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3569,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3572,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3577,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3580,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3584,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3586,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3589,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3594,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3597,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3601,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3603,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3606,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3610,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3613,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3618,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3620,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3623,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3628,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3631,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/transform.c:3637,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3639,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxslt/libxslt/transform.c:3645,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxslt/libxslt/transform.c:3650,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/transform.c:3652,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3657,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/transform.c:3661,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/transform.c:3663,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3665,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3669,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3675,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3676,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3677,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3678,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3679,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3682,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3683,1
    - Dst: htmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:3686,1
    - Dst: xsltGetHTMLIDs
      Src: /src/libxslt/libxslt/transform.c:3690,1
    - Dst: htmlNewDocNoDtD
      Src: /src/libxslt/libxslt/transform.c:3693,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:3698,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3699,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3700,1
    - Dst: htmlNewDocNoDtD
      Src: /src/libxslt/libxslt/transform.c:3703,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:3707,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3708,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:3710,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:3714,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3716,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3720,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:3727,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:3731,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3733,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:3739,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:3742,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/transform.c:3747,1
    - Dst: xmlDictQLookup
      Src: /src/libxslt/libxslt/transform.c:3752,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/transform.c:3761,1
    - Dst: xmlIsBlankNode
      Src: /src/libxslt/libxslt/transform.c:3768,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:3776,1
    - Dst: xsltGetHTMLIDs
      Src: /src/libxslt/libxslt/transform.c:3781,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:3785,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3794,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:3795,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:3797,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:3811,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3814,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:3815,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3820,1
    - Dst: fopen
      Src: /src/libxslt/libxslt/transform.c:3826,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/libxslt/transform.c:3830,1
    - Dst: fclose
      Src: /src/libxslt/libxslt/transform.c:3831,1
    - Dst: xsltSaveResultToFilename
      Src: /src/libxslt/libxslt/transform.c:3834,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3837,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3842,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3853,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:3855,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/libxslt/transform.c:3857,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/transform.c:3859,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 324
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3860
      start: 3362
    functionDepth: 7
    functionLinenumber: 3362
    functionLinenumberEnd: 3860
    functionName: xsltDocumentElem
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlURIEscapeStr
    - htmlNewDoc
    - fclose
    - xsltCheckWrite
    - xmlStrcasecmp
    - xmlHashCreate
    - xsltSaveResultToFile
    - xsltGetHTMLIDs
    - xmlFree
    - xmlXPathFreeCompExpr
    - xsltGetQNameURI
    - htmlNewDocNoDtD
    - xsltEvalAttrValueTemplate
    - xmlXPathCtxtCompile
    - xmlDocGetRootElement
    - xsltFreeStylesheet
    - xsltGenericDebug
    - xmlStrEqual
    - xmlIsBlankNode
    - xmlNewDoc
    - xmlBuildURI
    - xsltTransformError
    - xsltNewStylesheet
    - xmlIsBlank_ch
    - xmlDictReference
    - xsltSaveResultToFilename
    - xmlHashAddEntry2
    - xsltApplySequenceConstructor
    - xsltEvalXPathString
    - xmlDictQLookup
    - xmlStrndup
    - fopen
    - XSLT_GET_IMPORT_PTR
    - xmlCreateIntSubset
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: "void xsltDocumentElem(xsltTransformContextPtr ctxt, xmlNodePtr node,\n
      \                xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3883,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:3887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - inst
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3889
      start: 3878
    functionDepth: 3
    functionLinenumber: 3878
    functionLinenumberEnd: 3889
    functionName: xsltSort
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    linkageType: ''
    returnType: void
    signature: "void xsltSort(xsltTransformContextPtr ctxt,\n\txmlNodePtr node ATTRIBUTE_UNUSED,
      xmlNodePtr inst,\n\txsltElemPreCompPtr comp)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3923,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3923,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3926,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3926,1
    - Dst: xsltCopyText
      Src: /src/libxslt/libxslt/transform.c:3930,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3944,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3944,1
    - Dst: xsltShallowCopyElem
      Src: /src/libxslt/libxslt/transform.c:3947,1
    - Dst: xsltApplyAttributeSet
      Src: /src/libxslt/libxslt/transform.c:3950,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3955,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3955,1
    - Dst: xsltShallowCopyAttr
      Src: /src/libxslt/libxslt/transform.c:3964,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3969,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3969,1
    - Dst: xmlNewDocPI
      Src: /src/libxslt/libxslt/transform.c:3972,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:3974,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3978,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3978,1
    - Dst: xmlNewComment
      Src: /src/libxslt/libxslt/transform.c:3981,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:3982,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:3986,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:3986,1
    - Dst: xsltShallowCopyNsNode
      Src: /src/libxslt/libxslt/transform.c:3989,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:4001,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 57
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4008
      start: 3900
    functionDepth: 7
    functionLinenumber: 3900
    functionLinenumberEnd: 4008
    functionName: xsltCopy
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltApplySequenceConstructor
    - xsltGenericDebug
    - xsltCopyText
    - xsltApplyAttributeSet
    - xsltShallowCopyAttr
    - xsltShallowCopyElem
    - xsltShallowCopyNsNode
    - xmlNewDocPI
    - xmlNewComment
    - XSLT_TRACE
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltCopy(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t xmlNodePtr
      inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4029,1
    - Dst: xmlNewDocText
      Src: /src/libxslt/libxslt/transform.c:4033,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4036,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:4041,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4045
      start: 4019
    functionDepth: 3
    functionLinenumber: 4019
    functionLinenumberEnd: 4045
    functionName: xsltText
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    - xmlNewDocText
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltText(xsltTransformContextPtr ctxt, xmlNodePtr node ATTRIBUTE_UNUSED,\n\t
      \   xmlNodePtr inst, xsltElemPreCompPtr comp ATTRIBUTE_UNUSED)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:4086,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4089,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/transform.c:4093,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4094,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/transform.c:4099,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4100,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/transform.c:4109,1
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxslt/libxslt/transform.c:4117,1
    - Dst: xmlNewDocNode
      Src: /src/libxslt/libxslt/transform.c:4119,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4122,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:4126,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4128,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:4150,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/transform.c:4158,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4159,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:4162,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4163,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:4168,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:4170,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/transform.c:4182,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4189,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:4202,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:4204,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:4206,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4208,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:4210,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/transform.c:4220,1
    - Dst: xsltApplyAttributeSet
      Src: /src/libxslt/libxslt/transform.c:4227,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:4234,1
    - Dst: xsltApplyAttributeSet
      Src: /src/libxslt/libxslt/transform.c:4237,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4238,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:4246,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 96
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4252
      start: 4056
    functionDepth: 7
    functionLinenumber: 4056
    functionLinenumberEnd: 4252
    functionName: xsltElement
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlStrdup
    - xsltApplySequenceConstructor
    - xmlStrEqual
    - xmlFree
    - xsltSplitQName
    - xsltGetSpecialNamespace
    - xsltTransformError
    - xsltApplyAttributeSet
    - xsltEvalAttrValueTemplate
    - xmlSearchNs
    - xmlValidateQName
    - xmlDictLookup
    - xmlNewDocNodeEatName
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltElement(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \   xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalTemplateString
      Src: /src/libxslt/libxslt/transform.c:4271,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/transform.c:4273,1
    - Dst: xmlStrstr
      Src: /src/libxslt/libxslt/transform.c:4276,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4277,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4284,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4284,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4287,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4287,1
    - Dst: xmlNewComment
      Src: /src/libxslt/libxslt/transform.c:4292,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:4293,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4296,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4297
      start: 4264
    functionDepth: 3
    functionLinenumber: 4264
    functionLinenumberEnd: 4297
    functionName: xsltComment
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlFree
    - xmlStrlen
    - xsltTransformError
    - xmlStrstr
    - xsltEvalTemplateString
    - xmlNewComment
    - XSLT_TRACE
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltComment(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr comp ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/transform.c:4326,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4329,1
    - Dst: xsltEvalTemplateString
      Src: /src/libxslt/libxslt/transform.c:4339,1
    - Dst: xmlStrstr
      Src: /src/libxslt/libxslt/transform.c:4340,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4341,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4347,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4347,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4350,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4350,1
    - Dst: xmlNewDocPI
      Src: /src/libxslt/libxslt/transform.c:4355,1
    - Dst: xsltAddChild
      Src: /src/libxslt/libxslt/transform.c:4356,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4360,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4362,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4363
      start: 4308
    functionDepth: 3
    functionLinenumber: 4308
    functionLinenumberEnd: 4363
    functionName: xsltProcessingInstruction
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - xsltEvalAttrValueTemplate
    - xmlStrstr
    - xsltEvalTemplateString
    - xmlNewDocPI
    - XSLT_TRACE
    - xsltAddChild
    linkageType: ''
    returnType: void
    signature: "void xsltProcessingInstruction(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t           xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4389,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4413,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4413,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:4420,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4429,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4429,1
    - Dst: xsltCopyTreeList
      Src: /src/libxslt/libxslt/transform.c:4446,1
    - Dst: xsltShallowCopyAttr
      Src: /src/libxslt/libxslt/transform.c:4449,1
    - Dst: xsltCopyTree
      Src: /src/libxslt/libxslt/transform.c:4452,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4464,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4464,1
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/transform.c:4470,1
    - Dst: xsltCopyTreeList
      Src: /src/libxslt/libxslt/transform.c:4472,1
    - Dst: xmlXPathCastToString
      Src: /src/libxslt/libxslt/transform.c:4480,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4482,1
    - Dst: xsltCopyTextString
      Src: /src/libxslt/libxslt/transform.c:4491,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4493,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4496,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4496,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:4506,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 53
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4507
      start: 4374
    functionDepth: 6
    functionLinenumber: 4374
    functionLinenumberEnd: 4507
    functionName: xsltCopyOf
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltPreCompEval
    - xsltGenericDebug
    - xmlFree
    - xsltCopyTree
    - xsltTransformError
    - xsltShallowCopyAttr
    - xsltCopyTextString
    - IS_XSLT_REAL_NODE
    - xsltCopyTreeList
    - xmlXPathCastToString
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltCopyOf(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4534,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4541,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4541,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:4545,1
    - Dst: xmlXPathCastToString
      Src: /src/libxslt/libxslt/transform.c:4551,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4553,1
    - Dst: xsltCopyTextString
      Src: /src/libxslt/libxslt/transform.c:4560,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4563,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4571,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4571,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/transform.c:4578,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:4580,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4581
      start: 4518
    functionDepth: 5
    functionLinenumber: 4518
    functionLinenumberEnd: 4581
    functionName: xsltValueOf
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltPreCompEval
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - xsltCopyTextString
    - xmlXPathCastToString
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltValueOf(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4606,1
    - Dst: xsltNumberFormat
      Src: /src/libxslt/libxslt/transform.c:4634,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4638
      start: 4592
    functionDepth: 3
    functionLinenumber: 4592
    functionLinenumberEnd: 4638
    functionName: xsltNumber
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNumberFormat
    linkageType: ''
    returnType: void
    signature: "void xsltNumber(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \  xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4660,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4678,1
    - Dst: xsltGetTemplate
      Src: /src/libxslt/libxslt/transform.c:4686,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:4698,1
    - Dst: xsltDefaultProcessOneNode
      Src: /src/libxslt/libxslt/transform.c:4705,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4707
      start: 4649
    functionDepth: 8
    functionLinenumber: 4649
    functionLinenumberEnd: 4707
    functionName: xsltApplyImports
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltDefaultProcessOneNode
    - xsltApplyXSLTTemplate
    - xsltGetTemplate
    linkageType: ''
    returnType: void
    signature: "void xsltApplyImports(xsltTransformContextPtr ctxt, xmlNodePtr contextNode,\n\t
      \        xmlNodePtr inst,\n\t\t xsltElemPreCompPtr comp ATTRIBUTE_UNUSED)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4733,1
    - Dst: xsltFindTemplate
      Src: /src/libxslt/libxslt/transform.c:4742,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4745,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4749,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4759,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4759,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:4771,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:4779,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:4780,1
    - Dst: xsltParseStylesheetCallerParam
      Src: /src/libxslt/libxslt/transform.c:4781,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/transform.c:4787,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/transform.c:4791,1
    - Dst: xsltApplyXSLTTemplate
      Src: /src/libxslt/libxslt/transform.c:4800,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/transform.c:4803,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4807,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4807,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 48
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4810
      start: 4718
    functionDepth: 8
    functionLinenumber: 4718
    functionLinenumberEnd: 4810
    functionName: xsltCallTemplate
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xsltGenericDebug
    - xsltTransformError
    - xsltFindTemplate
    - xslHandleDebugger
    - IS_XSLT_ELEM
    - xsltParseStylesheetCallerParam
    - xsltApplyXSLTTemplate
    - XSLT_TRACE
    - xsltGenericError
    - xsltFreeStackElemList
    linkageType: ''
    returnType: void
    signature: "void xsltCallTemplate(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4842,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4851,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4851,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4884,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4889,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4889,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:4893,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4900,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:4904,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:4907,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:4913,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4920,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4920,1
    - Dst: XSLT_IS_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/transform.c:4944,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxslt/libxslt/transform.c:4958,1
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/transform.c:4966,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxslt/libxslt/transform.c:4967,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:4974,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:4974,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5001,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5009,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5011,1
    - Dst: xsltParseStylesheetCallerParam
      Src: /src/libxslt/libxslt/transform.c:5012,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5018,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5031,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5041,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5043,1
    - Dst: xsltParseStylesheetCallerParam
      Src: /src/libxslt/libxslt/transform.c:5044,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5050,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5052,1
    - Dst: xsltDoSortFunction
      Src: /src/libxslt/libxslt/transform.c:5071,1
    - Dst: xsltProcessOneNode
      Src: /src/libxslt/libxslt/transform.c:5099,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/transform.c:5108,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libxslt/transform.c:5110,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 160
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5123
      start: 4821
    functionDepth: 7
    functionLinenumber: 4821
    functionLinenumberEnd: 5123
    functionName: xsltApplyTemplates
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - XSLT_IS_RES_TREE_FRAG
    - IS_XSLT_NAME
    - xsltPreCompEval
    - xsltGenericDebug
    - xsltTransformError
    - xmlXPathNodeSetCreate
    - xslHandleDebugger
    - IS_XSLT_REAL_NODE
    - IS_XSLT_ELEM
    - xsltParseStylesheetCallerParam
    - xsltDoSortFunction
    - xmlXPathNodeSetAddUnique
    - xsltProcessOneNode
    - XSLT_TRACE
    - xmlXPathFreeObject
    - xsltFreeStackElemList
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: "void xsltApplyTemplates(xsltTransformContextPtr ctxt, xmlNodePtr node,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5150,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5160,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5160,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5161,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5179,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5179,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5185,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5197,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5201,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5201,1
    - Dst: xsltPreCompEvalToBoolean
      Src: /src/libxslt/libxslt/transform.c:5206,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:5216,1
    - Dst: xmlXPathConvertBoolean
      Src: /src/libxslt/libxslt/transform.c:5220,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5225,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5225,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:5230,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5240,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5240,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5252,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5252,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5256,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5260,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5260,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:5277,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 75
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5283
      start: 5135
    functionDepth: 7
    functionLinenumber: 5135
    functionLinenumberEnd: 5283
    functionName: xsltChoose
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xsltPreCompEval
    - xsltGenericDebug
    - xmlXPathConvertBoolean
    - xsltApplySequenceConstructor
    - xsltTransformError
    - xsltPreCompEvalToBoolean
    - xslHandleDebugger
    - IS_XSLT_ELEM
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltChoose(xsltTransformContextPtr ctxt, xmlNodePtr contextNode,\n\t
      \  xmlNodePtr inst, xsltElemPreCompPtr comp ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5309,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5316,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5316,1
    - Dst: xsltPreCompEvalToBoolean
      Src: /src/libxslt/libxslt/transform.c:5324,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:5331,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5335,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5335,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:5347,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:5356,1
    - Dst: xmlXPathConvertBoolean
      Src: /src/libxslt/libxslt/transform.c:5359,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5364,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5364,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:5368,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5374,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5375,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:5380,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5389
      start: 5294
    functionDepth: 7
    functionLinenumber: 5294
    functionLinenumberEnd: 5389
    functionName: xsltIf
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltApplySequenceConstructor
    - xsltGenericDebug
    - xsltReleaseLocalRVTs
    - xsltPreCompEval
    - xmlXPathConvertBoolean
    - xsltTransformError
    - xsltPreCompEvalToBoolean
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: "void xsltIf(xsltTransformContextPtr ctxt, xmlNodePtr contextNode,\n\t
      \          xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/transform.c:5422,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5428,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5434,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5443,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5443,1
    - Dst: xsltPreCompEval
      Src: /src/libxslt/libxslt/transform.c:5467,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5473,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5477,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5477,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5483,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/transform.c:5493,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5493,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5507,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5507,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5515,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/transform.c:5519,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/transform.c:5519,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5521,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/transform.c:5532,1
    - Dst: xsltDoSortFunction
      Src: /src/libxslt/libxslt/transform.c:5536,1
    - Dst: xsltApplySequenceConstructor
      Src: /src/libxslt/libxslt/transform.c:5557,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:5563,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 85
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5575
      start: 5400
    functionDepth: 7
    functionLinenumber: 5400
    functionLinenumberEnd: 5575
    functionName: xsltForEach
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - IS_XSLT_NAME
    - xsltPreCompEval
    - xsltGenericDebug
    - xsltApplySequenceConstructor
    - xsltTransformError
    - xslHandleDebugger
    - xsltDoSortFunction
    - IS_XSLT_ELEM
    - XSLT_TRACE
    - xmlXPathFreeObject
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void xsltForEach(xsltTransformContextPtr ctxt, xmlNodePtr contextNode,\n\t
      \   xmlNodePtr inst, xsltElemPreCompPtr castedComp)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/transform.c:5628,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - version
    - publicID
    - systemID
    argTypes:
    - xmlChar*
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5638
      start: 5620
    functionDepth: 1
    functionLinenumber: 5620
    functionLinenumberEnd: 5638
    functionName: xsltGetHTMLIDs
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: "int xsltGetHTMLIDs(const xmlChar *version, const xmlChar **publicID,\n\t
      \           const xmlChar **systemID)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/transform.c:5661,1
    - Dst: xsltFindElemSpaceHandling
      Src: /src/libxslt/libxslt/transform.c:5663,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxslt/libxslt/transform.c:5667,1
    - Dst: xsltApplyStripSpaces
      Src: /src/libxslt/libxslt/transform.c:5687,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5711,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5715
      start: 5648
    functionDepth: 1
    functionLinenumber: 5648
    functionLinenumberEnd: 5715
    functionName: xsltApplyStripSpaces
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - IS_BLANK_NODE
    - xsltGenericDebug
    - xsltApplyStripSpaces
    - IS_XSLT_REAL_NODE
    - xsltFindElemSpaceHandling
    linkageType: ''
    returnType: void
    signature: void xsltApplyStripSpaces(xsltTransformContextPtr ctxt, xmlNodePtr
      node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/transform.c:5736,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/transform.c:5749,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5752
      start: 5717
    functionDepth: 1
    functionLinenumber: 5717
    functionLinenumberEnd: 5752
    functionName: xsltCountKeys
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltNextImport
    linkageType: ''
    returnType: int
    signature: int xsltCountKeys(xsltTransformContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltClearSourceNodeFlags
      Src: /src/libxslt/libxslt/transform.c:5766,1
    - Dst: xsltGetPSVIPtr
      Src: /src/libxslt/libxslt/transform.c:5767,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5795
      start: 5760
    functionDepth: 1
    functionLinenumber: 5760
    functionLinenumberEnd: 5795
    functionName: xsltCleanupSourceDoc
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltClearSourceNodeFlags
    - xsltGetPSVIPtr
    linkageType: ''
    returnType: void
    signature: void xsltCleanupSourceDoc(xmlDocPtr doc)
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/transform.c:5827,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5834,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/transform.c:5858,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxslt/libxslt/transform.c:5862,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/libxslt/transform.c:5868,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5880,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/transform.c:5897,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/transform.c:5899,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:5902,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:5903,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:5904,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:5905,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:5906,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:5909,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:5911,1
    - Dst: htmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5914,1
    - Dst: htmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5919,1
    - Dst: xmlGetIntSubset
      Src: /src/libxslt/libxslt/transform.c:5924,1
    - Dst: xmlUnlinkNode
      Src: /src/libxslt/libxslt/transform.c:5926,1
    - Dst: xmlFreeDtd
      Src: /src/libxslt/libxslt/transform.c:5927,1
    - Dst: xsltGetHTMLIDs
      Src: /src/libxslt/libxslt/transform.c:5935,1
    - Dst: htmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5937,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:5943,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5946,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:5949,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5950,1
    - Dst: htmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5953,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:5957,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5960,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/transform.c:5963,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5965,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:5969,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5972,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:5976,1
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/transform.c:5983,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/transform.c:5987,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/transform.c:5989,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/transform.c:5995,1
    - Dst: xsltNeedElemSpaceHandling
      Src: /src/libxslt/libxslt/transform.c:6009,1
    - Dst: xsltApplyStripSpaces
      Src: /src/libxslt/libxslt/transform.c:6010,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/transform.c:6010,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/transform.c:6015,1
    - Dst: xsltEvalUserParams
      Src: /src/libxslt/libxslt/transform.c:6017,1
    - Dst: xsltCountKeys
      Src: /src/libxslt/libxslt/transform.c:6021,1
    - Dst: xsltEvalGlobalVariables
      Src: /src/libxslt/libxslt/transform.c:6023,1
    - Dst: xsltReleaseLocalRVTs
      Src: /src/libxslt/libxslt/transform.c:6026,1
    - Dst: xsltProcessOneNode
      Src: /src/libxslt/libxslt/transform.c:6034,1
    - Dst: xsltLocalVariablePop
      Src: /src/libxslt/libxslt/transform.c:6038,1
    - Dst: xsltShutdownCtxtExts
      Src: /src/libxslt/libxslt/transform.c:6039,1
    - Dst: xsltCleanupTemplates
      Src: /src/libxslt/libxslt/transform.c:6041,1
    - Dst: xsltFreeStackElemList
      Src: /src/libxslt/libxslt/transform.c:6054,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/transform.c:6061,1
    - Dst: xsltFreeRVTs
      Src: /src/libxslt/libxslt/transform.c:6079,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/transform.c:6084,1
    - Dst: xmlDictQLookup
      Src: /src/libxslt/libxslt/transform.c:6089,1
    - Dst: xmlStrcasecmp
      Src: /src/libxslt/libxslt/transform.c:6098,1
    - Dst: xmlIsBlankNode
      Src: /src/libxslt/libxslt/transform.c:6105,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:6117,1
    - Dst: xsltGetHTMLIDs
      Src: /src/libxslt/libxslt/transform.c:6122,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:6126,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:6135,1
    - Dst: XSLT_GET_IMPORT_PTR
      Src: /src/libxslt/libxslt/transform.c:6136,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxslt/libxslt/transform.c:6145,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libxslt/transform.c:6159,1
    - Dst: xsltSaveProfiling
      Src: /src/libxslt/libxslt/transform.c:6163,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/transform.c:6171,1
    - Dst: xsltCheckWrite
      Src: /src/libxslt/libxslt/transform.c:6177,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:6179,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:6183,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6190,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6191,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6192,1
    - Dst: xsltCleanupSourceDoc
      Src: /src/libxslt/libxslt/transform.c:6196,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/libxslt/transform.c:6199,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/transform.c:6205,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6208,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6209,1
    - Dst: printf
      Src: /src/libxslt/libxslt/transform.c:6210,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/libxslt/transform.c:6214,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 242
    argCount: 6
    argNames:
    - style
    - doc
    - params
    - output
    - profile
    - userCtxt
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    - char*
    - FILE*
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6216
      start: 5811
    functionDepth: 7
    functionLinenumber: 5811
    functionLinenumberEnd: 6216
    functionName: xsltApplyStylesheetInternal
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlUnlinkNode
    - xmlFreeDtd
    - xsltFreeTransformContext
    - htmlNewDoc
    - xsltCheckWrite
    - xsltLocalVariablePop
    - xmlStrcasecmp
    - xmlHashCreate
    - xmlDictLookup
    - xsltShutdownCtxtExts
    - xmlXPathFreeObject
    - xsltFreeStackElemList
    - xsltGetHTMLIDs
    - xsltFreeRVTs
    - xsltNewTransformContext
    - xsltInitGlobals
    - xsltProcessOneNode
    - xmlDocGetRootElement
    - xmlGetIntSubset
    - xsltGenericDebug
    - xmlStrEqual
    - xsltApplyStripSpaces
    - xmlNewDoc
    - xsltCleanupTemplates
    - xmlXPathOrderDocElems
    - xsltTransformError
    - xmlDictReference
    - xmlIsBlankNode
    - xsltCleanupSourceDoc
    - xsltEvalUserParams
    - xsltNeedElemSpaceHandling
    - xsltEvalGlobalVariables
    - xmlCreateIntSubset
    - xsltReleaseLocalRVTs
    - xmlDictQLookup
    - xsltSaveProfiling
    - printf
    - XSLT_GET_IMPORT_PTR
    - xsltCountKeys
    - xmlFreeDoc
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xsltApplyStylesheetInternal(xsltStylesheetPtr style, xmlDocPtr
      doc,\n                            const char **params, const char *output,\n
      \                           FILE * profile, xsltTransformContextPtr userCtxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltApplyStylesheetInternal
      Src: /src/libxslt/libxslt/transform.c:6233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - style
    - doc
    - params
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6234
      start: 6229
    functionDepth: 8
    functionLinenumber: 6229
    functionLinenumberEnd: 6234
    functionName: xsltApplyStylesheet
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 4
    functionsReached:
    - xsltApplyStylesheetInternal
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xsltApplyStylesheet(xsltStylesheetPtr style, xmlDocPtr doc,\n
      \                   const char **params)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltApplyStylesheetInternal
      Src: /src/libxslt/libxslt/transform.c:6254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - style
    - doc
    - params
    - output
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6256
      start: 6248
    functionDepth: 8
    functionLinenumber: 6248
    functionLinenumberEnd: 6256
    functionName: xsltProfileStylesheet
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltApplyStylesheetInternal
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xsltProfileStylesheet(xsltStylesheetPtr style, xmlDocPtr
      doc,\n                      const char **params, FILE * output)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltApplyStylesheetInternal
      Src: /src/libxslt/libxslt/transform.c:6279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - style
    - doc
    - params
    - output
    - profile
    - userCtxt
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    - char*
    - FILE*
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6282
      start: 6272
    functionDepth: 8
    functionLinenumber: 6272
    functionLinenumberEnd: 6282
    functionName: xsltApplyStylesheetUser
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 1
    functionsReached:
    - xsltApplyStylesheetInternal
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xsltApplyStylesheetUser(xsltStylesheetPtr style, xmlDocPtr
      doc,\n                            const char **params, const char *output,\n
      \                           FILE * profile, xsltTransformContextPtr userCtxt)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltApplyStylesheetInternal
      Src: /src/libxslt/libxslt/transform.c:6330,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/transform.c:6333,1
    - Dst: xsltSaveResultTo
      Src: /src/libxslt/libxslt/transform.c:6339,1
    - Dst: xsltSaveResultToFilename
      Src: /src/libxslt/libxslt/transform.c:6341,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/transform.c:6343,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 8
    argNames:
    - style
    - doc
    - params
    - output
    - SAX
    - IObuf
    - profile
    - userCtxt
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    - char*
    - xmlSAXHandlerPtr
    - xmlOutputBufferPtr
    - FILE*
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6345
      start: 6310
    functionDepth: 8
    functionLinenumber: 6310
    functionLinenumberEnd: 6345
    functionName: xsltRunStylesheetUser
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltSaveResultTo
    - xsltTransformError
    - xsltApplyStylesheetInternal
    - xsltSaveResultToFilename
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xsltRunStylesheetUser(xsltStylesheetPtr style, xmlDocPtr doc,\n
      \                 const char **params, const char *output,\n                  xmlSAXHandlerPtr
      SAX, xmlOutputBufferPtr IObuf,\n\t\t  FILE * profile, xsltTransformContextPtr
      userCtxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRunStylesheetUser
      Src: /src/libxslt/libxslt/transform.c:6376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - style
    - doc
    - params
    - output
    - SAX
    - IObuf
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    - char**
    - char*
    - xmlSAXHandlerPtr
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6378
      start: 6371
    functionDepth: 9
    functionLinenumber: 6371
    functionLinenumberEnd: 6378
    functionName: xsltRunStylesheet
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltRunStylesheetUser
    linkageType: ''
    returnType: int
    signature: "int xsltRunStylesheet(xsltStylesheetPtr style, xmlDocPtr doc,\n                  const
      char **params, const char *output,\n                  xmlSAXHandlerPtr SAX,
      xmlOutputBufferPtr IObuf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltMessage
      Src: /src/libxslt/libxslt/transform.c:6383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6384
      start: 6380
    functionDepth: 2
    functionLinenumber: 6380
    functionLinenumberEnd: 6384
    functionName: xsltMessageWrapper
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltMessage
    linkageType: ''
    returnType: void
    signature: "void xsltMessageWrapper(xsltTransformContextPtr ctxt, xmlNodePtr node,\n
      \                  xmlNodePtr inst, xsltElemPreCompPtr comp ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6395,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6398,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6401,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6404,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6407,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6410,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6413,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6416,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6419,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6422,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6425,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6428,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6431,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6434,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6437,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6440,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6443,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6450,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6453,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6456,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6459,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6462,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6465,1
    - Dst: xsltRegisterExtElement
      Src: /src/libxslt/libxslt/transform.c:6468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6472
      start: 6392
    functionDepth: 1
    functionLinenumber: 6392
    functionLinenumberEnd: 6472
    functionName: xsltRegisterAllElement
    functionSourceFile: /src/libxslt/libxslt/transform.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtElement
    linkageType: ''
    returnType: void
    signature: void xsltRegisterAllElement(xsltTransformContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:68,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/templates.c:84,1
    - Dst: xmlXPathEvalPredicate
      Src: /src/libxslt/libxslt/templates.c:87,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/templates.c:88,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/templates.c:90,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/templates.c:90,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/templates.c:95,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/templates.c:95,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 4
    argNames:
    - ctxt
    - comp
    - nsList
    - nsNr
    argTypes:
    - xsltTransformContextPtr
    - xmlXPathCompExprPtr
    - xmlNsPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 110
    functionName: xsltEvalXPathPredicate
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xmlXPathEvalPredicate
    - xsltGenericDebug
    - xsltTransformError
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: int
    signature: "int xsltEvalXPathPredicate(xsltTransformContextPtr ctxt, xmlXPathCompExprPtr
      comp,\n\t\t       xmlNsPtr *nsList, int nsNr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:137,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/templates.c:153,1
    - Dst: xmlXPathConvertString
      Src: /src/libxslt/libxslt/templates.c:156,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:161,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/templates.c:164,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/templates.c:169,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/templates.c:169,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 4
    argNames:
    - ctxt
    - comp
    - nsNr
    - nsList
    argTypes:
    - xsltTransformContextPtr
    - xmlXPathCompExprPtr
    - int
    - xmlNsPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 179
    functionName: xsltEvalXPathStringNs
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xsltGenericDebug
    - xsltTransformError
    - xmlXPathConvertString
    - XSLT_TRACE
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltEvalXPathStringNs(xsltTransformContextPtr ctxt, xmlXPathCompExprPtr
      comp,\n\t              int nsNr, xmlNsPtr *nsList)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalXPathStringNs
      Src: /src/libxslt/libxslt/templates.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlXPathCompExprPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 4
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: xsltEvalXPathString
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 1
    functionsReached:
    - xsltEvalXPathStringNs
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltEvalXPathString(xsltTransformContextPtr ctxt, xmlXPathCompExprPtr comp)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxslt/libxslt/templates.c:232,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:235,1
    - Dst: xsltApplyOneTemplate
      Src: /src/libxslt/libxslt/templates.c:247,1
    - Dst: xmlNodeGetContent
      Src: /src/libxslt/libxslt/templates.c:254,1
    - Dst: xmlFreeNode
      Src: /src/libxslt/libxslt/templates.c:256,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - contextNode
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 209
    functionDepth: 8
    functionLinenumber: 209
    functionLinenumberEnd: 258
    functionName: xsltEvalTemplateString
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 3
    functionsReached:
    - xmlNewDocNode
    - xsltTransformError
    - xmlNodeGetContent
    - xsltApplyOneTemplate
    - xmlFreeNode
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltEvalTemplateString(xsltTransformContextPtr ctxt,\n\t\t
      \      xmlNodePtr contextNode,\n\t               xmlNodePtr inst)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/templates.c:292,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/templates.c:299,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/templates.c:304,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:319,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/templates.c:321,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/templates.c:325,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/templates.c:329,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:330,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/templates.c:339,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libxslt/templates.c:346,1
    - Dst: xsltEvalXPathStringNs
      Src: /src/libxslt/libxslt/templates.c:347,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/templates.c:348,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:349,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/templates.c:351,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:352,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/templates.c:360,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:365,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/templates.c:372,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:377,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 83
    argCount: 3
    argNames:
    - ctxt
    - str
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 280
    functionDepth: 4
    functionLinenumber: 280
    functionLinenumberEnd: 380
    functionName: xsltAttrTemplateValueProcessNode
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlXPathFreeCompExpr
    - xsltTransformError
    - xmlStrndup
    - xmlGetNsList
    - xmlXPathCtxtCompile
    - xsltEvalXPathStringNs
    - xmlStrncat
    - xmlStrcat
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltAttrTemplateValueProcessNode(xsltTransformContextPtr
      ctxt,\n\t  const xmlChar *str, xmlNodePtr inst)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltAttrTemplateValueProcessNode
      Src: /src/libxslt/libxslt/templates.c:394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 392
    functionDepth: 5
    functionLinenumber: 392
    functionLinenumberEnd: 395
    functionName: xsltAttrTemplateValueProcess
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached:
    - xsltAttrTemplateValueProcessNode
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltAttrTemplateValueProcess(xsltTransformContextPtr ctxt, const xmlChar *str)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetNsProp
      Src: /src/libxslt/libxslt/templates.c:423,1
    - Dst: xsltAttrTemplateValueProcessNode
      Src: /src/libxslt/libxslt/templates.c:433,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/templates.c:435,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/templates.c:435,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - ctxt
    - inst
    - name
    - ns
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 412
    functionDepth: 5
    functionLinenumber: 412
    functionLinenumberEnd: 441
    functionName: xsltEvalAttrValueTemplate
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 4
    functionsReached:
    - xsltGenericDebug
    - xmlFree
    - xsltGetNsProp
    - xsltAttrTemplateValueProcessNode
    - XSLT_TRACE
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltEvalAttrValueTemplate(xsltTransformContextPtr ctxt,
      xmlNodePtr inst,\n\t                  const xmlChar *name, const xmlChar *ns)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetNsProp
      Src: /src/libxslt/libxslt/templates.c:468,1
    - Dst: xmlStrchr
      Src: /src/libxslt/libxslt/templates.c:475,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:477,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/templates.c:480,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/templates.c:481,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 5
    argNames:
    - style
    - inst
    - name
    - ns
    - found
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 483
    functionName: xsltEvalStaticAttrValueTemplate
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 6
    functionsReached:
    - xsltGetNsProp
    - xmlStrchr
    - xmlFree
    - xmlDictLookup
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxsltEvalStaticAttrValueTemplate(xsltStylesheetPtr style,
      xmlNodePtr inst,\n\t\t\tconst xmlChar *name, const xmlChar *ns, int *found)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:520,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:530,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/templates.c:537,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/templates.c:539,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:546,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:547,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libxslt/templates.c:555,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:561,1
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/templates.c:563,1
    - Dst: xmlNewNsProp
      Src: /src/libxslt/libxslt/templates.c:568,1
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/templates.c:569,1
    - Dst: xmlNewNsProp
      Src: /src/libxslt/libxslt/templates.c:572,1
    - Dst: xmlNewText
      Src: /src/libxslt/libxslt/templates.c:580,1
    - Dst: xsltEvalAVT
      Src: /src/libxslt/libxslt/templates.c:591,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:598,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:603,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/templates.c:608,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/templates.c:615,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/templates.c:618,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:623,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:627,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 70
    argCount: 3
    argNames:
    - ctxt
    - target
    - attr
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 499
    functionDepth: 3
    functionLinenumber: 499
    functionLinenumberEnd: 633
    functionName: xsltAttrTemplateProcess
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlStrdup
    - xsltEvalAVT
    - xmlStrEqual
    - xmlNewText
    - xsltTransformError
    - xmlNewNsProp
    - xmlDictOwns
    - xsltGetNamespace
    - xmlDictLookup
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xsltAttrTemplateProcess(xsltTransformContextPtr ctxt, xmlNodePtr
      target,\n\t                xmlAttrPtr attr)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:680,1
    - Dst: xsltApplyAttributeSet
      Src: /src/libxslt/libxslt/templates.c:682,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:686,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:687,1
    - Dst: xsltApplyAttributeSet
      Src: /src/libxslt/libxslt/templates.c:689,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/templates.c:713,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:725,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/templates.c:732,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/templates.c:734,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/templates.c:743,1
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/templates.c:746,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/templates.c:758,1
    - Dst: xmlNewDocProp
      Src: /src/libxslt/libxslt/templates.c:764,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:785,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:789,1
    - Dst: xmlNewText
      Src: /src/libxslt/libxslt/templates.c:799,1
    - Dst: xsltEvalAVT
      Src: /src/libxslt/libxslt/templates.c:809,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:816,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/templates.c:821,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/templates.c:826,1
    - Dst: xmlDictOwns
      Src: /src/libxslt/libxslt/templates.c:834,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/templates.c:838,1
    - Dst: xmlIsID
      Src: /src/libxslt/libxslt/templates.c:841,1
    - Dst: xmlAddID
      Src: /src/libxslt/libxslt/templates.c:842,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 114
    argCount: 3
    argNames:
    - ctxt
    - target
    - attrs
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 655
    functionDepth: 3
    functionLinenumber: 655
    functionLinenumberEnd: 855
    functionName: xsltAttrListTemplateProcess
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xsltEvalAVT
    - xmlStrEqual
    - xsltGetSpecialNamespace
    - xmlNewText
    - xsltTransformError
    - xsltApplyAttributeSet
    - xmlAddID
    - xmlSetNsProp
    - xmlNewDocProp
    - xmlIsID
    - xmlDictOwns
    - xsltGetNamespace
    - xmlDictLookup
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xsltAttrListTemplateProcess(xsltTransformContextPtr ctxt,\n\t
      \                   xmlNodePtr target, xmlAttrPtr attrs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - node
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 873
    functionName: xsltTemplateProcess
    functionSourceFile: /src/libxslt/libxslt/templates.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: 'xmlNodePtr *

      xsltTemplateProcess(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED, xmlNodePtr
      node)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/pattern.c:148,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:150,1
    - Dst: memset
      Src: /src/libxslt/libxslt/pattern.c:154,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/pattern.c:157,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:160,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 144
    functionDepth: 3
    functionLinenumber: 144
    functionLinenumberEnd: 169
    functionName: xsltNewCompMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xmlFree
    - memset
    linkageType: ''
    returnType: xsltCompMatchPtr
    signature: xsltCompMatchPtr xsltNewCompMatch(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:185,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:187,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:191,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:193,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:195,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/pattern.c:197,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:199,1
    - Dst: memset
      Src: /src/libxslt/libxslt/pattern.c:200,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:201,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 202
    functionName: xsltFreeCompMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeCompMatch(xsltCompMatchPtr comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeCompMatch
      Src: /src/libxslt/libxslt/pattern.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 210
    functionDepth: 2
    functionLinenumber: 210
    functionLinenumberEnd: 219
    functionName: xsltFreeCompMatchList
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached:
    - xsltFreeCompMatch
    linkageType: ''
    returnType: void
    signature: void xsltFreeCompMatchList(xsltCompMatchPtr comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 221
    functionDepth: 3
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionName: xsltFreeCompMatchListEntry
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltFreeCompMatchList
    linkageType: ''
    returnType: void
    signature: "void xsltFreeCompMatchListEntry(void *payload,\n                           const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 247
    functionName: xsltNormalizeCompSteps
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xsltNormalizeCompSteps(void *payload,\n        void *data, const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/pattern.c:262,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:264,1
    - Dst: memset
      Src: /src/libxslt/libxslt/pattern.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - style
    - ctxt
    argTypes:
    - xsltStylesheetPtr
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 258
    functionDepth: 3
    functionLinenumber: 258
    functionLinenumberEnd: 272
    functionName: xsltNewParserContext
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltParserContextPtr
    signature: xsltParserContextPtr xsltNewParserContext(xsltStylesheetPtr style,
      xsltTransformContextPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxslt/libxslt/pattern.c:284,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 286
    functionName: xsltFreeParserContext
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeParserContext(xsltParserContextPtr ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/pattern.c:307,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/pattern.c:310,1
    - Dst: xsltAllocateExtraCtxt
      Src: /src/libxslt/libxslt/pattern.c:326,1
    - Dst: xsltAllocateExtraCtxt
      Src: /src/libxslt/libxslt/pattern.c:328,1
    - Dst: xsltAllocateExtraCtxt
      Src: /src/libxslt/libxslt/pattern.c:330,1
    - Dst: xsltAllocateExtra
      Src: /src/libxslt/libxslt/pattern.c:333,1
    - Dst: xsltAllocateExtra
      Src: /src/libxslt/libxslt/pattern.c:335,1
    - Dst: xsltAllocateExtra
      Src: /src/libxslt/libxslt/pattern.c:337,1
    - Dst: xsltXPathCompileFlags
      Src: /src/libxslt/libxslt/pattern.c:346,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:349,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 6
    argNames:
    - ctxt
    - comp
    - op
    - value
    - value2
    - novar
    argTypes:
    - xsltParserContextPtr
    - xsltCompMatchPtr
    - xsltOp
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 300
    functionDepth: 4
    functionLinenumber: 300
    functionLinenumberEnd: 357
    functionName: xsltCompMatchAdd
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xsltAllocateExtraCtxt
    - xsltTransformError
    - xsltAllocateExtra
    - xsltXPathCompileFlags
    - xsltGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltCompMatchAdd(xsltParserContextPtr ctxt, xsltCompMatchPtr comp,\n
      \                xsltOp op, xmlChar * value, xmlChar * value2, int novar)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 28
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 401
    functionName: xsltSwapTopCompMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSwapTopCompMatch(xsltCompMatchPtr comp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltCompMatchAdd
      Src: /src/libxslt/libxslt/pattern.c:448,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/pattern.c:462,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/pattern.c:463,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:465,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - comp
    argTypes:
    - xsltParserContextPtr
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 410
    functionDepth: 5
    functionLinenumber: 410
    functionLinenumberEnd: 471
    functionName: xsltReverseCompMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltCompMatchAdd
    - xmlStrdup
    - xmlStrcat
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltReverseCompMatch(xsltParserContextPtr ctxt, xsltCompMatchPtr
      comp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/pattern.c:486,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/pattern.c:489,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/pattern.c:500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ctxt
    - states
    - step
    - node
    argTypes:
    - xsltTransformContextPtr
    - xsltStepStates*
    - int
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 503
    functionName: xsltPatPushState
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRealloc
    - xsltGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltPatPushState(xsltTransformContextPtr ctxt, xsltStepStates
      *states,\n                 int step, xmlNodePtr node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - obj
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 508
    functionName: xmlXPathFreeObjectWrapper
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeObjectWrapper(void *obj)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_IS_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/pattern.c:535,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:542,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:543,1
    - Dst: XSLT_RUNTIME_EXTRA_LST
      Src: /src/libxslt/libxslt/pattern.c:545,1
    - Dst: xmlXPathEval
      Src: /src/libxslt/libxslt/pattern.c:565,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:575,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:585,1
    - Dst: XSLT_RUNTIME_EXTRA_LST
      Src: /src/libxslt/libxslt/pattern.c:588,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:590,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:592,1
    - Dst: XSLT_RUNTIME_EXTRA_FREE
      Src: /src/libxslt/libxslt/pattern.c:594,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:602,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:610,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:617,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 65
    argCount: 5
    argNames:
    - ctxt
    - comp
    - node
    - nsList
    - nsNr
    argTypes:
    - xsltTransformContextPtr
    - xsltCompMatchPtr
    - xmlNodePtr
    - xmlNsPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 619
    functionName: xsltTestCompMatchDirect
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - XSLT_IS_RES_TREE_FRAG
    - XSLT_RUNTIME_EXTRA
    - XSLT_RUNTIME_EXTRA_LST
    - XSLT_RUNTIME_EXTRA_FREE
    - xmlXPathEval
    - xmlXPathFreeObject
    linkageType: ''
    returnType: int
    signature: "int xsltTestCompMatchDirect(xsltTransformContextPtr ctxt, xsltCompMatchPtr
      comp,\n\t                xmlNodePtr node, xmlNsPtr *nsList, int nsNr)"
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: LIBXML_DOCB_ENABLED
      Src: /src/libxslt/libxslt/pattern.c:637,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:652,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:662,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:672,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:680,1
    - Dst: xmlGetID
      Src: /src/libxslt/libxslt/pattern.c:691,1
    - Dst: xsltGetKey
      Src: /src/libxslt/libxslt/pattern.c:700,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:720,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:732,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:758,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 116
    argCount: 3
    argNames:
    - ctxt
    - node
    - step
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStepOpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 631
    functionDepth: 3
    functionLinenumber: 631
    functionLinenumberEnd: 765
    functionName: xsltTestStepMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltTransformError
    - xsltGetKey
    - LIBXML_DOCB_ENABLED
    - xmlGetID
    linkageType: ''
    returnType: int
    signature: "int xsltTestStepMatch(xsltTransformContextPtr ctxt, xmlNodePtr node,\n
      \                 xsltStepOpPtr step)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_IS_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/pattern.c:798,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:820,1
    - Dst: xsltTestStepMatch
      Src: /src/libxslt/libxslt/pattern.c:832,1
    - Dst: xsltTestStepMatch
      Src: /src/libxslt/libxslt/pattern.c:843,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:849,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:856,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:858,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:860,1
    - Dst: xsltTestStepMatch
      Src: /src/libxslt/libxslt/pattern.c:878,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:903,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:904,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:905,1
    - Dst: xsltEvalXPathPredicate
      Src: /src/libxslt/libxslt/pattern.c:913,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 84
    argCount: 5
    argNames:
    - ctxt
    - comp
    - node
    - step
    - sel
    argTypes:
    - xsltTransformContextPtr
    - xsltCompMatchPtr
    - xmlNodePtr
    - xsltStepOpPtr
    - xsltStepOpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 779
    functionDepth: 4
    functionLinenumber: 779
    functionLinenumberEnd: 922
    functionName: xsltTestPredicateMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - XSLT_IS_RES_TREE_FRAG
    - xsltEvalXPathPredicate
    - XSLT_RUNTIME_EXTRA
    - xsltTestStepMatch
    linkageType: ''
    returnType: int
    signature: "int xsltTestPredicateMatch(xsltTransformContextPtr ctxt, xsltCompMatchPtr
      comp,\n                       xmlNodePtr node, xsltStepOpPtr step,\n                       xsltStepOpPtr
      sel)"
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:948,1
    - Dst: LIBXML_DOCB_ENABLED
      Src: /src/libxslt/libxslt/pattern.c:993,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1005,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1014,1
    - Dst: LIBXML_DOCB_ENABLED
      Src: /src/libxslt/libxslt/pattern.c:1036,1
    - Dst: xsltPatPushState
      Src: /src/libxslt/libxslt/pattern.c:1043,1
    - Dst: xsltPatPushState
      Src: /src/libxslt/libxslt/pattern.c:1049,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1055,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1062,1
    - Dst: xsltPatPushState
      Src: /src/libxslt/libxslt/pattern.c:1070,1
    - Dst: xsltTestCompMatchDirect
      Src: /src/libxslt/libxslt/pattern.c:1081,1
    - Dst: xsltTestPredicateMatch
      Src: /src/libxslt/libxslt/pattern.c:1086,1
    - Dst: xsltTestStepMatch
      Src: /src/libxslt/libxslt/pattern.c:1092,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1103,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/pattern.c:1116,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 152
    argCount: 5
    argNames:
    - ctxt
    - comp
    - matchNode
    - mode
    - modeURI
    argTypes:
    - xsltTransformContextPtr
    - xsltCompMatchPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 936
    functionDepth: 5
    functionLinenumber: 936
    functionLinenumberEnd: 1119
    functionName: xsltTestCompMatch
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - xsltTestPredicateMatch
    - xsltTestCompMatchDirect
    - xsltPatPushState
    - LIBXML_DOCB_ENABLED
    - fprintf
    - xsltTestStepMatch
    linkageType: ''
    returnType: int
    signature: "int xsltTestCompMatch(xsltTransformContextPtr ctxt, xsltCompMatchPtr
      comp,\n\t          xmlNodePtr matchNode, const xmlChar *mode,\n\t\t  const xmlChar
      *modeURI)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:1139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ctxt
    - node
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1131
    functionDepth: 6
    functionLinenumber: 1131
    functionLinenumberEnd: 1145
    functionName: xsltTestCompMatchList
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltTestCompMatch
    linkageType: ''
    returnType: int
    signature: "int xsltTestCompMatchList(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t              xsltCompMatchPtr comp)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_RUNTIME_EXTRA_LST
      Src: /src/libxslt/libxslt/pattern.c:1163,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/pattern.c:1166,1
    - Dst: XSLT_RUNTIME_EXTRA_LST
      Src: /src/libxslt/libxslt/pattern.c:1168,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:1169,1
    - Dst: XSLT_RUNTIME_EXTRA
      Src: /src/libxslt/libxslt/pattern.c:1170,1
    - Dst: XSLT_RUNTIME_EXTRA_FREE
      Src: /src/libxslt/libxslt/pattern.c:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - comp
    argTypes:
    - xsltTransformContextPtr
    - xsltCompMatchPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1154
    functionDepth: 1
    functionLinenumber: 1154
    functionLinenumberEnd: 1173
    functionName: xsltCompMatchClearCache
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - XSLT_RUNTIME_EXTRA
    - xmlXPathFreeObject
    - XSLT_RUNTIME_EXTRA_LST
    - XSLT_RUNTIME_EXTRA_FREE
    linkageType: ''
    returnType: void
    signature: void xsltCompMatchClearCache(xsltTransformContextPtr ctxt, xsltCompMatchPtr
      comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1182
    functionDepth: 0
    functionLinenumber: 1182
    functionLinenumberEnd: 1183
    functionName: SKIP
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1183
    functionDepth: 0
    functionLinenumber: 1183
    functionLinenumberEnd: 1184
    functionName: NXT
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - op
    - ','
    - val
    - ','
    - val2
    - ','
    - novar
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1193
    functionDepth: 0
    functionLinenumber: 1193
    functionLinenumberEnd: 1195
    functionName: PUSH
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH(op, val, val2, novar)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1196
    functionDepth: 0
    functionLinenumber: 1196
    functionLinenumberEnd: 1198
    functionName: SWAP
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWAP()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1199
    functionDepth: 0
    functionLinenumber: 1199
    functionLinenumberEnd: 1202
    functionName: XSLT_ERROR
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_ERROR(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1203
    functionDepth: 0
    functionLinenumber: 1203
    functionLinenumberEnd: 1206
    functionName: XSLT_ERROR0
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_ERROR0(X)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1229,1
    - Dst: xmlIsCharQ
      Src: /src/libxslt/libxslt/pattern.c:1230,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1232,1
    - Dst: xmlIsCharQ
      Src: /src/libxslt/libxslt/pattern.c:1234,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/pattern.c:1238,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1245,1
    - Dst: xmlIsCharQ
      Src: /src/libxslt/libxslt/pattern.c:1246,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1248,1
    - Dst: xmlIsCharQ
      Src: /src/libxslt/libxslt/pattern.c:1250,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/pattern.c:1254,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1219
    functionDepth: 1
    functionLinenumber: 1219
    functionLinenumberEnd: 1263
    functionName: xsltScanLiteral
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlStrndup
    - xsltGetUTF8CharZ
    - xmlIsCharQ
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltScanLiteral(xsltParserContextPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1283,1
    - Dst: xmlIsBaseCharQ
      Src: /src/libxslt/libxslt/pattern.c:1284,1
    - Dst: xmlIsIdeographicQ
      Src: /src/libxslt/libxslt/pattern.c:1284,1
    - Dst: xmlIsBaseCharQ
      Src: /src/libxslt/libxslt/pattern.c:1287,1
    - Dst: xmlIsIdeographicQ
      Src: /src/libxslt/libxslt/pattern.c:1287,1
    - Dst: xmlIsDigitQ
      Src: /src/libxslt/libxslt/pattern.c:1288,1
    - Dst: xmlIsCombiningQ
      Src: /src/libxslt/libxslt/pattern.c:1291,1
    - Dst: xmlIsExtenderQ
      Src: /src/libxslt/libxslt/pattern.c:1292,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/pattern.c:1294,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/pattern.c:1296,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1274
    functionDepth: 1
    functionLinenumber: 1274
    functionLinenumberEnd: 1299
    functionName: xsltScanNCName
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlIsCombiningQ
    - xsltGetUTF8CharZ
    - xmlStrndup
    - xmlIsIdeographicQ
    - xmlIsBaseCharQ
    - xmlIsExtenderQ
    - xmlIsDigitQ
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltScanNCName(xsltParserContextPtr ctxt)'
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1325,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1330,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1332,1
    - Dst: xsltScanLiteral
      Src: /src/libxslt/libxslt/pattern.c:1339,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1341,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1343,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1348,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1350,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1355,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1357,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1359,1
    - Dst: xsltScanLiteral
      Src: /src/libxslt/libxslt/pattern.c:1366,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1368,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1370,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1375,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1377,1
    - Dst: xsltScanLiteral
      Src: /src/libxslt/libxslt/pattern.c:1383,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1385,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1387,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1392,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1394,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1395,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1401,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1404,1
    - Dst: xsltScanLiteral
      Src: /src/libxslt/libxslt/pattern.c:1408,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1410,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1412,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1417,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1420,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1425,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1427,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1431,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1437,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1438,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1442,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1448,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1449,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1453,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1460,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1463,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1466,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1471,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 144
    argCount: 5
    argNames:
    - ctxt
    - name
    - aid
    - novar
    - axis
    argTypes:
    - xsltParserContextPtr
    - xmlChar*
    - int
    - int
    - xsltAxis
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1318
    functionDepth: 3
    functionLinenumber: 1318
    functionLinenumberEnd: 1478
    functionName: xsltCompileIdKeyPattern
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - xsltScanLiteral
    - PUSH
    linkageType: ''
    returnType: void
    signature: "void xsltCompileIdKeyPattern(xsltParserContextPtr ctxt, xmlChar *name,\n\t\tint
      aid, int novar, xsltAxis axis)"
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xsltScanNCName
      Src: /src/libxslt/libxslt/pattern.c:1518,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1523,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1526,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1530,1
    - Dst: xsltCompileIdKeyPattern
      Src: /src/libxslt/libxslt/pattern.c:1540,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1541,1
    - Dst: xsltScanNCName
      Src: /src/libxslt/libxslt/pattern.c:1554,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/pattern.c:1555,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1557,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1560,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/pattern.c:1565,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1567,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1573,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1577,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1581,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1588,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1593,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1600,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1606,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/pattern.c:1608,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1611,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1616,1
    - Dst: xsltScanNCName
      Src: /src/libxslt/libxslt/pattern.c:1619,1
    - Dst: xsltGetQNameURI
      Src: /src/libxslt/libxslt/pattern.c:1623,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/pattern.c:1629,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1631,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1636,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1670,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/pattern.c:1675,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1676,1
    - Dst: SWAP
      Src: /src/libxslt/libxslt/pattern.c:1679,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1686,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1688,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1690,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1692,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 176
    argCount: 3
    argNames:
    - ctxt
    - token
    - novar
    argTypes:
    - xsltParserContextPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1693
      start: 1502
    functionDepth: 4
    functionLinenumber: 1502
    functionLinenumberEnd: 1693
    functionName: xsltCompileStepPattern
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltScanNCName
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xsltTransformError
    - xsltGetQNameURI
    - xmlStrndup
    - SWAP
    - xmlSearchNs
    - PUSH
    - xsltCompileIdKeyPattern
    linkageType: ''
    returnType: void
    signature: void xsltCompileStepPattern(xsltParserContextPtr ctxt, xmlChar *token,
      int novar)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltCompileStepPattern
      Src: /src/libxslt/libxslt/pattern.c:1710,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/pattern.c:1715,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1716,1
    - Dst: xsltCompileStepPattern
      Src: /src/libxslt/libxslt/pattern.c:1720,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1722,1
    - Dst: xsltCompileStepPattern
      Src: /src/libxslt/libxslt/pattern.c:1725,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - ctxt
    - token
    - novar
    argTypes:
    - xsltParserContextPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1735
      start: 1708
    functionDepth: 5
    functionLinenumber: 1708
    functionLinenumberEnd: 1735
    functionName: xsltCompileRelativePathPattern
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - PUSH
    - NXT
    - xsltCompileStepPattern
    linkageType: ''
    returnType: void
    signature: void xsltCompileRelativePathPattern(xsltParserContextPtr ctxt, xmlChar
      *token, int novar)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxslt/libxslt/pattern.c:1752,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1760,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1767,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1769,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1770,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1773,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1775,1
    - Dst: xsltScanNCName
      Src: /src/libxslt/libxslt/pattern.c:1778,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1780,1
    - Dst: xmlXPathIsNodeType
      Src: /src/libxslt/libxslt/pattern.c:1786,1
    - Dst: xsltCompileIdKeyPattern
      Src: /src/libxslt/libxslt/pattern.c:1787,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/pattern.c:1788,1
    - Dst: NXT
      Src: /src/libxslt/libxslt/pattern.c:1792,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1793,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1797,1
    - Dst: PUSH
      Src: /src/libxslt/libxslt/pattern.c:1799,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1802,1
    - Dst: xsltCompileRelativePathPattern
      Src: /src/libxslt/libxslt/pattern.c:1806,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 2
    argNames:
    - ctxt
    - novar
    argTypes:
    - xsltParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1749
    functionDepth: 6
    functionLinenumber: 1749
    functionLinenumberEnd: 1810
    functionName: xsltCompileLocationPathPattern
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltScanNCName
    - xmlFree
    - xmlXPathIsNodeType
    - xsltTransformError
    - NXT
    - PUSH
    - xsltCompileRelativePathPattern
    - xsltCompileIdKeyPattern
    linkageType: ''
    returnType: void
    signature: void xsltCompileLocationPathPattern(xsltParserContextPtr ctxt, int
      novar)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1838,1
    - Dst: xsltNewParserContext
      Src: /src/libxslt/libxslt/pattern.c:1843,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxslt/libxslt/pattern.c:1851,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1874,1
    - Dst: xsltNewCompMatch
      Src: /src/libxslt/libxslt/pattern.c:1878,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/pattern.c:1889,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/pattern.c:1895,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/pattern.c:1905,1
    - Dst: xsltCompileLocationPathPattern
      Src: /src/libxslt/libxslt/pattern.c:1914,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1916,1
    - Dst: xsltReverseCompMatch
      Src: /src/libxslt/libxslt/pattern.c:1926,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/pattern.c:1963,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:1972,1
    - Dst: xsltFreeParserContext
      Src: /src/libxslt/libxslt/pattern.c:1978,1
    - Dst: xsltFreeParserContext
      Src: /src/libxslt/libxslt/pattern.c:1983,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:1985,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 117
    argCount: 6
    argNames:
    - pattern
    - doc
    - node
    - style
    - runtime
    - novar
    argTypes:
    - xmlChar*
    - xmlDocPtr
    - xmlNodePtr
    - xsltStylesheetPtr
    - xsltTransformContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1829
    functionDepth: 7
    functionLinenumber: 1829
    functionLinenumberEnd: 1987
    functionName: xsltCompilePatternInternal
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltNewCompMatch
    - xsltNewParserContext
    - xsltGenericDebug
    - xsltTransformError
    - xmlStrndup
    - xmlIsBlank_ch
    - xmlGetNsList
    - xsltCompileLocationPathPattern
    - xsltFreeParserContext
    - xsltFreeCompMatchList
    - xsltReverseCompMatch
    linkageType: ''
    returnType: xsltCompMatchPtr
    signature: "xsltCompMatchPtr xsltCompilePatternInternal(const xmlChar *pattern,
      xmlDocPtr doc,\n\t           xmlNodePtr node, xsltStylesheetPtr style,\n\t\t
      \  xsltTransformContextPtr runtime, int novar)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltCompilePatternInternal
      Src: /src/libxslt/libxslt/pattern.c:2009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - pattern
    - doc
    - node
    - style
    - runtime
    argTypes:
    - xmlChar*
    - xmlDocPtr
    - xmlNodePtr
    - xsltStylesheetPtr
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 2005
    functionDepth: 8
    functionLinenumber: 2005
    functionLinenumberEnd: 2010
    functionName: xsltCompilePattern
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached:
    - xsltCompilePatternInternal
    linkageType: ''
    returnType: xsltCompMatchPtr
    signature: "xsltCompMatchPtr xsltCompilePattern(const xmlChar *pattern, xmlDocPtr
      doc,\n\t           xmlNodePtr node, xsltStylesheetPtr style,\n\t\t   xsltTransformContextPtr
      runtime)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/pattern.c:2050,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/pattern.c:2055,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2058,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/pattern.c:2066,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2071,1
    - Dst: xsltCompilePatternInternal
      Src: /src/libxslt/libxslt/pattern.c:2080,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/pattern.c:2093,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/pattern.c:2095,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2127,1
    - Dst: xsltFreeCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2129,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/pattern.c:2157,1
    - Dst: xmlHashAddEntry3
      Src: /src/libxslt/libxslt/pattern.c:2159,1
    - Dst: xmlHashLookup3
      Src: /src/libxslt/libxslt/pattern.c:2162,1
    - Dst: xmlHashAddEntry3
      Src: /src/libxslt/libxslt/pattern.c:2165,1
    - Dst: xmlHashUpdateEntry3
      Src: /src/libxslt/libxslt/pattern.c:2175,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2209,1
    - Dst: xsltFreeCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2211,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2212,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/pattern.c:2217,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/pattern.c:2221,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 143
    argCount: 4
    argNames:
    - style
    - cur
    - mode
    - modeURI
    argTypes:
    - xsltStylesheetPtr
    - xsltTemplatePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2229
      start: 2029
    functionDepth: 8
    functionLinenumber: 2029
    functionLinenumberEnd: 2229
    functionName: xsltAddTemplate
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 4
    functionsReached:
    - xmlHashLookup2
    - xsltGenericDebug
    - xmlHashLookup3
    - xsltTransformError
    - xsltCompilePatternInternal
    - xmlHashAddEntry3
    - xsltFreeCompMatch
    - xsltFreeCompMatchList
    - xmlHashUpdateEntry3
    - xmlHashCreate
    - xmlDictLookup
    - xmlHashAddEntry2
    linkageType: ''
    returnType: int
    signature: "int xsltAddTemplate(xsltStylesheetPtr style, xsltTemplatePtr cur,\n\t
      \       const xmlChar *mode, const xmlChar *modeURI)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2235,1
    - Dst: xsltNewDocument
      Src: /src/libxslt/libxslt/pattern.c:2250,1
    - Dst: xsltInitAllDocKeys
      Src: /src/libxslt/libxslt/pattern.c:2254,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/pattern.c:2257,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - contextNode
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2263
      start: 2231
    functionDepth: 3
    functionLinenumber: 2231
    functionLinenumberEnd: 2263
    functionName: xsltComputeAllKeys
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 0
    functionsReached:
    - xsltInitAllDocKeys
    - xsltTransformError
    - xsltNewDocument
    linkageType: ''
    returnType: int
    signature: int xsltComputeAllKeys(xsltTransformContextPtr ctxt, xmlNodePtr contextNode)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/pattern.c:2292,1
    - Dst: xmlHashLookup3
      Src: /src/libxslt/libxslt/pattern.c:2338,1
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2343,1
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2403,1
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2423,1
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2439,1
    - Dst: xsltGetSourceNodeFlags
      Src: /src/libxslt/libxslt/pattern.c:2450,1
    - Dst: xsltTestCompMatch
      Src: /src/libxslt/libxslt/pattern.c:2457,1
    - Dst: xsltComputeAllKeys
      Src: /src/libxslt/libxslt/pattern.c:2475,1
    - Dst: xsltGetSourceNodeFlags
      Src: /src/libxslt/libxslt/pattern.c:2478,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/pattern.c:2487,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 153
    argCount: 3
    argNames:
    - ctxt
    - node
    - style
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2492
      start: 2276
    functionDepth: 6
    functionLinenumber: 2276
    functionLinenumberEnd: 2492
    functionName: xsltGetTemplate
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 2
    functionsReached:
    - xsltTestCompMatch
    - xsltNextImport
    - xmlHashLookup3
    - xsltComputeAllKeys
    - xsltGetSourceNodeFlags
    linkageType: ''
    returnType: xsltTemplatePtr
    signature: "xsltTemplatePtr xsltGetTemplate(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t        xsltStylesheetPtr style)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2503
      start: 2501
    functionDepth: 0
    functionLinenumber: 2501
    functionLinenumberEnd: 2503
    functionName: xsltCleanupTemplates
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltCleanupTemplates(xsltStylesheetPtr style ATTRIBUTE_UNUSED)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/pattern.c:2514,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2516,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2518,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2520,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2522,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2524,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2526,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2528,1
    - Dst: xsltFreeCompMatchList
      Src: /src/libxslt/libxslt/pattern.c:2530,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/pattern.c:2532,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2533
      start: 2511
    functionDepth: 3
    functionLinenumber: 2511
    functionLinenumberEnd: 2533
    functionName: xsltFreeTemplateHashes
    functionSourceFile: /src/libxslt/libxslt/pattern.c
    functionUses: 1
    functionsReached:
    - xsltFreeCompMatchList
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeTemplateHashes(xsltStylesheetPtr style)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxslt/libxslt/imports.c:49,1
    - Dst: xsltFixImportedCompSteps
      Src: /src/libxslt/libxslt/imports.c:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - master
    - style
    argTypes:
    - xsltStylesheetPtr
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: xsltFixImportedCompSteps
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 1
    functionsReached:
    - xsltFixImportedCompSteps
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: "void xsltFixImportedCompSteps(xsltStylesheetPtr master,\n\t\t\txsltStylesheetPtr
      style)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:71,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/imports.c:75,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:76,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:87,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/imports.c:91,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:92,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 3
    argNames:
    - style
    - cur
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 58
    functionDepth: 3
    functionLinenumber: 58
    functionLinenumberEnd: 103
    functionName: xsltCheckCycle
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xsltCheckCycle(xsltStylesheetPtr style, xmlNodePtr cur, const xmlChar
      *URI)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/imports.c:128,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:130,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/imports.c:135,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/imports.c:136,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:138,1
    - Dst: xsltCheckCycle
      Src: /src/libxslt/libxslt/imports.c:143,1
    - Dst: xsltGetDefaultSecurityPrefs
      Src: /src/libxslt/libxslt/imports.c:149,1
    - Dst: xsltCheckRead
      Src: /src/libxslt/libxslt/imports.c:153,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:156,1
    - Dst: xsltDocDefaultLoader
      Src: /src/libxslt/libxslt/imports.c:163,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:166,1
    - Dst: xsltParseStylesheetImportedDoc
      Src: /src/libxslt/libxslt/imports.c:171,1
    - Dst: xsltFixImportedCompSteps
      Src: /src/libxslt/libxslt/imports.c:176,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/imports.c:180,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:185,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:187,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:189,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 115
    functionDepth: 5
    functionLinenumber: 115
    functionLinenumberEnd: 192
    functionName: xsltParseStylesheetImport
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 2
    functionsReached:
    - xmlNodeGetBase
    - xsltCheckRead
    - xmlFree
    - xsltCheckCycle
    - xmlBuildURI
    - xsltTransformError
    - xsltParseStylesheetImportedDoc
    - xsltFixImportedCompSteps
    - xmlGetNsProp
    - xsltDocDefaultLoader
    - xsltGetDefaultSecurityPrefs
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xsltParseStylesheetImport(xsltStylesheetPtr style, xmlNodePtr cur)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/imports.c:218,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:220,1
    - Dst: xmlNodeGetBase
      Src: /src/libxslt/libxslt/imports.c:225,1
    - Dst: xmlBuildURI
      Src: /src/libxslt/libxslt/imports.c:226,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:228,1
    - Dst: xsltCheckCycle
      Src: /src/libxslt/libxslt/imports.c:233,1
    - Dst: xsltLoadStyleDocument
      Src: /src/libxslt/libxslt/imports.c:236,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:238,1
    - Dst: IS_XSLT_ELEM_FAST
      Src: /src/libxslt/libxslt/imports.c:243,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/imports.c:246,1
    - Dst: xsltParseStylesheetProcess
      Src: /src/libxslt/libxslt/imports.c:265,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:278,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:280,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/imports.c:282,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 57
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 204
    functionDepth: 14
    functionLinenumber: 204
    functionLinenumberEnd: 285
    functionName: xsltParseStylesheetInclude
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 2
    functionsReached:
    - xmlNodeGetBase
    - xmlFree
    - xsltCheckCycle
    - xmlBuildURI
    - xsltTransformError
    - xsltParseStylesheetProcess
    - IS_XSLT_ELEM_FAST
    - xmlGetNsProp
    - xsltLoadStyleDocument
    linkageType: ''
    returnType: int
    signature: int xsltParseStylesheetInclude(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 310
    functionName: xsltNextImport
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: xsltStylesheetPtr
    signature: xsltStylesheetPtr xsltNextImport(xsltStylesheetPtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/imports.c:331,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 334
    functionName: xsltNeedElemSpaceHandling
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 1
    functionsReached:
    - xsltNextImport
    linkageType: ''
    returnType: int
    signature: int xsltNeedElemSpaceHandling(xsltTransformContextPtr ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/imports.c:359,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/imports.c:362,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/imports.c:367,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/imports.c:370,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/imports.c:372,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/imports.c:380,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 348
    functionDepth: 1
    functionLinenumber: 348
    functionLinenumberEnd: 383
    functionName: xsltFindElemSpaceHandling
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup2
    - xmlStrEqual
    - xsltNextImport
    linkageType: ''
    returnType: int
    signature: int xsltFindElemSpaceHandling(xsltTransformContextPtr ctxt, xmlNodePtr
      node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/imports.c:414,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/imports.c:419,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - name
    - nameURI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 422
    functionName: xsltFindTemplate
    functionSourceFile: /src/libxslt/libxslt/imports.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup2
    - xsltNextImport
    linkageType: ''
    returnType: xsltTemplatePtr
    signature: "xsltTemplatePtr xsltFindTemplate(xsltTransformContextPtr ctxt, const
      xmlChar *name,\n\t         const xmlChar *nameURI)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: stat
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: stat(x,y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/security.c:76,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/security.c:78,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:80,1
    - Dst: memset
      Src: /src/libxslt/libxslt/security.c:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 72
    functionDepth: 3
    functionLinenumber: 72
    functionLinenumberEnd: 86
    functionName: xsltNewSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xsltInitGlobals
    - memset
    linkageType: ''
    returnType: xsltSecurityPrefsPtr
    signature: xsltSecurityPrefsPtr xsltNewSecurityPrefs(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/security.c:98,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sec
    argTypes:
    - xsltSecurityPrefsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: xsltFreeSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 2
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeSecurityPrefs(xsltSecurityPrefsPtr sec)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/security.c:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - sec
    - option
    - func
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltSecurityOption
    - xsltSecurityCheck
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 130
    functionName: xsltSetSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 1
    functionsReached:
    - xsltInitGlobals
    linkageType: ''
    returnType: int
    signature: "int xsltSetSecurityPrefs(xsltSecurityPrefsPtr sec, xsltSecurityOption
      option,\n                     xsltSecurityCheck func)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - sec
    - option
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltSecurityOption
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 158
    functionName: xsltGetSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xsltSecurityCheck
    signature: xsltSecurityCheck xsltGetSecurityPrefs(xsltSecurityPrefsPtr sec, xsltSecurityOption
      option)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sec
    argTypes:
    - xsltSecurityPrefsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 170
    functionName: xsltSetDefaultSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetDefaultSecurityPrefs(xsltSecurityPrefsPtr sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: xsltGetDefaultSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xsltSecurityPrefsPtr
    signature: xsltSecurityPrefsPtr xsltGetDefaultSecurityPrefs(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - sec
    - ctxt
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 200
    functionName: xsltSetCtxtSecurityPrefs
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltSetCtxtSecurityPrefs(xsltSecurityPrefsPtr sec,\n\t                 xsltTransformContextPtr
      ctxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 218
    functionName: xsltSecurityAllow
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltSecurityAllow(xsltSecurityPrefsPtr sec ATTRIBUTE_UNUSED,\n\t
      \         xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t  const char *value
      ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 235
    functionName: xsltSecurityForbid
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltSecurityForbid(xsltSecurityPrefsPtr sec ATTRIBUTE_UNUSED,\n\t
      \         xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t  const char *value
      ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GetFileAttributesA
      Src: /src/libxslt/libxslt/security.c:269,1
    - Dst: stat
      Src: /src/libxslt/libxslt/security.c:277,1
    - Dst: S_ISDIR
      Src: /src/libxslt/libxslt/security.c:281,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 287
    functionName: xsltCheckFilename
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 0
    functionsReached:
    - stat
    - S_ISDIR
    - GetFileAttributesA
    linkageType: ''
    returnType: int
    signature: int xsltCheckFilename (const char *path)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:298,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:300,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:302,1
    - Dst: xmlParserGetDirectory
      Src: /src/libxslt/libxslt/security.c:308,1
    - Dst: xsltCheckFilename
      Src: /src/libxslt/libxslt/security.c:311,1
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:316,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:319,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:321,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/security.c:324,1
    - Dst: xsltCheckWritePath
      Src: /src/libxslt/libxslt/security.c:328,1
    - Dst: mkdir
      Src: /src/libxslt/libxslt/security.c:330,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/security.c:332,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - sec
    - ctxt
    - path
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 289
    functionDepth: 3
    functionLinenumber: 289
    functionLinenumberEnd: 338
    functionName: xsltCheckWritePath
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - mkdir
    - xsltTransformError
    - check
    - xmlParserGetDirectory
    - xsltCheckFilename
    - xsltCheckWritePath
    - xsltGetSecurityPrefs
    linkageType: ''
    returnType: int
    signature: "int xsltCheckWritePath(xsltSecurityPrefsPtr sec,\n\t\t   xsltTransformContextPtr
      ctxt,\n\t\t   const char *path)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseURI
      Src: /src/libxslt/libxslt/security.c:358,1
    - Dst: xmlCreateURI
      Src: /src/libxslt/libxslt/security.c:360,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:362,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/security.c:366,1
    - Dst: xsltCheckWritePath
      Src: /src/libxslt/libxslt/security.c:374,1
    - Dst: xsltCheckWritePath
      Src: /src/libxslt/libxslt/security.c:381,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:385,1
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:392,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:394,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:396,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:398,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:403,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - sec
    - ctxt
    - URL
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 351
    functionDepth: 4
    functionLinenumber: 351
    functionLinenumberEnd: 405
    functionName: xsltCheckWrite
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xsltTransformError
    - check
    - xmlFreeURI
    - xsltCheckWritePath
    - xmlCreateURI
    - xsltGetSecurityPrefs
    - xmlParseURI
    linkageType: ''
    returnType: int
    signature: "int xsltCheckWrite(xsltSecurityPrefsPtr sec,\n\t       xsltTransformContextPtr
      ctxt, const xmlChar *URL)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrstr
      Src: /src/libxslt/libxslt/security.c:425,1
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:426,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:428,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:430,1
    - Dst: xmlParseURI
      Src: /src/libxslt/libxslt/security.c:438,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:440,1
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:451,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:453,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:455,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:457,1
    - Dst: xsltGetSecurityPrefs
      Src: /src/libxslt/libxslt/security.c:465,1
    - Dst: check
      Src: /src/libxslt/libxslt/security.c:467,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/security.c:469,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:471,1
    - Dst: xmlFreeURI
      Src: /src/libxslt/libxslt/security.c:476,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 3
    argNames:
    - sec
    - ctxt
    - URL
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 418
    functionDepth: 3
    functionLinenumber: 418
    functionLinenumberEnd: 478
    functionName: xsltCheckRead
    functionSourceFile: /src/libxslt/libxslt/security.c
    functionUses: 2
    functionsReached:
    - xsltTransformError
    - check
    - xmlFreeURI
    - xmlStrstr
    - xsltGetSecurityPrefs
    - xmlParseURI
    linkageType: ''
    returnType: int
    signature: "int xsltCheckRead(xsltSecurityPrefsPtr sec,\n\t      xsltTransformContextPtr
      ctxt, const xmlChar *URL)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/attrvt.c:72,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:74,1
    - Dst: memset
      Src: /src/libxslt/libxslt/attrvt.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 67
    functionDepth: 3
    functionLinenumber: 67
    functionLinenumberEnd: 92
    functionName: xsltNewAttrVT
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltAttrVTPtr
    signature: xsltAttrVTPtr xsltNewAttrVT(xsltStylesheetPtr style)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:109,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/attrvt.c:111,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/attrvt.c:114,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:117,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:120,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:121,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - avt
    argTypes:
    - xsltAttrVTPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 122
    functionName: xsltFreeAttrVT
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeAttrVT(xsltAttrVTPtr avt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeAttrVT
      Src: /src/libxslt/libxslt/attrvt.c:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - avt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 139
    functionName: xsltFreeAVTList
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 1
    functionsReached:
    - xsltFreeAttrVT
    linkageType: ''
    returnType: void
    signature: void xsltFreeAVTList(void *avt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/attrvt.c:157,1
    - Dst: memset
      Src: /src/libxslt/libxslt/attrvt.c:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - avt
    - val
    argTypes:
    - xsltAttrVTPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 165
    functionName: xsltSetAttrVTsegment
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - memset
    linkageType: ''
    returnType: xsltAttrVTPtr
    signature: xsltAttrVTPtr xsltSetAttrVTsegment(xsltAttrVTPtr avt, void *val)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:190,1
    - Dst: xmlStrchr
      Src: /src/libxslt/libxslt/attrvt.c:197,1
    - Dst: xmlStrchr
      Src: /src/libxslt/libxslt/attrvt.c:198,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attrvt.c:201,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attrvt.c:206,1
    - Dst: xsltNewAttrVT
      Src: /src/libxslt/libxslt/attrvt.c:214,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/attrvt.c:219,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/attrvt.c:231,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/attrvt.c:237,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/attrvt.c:243,1
    - Dst: xsltSetAttrVTsegment
      Src: /src/libxslt/libxslt/attrvt.c:247,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:267,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/attrvt.c:274,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/attrvt.c:282,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:284,1
    - Dst: xsltSetAttrVTsegment
      Src: /src/libxslt/libxslt/attrvt.c:293,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:294,1
    - Dst: xsltSetAttrVTsegment
      Src: /src/libxslt/libxslt/attrvt.c:300,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:301,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:307,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/attrvt.c:316,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:321,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/attrvt.c:330,1
    - Dst: xsltSetAttrVTsegment
      Src: /src/libxslt/libxslt/attrvt.c:334,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attrvt.c:342,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:357,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:359,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/attrvt.c:361,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 147
    argCount: 2
    argNames:
    - style
    - attr
    argTypes:
    - xsltStylesheetPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 176
    functionDepth: 4
    functionLinenumber: 176
    functionLinenumberEnd: 362
    functionName: xsltCompileAttr
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 2
    functionsReached:
    - xsltXPathCompile
    - xsltGenericDebug
    - xmlFree
    - xmlXPathFreeCompExpr
    - xsltTransformError
    - xmlStrndup
    - xsltSetAttrVTsegment
    - xmlGetNsList
    - xmlStrncat
    - xsltNewAttrVT
    - xmlStrchr
    linkageType: ''
    returnType: void
    signature: void xsltCompileAttr(xsltStylesheetPtr style, xmlAttrPtr attr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/attrvt.c:389,1
    - Dst: xsltEvalXPathStringNs
      Src: /src/libxslt/libxslt/attrvt.c:392,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/attrvt.c:395,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attrvt.c:396,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - ctxt
    - avt
    - node
    argTypes:
    - xsltTransformContextPtr
    - void*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 376
    functionDepth: 4
    functionLinenumber: 376
    functionLinenumberEnd: 405
    functionName: xsltEvalAVT
    functionSourceFile: /src/libxslt/libxslt/attrvt.c
    functionUses: 2
    functionsReached:
    - xmlStrcat
    - xmlFree
    - xsltEvalXPathStringNs
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltEvalAVT(xsltTransformContextPtr ctxt, void *avt, xmlNodePtr node)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:59,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:61,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:63,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:66,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:69,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:71,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:73,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:79,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:83,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:86,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:88,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:91,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:94,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxslt/libxslt/extra.c:99,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:102,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extra.c:105,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 110
    functionName: xsltDebug
    functionSourceFile: /src/libxslt/libxslt/extra.c
    functionUses: 2
    functionsReached:
    - xsltGenericError
    - xmlXPathDebugDumpObject
    linkageType: ''
    returnType: void
    signature: "void xsltDebug(xsltTransformContextPtr ctxt, xmlNodePtr node ATTRIBUTE_UNUSED,\n
      \         xmlNodePtr inst ATTRIBUTE_UNUSED,\n          xsltElemPreCompPtr comp
      ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extra.c:131,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extra.c:131,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extra.c:139,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extra.c:139,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 147
    functionName: xsltFunctionNodeSet
    functionSourceFile: /src/libxslt/libxslt/extra.c
    functionUses: 1
    functionsReached:
    - xsltTransformError
    - xsltXPathGetTransformContext
    linkageType: ''
    returnType: void
    signature: void xsltFunctionNodeSet(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterAllExtras
      Src: /src/libxslt/libxslt/extra.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: xsltRegisterExtras
    functionSourceFile: /src/libxslt/libxslt/extra.c
    functionUses: 0
    functionsReached:
    - xsltRegisterAllExtras
    linkageType: ''
    returnType: void
    signature: void xsltRegisterExtras(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libxslt/extra.c:168,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libxslt/extra.c:171,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libxslt/extra.c:174,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extra.c:177,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extra.c:181,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extra.c:185,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extra.c:189,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extra.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 197
    functionName: xsltRegisterAllExtras
    functionSourceFile: /src/libxslt/libxslt/extra.c
    functionUses: 2
    functionsReached:
    - xsltRegisterExtModuleElement
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: void xsltRegisterAllExtras (void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/namespaces.c:49,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:51,1
    - Dst: memset
      Src: /src/libxslt/libxslt/namespaces.c:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - cctxt
    argTypes:
    - xsltCompilerCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 64
    functionName: xsltNewNsAlias
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltNsAliasPtr
    signature: xsltNsAliasPtr xsltNewNsAlias(xsltCompilerCtxtPtr cctxt)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/namespaces.c:110,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:112,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:116,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:117,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:119,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:121,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/namespaces.c:131,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:133,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:137,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:138,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:140,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:143,1
    - Dst: xsltNewNsAlias
      Src: /src/libxslt/libxslt/namespaces.c:187,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/namespaces.c:187,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/namespaces.c:192,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/namespaces.c:203,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:205,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/namespaces.c:209,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:211,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:216,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:217,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:223,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:226,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:239,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:240,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:246,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:249,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/namespaces.c:278,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:280,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/namespaces.c:284,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/namespaces.c:291,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/namespaces.c:293,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 101
    argCount: 2
    argNames:
    - style
    - node
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 74
    functionDepth: 4
    functionLinenumber: 74
    functionLinenumberEnd: 294
    functionName: xsltNamespaceAlias
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 2
    functionsReached:
    - XSLT_CCTXT
    - xmlStrEqual
    - xmlFree
    - xsltNewNsAlias
    - xsltTransformError
    - xmlHashAddEntry
    - xmlSearchNs
    - xmlGetNsProp
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: void xsltNamespaceAlias(xsltStylesheetPtr style, xmlNodePtr node)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:366,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:394,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:406,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:420,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:430,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:434,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:435,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxslt/libxslt/namespaces.c:455,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:477,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:479,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:480,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:488,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:490,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:506,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxslt/libxslt/namespaces.c:514,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxslt/libxslt/namespaces.c:540,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:548,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:555,1
    - Dst: snprintf
      Src: /src/libxslt/libxslt/namespaces.c:574,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:575,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/namespaces.c:577,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:584,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 113
    argCount: 5
    argNames:
    - ctxt
    - invocNode
    - nsName
    - nsPrefix
    - target
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 318
    functionDepth: 3
    functionLinenumber: 318
    functionLinenumberEnd: 589
    functionName: xsltGetSpecialNamespace
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 7
    functionsReached:
    - xmlStrEqual
    - xsltTransformError
    - xmlSearchNs
    - xmlSearchNsByHref
    - xmlNewNs
    - snprintf
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltGetSpecialNamespace(xsltTransformContextPtr ctxt, xmlNodePtr
      invocNode,\n\t\tconst xmlChar *nsName, const xmlChar *nsPrefix,\n\t\txmlNodePtr
      target)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/namespaces.c:630,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/namespaces.c:643,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/namespaces.c:647,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/namespaces.c:652,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:660,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/namespaces.c:669,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 4
    argNames:
    - ctxt
    - cur
    - ns
    - out
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 615
    functionDepth: 4
    functionLinenumber: 615
    functionLinenumberEnd: 672
    functionName: xsltGetNamespace
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 4
    functionsReached:
    - xmlHashLookup
    - xmlSearchNs
    - xsltNextImport
    - xsltGetSpecialNamespace
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltGetNamespace(xsltTransformContextPtr ctxt, xmlNodePtr
      cur, xmlNsPtr ns,\n\t         xmlNodePtr out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetNamespace
      Src: /src/libxslt/libxslt/namespaces.c:692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - cur
    - ns
    - out
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 688
    functionDepth: 5
    functionLinenumber: 688
    functionLinenumberEnd: 693
    functionName: xsltGetPlainNamespace
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 0
    functionsReached:
    - xsltGetNamespace
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltGetPlainNamespace(xsltTransformContextPtr ctxt, xmlNodePtr
      cur,\n                      xmlNsPtr ns, xmlNodePtr out)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:743,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:744,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/namespaces.c:748,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:749,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:759,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/namespaces.c:770,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/namespaces.c:773,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:780,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:782,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 3
    argNames:
    - ctxt
    - node
    - cur
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 795
    functionName: xsltCopyNamespaceList
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 2
    functionsReached:
    - xmlHashLookup
    - xmlNewNs
    - xmlStrEqual
    - xmlSearchNs
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltCopyNamespaceList(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n\t              xmlNsPtr cur)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:818,1
    - Dst: xmlNewNs
      Src: /src/libxslt/libxslt/namespaces.c:820,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - elem
    - ns
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 821
    functionName: xsltCopyNamespace
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 0
    functionsReached:
    - xmlNewNs
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xsltCopyNamespace(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t
      \ xmlNodePtr elem, xmlNsPtr ns)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/namespaces.c:833,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 835
    functionName: xsltFreeNamespaceAliasHashes
    functionSourceFile: /src/libxslt/libxslt/namespaces.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeNamespaceAliasHashes(xsltStylesheetPtr style)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxslt/libxslt/documents.c:69,1
    - Dst: xmlDictFree
      Src: /src/libxslt/libxslt/documents.c:73,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/documents.c:78,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/documents.c:80,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxslt/libxslt/documents.c:84,1
    - Dst: xmlLoadExternalEntity
      Src: /src/libxslt/libxslt/documents.c:85,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxslt/libxslt/documents.c:87,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxslt/libxslt/documents.c:92,1
    - Dst: inputPush
      Src: /src/libxslt/libxslt/documents.c:94,1
    - Dst: xmlParseDocument
      Src: /src/libxslt/libxslt/documents.c:96,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/documents.c:103,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxslt/libxslt/documents.c:108,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 5
    argNames:
    - URI
    - dict
    - options
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlChar*
    - xmlDictPtr
    - int
    - void*
    - xsltLoadType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 111
    functionName: xsltDocDefaultLoaderFunc
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xsltGenericDebug
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlDictReference
    - xmlCtxtParseDocument
    - xmlLoadExternalEntity
    - xmlFreeDoc
    - xmlParseDocument
    - xmlFreeParserCtxt
    - inputPush
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xsltDocDefaultLoaderFunc(const xmlChar * URI, xmlDictPtr
      dict, int options,\n                         void *ctxt ATTRIBUTE_UNUSED,\n\t\t\t
      xsltLoadType type ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - xsltDocLoaderFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 130
    functionName: xsltSetLoaderFunc
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xsltSetLoaderFunc(xsltDocLoaderFunc f)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/documents.c:151,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/documents.c:153,1
    - Dst: memset
      Src: /src/libxslt/libxslt/documents.c:157,1
    - Dst: XSLT_IS_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/documents.c:160,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 175
    functionName: xsltNewDocument
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - XSLT_IS_RES_TREE_FRAG
    - memset
    linkageType: ''
    returnType: xsltDocumentPtr
    signature: xsltDocumentPtr xsltNewDocument(xsltTransformContextPtr ctxt, xmlDocPtr
      doc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/documents.c:190,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/documents.c:192,1
    - Dst: memset
      Src: /src/libxslt/libxslt/documents.c:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - style
    - doc
    argTypes:
    - xsltStylesheetPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 203
    functionName: xsltNewStyleDocument
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltDocumentPtr
    signature: xsltDocumentPtr xsltNewStyleDocument(xsltStylesheetPtr style, xmlDocPtr
      doc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_HAS_INTERNAL_NSMAP
      Src: /src/libxslt/libxslt/documents.c:224,1
    - Dst: XSLT_GET_INTERNAL_NSMAP
      Src: /src/libxslt/libxslt/documents.c:225,1
    - Dst: xsltRestoreDocumentNamespaces
      Src: /src/libxslt/libxslt/documents.c:239,1
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/documents.c:241,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/documents.c:243,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/documents.c:244,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 246
    functionName: xsltFreeStyleDocuments
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - XSLT_GET_INTERNAL_NSMAP
    - XSLT_HAS_INTERNAL_NSMAP
    - xsltRestoreDocumentNamespaces
    - xsltFreeDocumentKeys
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xsltFreeStyleDocuments(xsltStylesheetPtr style)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/documents.c:262,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/documents.c:264,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/documents.c:265,1
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/documents.c:271,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/documents.c:273,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/documents.c:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 276
    functionName: xsltFreeDocuments
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 1
    functionsReached:
    - xmlFreeDoc
    - xsltFreeDocumentKeys
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeDocuments(xsltTransformContextPtr ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltCheckRead
      Src: /src/libxslt/libxslt/documents.c:302,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/documents.c:305,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/documents.c:318,1
    - Dst: xsltDocDefaultLoader
      Src: /src/libxslt/libxslt/documents.c:323,1
    - Dst: xmlXIncludeProcessFlags
      Src: /src/libxslt/libxslt/documents.c:332,1
    - Dst: xmlXIncludeProcess
      Src: /src/libxslt/libxslt/documents.c:334,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/documents.c:337,1
    - Dst: xsltNeedElemSpaceHandling
      Src: /src/libxslt/libxslt/documents.c:345,1
    - Dst: xsltApplyStripSpaces
      Src: /src/libxslt/libxslt/documents.c:346,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/documents.c:346,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxslt/libxslt/documents.c:348,1
    - Dst: xsltNewDocument
      Src: /src/libxslt/libxslt/documents.c:350,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 288
    functionDepth: 4
    functionLinenumber: 288
    functionLinenumberEnd: 352
    functionName: xsltLoadDocument
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeProcess
    - xmlStrEqual
    - xsltCheckRead
    - xsltApplyStripSpaces
    - xsltTransformError
    - xmlXPathOrderDocElems
    - xsltNewDocument
    - xmlXIncludeProcessFlags
    - xsltDocDefaultLoader
    - xmlDocGetRootElement
    - xsltNeedElemSpaceHandling
    linkageType: ''
    returnType: xsltDocumentPtr
    signature: xsltDocumentPtr xsltLoadDocument(xsltTransformContextPtr ctxt, const
      xmlChar *URI)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltGetDefaultSecurityPrefs
      Src: /src/libxslt/libxslt/documents.c:375,1
    - Dst: xsltCheckRead
      Src: /src/libxslt/libxslt/documents.c:379,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/documents.c:382,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/documents.c:395,1
    - Dst: xsltDocDefaultLoader
      Src: /src/libxslt/libxslt/documents.c:400,1
    - Dst: xsltNewStyleDocument
      Src: /src/libxslt/libxslt/documents.c:405,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/documents.c:407,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 363
    functionDepth: 4
    functionLinenumber: 363
    functionLinenumberEnd: 409
    functionName: xsltLoadStyleDocument
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xsltCheckRead
    - xsltTransformError
    - xsltNewStyleDocument
    - xsltDocDefaultLoader
    - xsltGetDefaultSecurityPrefs
    - xmlFreeDoc
    linkageType: ''
    returnType: xsltDocumentPtr
    signature: xsltDocumentPtr xsltLoadStyleDocument(xsltStylesheetPtr style, const
      xmlChar *URI)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 441
    functionName: xsltFindDocument
    functionSourceFile: /src/libxslt/libxslt/documents.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xsltDocumentPtr
    signature: xsltDocumentPtr xsltFindDocument (xsltTransformContextPtr ctxt, xmlDocPtr
      doc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: IS_XSLT_ELEM
    functionSourceFile: /src/libxslt/libxslt/xsltutils.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_ELEM(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - n
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: IS_XSLT_NAME
    functionSourceFile: /src/libxslt/libxslt/xsltutils.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_NAME(n, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 78
    functionName: IS_XSLT_REAL_NODE
    functionSourceFile: /src/libxslt/libxslt/xsltutils.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_REAL_NODE(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctxt
    - ','
    - code
    - ','
    - call
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionName: XSLT_TRACE
    functionSourceFile: /src/libxslt/libxslt/xsltutils.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_TRACE(ctxt,code,call)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - out
    - val
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 100
    functionName: xsltCopyCharMultiByte
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltCopyCharMultiByte(xmlChar *out, int val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:112,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/libxslt/numbers.c:121,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - utf1
    - utf2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: xsltUTF8Charcmp
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlStrncmp
    - xmlUTF8Strsize
    linkageType: ''
    returnType: int
    signature: int xsltUTF8Charcmp(xmlChar *utf1, xmlChar *utf2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBaseCharQ
      Src: /src/libxslt/libxslt/numbers.c:126,1
    - Dst: xmlIsIdeographicQ
      Src: /src/libxslt/libxslt/numbers.c:126,1
    - Dst: xmlIsDigitQ
      Src: /src/libxslt/libxslt/numbers.c:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: xsltIsLetterDigit
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlIsBaseCharQ
    - xmlIsDigitQ
    - xmlIsIdeographicQ
    linkageType: ''
    returnType: int
    signature: int xsltIsLetterDigit(int val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - self
    - ','
    - letter
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionName: IS_SPECIAL
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_SPECIAL(self,letter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: IS_DIGIT_ZERO
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_DIGIT_ZERO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: IS_DIGIT_ONE
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_DIGIT_ONE(x)
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 1
    argNames:
    - ch
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 164
    functionName: xsltIsDigitZero
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltIsDigitZero(int ch)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/libxslt/libxslt/numbers.c:195,1
    - Dst: xsltCopyCharMultiByte
      Src: /src/libxslt/libxslt/numbers.c:205,1
    - Dst: fmod
      Src: /src/libxslt/libxslt/numbers.c:208,1
    - Dst: xsltCopyCharMultiByte
      Src: /src/libxslt/libxslt/numbers.c:223,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/numbers.c:229,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/numbers.c:235,1
    - Dst: xmlBufferCat
      Src: /src/libxslt/libxslt/numbers.c:237,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 37
    argCount: 7
    argNames:
    - buffer
    - number
    - digit_zero
    - width
    - digitsPerGroup
    - groupingCharacter
    - groupingCharacterLen
    argTypes:
    - xmlBufferPtr
    - double
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 238
    functionName: xsltNumberFormatDecimal
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - fmod
    - xsltCopyCharMultiByte
    - xmlBufferCat
    - memcpy
    - xsltGenericError
    - fabs
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormatDecimal(xmlBufferPtr buffer,\n\t\t\tdouble number,\n\t\t\tint
      digit_zero,\n\t\t\tint width,\n\t\t\tint digitsPerGroup,\n\t\t\tint groupingCharacter,\n\t\t\tint
      groupingCharacterLen)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:265,1
    - Dst: fmod
      Src: /src/libxslt/libxslt/numbers.c:279,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:284,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - data
    - buffer
    - number
    - is_upper
    argTypes:
    - xsltNumberDataPtr
    - xmlBufferPtr
    - double
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 240
    functionDepth: 2
    functionLinenumber: 240
    functionLinenumberEnd: 285
    functionName: xsltNumberFormatAlpha
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - fmod
    - xmlBufferCCat
    - xsltNumberFormatDecimal
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormatAlpha(xsltNumberDataPtr data,\n\t\t      xmlBufferPtr
      buffer,\n\t\t      double number,\n\t\t      int is_upper)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:298,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:309,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:313,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:317,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:321,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:325,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:329,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:333,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:337,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:341,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:345,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:349,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:353,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:357,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 57
    argCount: 4
    argNames:
    - data
    - buffer
    - number
    - is_upper
    argTypes:
    - xsltNumberDataPtr
    - xmlBufferPtr
    - double
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 287
    functionDepth: 2
    functionLinenumber: 287
    functionLinenumberEnd: 360
    functionName: xsltNumberFormatRoman
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlBufferCCat
    - xsltNumberFormatDecimal
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormatRoman(xsltNumberDataPtr data,\n\t\t      xmlBufferPtr
      buffer,\n\t\t      double number,\n\t\t      int is_upper)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xsltIsLetterDigit
      Src: /src/libxslt/libxslt/numbers.c:379,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:379,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/numbers.c:385,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:402,1
    - Dst: IS_DIGIT_ONE
      Src: /src/libxslt/libxslt/numbers.c:403,1
    - Dst: IS_DIGIT_ZERO
      Src: /src/libxslt/libxslt/numbers.c:404,1
    - Dst: IS_DIGIT_ZERO
      Src: /src/libxslt/libxslt/numbers.c:406,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:409,1
    - Dst: IS_DIGIT_ONE
      Src: /src/libxslt/libxslt/numbers.c:411,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:414,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:425,1
    - Dst: xsltIsLetterDigit
      Src: /src/libxslt/libxslt/numbers.c:445,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:447,1
    - Dst: xsltIsLetterDigit
      Src: /src/libxslt/libxslt/numbers.c:454,1
    - Dst: xsltGetUTF8CharZ
      Src: /src/libxslt/libxslt/numbers.c:458,1
    - Dst: xmlStrndup
      Src: /src/libxslt/libxslt/numbers.c:461,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 57
    argCount: 2
    argNames:
    - format
    - tokens
    argTypes:
    - xmlChar*
    - xsltFormatPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 463
    functionName: xsltNumberFormatTokenize
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xsltIsLetterDigit
    - IS_DIGIT_ONE
    - xsltGetUTF8CharZ
    - xmlStrndup
    - IS_DIGIT_ZERO
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormatTokenize(const xmlChar *format,\n\t\t\t xsltFormatPtr
      tokens)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCat
      Src: /src/libxslt/libxslt/numbers.c:480,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:486,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/numbers.c:497,1
    - Dst: xmlBufferCat
      Src: /src/libxslt/libxslt/numbers.c:526,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:528,1
    - Dst: xmlXPathIsInf
      Src: /src/libxslt/libxslt/numbers.c:531,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:533,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:536,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/numbers.c:539,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:540,1
    - Dst: xsltNumberFormatAlpha
      Src: /src/libxslt/libxslt/numbers.c:545,1
    - Dst: xsltNumberFormatAlpha
      Src: /src/libxslt/libxslt/numbers.c:548,1
    - Dst: xsltNumberFormatRoman
      Src: /src/libxslt/libxslt/numbers.c:551,1
    - Dst: xsltNumberFormatRoman
      Src: /src/libxslt/libxslt/numbers.c:554,1
    - Dst: IS_DIGIT_ZERO
      Src: /src/libxslt/libxslt/numbers.c:557,1
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:558,1
    - Dst: xmlBufferCat
      Src: /src/libxslt/libxslt/numbers.c:577,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 58
    argCount: 5
    argNames:
    - data
    - numbers
    - numbers_max
    - tokens
    - buffer
    argTypes:
    - xsltNumberDataPtr
    - double*
    - int
    - xsltFormatPtr
    - xmlBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 465
    functionDepth: 3
    functionLinenumber: 465
    functionLinenumberEnd: 579
    functionName: xsltNumberFormatInsertNumbers
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlBufferCCat
    - xmlXPathIsNaN
    - floor
    - xsltTransformError
    - IS_DIGIT_ZERO
    - xmlBufferCat
    - xsltNumberFormatDecimal
    - xmlXPathIsInf
    - xsltNumberFormatAlpha
    - xsltNumberFormatRoman
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormatInsertNumbers(xsltNumberDataPtr data,\n\t\t\t
      \     double *numbers,\n\t\t\t      int numbers_max,\n\t\t\t      xsltFormatPtr
      tokens,\n\t\t\t      xmlBufferPtr buffer)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTestCompMatchList
      Src: /src/libxslt/libxslt/numbers.c:588,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/numbers.c:608,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/numbers.c:614,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 4
    argNames:
    - context
    - node
    - countPat
    - cur
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltCompMatchPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 581
    functionDepth: 7
    functionLinenumber: 581
    functionLinenumberEnd: 616
    functionName: xsltTestCompMatchCount
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xsltTestCompMatchList
    linkageType: ''
    returnType: int
    signature: "int xsltTestCompMatchCount(xsltTransformContextPtr context,\n                       xmlNodePtr
      node,\n                       xsltCompMatchPtr countPat,\n                       xmlNodePtr
      cur)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTestCompMatchCount
      Src: /src/libxslt/libxslt/numbers.c:631,1
    - Dst: xsltTestCompMatchList
      Src: /src/libxslt/libxslt/numbers.c:634,1
    - Dst: LIBXML_DOCB_ENABLED
      Src: /src/libxslt/libxslt/numbers.c:640,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 27
    argCount: 5
    argNames:
    - context
    - node
    - countPat
    - fromPat
    - array
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltCompMatchPtr
    - xsltCompMatchPtr
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 618
    functionDepth: 8
    functionLinenumber: 618
    functionLinenumberEnd: 670
    functionName: xsltNumberFormatGetAnyLevel
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xsltTestCompMatchCount
    - LIBXML_DOCB_ENABLED
    - xsltTestCompMatchList
    linkageType: ''
    returnType: int
    signature: "int xsltNumberFormatGetAnyLevel(xsltTransformContextPtr context,\n\t\t\t
      \   xmlNodePtr node,\n\t\t\t    xsltCompMatchPtr countPat,\n\t\t\t    xsltCompMatchPtr
      fromPat,\n\t\t\t    double *array)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xsltTestCompMatchList
      Src: /src/libxslt/libxslt/numbers.c:690,1
    - Dst: xsltTestCompMatchCount
      Src: /src/libxslt/libxslt/numbers.c:693,1
    - Dst: xsltTestCompMatchCount
      Src: /src/libxslt/libxslt/numbers.c:701,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 28
    argCount: 6
    argNames:
    - context
    - node
    - countPat
    - fromPat
    - array
    - max
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xsltCompMatchPtr
    - xsltCompMatchPtr
    - double*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 672
    functionDepth: 8
    functionLinenumber: 672
    functionLinenumberEnd: 725
    functionName: xsltNumberFormatGetMultipleLevel
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xsltTestCompMatchCount
    - xsltTestCompMatchList
    linkageType: ''
    returnType: int
    signature: "int xsltNumberFormatGetMultipleLevel(xsltTransformContextPtr context,\n\t\t\t\t
      xmlNodePtr node,\n\t\t\t\t xsltCompMatchPtr countPat,\n\t\t\t\t xsltCompMatchPtr
      fromPat,\n\t\t\t\t double *array,\n\t\t\t\t int max)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxslt/libxslt/numbers.c:738,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:742,1
    - Dst: xmlBufferCat
      Src: /src/libxslt/libxslt/numbers.c:743,1
    - Dst: xmlBufferCCat
      Src: /src/libxslt/libxslt/numbers.c:744,1
    - Dst: xmlXPathEvalExpression
      Src: /src/libxslt/libxslt/numbers.c:746,1
    - Dst: xmlBufferContent
      Src: /src/libxslt/libxslt/numbers.c:746,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/numbers.c:751,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libxslt/numbers.c:753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - context
    - node
    - value
    - number
    argTypes:
    - xmlXPathContextPtr
    - xmlNodePtr
    - xmlChar*
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 758
    functionName: xsltNumberFormatGetValue
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlBufferContent
    - xmlBufferCCat
    - xmlXPathEvalExpression
    - xmlBufferCreate
    - xmlBufferCat
    - xmlXPathFreeObject
    linkageType: ''
    returnType: int
    signature: "int xsltNumberFormatGetValue(xmlXPathContextPtr context,\n\t\t\t xmlNodePtr
      node,\n\t\t\t const xmlChar *value,\n\t\t\t double *number)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xsltNumberFormatTokenize
      Src: /src/libxslt/libxslt/numbers.c:779,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/numbers.c:787,1
    - Dst: xsltNumberFormatTokenize
      Src: /src/libxslt/libxslt/numbers.c:792,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/numbers.c:793,1
    - Dst: xmlBufferCreate
      Src: /src/libxslt/libxslt/numbers.c:796,1
    - Dst: xsltNumberFormatGetValue
      Src: /src/libxslt/libxslt/numbers.c:804,1
    - Dst: xsltNumberFormatInsertNumbers
      Src: /src/libxslt/libxslt/numbers.c:809,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/numbers.c:818,1
    - Dst: xsltNumberFormatGetMultipleLevel
      Src: /src/libxslt/libxslt/numbers.c:819,1
    - Dst: xsltNumberFormatInsertNumbers
      Src: /src/libxslt/libxslt/numbers.c:826,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/numbers.c:832,1
    - Dst: xsltNumberFormatGetMultipleLevel
      Src: /src/libxslt/libxslt/numbers.c:835,1
    - Dst: xsltNumberFormatInsertNumbers
      Src: /src/libxslt/libxslt/numbers.c:842,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/numbers.c:848,1
    - Dst: xsltNumberFormatGetAnyLevel
      Src: /src/libxslt/libxslt/numbers.c:849,1
    - Dst: xsltNumberFormatInsertNumbers
      Src: /src/libxslt/libxslt/numbers.c:855,1
    - Dst: xsltCompMatchClearCache
      Src: /src/libxslt/libxslt/numbers.c:869,1
    - Dst: xsltCompMatchClearCache
      Src: /src/libxslt/libxslt/numbers.c:871,1
    - Dst: xsltCopyTextString
      Src: /src/libxslt/libxslt/numbers.c:874,1
    - Dst: xmlBufferContent
      Src: /src/libxslt/libxslt/numbers.c:874,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libxslt/numbers.c:876,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/numbers.c:880,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/numbers.c:882,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/numbers.c:885,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 58
    argCount: 3
    argNames:
    - ctxt
    - data
    - node
    argTypes:
    - xsltTransformContextPtr
    - xsltNumberDataPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 768
    functionDepth: 9
    functionLinenumber: 768
    functionLinenumberEnd: 887
    functionName: xsltNumberFormat
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 1
    functionsReached:
    - xmlBufferFree
    - xmlBufferContent
    - xsltNumberFormatGetValue
    - xmlStrEqual
    - xmlFree
    - xsltEvalAttrValueTemplate
    - xsltNumberFormatInsertNumbers
    - xsltCompMatchClearCache
    - xsltCopyTextString
    - xmlBufferCreate
    - xsltNumberFormatGetMultipleLevel
    - xsltNumberFormatGetAnyLevel
    - xsltNumberFormatTokenize
    linkageType: ''
    returnType: void
    signature: "void xsltNumberFormat(xsltTransformContextPtr ctxt,\n\t\t xsltNumberDataPtr
      data,\n\t\t xmlNodePtr node)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: IS_SPECIAL
      Src: /src/libxslt/libxslt/numbers.c:908,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:919,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:924,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:932,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 3
    argNames:
    - self
    - format
    - info
    argTypes:
    - xsltDecimalFormatPtr
    - xmlChar**
    - xsltFormatNumberInfoPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 889
    functionDepth: 2
    functionLinenumber: 889
    functionLinenumberEnd: 937
    functionName: xsltFormatNumberPreSuffix
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 0
    functionsReached:
    - xsltUTF8Charcmp
    - xmlUTF8Strsize
    - IS_SPECIAL
    linkageType: ''
    returnType: int
    signature: int xsltFormatNumberPreSuffix(xsltDecimalFormatPtr self, xmlChar **format,
      xsltFormatNumberInfoPtr info)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/numbers.c:1007,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/numbers.c:1008,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxslt/libxslt/numbers.c:1013,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/numbers.c:1015,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/numbers.c:1017,1
    - Dst: xsltFormatNumberPreSuffix
      Src: /src/libxslt/libxslt/numbers.c:1038,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/numbers.c:1051,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1053,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1054,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1061,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1069,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/libxslt/numbers.c:1074,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1079,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1085,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1094,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1104,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1106,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1115,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1121,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1123,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1129,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1135,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1141,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1147,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1150,1
    - Dst: xsltFormatNumberPreSuffix
      Src: /src/libxslt/libxslt/numbers.c:1172,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1175,1
    - Dst: xmlUTF8Strloc
      Src: /src/libxslt/libxslt/numbers.c:1189,1
    - Dst: xmlUTF8Strpos
      Src: /src/libxslt/libxslt/numbers.c:1196,1
    - Dst: xsltFormatNumberPreSuffix
      Src: /src/libxslt/libxslt/numbers.c:1206,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1214,1
    - Dst: xsltUTF8Charcmp
      Src: /src/libxslt/libxslt/numbers.c:1215,1
    - Dst: IS_SPECIAL
      Src: /src/libxslt/libxslt/numbers.c:1223,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1227,1
    - Dst: xsltFormatNumberPreSuffix
      Src: /src/libxslt/libxslt/numbers.c:1241,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/libxslt/numbers.c:1261,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/libxslt/numbers.c:1263,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/numbers.c:1277,1
    - Dst: xmlXPathIsInf
      Src: /src/libxslt/libxslt/numbers.c:1293,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/numbers.c:1296,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/numbers.c:1298,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/numbers.c:1302,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/numbers.c:1304,1
    - Dst: xmlBufferCreate
      Src: /src/libxslt/libxslt/numbers.c:1310,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1317,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1317,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1323,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1324,1
    - Dst: fabs
      Src: /src/libxslt/libxslt/numbers.c:1330,1
    - Dst: pow
      Src: /src/libxslt/libxslt/numbers.c:1342,1
    - Dst: fmod
      Src: /src/libxslt/libxslt/numbers.c:1344,1
    - Dst: xmlStrlen
      Src: /src/libxslt/libxslt/numbers.c:1351,1
    - Dst: xsltGetUTF8Char
      Src: /src/libxslt/libxslt/numbers.c:1352,1
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:1353,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1353,1
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:1358,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1358,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1371,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1373,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1373,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1379,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1380,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1383,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1385,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1386,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1387,1
    - Dst: fmod
      Src: /src/libxslt/libxslt/numbers.c:1389,1
    - Dst: xsltNumberFormatDecimal
      Src: /src/libxslt/libxslt/numbers.c:1393,1
    - Dst: floor
      Src: /src/libxslt/libxslt/numbers.c:1393,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxslt/libxslt/numbers.c:1402,1
    - Dst: xmlBufferAdd
      Src: /src/libxslt/libxslt/numbers.c:1403,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/numbers.c:1408,1
    - Dst: xmlBufferContent
      Src: /src/libxslt/libxslt/numbers.c:1408,1
    - Dst: xmlBufferFree
      Src: /src/libxslt/libxslt/numbers.c:1409,1
    CyclomaticComplexity: 111
    EdgeCount: 111
    ICount: 314
    argCount: 4
    argNames:
    - self
    - format
    - number
    - result
    argTypes:
    - xsltDecimalFormatPtr
    - xmlChar*
    - double
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 981
    functionDepth: 3
    functionLinenumber: 981
    functionLinenumberEnd: 1411
    functionName: xsltFormatNumberConversion
    functionSourceFile: /src/libxslt/libxslt/numbers.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlBufferFree
    - xmlBufferAdd
    - xsltFormatNumberPreSuffix
    - xmlUTF8Strpos
    - xsltGetUTF8Char
    - fabs
    - xmlUTF8Strloc
    - xmlBufferContent
    - xsltUTF8Charcmp
    - fmod
    - xsltNumberFormatDecimal
    - xmlStrcat
    - xmlXPathIsNaN
    - xmlStrlen
    - xsltTransformError
    - pow
    - xmlXPathIsInf
    - xmlUTF8Strsize
    - floor
    - xmlBufferCreate
    - IS_SPECIAL
    - xmlStrncmp
    linkageType: ''
    returnType: xmlXPathError
    signature: "xmlXPathError xsltFormatNumberConversion(xsltDecimalFormatPtr self,\n\t\t\t
      \  xmlChar *format,\n\t\t\t   double number,\n\t\t\t   xmlChar **result)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: XSLT_TCTXT_VARIABLE
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_TCTXT_VARIABLE(c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxslt/libxslt/variables.c:93,1
    - Dst: xmlDictReference
      Src: /src/libxslt/libxslt/variables.c:97,1
    - Dst: XSLT_MARK_RES_TREE_FRAG
      Src: /src/libxslt/libxslt/variables.c:98,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 102
    functionName: xsltCreateRVT
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 6
    functionsReached:
    - XSLT_MARK_RES_TREE_FRAG
    - xmlDictReference
    - xmlNewDoc
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xsltCreateRVT(xsltTransformContextPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TCTXT_VARIABLE
      Src: /src/libxslt/libxslt/variables.c:134,1
    - Dst: XSLT_TCTXT_VARIABLE
      Src: /src/libxslt/libxslt/variables.c:135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - RVT
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 144
    functionName: xsltRegisterTmpRVT
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - XSLT_TCTXT_VARIABLE
    linkageType: ''
    returnType: int
    signature: int xsltRegisterTmpRVT(xsltTransformContextPtr ctxt, xmlDocPtr RVT)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TCTXT_VARIABLE
      Src: /src/libxslt/libxslt/variables.c:175,1
    - Dst: XSLT_TCTXT_VARIABLE
      Src: /src/libxslt/libxslt/variables.c:177,1
    - Dst: XSLT_TCTXT_VARIABLE
      Src: /src/libxslt/libxslt/variables.c:178,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - RVT
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 191
    functionName: xsltRegisterLocalRVT
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 7
    functionsReached:
    - XSLT_TCTXT_VARIABLE
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterLocalRVT(xsltTransformContextPtr ctxt,\n\t\t     xmlDocPtr
      RVT)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/variables.c:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 215
    functionName: xsltExtensionInstructionResultFinalize
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: "int xsltExtensionInstructionResultFinalize(\n        xsltTransformContextPtr
      ctxt ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 239
    functionName: xsltExtensionInstructionResultRegister
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xsltExtensionInstructionResultRegister(\n        xsltTransformContextPtr
      ctxt ATTRIBUTE_UNUSED,\n\txmlXPathObjectPtr obj ATTRIBUTE_UNUSED)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:290,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:299,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:313,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:314,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/variables.c:324,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 44
    argCount: 3
    argNames:
    - ctxt
    - obj
    - val
    argTypes:
    - xsltTransformContextPtr
    - xmlXPathObjectPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 340
    functionName: xsltFlagRVTs
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 2
    functionsReached:
    - xsltTransformError
    - XSLT_TRACE
    - xsltGenericDebug
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: int xsltFlagRVTs(xsltTransformContextPtr ctxt, xmlXPathObjectPtr obj,
      int val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/variables.c:362,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:363,1
    - Dst: xmlFreeNodeList
      Src: /src/libxslt/libxslt/variables.c:370,1
    - Dst: xmlFreeIDTable
      Src: /src/libxslt/libxslt/variables.c:375,1
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/variables.c:398,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:399,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/variables.c:401,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - RVT
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 350
    functionDepth: 1
    functionLinenumber: 350
    functionLinenumberEnd: 402
    functionName: xsltReleaseRVT
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 2
    functionsReached:
    - xmlFreeNodeList
    - xmlFreeIDTable
    - xmlFree
    - xsltFreeDocumentKeys
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xsltReleaseRVT(xsltTransformContextPtr ctxt, xmlDocPtr RVT)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - RVT
    argTypes:
    - xsltTransformContextPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 428
    functionName: xsltRegisterPersistRVT
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltRegisterPersistRVT(xsltTransformContextPtr ctxt, xmlDocPtr
      RVT)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/variables.c:452,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:453,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/variables.c:455,1
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/variables.c:466,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:467,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/variables.c:469,1
    - Dst: xsltFreeDocumentKeys
      Src: /src/libxslt/libxslt/variables.c:480,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:481,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/libxslt/variables.c:483,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 487
    functionName: xsltFreeRVTs
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 2
    functionsReached:
    - xmlFreeDoc
    - xmlFree
    - xsltFreeDocumentKeys
    linkageType: ''
    returnType: void
    signature: void xsltFreeRVTs(xsltTransformContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/variables.c:519,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:521,1
    - Dst: memset
      Src: /src/libxslt/libxslt/variables.c:525,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 502
    functionDepth: 3
    functionLinenumber: 502
    functionLinenumberEnd: 528
    functionName: xsltNewStackElem
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltStackElemPtr
    signature: xsltStackElemPtr xsltNewStackElem(xsltTransformContextPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/variables.c:542,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:544,1
    - Dst: memset
      Src: /src/libxslt/libxslt/variables.c:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 538
    functionDepth: 3
    functionLinenumber: 538
    functionLinenumberEnd: 556
    functionName: xsltCopyStackElem
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - memset
    linkageType: ''
    returnType: xsltStackElemPtr
    signature: xsltStackElemPtr xsltCopyStackElem(xsltStackElemPtr elem)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/variables.c:569,1
    - Dst: xsltReleaseRVT
      Src: /src/libxslt/libxslt/variables.c:581,1
    - Dst: xsltRegisterLocalRVT
      Src: /src/libxslt/libxslt/variables.c:583,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/variables.c:586,1
    - Dst: memset
      Src: /src/libxslt/libxslt/variables.c:600,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/variables.c:610,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 564
    functionDepth: 2
    functionLinenumber: 564
    functionLinenumberEnd: 611
    functionName: xsltFreeStackElem
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlGenericError
    - xsltReleaseRVT
    - xsltRegisterLocalRVT
    - xmlXPathFreeObject
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeStackElem(xsltStackElemPtr elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeStackElem
      Src: /src/libxslt/libxslt/variables.c:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 613
    functionDepth: 3
    functionLinenumber: 613
    functionLinenumberEnd: 616
    functionName: xsltFreeStackElemEntry
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltFreeStackElem
    linkageType: ''
    returnType: void
    signature: void xsltFreeStackElemEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeStackElem
      Src: /src/libxslt/libxslt/variables.c:631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 625
    functionDepth: 3
    functionLinenumber: 625
    functionLinenumberEnd: 634
    functionName: xsltFreeStackElemList
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 7
    functionsReached:
    - xsltFreeStackElem
    linkageType: ''
    returnType: void
    signature: void xsltFreeStackElemList(xsltStackElemPtr elem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:673,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:675,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 3
    argNames:
    - ctxt
    - name
    - nameURI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 688
    functionName: xsltStackLookup
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    linkageType: ''
    returnType: xsltStackElemPtr
    signature: "xsltStackElemPtr xsltStackLookup(xsltTransformContextPtr ctxt, const
      xmlChar *name,\n\t        const xmlChar *nameURI)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltStackLookup
      Src: /src/libxslt/libxslt/variables.c:715,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - name
    - nameURI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 707
    functionDepth: 2
    functionLinenumber: 707
    functionLinenumberEnd: 726
    functionName: xsltCheckStackElem
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltStackLookup
    linkageType: ''
    returnType: int
    signature: "int xsltCheckStackElem(xsltTransformContextPtr ctxt, const xmlChar
      *name,\n\t           const xmlChar *nameURI)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxslt/libxslt/variables.c:753,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/variables.c:756,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - elem
    argTypes:
    - xsltTransformContextPtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 742
    functionDepth: 0
    functionLinenumber: 742
    functionLinenumberEnd: 769
    functionName: xsltAddStackElem
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlGenericError
    linkageType: ''
    returnType: int
    signature: int xsltAddStackElem(xsltTransformContextPtr ctxt, xsltStackElemPtr
      elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltAddStackElem
      Src: /src/libxslt/libxslt/variables.c:783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - elems
    argTypes:
    - xsltTransformContextPtr
    - xsltStackElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 780
    functionDepth: 1
    functionLinenumber: 780
    functionLinenumberEnd: 784
    functionName: xsltAddStackElemList
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltAddStackElem
    linkageType: ''
    returnType: int
    signature: int xsltAddStackElemList(xsltTransformContextPtr ctxt, xsltStackElemPtr
      elems)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1056,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1056,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/variables.c:1063,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libxslt/variables.c:1099,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/variables.c:1152,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/variables.c:1165,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1168,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1171,1
    - Dst: xsltFlagRVTs
      Src: /src/libxslt/libxslt/variables.c:1181,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxslt/libxslt/variables.c:1187,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libxslt/variables.c:1193,1
    - Dst: xsltCreateRVT
      Src: /src/libxslt/libxslt/variables.c:1201,1
    - Dst: xsltRegisterPersistRVT
      Src: /src/libxslt/libxslt/variables.c:1208,1
    - Dst: xsltApplyOneTemplate
      Src: /src/libxslt/libxslt/variables.c:1222,1
    - Dst: xmlXPathNewValueTree
      Src: /src/libxslt/libxslt/variables.c:1229,1
    - Dst: xmlXPathNewCString
      Src: /src/libxslt/libxslt/variables.c:1231,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxslt/libxslt/variables.c:1243,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 110
    argCount: 2
    argNames:
    - elem
    - ctxt
    argTypes:
    - xsltStackElemPtr
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1035
    functionDepth: 8
    functionLinenumber: 1035
    functionLinenumberEnd: 1260
    functionName: xsltEvalGlobalVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewValueTree
    - xmlXPathCompiledEval
    - xsltGenericDebug
    - xsltFlagRVTs
    - xmlXPathFreeCompExpr
    - xsltTransformError
    - xslHandleDebugger
    - xmlXPathNewCString
    - xmlXPathCtxtCompile
    - xsltCreateRVT
    - xmlXPathDebugDumpObject
    - XSLT_TRACE
    - xsltApplyOneTemplate
    - xsltRegisterPersistRVT
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xsltEvalGlobalVariable(xsltStackElemPtr elem, xsltTransformContextPtr
      ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1281,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1281,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1293,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1293,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/variables.c:1306,1
    - Dst: xsltCopyStackElem
      Src: /src/libxslt/libxslt/variables.c:1310,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/variables.c:1311,1
    - Dst: xmlGenericError
      Src: /src/libxslt/libxslt/variables.c:1313,1
    - Dst: xsltFreeStackElem
      Src: /src/libxslt/libxslt/variables.c:1315,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1330,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/variables.c:1338,1
    - Dst: xsltEvalGlobalVariable
      Src: /src/libxslt/libxslt/variables.c:1350,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1271
    functionDepth: 9
    functionLinenumber: 1271
    functionLinenumberEnd: 1357
    functionName: xsltEvalGlobalVariables
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup2
    - xsltEvalGlobalVariable
    - xsltGenericDebug
    - xsltNextImport
    - xsltTransformError
    - xmlGenericError
    - xsltFreeStackElem
    - xsltCopyStackElem
    - XSLT_TRACE
    - xmlHashAddEntry2
    linkageType: ''
    returnType: int
    signature: int xsltEvalGlobalVariables(xsltTransformContextPtr ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1389,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1392,1
    - Dst: xsltNewStackElem
      Src: /src/libxslt/libxslt/variables.c:1396,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1400,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1401,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1403,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/variables.c:1409,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/variables.c:1411,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1413,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/variables.c:1423,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 7
    argNames:
    - style
    - name
    - ns_uri
    - sel
    - tree
    - comp
    - value
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - xsltStylePreCompPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1374
    functionDepth: 4
    functionLinenumber: 1374
    functionLinenumberEnd: 1426
    functionName: xsltRegisterGlobalVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xmlStrEqual
    - xmlXPathNewString
    - xsltNewStackElem
    - xsltTransformError
    - xmlDictLookup
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterGlobalVariable(xsltStylesheetPtr style, const xmlChar
      *name,\n\t\t     const xmlChar *ns_uri, const xmlChar *sel,\n\t\t     xmlNodePtr
      tree, xsltStylePreCompPtr comp,\n\t\t     const xmlChar *value)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1486,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1486,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1500,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1503,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1504,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/variables.c:1508,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/variables.c:1512,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxslt/libxslt/variables.c:1512,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1515,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/variables.c:1527,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1529,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/variables.c:1533,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/variables.c:1543,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/variables.c:1544,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/variables.c:1549,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxslt/libxslt/variables.c:1560,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/variables.c:1598,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/variables.c:1610,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1613,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxslt/libxslt/variables.c:1635,1
    - Dst: xsltNewStackElem
      Src: /src/libxslt/libxslt/variables.c:1640,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1643,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:1645,1
    - Dst: xmlXPathNewString
      Src: /src/libxslt/libxslt/variables.c:1649,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/variables.c:1660,1
    - Dst: xsltFreeStackElem
      Src: /src/libxslt/libxslt/variables.c:1662,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1663,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 104
    argCount: 4
    argNames:
    - ctxt
    - name
    - value
    - eval
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1667
      start: 1459
    functionDepth: 4
    functionLinenumber: 1459
    functionLinenumberEnd: 1667
    functionName: xsltProcessUserParamInternal
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltNextImport
    - xsltNewStackElem
    - xmlHashCreate
    - xmlDictLookup
    - XSLT_TRACE
    - xmlHashLookup2
    - xsltSplitQName
    - xmlXPathFreeCompExpr
    - xmlXPathCtxtCompile
    - xmlXPathDebugDumpObject
    - xmlDocGetRootElement
    - xsltGenericDebug
    - xmlStrEqual
    - xsltTransformError
    - xsltFreeStackElem
    - xmlHashAddEntry2
    - xmlXPathCompiledEval
    - xmlXPathNewString
    - xmlSearchNs
    linkageType: ''
    returnType: int
    signature: "int xsltProcessUserParamInternal(xsltTransformContextPtr ctxt,\n\t\t
      \            const xmlChar * name,\n\t\t\t     const xmlChar * value,\n\t\t\t
      \    int eval)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltEvalOneUserParam
      Src: /src/libxslt/libxslt/variables.c:1695,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - params
    argTypes:
    - xsltTransformContextPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1684
    functionDepth: 1
    functionLinenumber: 1684
    functionLinenumberEnd: 1699
    functionName: xsltEvalUserParams
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xsltEvalOneUserParam
    linkageType: ''
    returnType: int
    signature: int xsltEvalUserParams(xsltTransformContextPtr ctxt, const char **params)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltQuoteOneUserParam
      Src: /src/libxslt/libxslt/variables.c:1725,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - params
    argTypes:
    - xsltTransformContextPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1714
    functionDepth: 1
    functionLinenumber: 1714
    functionLinenumberEnd: 1729
    functionName: xsltQuoteUserParams
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltQuoteOneUserParam
    linkageType: ''
    returnType: int
    signature: int xsltQuoteUserParams(xsltTransformContextPtr ctxt, const char **params)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltProcessUserParamInternal
      Src: /src/libxslt/libxslt/variables.c:1753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - name
    - value
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1749
    functionDepth: 5
    functionLinenumber: 1749
    functionLinenumberEnd: 1755
    functionName: xsltEvalOneUserParam
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xsltProcessUserParamInternal
    linkageType: ''
    returnType: int
    signature: "int xsltEvalOneUserParam(xsltTransformContextPtr ctxt,\n\t\t     const
      xmlChar * name,\n\t\t     const xmlChar * value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltProcessUserParamInternal
      Src: /src/libxslt/libxslt/variables.c:1774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - name
    - value
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1776
      start: 1770
    functionDepth: 5
    functionLinenumber: 1770
    functionLinenumberEnd: 1776
    functionName: xsltQuoteOneUserParam
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xsltProcessUserParamInternal
    linkageType: ''
    returnType: int
    signature: "int xsltQuoteOneUserParam(xsltTransformContextPtr ctxt,\n\t\t\t const
      xmlChar * name,\n\t\t\t const xmlChar * value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1802,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1802,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1805,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1805,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1807,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1807,1
    - Dst: xsltNewStackElem
      Src: /src/libxslt/libxslt/variables.c:1810,1
    - Dst: xsltEvalVariable
      Src: /src/libxslt/libxslt/variables.c:1818,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - castedComp
    - tree
    argTypes:
    - xsltTransformContextPtr
    - xsltStylePreCompPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1788
    functionDepth: 4
    functionLinenumber: 1788
    functionLinenumberEnd: 1822
    functionName: xsltBuildVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltNewStackElem
    - XSLT_TRACE
    - xsltGenericDebug
    - xsltEvalVariable
    linkageType: ''
    returnType: xsltStackElemPtr
    signature: "xsltStackElemPtr xsltBuildVariable(xsltTransformContextPtr ctxt,\n\t\t
      \ xsltStylePreCompPtr castedComp,\n\t\t  xmlNodePtr tree)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltCheckStackElem
      Src: /src/libxslt/libxslt/variables.c:1856,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1860,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1867,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1872,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1872,1
    - Dst: xsltBuildVariable
      Src: /src/libxslt/libxslt/variables.c:1879,1
    - Dst: xsltAddStackElem
      Src: /src/libxslt/libxslt/variables.c:1880,1
    - Dst: xsltFreeStackElem
      Src: /src/libxslt/libxslt/variables.c:1881,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 4
    argNames:
    - ctxt
    - castedComp
    - tree
    - isParam
    argTypes:
    - xsltTransformContextPtr
    - xsltStylePreCompPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1885
      start: 1835
    functionDepth: 5
    functionLinenumber: 1835
    functionLinenumberEnd: 1885
    functionName: xsltRegisterVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltTransformError
    - xsltCheckStackElem
    - xsltFreeStackElem
    - xsltAddStackElem
    - XSLT_TRACE
    - xsltBuildVariable
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterVariable(xsltTransformContextPtr ctxt,\n\t\t     xsltStylePreCompPtr
      castedComp,\n\t\t     xmlNodePtr tree, int isParam)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/variables.c:1910,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1913,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1913,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:1924,1
    - Dst: xsltEvalGlobalVariable
      Src: /src/libxslt/libxslt/variables.c:1928,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxslt/libxslt/variables.c:1931,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1898
    functionDepth: 9
    functionLinenumber: 1898
    functionLinenumberEnd: 1932
    functionName: xsltGlobalVariableLookup
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xsltEvalGlobalVariable
    - xsltGenericDebug
    - xsltTransformError
    - xmlXPathObjectCopy
    - XSLT_TRACE
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr xsltGlobalVariableLookup(xsltTransformContextPtr
      ctxt, const xmlChar *name,\n\t\t         const xmlChar *ns_uri)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltStackLookup
      Src: /src/libxslt/libxslt/variables.c:1953,1
    - Dst: xsltGlobalVariableLookup
      Src: /src/libxslt/libxslt/variables.c:1955,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1959,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1959,1
    - Dst: xsltEvalVariable
      Src: /src/libxslt/libxslt/variables.c:1962,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxslt/libxslt/variables.c:1966,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:1968,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:1968,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1972
      start: 1945
    functionDepth: 10
    functionLinenumber: 1945
    functionLinenumberEnd: 1972
    functionName: xsltVariableLookup
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltStackLookup
    - xsltEvalVariable
    - xsltGenericDebug
    - xmlXPathObjectCopy
    - xsltGlobalVariableLookup
    - XSLT_TRACE
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr xsltVariableLookup(xsltTransformContextPtr ctxt,
      const xmlChar *name,\n\t\t   const xmlChar *ns_uri)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2009,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2015,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2022,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2022,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2030,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2030,1
    - Dst: xsltBuildVariable
      Src: /src/libxslt/libxslt/variables.c:2036,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2039
      start: 1987
    functionDepth: 5
    functionLinenumber: 1987
    functionLinenumberEnd: 2039
    functionName: xsltParseStylesheetCallerParam
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 3
    functionsReached:
    - xsltTransformError
    - XSLT_TRACE
    - xsltGenericDebug
    - xsltBuildVariable
    linkageType: ''
    returnType: xsltStackElemPtr
    signature: xsltStackElemPtr xsltParseStylesheetCallerParam(xsltTransformContextPtr
      ctxt, xmlNodePtr inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/variables.c:2068,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2072,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2078,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/variables.c:2088,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/variables.c:2088,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/variables.c:2090,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2094,1
    - Dst: xsltRegisterGlobalVariable
      Src: /src/libxslt/libxslt/variables.c:2098,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2101
      start: 2049
    functionDepth: 10
    functionLinenumber: 2049
    functionLinenumberEnd: 2101
    functionName: xsltParseGlobalVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 2
    functionsReached:
    - xsltParseSequenceConstructor
    - XSLT_CCTXT
    - xsltParseTemplateContent
    - xsltGenericDebug
    - xsltRegisterGlobalVariable
    - xsltTransformError
    - xsltStylePreCompute
    linkageType: ''
    returnType: void
    signature: void xsltParseGlobalVariable(xsltStylesheetPtr style, xmlNodePtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/variables.c:2130,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2134,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2140,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/variables.c:2150,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/variables.c:2150,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/variables.c:2152,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2157,1
    - Dst: xsltRegisterGlobalVariable
      Src: /src/libxslt/libxslt/variables.c:2161,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2164
      start: 2112
    functionDepth: 10
    functionLinenumber: 2112
    functionLinenumberEnd: 2164
    functionName: xsltParseGlobalParam
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 2
    functionsReached:
    - xsltParseSequenceConstructor
    - XSLT_CCTXT
    - xsltParseTemplateContent
    - xsltGenericDebug
    - xsltRegisterGlobalVariable
    - xsltTransformError
    - xsltStylePreCompute
    linkageType: ''
    returnType: void
    signature: void xsltParseGlobalParam(xsltStylesheetPtr style, xmlNodePtr cur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2188,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2194,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2201,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2201,1
    - Dst: xsltRegisterVariable
      Src: /src/libxslt/libxslt/variables.c:2205,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctxt
    - inst
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2206
      start: 2174
    functionDepth: 6
    functionLinenumber: 2174
    functionLinenumberEnd: 2206
    functionName: xsltParseStylesheetVariable
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xsltTransformError
    - XSLT_TRACE
    - xsltGenericDebug
    - xsltRegisterVariable
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetVariable(xsltTransformContextPtr ctxt, xmlNodePtr
      inst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2230,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2237,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2237,1
    - Dst: xsltRegisterVariable
      Src: /src/libxslt/libxslt/variables.c:2241,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2242
      start: 2216
    functionDepth: 6
    functionLinenumber: 2216
    functionLinenumberEnd: 2242
    functionName: xsltParseStylesheetParam
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xsltTransformError
    - XSLT_TRACE
    - xsltGenericDebug
    - xsltRegisterVariable
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetParam(xsltTransformContextPtr ctxt, xmlNodePtr
      cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/variables.c:2254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 1
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: xsltFreeGlobalVariables
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeGlobalVariables(xsltTransformContextPtr ctxt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2278,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2278,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:2312,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/variables.c:2314,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2332,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2332,1
    - Dst: xsltEvalVariable
      Src: /src/libxslt/libxslt/variables.c:2335,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxslt/libxslt/variables.c:2339,1
    - Dst: xsltGlobalVariableLookup
      Src: /src/libxslt/libxslt/variables.c:2348,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2354,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2354,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2359,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/variables.c:2362,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/variables.c:2368,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/variables.c:2368,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2374
      start: 2268
    functionDepth: 10
    functionLinenumber: 2268
    functionLinenumberEnd: 2374
    functionName: xsltXPathVariableLookup
    functionSourceFile: /src/libxslt/libxslt/variables.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltEvalVariable
    - xsltTransformError
    - xmlXPathObjectCopy
    - xsltGlobalVariableLookup
    - xmlDictLookup
    - XSLT_TRACE
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr xsltXPathVariableLookup(void *ctxt, const xmlChar
      *name,\n\t                const xmlChar *ns_uri)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: TOUPPER
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOUPPER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: TOLOWER
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOLOWER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: ISALPHA
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISALPHA(c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxslt/libxslt/xsltlocale.c:79,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - languageTag
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 82
    functionName: xslt_locale_WINAPI
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: void
    signature: 'void *

      xslt_locale_WINAPI(const xmlChar *languageTag)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexLock
      Src: /src/libxslt/libxslt/xsltlocale.c:95,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:96,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxslt/libxslt/xsltlocale.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 100
    functionName: xsltFreeLocales
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached:
    - xmlRMutexUnlock
    - xmlFree
    - xmlRMutexLock
    linkageType: ''
    returnType: void
    signature: void xsltFreeLocales(void)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: ISALPHA
      Src: /src/libxslt/libxslt/xsltlocale.c:126,1
    - Dst: TOLOWER
      Src: /src/libxslt/libxslt/xsltlocale.c:127,1
    - Dst: ISALPHA
      Src: /src/libxslt/libxslt/xsltlocale.c:139,1
    - Dst: TOUPPER
      Src: /src/libxslt/libxslt/xsltlocale.c:140,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:145,1
    - Dst: newlocale
      Src: /src/libxslt/libxslt/xsltlocale.c:146,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:157,1
    - Dst: newlocale
      Src: /src/libxslt/libxslt/xsltlocale.c:158,1
    - Dst: xsltDefaultRegion
      Src: /src/libxslt/libxslt/xsltlocale.c:167,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:175,1
    - Dst: newlocale
      Src: /src/libxslt/libxslt/xsltlocale.c:176,1
    - Dst: xsltEnumSupportedLocales
      Src: /src/libxslt/libxslt/xsltlocale.c:192,1
    - Dst: ISALPHA
      Src: /src/libxslt/libxslt/xsltlocale.c:194,1
    - Dst: TOLOWER
      Src: /src/libxslt/libxslt/xsltlocale.c:195,1
    - Dst: ISALPHA
      Src: /src/libxslt/libxslt/xsltlocale.c:203,1
    - Dst: TOUPPER
      Src: /src/libxslt/libxslt/xsltlocale.c:204,1
    - Dst: xslt_locale_WINAPI
      Src: /src/libxslt/libxslt/xsltlocale.c:208,1
    - Dst: xsltDefaultRegion
      Src: /src/libxslt/libxslt/xsltlocale.c:212,1
    - Dst: strcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:215,1
    - Dst: xslt_locale_WINAPI
      Src: /src/libxslt/libxslt/xsltlocale.c:216,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 75
    argCount: 2
    argNames:
    - languageTag
    - lowerFirst ATTRIBUTE_UNUSED
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 225
    functionName: xsltNewLocale
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 1
    functionsReached:
    - TOLOWER
    - newlocale
    - strcpy
    - ISALPHA
    - memcpy
    - xsltDefaultRegion
    - xsltEnumSupportedLocales
    - TOUPPER
    - xslt_locale_WINAPI
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltNewLocale(const xmlChar *languageTag, int lowerFirst ATTRIBUTE_UNUSED)'
  - BBCount: 99
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 107
    EdgeCount: 107
    ICount: 211
    argCount: 1
    argNames:
    - localeName
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 363
    functionName: xsltDefaultRegion
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltDefaultRegion(const xmlChar *localeName)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: freelocale
      Src: /src/libxslt/libxslt/xsltlocale.c:375,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - locale
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 379
    functionName: xsltFreeLocale
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 1
    functionsReached:
    - freelocale
    linkageType: ''
    returnType: void
    signature: void xsltFreeLocale(void *locale)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strxfrm_l
      Src: /src/libxslt/libxslt/xsltlocale.c:402,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltlocale.c:403,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:405,1
    - Dst: strxfrm_l
      Src: /src/libxslt/libxslt/xsltlocale.c:410,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:413,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:414,1
    - Dst: MultiByteToWideChar
      Src: /src/libxslt/libxslt/xsltlocale.c:424,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:426,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltlocale.c:429,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:431,1
    - Dst: MultiByteToWideChar
      Src: /src/libxslt/libxslt/xsltlocale.c:434,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:436,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:437,1
    - Dst: LCMapStringW
      Src: /src/libxslt/libxslt/xsltlocale.c:441,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:443,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:444,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltlocale.c:447,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:449,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:450,1
    - Dst: LCMapStringW
      Src: /src/libxslt/libxslt/xsltlocale.c:453,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:455,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/xsltlocale.c:457,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/xsltlocale.c:458,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 2
    argNames:
    - vlocale
    - string
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 391
    functionDepth: 3
    functionLinenumber: 391
    functionLinenumberEnd: 465
    functionName: xsltStrxfrm
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xsltTransformError
    - strxfrm_l
    - xmlMalloc
    - LCMapStringW
    - MultiByteToWideChar
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltStrxfrm(void *vlocale, const xmlChar *string)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxslt/libxslt/xsltlocale.c:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - locale
    - str1
    - str2
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 481
    functionDepth: 1
    functionLinenumber: 481
    functionLinenumberEnd: 485
    functionName: xsltLocaleStrcmp
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xsltLocaleStrcmp(void *locale, const xmlChar *str1, const xmlChar
      *str2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - lcid
    argTypes:
    - LPSTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 501
    functionName: xsltCountSupportedLocales
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL xsltCountSupportedLocales(LPSTR lcid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: sscanf
      Src: /src/libxslt/libxslt/xsltlocale.c:519,1
    - Dst: GetLocaleInfoA
      Src: /src/libxslt/libxslt/xsltlocale.c:522,1
    - Dst: GetLocaleInfoA
      Src: /src/libxslt/libxslt/xsltlocale.c:525,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:531,1
    - Dst: memcpy
      Src: /src/libxslt/libxslt/xsltlocale.c:534,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - lcid
    argTypes:
    - LPSTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 541
    functionName: xsltIterateSupportedLocales
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 0
    functionsReached:
    - memcpy
    - sscanf
    - GetLocaleInfoA
    linkageType: ''
    returnType: BOOL
    signature: BOOL xsltIterateSupportedLocales(LPSTR lcid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexLock
      Src: /src/libxslt/libxslt/xsltlocale.c:546,1
    - Dst: EnumSystemLocalesA
      Src: /src/libxslt/libxslt/xsltlocale.c:550,1
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/xsltlocale.c:553,1
    - Dst: memset
      Src: /src/libxslt/libxslt/xsltlocale.c:554,1
    - Dst: EnumSystemLocalesA
      Src: /src/libxslt/libxslt/xsltlocale.c:555,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxslt/libxslt/xsltlocale.c:557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 558
    functionName: xsltEnumSupportedLocales
    functionSourceFile: /src/libxslt/libxslt/xsltlocale.c
    functionUses: 1
    functionsReached:
    - EnumSystemLocalesA
    - xmlMalloc
    - xmlRMutexUnlock
    - xmlRMutexLock
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltEnumSupportedLocales(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: IS_BLANK
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: IS_BLANK_NODE
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_NODE(n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/attributes.c:116,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:118,1
    - Dst: memset
      Src: /src/libxslt/libxslt/attributes.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 125
    functionName: xsltNewAttrElem
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: xsltAttrElemPtr
    signature: xsltAttrElemPtr xsltNewAttrElem(xmlNodePtr attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xsltAttrElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: xsltFreeAttrElem
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeAttrElem(xsltAttrElemPtr attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeAttrElem
      Src: /src/libxslt/libxslt/attributes.c:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - xsltAttrElemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 153
    functionName: xsltFreeAttrElemList
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltFreeAttrElem
    linkageType: ''
    returnType: void
    signature: void xsltFreeAttrElemList(xsltAttrElemPtr list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewAttrElem
      Src: /src/libxslt/libxslt/attributes.c:171,1
    - Dst: xsltNewAttrElem
      Src: /src/libxslt/libxslt/attributes.c:176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - list
    - attr
    argTypes:
    - xsltAttrElemPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 182
    functionName: xsltAddAttrElemList
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltNewAttrElem
    linkageType: ''
    returnType: xsltAttrElemPtr
    signature: xsltAttrElemPtr xsltAddAttrElemList(xsltAttrElemPtr list, xmlNodePtr
      attr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/attributes.c:197,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:199,1
    - Dst: memset
      Src: /src/libxslt/libxslt/attributes.c:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ncname
    - ns
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 207
    functionName: xsltNewUseAttrSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: xsltUseAttrSetPtr
    signature: xsltUseAttrSetPtr xsltNewUseAttrSet(const xmlChar *ncname, const xmlChar
      *ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - use
    argTypes:
    - xsltUseAttrSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionName: xsltFreeUseAttrSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeUseAttrSet(xsltUseAttrSetPtr use)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeUseAttrSet
      Src: /src/libxslt/libxslt/attributes.c:232,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - xsltUseAttrSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 235
    functionName: xsltFreeUseAttrSetList
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltFreeUseAttrSet
    linkageType: ''
    returnType: void
    signature: void xsltFreeUseAttrSetList(xsltUseAttrSetPtr list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewUseAttrSet
      Src: /src/libxslt/libxslt/attributes.c:255,1
    - Dst: xsltNewUseAttrSet
      Src: /src/libxslt/libxslt/attributes.c:262,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - list
    - ncname
    - ns
    argTypes:
    - xsltUseAttrSetPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 268
    functionName: xsltAddUseAttrSetList
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltNewUseAttrSet
    linkageType: ''
    returnType: xsltUseAttrSetPtr
    signature: "xsltUseAttrSetPtr xsltAddUseAttrSetList(xsltUseAttrSetPtr list, const
      xmlChar *ncname,\n                      const xmlChar *ns)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/attributes.c:281,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:283,1
    - Dst: memset
      Src: /src/libxslt/libxslt/attributes.c:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 289
    functionName: xsltNewAttrSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltGenericError
    - memset
    linkageType: ''
    returnType: xsltAttrSetPtr
    signature: xsltAttrSetPtr xsltNewAttrSet(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeAttrElemList
      Src: /src/libxslt/libxslt/attributes.c:302,1
    - Dst: xsltFreeUseAttrSetList
      Src: /src/libxslt/libxslt/attributes.c:303,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - set
    argTypes:
    - xsltAttrSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 305
    functionName: xsltFreeAttrSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltFreeAttrElemList
    - xmlFree
    - xsltFreeUseAttrSetList
    linkageType: ''
    returnType: void
    signature: void xsltFreeAttrSet(xsltAttrSetPtr set)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltNewAttrElem
      Src: /src/libxslt/libxslt/attributes.c:343,1
    - Dst: xsltNewAttrElem
      Src: /src/libxslt/libxslt/attributes.c:345,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 2
    argNames:
    - set
    - other
    argTypes:
    - xsltAttrSetPtr
    - xsltAttrSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 351
    functionName: xsltMergeAttrSets
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltNewAttrElem
    linkageType: ''
    returnType: void
    signature: void xsltMergeAttrSets(xsltAttrSetPtr set, xsltAttrSetPtr other)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/attributes.c:379,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:381,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:384,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/attributes.c:388,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:389,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:393,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/attributes.c:397,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:398,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/attributes.c:401,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:403,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:414,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/attributes.c:417,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/attributes.c:422,1
    - Dst: xsltNewAttrSet
      Src: /src/libxslt/libxslt/attributes.c:424,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/attributes.c:426,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:427,1
    - Dst: xsltFreeAttrSet
      Src: /src/libxslt/libxslt/attributes.c:428,1
    - Dst: IS_XSLT_ELEM
      Src: /src/libxslt/libxslt/attributes.c:443,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:446,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:450,1
    - Dst: IS_XSLT_NAME
      Src: /src/libxslt/libxslt/attributes.c:452,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:453,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:458,1
    - Dst: xsltStylePreCompute
      Src: /src/libxslt/libxslt/attributes.c:461,1
    - Dst: xsltParseSequenceConstructor
      Src: /src/libxslt/libxslt/attributes.c:464,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/attributes.c:464,1
    - Dst: xsltParseTemplateContent
      Src: /src/libxslt/libxslt/attributes.c:467,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:471,1
    - Dst: xsltAddAttrElemList
      Src: /src/libxslt/libxslt/attributes.c:476,1
    - Dst: xmlGetNsProp
      Src: /src/libxslt/libxslt/attributes.c:486,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/attributes.c:491,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/attributes.c:495,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/attributes.c:496,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:503,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/attributes.c:507,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:508,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:512,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/attributes.c:516,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/attributes.c:518,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:520,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:525,1
    - Dst: xsltAddUseAttrSetList
      Src: /src/libxslt/libxslt/attributes.c:530,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:535,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:540,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 104
    argCount: 2
    argNames:
    - style
    - cur
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 367
    functionDepth: 10
    functionLinenumber: 367
    functionLinenumberEnd: 543
    functionName: xsltParseStylesheetAttributeSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 2
    functionsReached:
    - xsltParseSequenceConstructor
    - xsltParseTemplateContent
    - xsltAddUseAttrSetList
    - xmlValidateQName
    - IS_XSLT_ELEM
    - xmlHashCreate
    - xsltNewAttrSet
    - xmlDictLookup
    - xsltGenericError
    - xmlHashLookup2
    - xmlFree
    - xsltSplitQName
    - IS_BLANK
    - xmlGetNsProp
    - xsltStylePreCompute
    - IS_XSLT_NAME
    - xsltAddAttrElemList
    - xsltGenericDebug
    - xsltTransformError
    - xmlHashAddEntry2
    - xsltFreeAttrSet
    - XSLT_CCTXT
    - xmlSearchNs
    linkageType: ''
    returnType: void
    signature: void xsltParseStylesheetAttributeSet(xsltStylesheetPtr style, xmlNodePtr
      cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/attributes.c:568,1
    - Dst: xsltResolveAttrSet
      Src: /src/libxslt/libxslt/attributes.c:571,1
    - Dst: xsltMergeAttrSets
      Src: /src/libxslt/libxslt/attributes.c:573,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/attributes.c:577,1
    - Dst: xsltFreeUseAttrSet
      Src: /src/libxslt/libxslt/attributes.c:582,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - set
    - topStyle
    - depth
    argTypes:
    - xsltAttrSetPtr
    - xsltStylesheetPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 553
    functionDepth: 2
    functionLinenumber: 553
    functionLinenumberEnd: 587
    functionName: xsltResolveUseAttrSets
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltMergeAttrSets
    - xmlHashLookup2
    - xsltNextImport
    - xsltResolveAttrSet
    - xsltFreeUseAttrSet
    linkageType: ''
    returnType: void
    signature: "void xsltResolveUseAttrSets(xsltAttrSetPtr set, xsltStylesheetPtr
      topStyle,\n\t\t       int depth)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:609,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:617,1
    - Dst: xsltResolveUseAttrSets
      Src: /src/libxslt/libxslt/attributes.c:626,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/attributes.c:629,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/attributes.c:632,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:636,1
    - Dst: xsltResolveUseAttrSets
      Src: /src/libxslt/libxslt/attributes.c:639,1
    - Dst: xsltMergeAttrSets
      Src: /src/libxslt/libxslt/attributes.c:640,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxslt/libxslt/attributes.c:641,1
    - Dst: xsltFreeAttrSet
      Src: /src/libxslt/libxslt/attributes.c:642,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/attributes.c:646,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 6
    argNames:
    - set
    - topStyle
    - style
    - name
    - ns
    - depth
    argTypes:
    - xsltAttrSetPtr
    - xsltStylesheetPtr
    - xsltStylesheetPtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 599
    functionDepth: 3
    functionLinenumber: 599
    functionLinenumberEnd: 650
    functionName: xsltResolveAttrSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 1
    functionsReached:
    - xsltMergeAttrSets
    - xmlHashLookup2
    - xsltFreeAttrSet
    - xsltGenericDebug
    - xsltNextImport
    - xsltTransformError
    - xsltResolveUseAttrSets
    - xmlHashRemoveEntry2
    linkageType: ''
    returnType: void
    signature: "void xsltResolveAttrSet(xsltAttrSetPtr set, xsltStylesheetPtr topStyle,\n
      \                  xsltStylesheetPtr style, const xmlChar *name,\n                   const
      xmlChar *ns, int depth)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeAttrSet
      Src: /src/libxslt/libxslt/attributes.c:672,1
    - Dst: xsltResolveAttrSet
      Src: /src/libxslt/libxslt/attributes.c:676,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/attributes.c:684,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/attributes.c:685,1
    - Dst: xsltFreeAttrSet
      Src: /src/libxslt/libxslt/attributes.c:689,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - payload
    - data
    - name
    - ns
    - ignored
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 661
    functionDepth: 4
    functionLinenumber: 661
    functionLinenumberEnd: 692
    functionName: xsltResolveSASCallback
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltFreeAttrSet
    - xsltResolveAttrSet
    - xmlHashAddEntry2
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void xsltResolveSASCallback(void *payload, void *data,\n\t               const
      xmlChar *name, const xmlChar *ns,\n\t\t       ATTRIBUTE_UNUSED const xmlChar
      *ignored)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:706,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:716,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/attributes.c:719,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libxslt/attributes.c:722,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/attributes.c:730,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/attributes.c:734,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 700
    functionDepth: 1
    functionLinenumber: 700
    functionLinenumberEnd: 736
    functionName: xsltResolveStylesheetAttributeSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 1
    functionsReached:
    - xsltGenericDebug
    - xsltNextImport
    - xmlHashFree
    - xmlHashScanFull
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: void xsltResolveStylesheetAttributeSet(xsltStylesheetPtr style)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:790,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:828,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/attributes.c:842,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/attributes.c:847,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:850,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/attributes.c:854,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:855,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/attributes.c:864,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:865,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:867,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/attributes.c:871,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:872,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/attributes.c:881,1
    - Dst: xsltEvalAttrValueTemplate
      Src: /src/libxslt/libxslt/attributes.c:907,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/attributes.c:918,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:919,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/attributes.c:922,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:923,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/attributes.c:928,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/attributes.c:930,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/attributes.c:941,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:947,1
    - Dst: xsltTreeAcquireStoredNs
      Src: /src/libxslt/libxslt/attributes.c:976,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/attributes.c:994,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/attributes.c:995,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/attributes.c:997,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:999,1
    - Dst: xsltGetSpecialNamespace
      Src: /src/libxslt/libxslt/attributes.c:1001,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:1005,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/attributes.c:1021,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/attributes.c:1031,1
    - Dst: xmlNewText
      Src: /src/libxslt/libxslt/attributes.c:1041,1
    - Dst: xmlNewText
      Src: /src/libxslt/libxslt/attributes.c:1060,1
    - Dst: xmlIsID
      Src: /src/libxslt/libxslt/attributes.c:1080,1
    - Dst: xmlAddID
      Src: /src/libxslt/libxslt/attributes.c:1081,1
    - Dst: xsltEvalTemplateString
      Src: /src/libxslt/libxslt/attributes.c:1086,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/attributes.c:1088,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/attributes.c:1089,1
    - Dst: xmlSetNsProp
      Src: /src/libxslt/libxslt/attributes.c:1096,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 132
    argCount: 4
    argNames:
    - ctxt
    - contextNode
    - inst
    - castedComp
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 747
    functionDepth: 9
    functionLinenumber: 747
    functionLinenumberEnd: 1103
    functionName: xsltAttribute
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xsltSplitQName
    - xsltGetSpecialNamespace
    - xmlNewText
    - xsltTransformError
    - xsltEvalAttrValueTemplate
    - xmlAddID
    - xmlSearchNs
    - xmlValidateQName
    - xmlSetNsProp
    - xslHandleDebugger
    - xsltTreeAcquireStoredNs
    - xmlIsID
    - xsltEvalTemplateString
    - xmlDictLookup
    linkageType: ''
    returnType: void
    signature: "void xsltAttribute(xsltTransformContextPtr ctxt,\n\t      xmlNodePtr
      contextNode,\n              xmlNodePtr inst,\n\t      xsltElemPreCompPtr castedComp)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/attributes.c:1153,1
    - Dst: IS_BLANK
      Src: /src/libxslt/libxslt/attributes.c:1158,1
    - Dst: xmlDictLookup
      Src: /src/libxslt/libxslt/attributes.c:1160,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/attributes.c:1166,1
    - Dst: xmlValidateQName
      Src: /src/libxslt/libxslt/attributes.c:1170,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:1171,1
    - Dst: xsltSplitQName
      Src: /src/libxslt/libxslt/attributes.c:1177,1
    - Dst: xmlSearchNs
      Src: /src/libxslt/libxslt/attributes.c:1179,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/attributes.c:1181,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/attributes.c:1196,1
    - Dst: xslHandleDebugger
      Src: /src/libxslt/libxslt/attributes.c:1199,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/attributes.c:1208,1
    - Dst: xsltAttribute
      Src: /src/libxslt/libxslt/attributes.c:1213,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 56
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - attrSets
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1117
    functionDepth: 10
    functionLinenumber: 1117
    functionLinenumberEnd: 1222
    functionName: xsltApplyAttributeSet
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 3
    functionsReached:
    - xmlHashLookup2
    - xsltGenericDebug
    - xsltAttribute
    - xsltSplitQName
    - xsltTransformError
    - IS_BLANK
    - xmlSearchNs
    - xmlValidateQName
    - xslHandleDebugger
    - xmlDictLookup
    linkageType: ''
    returnType: void
    signature: "void xsltApplyAttributeSet(xsltTransformContextPtr ctxt, xmlNodePtr
      node,\n                      xmlNodePtr inst,\n                      const xmlChar
      *attrSets)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeAttrSet
      Src: /src/libxslt/libxslt/attributes.c:1227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1224
    functionDepth: 3
    functionLinenumber: 1224
    functionLinenumberEnd: 1228
    functionName: xsltFreeAttributeSetsEntry
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 0
    functionsReached:
    - xsltFreeAttrSet
    linkageType: ''
    returnType: void
    signature: "void xsltFreeAttributeSetsEntry(void *payload,\n                           const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/attributes.c:1239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1236
    functionDepth: 1
    functionLinenumber: 1236
    functionLinenumberEnd: 1242
    functionName: xsltFreeAttributeSetsHashes
    functionSourceFile: /src/libxslt/libxslt/attributes.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeAttributeSetsHashes(xsltStylesheetPtr style)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: mkdir
    functionSourceFile: /src/libxslt/libxslt/libxslt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mkdir(p,m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: XSLT_IS_TEXT_NODE
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_IS_TEXT_NODE(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: XSLT_MARK_RES_TREE_FRAG
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_MARK_RES_TREE_FRAG(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: XSLT_IS_RES_TREE_FRAG
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_IS_RES_TREE_FRAG(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: IS_XSLT_ELEM_FAST
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_ELEM_FAST(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: IS_XSLT_ATTR_FAST
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_ATTR_FAST(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionName: XSLT_HAS_INTERNAL_NSMAP
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_HAS_INTERNAL_NSMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: XSLT_GET_INTERNAL_NSMAP
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_GET_INTERNAL_NSMAP(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: IS_XSLT_ELEM_FAST
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_ELEM_FAST(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionName: IS_XSLT_ATTR_FAST
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XSLT_ATTR_FAST(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - nr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 241
    functionName: XSLT_RUNTIME_EXTRA_LST
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_RUNTIME_EXTRA_LST(ctxt, nr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - nr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 249
    functionName: XSLT_RUNTIME_EXTRA_FREE
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_RUNTIME_EXTRA_FREE(ctxt, nr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctxt
    - ','
    - nr
    - ','
    - typ
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 257
    functionName: XSLT_RUNTIME_EXTRA
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_RUNTIME_EXTRA(ctxt, nr, typ)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - style
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1300
      start: 1299
    functionDepth: 0
    functionLinenumber: 1299
    functionLinenumberEnd: 1300
    functionName: XSLT_CCTXT
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_CCTXT(style)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - fptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1848
    functionDepth: 0
    functionLinenumber: 1848
    functionLinenumberEnd: 1849
    functionName: XML_CAST_FPTR
    functionSourceFile: /src/libxslt/libxslt/xsltInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_CAST_FPTR(fptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionName: XSLT_REGISTER_VARIABLE_LOOKUP
    functionSourceFile: /src/libxslt/libxslt/variables.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_REGISTER_VARIABLE_LOOKUP(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: TRIO_ERROR_CODE
    functionSourceFile: /src/libxslt/libxslt/trio.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ERROR_CODE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 69
    functionName: TRIO_ERROR_POSITION
    functionSourceFile: /src/libxslt/libxslt/trio.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ERROR_POSITION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: TRIO_ERROR_NAME
    functionSourceFile: /src/libxslt/libxslt/trio.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TRIO_ERROR_NAME(x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/keys.c:59,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:61,1
    - Dst: memset
      Src: /src/libxslt/libxslt/keys.c:65,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:67,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - name
    - nameURI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 55
    functionDepth: 3
    functionLinenumber: 55
    functionLinenumberEnd: 72
    functionName: xsltNewKeyDef
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xmlStrdup
    - memset
    linkageType: ''
    returnType: xsltKeyDefPtr
    signature: xsltKeyDefPtr xsltNewKeyDef(const xmlChar *name, const xmlChar *nameURI)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/keys.c:85,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxslt/libxslt/keys.c:87,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:89,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:91,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:93,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:95,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:97,1
    - Dst: memset
      Src: /src/libxslt/libxslt/keys.c:98,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:99,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - keyd
    argTypes:
    - xsltKeyDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 100
    functionName: xsltFreeKeyDef
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeKeyDef(xsltKeyDefPtr keyd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeKeyDef
      Src: /src/libxslt/libxslt/keys.c:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - keyd
    argTypes:
    - xsltKeyDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 117
    functionName: xsltFreeKeyDefList
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xsltFreeKeyDef
    linkageType: ''
    returnType: void
    signature: void xsltFreeKeyDefList(xsltKeyDefPtr keyd)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/keys.c:132,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:134,1
    - Dst: memset
      Src: /src/libxslt/libxslt/keys.c:138,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:140,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:142,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/keys.c:143,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - name
    - nameURI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 145
    functionName: xsltNewKeyTable
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xsltTransformError
    - xmlMalloc
    - xmlHashCreate
    - memset
    linkageType: ''
    returnType: xsltKeyTablePtr
    signature: xsltKeyTablePtr xsltNewKeyTable(const xmlChar *name, const xmlChar
      *nameURI)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libxslt/keys.c:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: xsltFreeNodeSetEntry
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void xsltFreeNodeSetEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:163,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:165,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/keys.c:167,1
    - Dst: memset
      Src: /src/libxslt/libxslt/keys.c:168,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:169,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - keyt
    argTypes:
    - xsltKeyTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 170
    functionName: xsltFreeKeyTable
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlHashFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xsltFreeKeyTable(xsltKeyTablePtr keyt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeKeyTable
      Src: /src/libxslt/libxslt/keys.c:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - keyt
    argTypes:
    - xsltKeyTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 187
    functionName: xsltFreeKeyTableList
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xsltFreeKeyTable
    linkageType: ''
    returnType: void
    signature: void xsltFreeKeyTableList(xsltKeyTablePtr keyt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeKeyDefList
      Src: /src/libxslt/libxslt/keys.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: xsltFreeKeys
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 1
    functionsReached:
    - xsltFreeKeyDefList
    linkageType: ''
    returnType: void
    signature: void xsltFreeKeys(xsltStylesheetPtr style)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - cur
    - end
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 231
    functionName: skipString
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int skipString(const xmlChar *cur, int end)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: skipString
      Src: /src/libxslt/libxslt/keys.c:251,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - cur
    - end
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 265
    functionName: skipPredicate
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - skipString
    linkageType: ''
    returnType: int
    signature: int skipPredicate(const xmlChar *cur, int end)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:292,1
    - Dst: xsltNewKeyDef
      Src: /src/libxslt/libxslt/keys.c:296,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:299,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/keys.c:300,1
    - Dst: xmlGetNsList
      Src: /src/libxslt/libxslt/keys.c:302,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxslt/libxslt/keys.c:315,1
    - Dst: skipPredicate
      Src: /src/libxslt/libxslt/keys.c:320,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:322,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:332,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/keys.c:338,1
    - Dst: xmlStrncat
      Src: /src/libxslt/libxslt/keys.c:344,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/keys.c:351,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:357,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:363,1
    - Dst: xsltXPathCompileFlags
      Src: /src/libxslt/libxslt/keys.c:375,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/keys.c:377,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:380,1
    - Dst: xsltXPathCompileFlags
      Src: /src/libxslt/libxslt/keys.c:386,1
    - Dst: xsltXPathCompile
      Src: /src/libxslt/libxslt/keys.c:388,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:391,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:417,1
    - Dst: xsltFreeKeyDef
      Src: /src/libxslt/libxslt/keys.c:419,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 102
    argCount: 6
    argNames:
    - style
    - name
    - nameURI
    - match
    - use
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 280
    functionDepth: 4
    functionLinenumber: 280
    functionLinenumberEnd: 421
    functionName: xsltAddKey
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xsltXPathCompile
    - xsltGenericDebug
    - xmlFree
    - xsltTransformError
    - xmlIsBlank_ch
    - xsltNewKeyDef
    - xmlGetNsList
    - xmlStrncat
    - xmlStrcat
    - xsltXPathCompileFlags
    - xsltFreeKeyDef
    - skipPredicate
    linkageType: ''
    returnType: int
    signature: "int xsltAddKey(xsltStylesheetPtr style, const xmlChar *name,\n\t   const
      xmlChar *nameURI, const xmlChar *match,\n\t   const xmlChar *use, xmlNodePtr
      inst)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:448,1
    - Dst: xsltInitAllDocKeys
      Src: /src/libxslt/libxslt/keys.c:460,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:468,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:469,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/keys.c:471,1
    - Dst: xsltInitDocKeyTable
      Src: /src/libxslt/libxslt/keys.c:482,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 25
    argCount: 4
    argNames:
    - ctxt
    - name
    - nameURI
    - value
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 488
    functionName: xsltGetKey
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 2
    functionsReached:
    - xsltInitDocKeyTable
    - xsltGenericDebug
    - xmlStrEqual
    - xmlHashLookup
    - xsltInitAllDocKeys
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: "xmlNodeSetPtr xsltGetKey(xsltTransformContextPtr ctxt, const xmlChar
      *name,\n\t   const xmlChar *nameURI, const xmlChar *value)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:507,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:516,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:517,1
    - Dst: xsltInitCtxtKey
      Src: /src/libxslt/libxslt/keys.c:519,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/keys.c:526,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:530,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:530,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:533,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:539,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - name
    - nameURI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 498
    functionDepth: 3
    functionLinenumber: 498
    functionLinenumberEnd: 542
    functionName: xsltInitDocKeyTable
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xsltNextImport
    - xsltGenericDebug
    - xsltTransformError
    - xsltInitCtxtKey
    - fprintf
    - XSLT_TRACE
    linkageType: ''
    returnType: int
    signature: "int xsltInitDocKeyTable(xsltTransformContextPtr ctxt, const xmlChar
      *name,\n                    const xmlChar *nameURI)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:565,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:581,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:590,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:591,1
    - Dst: xsltInitDocKeyTable
      Src: /src/libxslt/libxslt/keys.c:601,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/keys.c:605,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:608,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 554
    functionDepth: 4
    functionLinenumber: 554
    functionLinenumberEnd: 611
    functionName: xsltInitAllDocKeys
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 2
    functionsReached:
    - xsltInitDocKeyTable
    - fprintf
    - xmlStrEqual
    - xsltNextImport
    linkageType: ''
    returnType: int
    signature: int xsltInitAllDocKeys(xsltTransformContextPtr ctxt)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:643,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:654,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:655,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:659,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/keys.c:699,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:703,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:703,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:706,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:716,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:716,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:725,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:725,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:728,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:743,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/keys.c:746,1
    - Dst: xsltNewKeyTable
      Src: /src/libxslt/libxslt/keys.c:755,1
    - Dst: IS_XSLT_REAL_NODE
      Src: /src/libxslt/libxslt/keys.c:773,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/keys.c:785,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxslt/libxslt/keys.c:786,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/keys.c:788,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libxslt/keys.c:798,1
    - Dst: xmlXPathCastToString
      Src: /src/libxslt/libxslt/keys.c:811,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:823,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:823,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/keys.c:827,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxslt/libxslt/keys.c:829,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/keys.c:832,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxslt/libxslt/keys.c:833,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxslt/libxslt/keys.c:840,1
    - Dst: xsltSetSourceNodeFlags
      Src: /src/libxslt/libxslt/keys.c:842,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:843,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxslt/libxslt/keys.c:850,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/keys.c:872,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/keys.c:874,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxslt/libxslt/keys.c:876,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 150
    argCount: 3
    argNames:
    - ctxt
    - idoc
    - keyDef
    argTypes:
    - xsltTransformContextPtr
    - xsltDocumentPtr
    - xsltKeyDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 623
    functionDepth: 4
    functionLinenumber: 623
    functionLinenumberEnd: 878
    functionName: xsltInitCtxtKey
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 1
    functionsReached:
    - xmlXPathCompiledEval
    - xsltGenericDebug
    - xmlStrEqual
    - xsltNewKeyTable
    - xmlFree
    - xsltTransformError
    - xmlHashLookup
    - xmlXPathNodeSetCreate
    - xmlHashAddEntry
    - xsltSetSourceNodeFlags
    - IS_XSLT_REAL_NODE
    - xmlXPathNodeSetAdd
    - xmlXPathCastToString
    - xmlXPathCastNodeToString
    - fprintf
    - XSLT_TRACE
    - xmlXPathFreeObject
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: int
    signature: "int xsltInitCtxtKey(xsltTransformContextPtr ctxt, xsltDocumentPtr
      idoc,\n\t        xsltKeyDefPtr keyDef)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:898,1
    - Dst: XSLT_TRACE
      Src: /src/libxslt/libxslt/keys.c:903,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/keys.c:903,1
    - Dst: xsltInitCtxtKey
      Src: /src/libxslt/libxslt/keys.c:910,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/keys.c:915,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/keys.c:919,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - idoc
    argTypes:
    - xsltTransformContextPtr
    - xsltDocumentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 889
    functionDepth: 5
    functionLinenumber: 889
    functionLinenumberEnd: 922
    functionName: xsltInitCtxtKeys
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltNextImport
    - xsltInitCtxtKey
    - fprintf
    - XSLT_TRACE
    linkageType: ''
    returnType: void
    signature: void xsltInitCtxtKeys(xsltTransformContextPtr ctxt, xsltDocumentPtr
      idoc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeKeyTableList
      Src: /src/libxslt/libxslt/keys.c:933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - idoc
    argTypes:
    - xsltDocumentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 930
    functionDepth: 3
    functionLinenumber: 930
    functionLinenumberEnd: 934
    functionName: xsltFreeDocumentKeys
    functionSourceFile: /src/libxslt/libxslt/keys.c
    functionUses: 5
    functionsReached:
    - xsltFreeKeyTableList
    linkageType: ''
    returnType: void
    signature: void xsltFreeDocumentKeys(xsltDocumentPtr idoc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/extensions.c:120,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:122,1
    - Dst: memset
      Src: /src/libxslt/libxslt/extensions.c:126,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/extensions.c:128,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/extensions.c:130,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - prefix
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 115
    functionDepth: 3
    functionLinenumber: 115
    functionLinenumberEnd: 132
    functionName: xsltNewExtDef
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xmlStrdup
    - memset
    linkageType: ''
    returnType: xsltExtDefPtr
    signature: xsltExtDefPtr xsltNewExtDef(const xmlChar * prefix, const xmlChar *
      URI)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:146,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:148,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:149,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - extensiond
    argTypes:
    - xsltExtDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: xsltFreeExtDef
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtDef(xsltExtDefPtr extensiond)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeExtDef
      Src: /src/libxslt/libxslt/extensions.c:166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - extensiond
    argTypes:
    - xsltExtDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 168
    functionName: xsltFreeExtDefList
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltFreeExtDef
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtDefList(xsltExtDefPtr extensiond)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/extensions.c:189,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - initFunc
    - shutdownFunc
    - styleInitFunc
    - styleShutdownFunc
    argTypes:
    - xsltExtInitFunction
    - xsltExtShutdownFunction
    - xsltStyleExtInitFunction
    - xsltStyleExtShutdownFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 181
    functionDepth: 3
    functionLinenumber: 181
    functionLinenumberEnd: 200
    functionName: xsltNewExtModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    linkageType: ''
    returnType: xsltExtModulePtr
    signature: "xsltExtModulePtr xsltNewExtModule(xsltExtInitFunction initFunc,\n
      \                xsltExtShutdownFunction shutdownFunc,\n                 xsltStyleExtInitFunction
      styleInitFunc,\n                 xsltStyleExtShutdownFunction styleShutdownFunc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ext
    argTypes:
    - xsltExtModulePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionName: xsltFreeExtModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtModule(xsltExtModulePtr ext)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeExtModule
      Src: /src/libxslt/libxslt/extensions.c:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: xsltFreeExtModuleEntry
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltFreeExtModule
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtModuleEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/extensions.c:237,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:239,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - extModule
    - extData
    argTypes:
    - xsltExtModulePtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 246
    functionName: xsltNewExtData
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    linkageType: ''
    returnType: xsltExtDataPtr
    signature: xsltExtDataPtr xsltNewExtData(xsltExtModulePtr extModule, void *extData)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ext
    argTypes:
    - xsltExtDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 260
    functionName: xsltFreeExtData
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtData(xsltExtDataPtr ext)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeExtData
      Src: /src/libxslt/libxslt/extensions.c:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionName: xsltFreeExtDataEntry
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltFreeExtData
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtDataEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/extensions.c:286,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:288,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - precomp
    - transform
    argTypes:
    - xsltPreComputeFunction
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 277
    functionDepth: 3
    functionLinenumber: 277
    functionLinenumberEnd: 295
    functionName: xsltNewExtElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    linkageType: ''
    returnType: xsltExtElementPtr
    signature: "xsltExtElementPtr xsltNewExtElement(xsltPreComputeFunction precomp,\n
      \                 xsltTransformFunction transform)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ext
    argTypes:
    - xsltExtElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 309
    functionName: xsltFreeExtElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtElement(xsltExtElementPtr ext)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeExtElement
      Src: /src/libxslt/libxslt/extensions.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 314
    functionName: xsltFreeExtElementEntry
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltFreeExtElement
    linkageType: ''
    returnType: void
    signature: void xsltFreeExtElementEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:359,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:364,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:367,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:368,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:371,1
    - Dst: xmlStrstr
      Src: /src/libxslt/libxslt/extensions.c:374,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/extensions.c:376,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/extensions.c:378,1
    - Dst: getenv
      Src: /src/libxslt/libxslt/extensions.c:398,1
    - Dst: LIBXSLT_DEFAULT_PLUGINS_PATH
      Src: /src/libxslt/libxslt/extensions.c:401,1
    - Dst: xmlStrPrintf
      Src: /src/libxslt/libxslt/extensions.c:412,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:416,1
    - Dst: xmlCheckFilename
      Src: /src/libxslt/libxslt/extensions.c:422,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:425,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:429,1
    - Dst: LoadLibraryA
      Src: /src/libxslt/libxslt/extensions.c:436,1
    - Dst: dlopen
      Src: /src/libxslt/libxslt/extensions.c:438,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:443,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:447,1
    - Dst: xmlStrdup
      Src: /src/libxslt/libxslt/extensions.c:452,1
    - Dst: xmlStrcat
      Src: /src/libxslt/libxslt/extensions.c:453,1
    - Dst: GetProcAddress
      Src: /src/libxslt/libxslt/extensions.c:456,1
    - Dst: dlsym
      Src: /src/libxslt/libxslt/extensions.c:458,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:469,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/extensions.c:470,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:471,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:475,1
    - Dst: FreeLibrary
      Src: /src/libxslt/libxslt/extensions.c:482,1
    - Dst: dlclose
      Src: /src/libxslt/libxslt/extensions.c:484,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:488,1
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:489,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 70
    argCount: 1
    argNames:
    - URI
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 491
    functionName: xsltExtModuleRegisterDynamic
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCheckFilename
    - xmlHashAddEntry
    - FreeLibrary
    - xmlMutexLock
    - xmlStrstr
    - xmlStrPrintf
    - xmlHashCreate
    - xmlFree
    - xmlHashLookup
    - xmlStrcat
    - xsltGenericDebug
    - getenv
    - xmlMutexUnlock
    - GetProcAddress
    - dlclose
    - LoadLibraryA
    - dlopen
    - dlsym
    - LIBXSLT_DEFAULT_PLUGINS_PATH
    linkageType: ''
    returnType: int
    signature: int xsltExtModuleRegisterDynamic(const xmlChar * URI)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 497
    functionName: xsltExtModuleRegisterDynamic
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xsltExtModuleRegisterDynamic(const xmlChar * URI ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeExtDefList
      Src: /src/libxslt/libxslt/extensions.c:517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 513
    functionDepth: 2
    functionLinenumber: 513
    functionLinenumberEnd: 518
    functionName: xsltFreeExts
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xsltFreeExtDefList
    linkageType: ''
    returnType: void
    signature: void xsltFreeExts(xsltStylesheetPtr style)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:547,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/extensions.c:556,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/extensions.c:562,1
    - Dst: xsltNewExtDef
      Src: /src/libxslt/libxslt/extensions.c:567,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:586,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:587,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:588,1
    - Dst: xsltExtModuleRegisterDynamic
      Src: /src/libxslt/libxslt/extensions.c:590,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:591,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:592,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:593,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/libxslt/extensions.c:597,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 3
    argNames:
    - style
    - prefix
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 537
    functionDepth: 4
    functionLinenumber: 537
    functionLinenumberEnd: 602
    functionName: xsltRegisterExtPrefix
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlMutexUnlock
    - xsltGenericDebug
    - xmlStrEqual
    - xmlHashLookup
    - xsltNewExtDef
    - xmlMutexLock
    - xsltExtModuleRegisterDynamic
    - xsltStyleGetExtData
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtPrefix(xsltStylesheetPtr style,\n                      const
      xmlChar * prefix, const xmlChar * URI)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxslt/libxslt/extensions.c:631,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:634,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/extensions.c:638,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:639,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 4
    argNames:
    - ctxt
    - name
    - URI
    - function
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    - xmlXPathFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 642
    functionName: xsltRegisterExtFunction
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlXPathRegisterFuncNS
    - XML_CAST_FPTR
    - xmlHashAddEntry2
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtFunction(xsltTransformContextPtr ctxt, const xmlChar
      * name,\n                        const xmlChar * URI, xmlXPathFunction function)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:663,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxslt/libxslt/extensions.c:666,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:667,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 4
    argNames:
    - ctxt
    - name
    - URI
    - function
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 655
    functionDepth: 1
    functionLinenumber: 655
    functionLinenumberEnd: 668
    functionName: xsltRegisterExtElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashCreate
    - XML_CAST_FPTR
    - xmlHashAddEntry2
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtElement(xsltTransformContextPtr ctxt, const xmlChar
      * name,\n                       const xmlChar * URI, xsltTransformFunction function)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:680,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:682,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 683
    functionName: xsltFreeCtxtExts
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeCtxtExts(xsltTransformContextPtr ctxt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:710,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:716,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:718,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:720,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:724,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:733,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:742,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:747,1
    - Dst: xsltExtModulePtr::styleInitFunc
      Src: /src/libxslt/libxslt/extensions.c:753,1
    - Dst: xsltNewExtData
      Src: /src/libxslt/libxslt/extensions.c:758,1
    - Dst: xsltExtModulePtr::styleShutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:761,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/extensions.c:765,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:768,1
    - Dst: xsltExtModulePtr::styleShutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:772,1
    - Dst: xsltFreeExtData
      Src: /src/libxslt/libxslt/extensions.c:773,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 697
    functionDepth: 4
    functionLinenumber: 697
    functionLinenumberEnd: 778
    functionName: xsltStyleInitializeStylesheetModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexUnlock
    - xsltGenericDebug
    - xsltNewExtData
    - xsltFreeExtData
    - xmlHashLookup
    - xsltExtModulePtr::styleShutdownFunc
    - xsltTransformError
    - xmlHashAddEntry
    - xmlMutexLock
    - xsltExtModulePtr::styleInitFunc
    - xmlHashCreate
    linkageType: ''
    returnType: xsltExtDataPtr
    signature: "xsltExtDataPtr xsltStyleInitializeStylesheetModule(xsltStylesheetPtr
      style,\n\t\t\t\t     const xmlChar * URI)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:814,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:831,1
    - Dst: xsltStyleInitializeStylesheetModule
      Src: /src/libxslt/libxslt/extensions.c:839,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 793
    functionDepth: 5
    functionLinenumber: 793
    functionLinenumberEnd: 843
    functionName: xsltStyleGetExtData
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 5
    functionsReached:
    - xmlHashLookup
    - xsltStyleInitializeStylesheetModule
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltStyleGetExtData(xsltStylesheetPtr style, const xmlChar * URI)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:867,1
    - Dst: xsltStyleInitializeStylesheetModule
      Src: /src/libxslt/libxslt/extensions.c:878,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 856
    functionDepth: 5
    functionLinenumber: 856
    functionLinenumberEnd: 882
    functionName: xsltStyleStylesheetLevelGetExtData
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup
    - xsltStyleInitializeStylesheetModule
    linkageType: ''
    returnType: void
    signature: "void *\nxsltStyleStylesheetLevelGetExtData(xsltStylesheetPtr style,\n\t\t\t\t
      \  const xmlChar * URI)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:903,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:908,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:914,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:916,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:918,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:922,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:931,1
    - Dst: xsltExtModulePtr::initFunc
      Src: /src/libxslt/libxslt/extensions.c:935,1
    - Dst: xsltNewExtData
      Src: /src/libxslt/libxslt/extensions.c:939,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/extensions.c:941,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:942,1
    - Dst: xsltExtModulePtr::shutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:946,1
    - Dst: xsltFreeExtData
      Src: /src/libxslt/libxslt/extensions.c:947,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 895
    functionDepth: 4
    functionLinenumber: 895
    functionLinenumberEnd: 953
    functionName: xsltGetExtData
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 5
    functionsReached:
    - xmlMutexUnlock
    - xsltGenericDebug
    - xsltNewExtData
    - xsltExtModulePtr::shutdownFunc
    - xsltFreeExtData
    - xmlHashLookup
    - xsltExtModulePtr::initFunc
    - xsltTransformError
    - xmlHashAddEntry
    - xmlMutexLock
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltGetExtData(xsltTransformContextPtr ctxt, const xmlChar * URI)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:981,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:989,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:995,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:998,1
    - Dst: xsltExtModulePtr::initFunc
      Src: /src/libxslt/libxslt/extensions.c:1004,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:1007,1
    - Dst: xsltNewExtData
      Src: /src/libxslt/libxslt/extensions.c:1011,1
    - Dst: xsltExtModulePtr::shutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:1014,1
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:1020,1
    - Dst: xsltExtModulePtr::shutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:1023,1
    - Dst: xsltFreeExtData
      Src: /src/libxslt/libxslt/extensions.c:1024,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/extensions.c:1029,1
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extensions.c:1030,1
    - Dst: xsltExtModulePtr::shutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:1033,1
    - Dst: xsltFreeExtData
      Src: /src/libxslt/libxslt/extensions.c:1034,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:1039,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 3
    argNames:
    - payload
    - data
    - URI
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 969
    functionDepth: 4
    functionLinenumber: 969
    functionLinenumberEnd: 1043
    functionName: xsltInitCtxtExt
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltExtModulePtr::shutdownFunc
    - xsltFreeExtData
    - xmlHashLookup
    - xsltExtModulePtr::initFunc
    - xmlHashAddEntry
    - xmlHashCreate
    - xsltNewExtData
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: void xsltInitCtxtExt(void *payload, void *data, const xmlChar * URI)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxslt/libxslt/extensions.c:1071,1
    - Dst: xsltNextImport
      Src: /src/libxslt/libxslt/extensions.c:1075,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:1078,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1053
    functionDepth: 1
    functionLinenumber: 1053
    functionLinenumberEnd: 1082
    functionName: xsltInitCtxtExts
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xsltNextImport
    - xsltGenericDebug
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: int xsltInitCtxtExts(xsltTransformContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:1106,1
    - Dst: xsltExtModulePtr::shutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:1109,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - payload
    - vctxt
    - URI
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1092
    functionDepth: 0
    functionLinenumber: 1092
    functionLinenumberEnd: 1110
    functionName: xsltShutdownCtxtExt
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltExtModulePtr::shutdownFunc
    linkageType: ''
    returnType: void
    signature: void xsltShutdownCtxtExt(void *payload, void *vctxt, const xmlChar
      * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxslt/libxslt/extensions.c:1125,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xsltTransformContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1118
    functionDepth: 1
    functionLinenumber: 1118
    functionLinenumberEnd: 1128
    functionName: xsltShutdownCtxtExts
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlHashScan
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltShutdownCtxtExts(xsltTransformContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:1152,1
    - Dst: xsltExtModulePtr::styleShutdownFunc
      Src: /src/libxslt/libxslt/extensions.c:1155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - payload
    - vctxt
    - URI
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1138
    functionDepth: 0
    functionLinenumber: 1138
    functionLinenumberEnd: 1162
    functionName: xsltShutdownExt
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltExtModulePtr::styleShutdownFunc
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: void xsltShutdownExt(void *payload, void *vctxt, const xmlChar * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxslt/libxslt/extensions.c:1177,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - style
    argTypes:
    - xsltStylesheetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1170
    functionDepth: 1
    functionLinenumber: 1170
    functionLinenumberEnd: 1180
    functionName: xsltShutdownExts
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashScan
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltShutdownExts(xsltStylesheetPtr style)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/extensions.c:1200,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/extensions.c:1201,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/extensions.c:1207,1
    - Dst: XSLT_CCTXT
      Src: /src/libxslt/libxslt/extensions.c:1209,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/extensions.c:1212,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/extensions.c:1234,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1195
    functionDepth: 1
    functionLinenumber: 1195
    functionLinenumberEnd: 1240
    functionName: xsltCheckExtPrefix
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 3
    functionsReached:
    - XSLT_CCTXT
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xsltCheckExtPrefix(xsltStylesheetPtr style, const xmlChar * URI)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/libxslt/extensions.c:1266,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1255
    functionDepth: 1
    functionLinenumber: 1255
    functionLinenumberEnd: 1271
    functionName: xsltCheckExtURI
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xsltCheckExtURI(xsltStylesheetPtr style, const xmlChar * URI)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:1298,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1303,1
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:1305,1
    - Dst: xsltNewExtModule
      Src: /src/libxslt/libxslt/extensions.c:1314,1
    - Dst: xmlHashAddEntry
      Src: /src/libxslt/libxslt/extensions.c:1320,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1323,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 5
    argNames:
    - URI
    - initFunc
    - shutdownFunc
    - styleInitFunc
    - styleShutdownFunc
    argTypes:
    - xmlChar*
    - xsltExtInitFunction
    - xsltExtShutdownFunction
    - xsltStyleExtInitFunction
    - xsltStyleExtShutdownFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1285
    functionDepth: 4
    functionLinenumber: 1285
    functionLinenumberEnd: 1325
    functionName: xsltRegisterExtModuleFull
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlMutexUnlock
    - xsltNewExtModule
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlMutexLock
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtModuleFull(const xmlChar * URI,\n                          xsltExtInitFunction
      initFunc,\n                          xsltExtShutdownFunction shutdownFunc,\n
      \                         xsltStyleExtInitFunction styleInitFunc,\n                          xsltStyleExtShutdownFunction
      styleShutdownFunc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFull
      Src: /src/libxslt/libxslt/extensions.c:1342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - URI
    - initFunc
    - shutdownFunc
    argTypes:
    - xmlChar*
    - xsltExtInitFunction
    - xsltExtShutdownFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1337
    functionDepth: 5
    functionLinenumber: 1337
    functionLinenumberEnd: 1344
    functionName: xsltRegisterExtModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleFull
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtModule(const xmlChar * URI,\n                      xsltExtInitFunction
      initFunc,\n                      xsltExtShutdownFunction shutdownFunc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1364,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxslt/libxslt/extensions.c:1366,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - URI
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1354
    functionDepth: 1
    functionLinenumber: 1354
    functionLinenumberEnd: 1371
    functionName: xsltUnregisterExtModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlHashRemoveEntry
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xsltUnregisterExtModule(const xmlChar * URI)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1384,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1386,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1389,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1378
    functionDepth: 1
    functionLinenumber: 1378
    functionLinenumberEnd: 1390
    functionName: xsltUnregisterAllExtModules
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltUnregisterAllExtModules(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1404
    functionDepth: 0
    functionLinenumber: 1404
    functionLinenumberEnd: 1410
    functionName: xsltXPathGetTransformContext
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: xsltTransformContextPtr
    signature: xsltTransformContextPtr xsltXPathGetTransformContext(xmlXPathParserContextPtr
      ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:1430,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1434,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxslt/libxslt/extensions.c:1436,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1437,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - name
    - URI
    - function
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlXPathFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1422
    functionDepth: 1
    functionLinenumber: 1422
    functionLinenumberEnd: 1442
    functionName: xsltRegisterExtModuleFunction
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 10
    functionsReached:
    - xmlMutexUnlock
    - xmlHashUpdateEntry2
    - XML_CAST_FPTR
    - xmlMutexLock
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtModuleFunction(const xmlChar * name, const xmlChar
      * URI,\n                              xmlXPathFunction function)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1461,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1463,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1463,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1465,1
    - Dst: xsltExtModuleRegisterDynamic
      Src: /src/libxslt/libxslt/extensions.c:1469,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1470,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1472,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1473,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1475,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1453
    functionDepth: 2
    functionLinenumber: 1453
    functionLinenumberEnd: 1480
    functionName: xsltExtModuleFunctionLookup
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup2
    - xmlMutexUnlock
    - XML_CAST_FPTR
    - xmlMutexLock
    - xsltExtModuleRegisterDynamic
    linkageType: ''
    returnType: xmlXPathFunction
    signature: xmlXPathFunction xsltExtModuleFunctionLookup(const xmlChar * name,
      const xmlChar * URI)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1499,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxslt/libxslt/extensions.c:1501,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1503,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1491
    functionDepth: 1
    functionLinenumber: 1491
    functionLinenumberEnd: 1506
    functionName: xsltUnregisterExtModuleFunction
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry2
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xsltUnregisterExtModuleFunction(const xmlChar * name, const xmlChar
      * URI)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1516,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1518,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1513
    functionDepth: 1
    functionLinenumber: 1513
    functionLinenumberEnd: 1522
    functionName: xsltUnregisterAllExtModuleFunction
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltUnregisterAllExtModuleFunction(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxslt/libxslt/extensions.c:1527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1528
    functionName: xsltFreeElemPreComp
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xsltFreeElemPreComp(xsltElemPreCompPtr comp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxslt/libxslt/extensions.c:1546,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:1548,1
    - Dst: memset
      Src: /src/libxslt/libxslt/extensions.c:1552,1
    - Dst: xsltInitElemPreComp
      Src: /src/libxslt/libxslt/extensions.c:1554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - style
    - inst
    - function
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1540
    functionDepth: 3
    functionLinenumber: 1540
    functionLinenumberEnd: 1557
    functionName: xsltNewElemPreComp
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xsltTransformError
    - xsltInitElemPreComp
    - memset
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr xsltNewElemPreComp(xsltStylesheetPtr style, xmlNodePtr
      inst,\n                   xsltTransformFunction function)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - comp
    - style
    - inst
    - function
    - freeFunc
    argTypes:
    - xsltElemPreCompPtr
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    - xsltElemPreCompDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1572
    functionDepth: 0
    functionLinenumber: 1572
    functionLinenumberEnd: 1584
    functionName: xsltInitElemPreComp
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xsltInitElemPreComp(xsltElemPreCompPtr comp, xsltStylesheetPtr
      style,\n                    xmlNodePtr inst, xsltTransformFunction function,\n
      \                   xsltElemPreCompDeallocator freeFunc)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1605,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1608,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1610,1
    - Dst: xsltExtElementPtr::precomp
      Src: /src/libxslt/libxslt/extensions.c:1635,1
    - Dst: xsltNewElemPreComp
      Src: /src/libxslt/libxslt/extensions.c:1643,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - style
    - inst
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1647
      start: 1595
    functionDepth: 4
    functionLinenumber: 1595
    functionLinenumberEnd: 1647
    functionName: xsltPreComputeExtModuleElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlHashLookup2
    - xmlMutexUnlock
    - xmlMutexLock
    - xsltNewElemPreComp
    - xsltExtElementPtr::precomp
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: xsltElemPreCompPtr xsltPreComputeExtModuleElement(xsltStylesheetPtr
      style, xmlNodePtr inst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:1673,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1677,1
    - Dst: xsltNewExtElement
      Src: /src/libxslt/libxslt/extensions.c:1679,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxslt/libxslt/extensions.c:1685,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1689,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - name
    - URI
    - precomp
    - transform
    argTypes:
    - xmlChar*
    - xmlChar*
    - xsltPreComputeFunction
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1660
    functionDepth: 4
    functionLinenumber: 1660
    functionLinenumberEnd: 1692
    functionName: xsltRegisterExtModuleElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 4
    functionsReached:
    - xmlMutexUnlock
    - xmlHashUpdateEntry2
    - xmlMutexLock
    - xmlHashCreate
    - xsltNewExtElement
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtModuleElement(const xmlChar * name, const xmlChar
      * URI,\n                             xsltPreComputeFunction precomp,\n                             xsltTransformFunction
      transform)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1715,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1715,1
    - Dst: xsltExtModuleElementLookup
      Src: /src/libxslt/libxslt/extensions.c:1721,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - ctxt
    - name
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1724
      start: 1705
    functionDepth: 1
    functionLinenumber: 1705
    functionLinenumberEnd: 1724
    functionName: xsltExtElementLookup
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlHashLookup2
    - XML_CAST_FPTR
    - xsltExtModuleElementLookup
    linkageType: ''
    returnType: xsltTransformFunction
    signature: "xsltTransformFunction xsltExtElementLookup(xsltTransformContextPtr
      ctxt,\n                     const xmlChar * name, const xmlChar * URI)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1743,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1745,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1747,1
    - Dst: xsltExtModuleRegisterDynamic
      Src: /src/libxslt/libxslt/extensions.c:1754,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1755,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1758,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1760,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1735
    functionDepth: 2
    functionLinenumber: 1735
    functionLinenumberEnd: 1767
    functionName: xsltExtModuleElementLookup
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashLookup2
    - xsltExtModuleRegisterDynamic
    linkageType: ''
    returnType: xsltTransformFunction
    signature: xsltTransformFunction xsltExtModuleElementLookup(const xmlChar * name,
      const xmlChar * URI)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1787,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1789,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1791,1
    - Dst: xsltExtModuleRegisterDynamic
      Src: /src/libxslt/libxslt/extensions.c:1794,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1795,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1798,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1800,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1807
      start: 1778
    functionDepth: 2
    functionLinenumber: 1778
    functionLinenumberEnd: 1807
    functionName: xsltExtModuleElementPreComputeLookup
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashLookup2
    - xsltExtModuleRegisterDynamic
    linkageType: ''
    returnType: xsltPreComputeFunction
    signature: "xsltPreComputeFunction xsltExtModuleElementPreComputeLookup(const
      xmlChar * name,\n                                     const xmlChar * URI)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1826,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxslt/libxslt/extensions.c:1828,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1831,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1818
    functionDepth: 1
    functionLinenumber: 1818
    functionLinenumberEnd: 1834
    functionName: xsltUnregisterExtModuleElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry2
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xsltUnregisterExtModuleElement(const xmlChar * name, const xmlChar
      * URI)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1844,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1846,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1850
      start: 1841
    functionDepth: 1
    functionLinenumber: 1841
    functionLinenumberEnd: 1850
    functionName: xsltUnregisterAllExtModuleElement
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltUnregisterAllExtModuleElement(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxslt/libxslt/extensions.c:1870,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1874,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxslt/libxslt/extensions.c:1876,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1877,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1879,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - name
    - URI
    - function
    argTypes:
    - xmlChar*
    - xmlChar*
    - xsltTopLevelFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1862
    functionDepth: 1
    functionLinenumber: 1862
    functionLinenumberEnd: 1882
    functionName: xsltRegisterExtModuleTopLevel
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlMutexUnlock
    - xmlHashUpdateEntry2
    - XML_CAST_FPTR
    - xmlMutexLock
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xsltRegisterExtModuleTopLevel(const xmlChar * name, const xmlChar
      * URI,\n                              xsltTopLevelFunction function)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1901,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1903,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1903,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1905,1
    - Dst: xsltExtModuleRegisterDynamic
      Src: /src/libxslt/libxslt/extensions.c:1909,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1910,1
    - Dst: XML_CAST_FPTR
      Src: /src/libxslt/libxslt/extensions.c:1912,1
    - Dst: xmlHashLookup2
      Src: /src/libxslt/libxslt/extensions.c:1912,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1919
      start: 1893
    functionDepth: 2
    functionLinenumber: 1893
    functionLinenumberEnd: 1919
    functionName: xsltExtModuleTopLevelLookup
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlHashLookup2
    - xmlMutexUnlock
    - XML_CAST_FPTR
    - xmlMutexLock
    - xsltExtModuleRegisterDynamic
    linkageType: ''
    returnType: xsltTopLevelFunction
    signature: xsltTopLevelFunction xsltExtModuleTopLevelLookup(const xmlChar * name,
      const xmlChar * URI)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1938,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxslt/libxslt/extensions.c:1940,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1942,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - name
    - URI
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1930
    functionDepth: 1
    functionLinenumber: 1930
    functionLinenumberEnd: 1945
    functionName: xsltUnregisterExtModuleTopLevel
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry2
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xsltUnregisterExtModuleTopLevel(const xmlChar * name, const xmlChar
      * URI)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:1955,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:1957,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:1960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1952
    functionDepth: 1
    functionLinenumber: 1952
    functionLinenumberEnd: 1961
    functionName: xsltUnregisterAllExtModuleTopLevel
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xsltUnregisterAllExtModuleTopLevel(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxslt/libxslt/extensions.c:1985,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - style
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1990
      start: 1972
    functionDepth: 1
    functionLinenumber: 1972
    functionLinenumberEnd: 1990
    functionName: xsltGetExtInfo
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlHashTablePtr
    signature: xmlHashTablePtr xsltGetExtInfo(xsltStylesheetPtr style, const xmlChar
      * URI)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extensions.c:2015,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2018,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/libxslt/extensions.c:2021,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2023,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2029,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extensions.c:2029,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/libxslt/extensions.c:2034,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2036,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extensions.c:2036,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2041,1
    - Dst: xsltXPathGetTransformContext
      Src: /src/libxslt/libxslt/extensions.c:2041,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2046,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2008
    functionDepth: 5
    functionLinenumber: 2008
    functionLinenumberEnd: 2049
    functionName: xsltExtFunctionTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    - xsltGetExtData
    - xsltXPathGetTransformContext
    linkageType: ''
    returnType: void
    signature: "void xsltExtFunctionTest(xmlXPathParserContextPtr ctxt,\n                    int
      nargs ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2065,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2070,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/libxslt/extensions.c:2073,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2075,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2083,1
    - Dst: xsltNewElemPreComp
      Src: /src/libxslt/libxslt/extensions.c:2089,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 3
    argNames:
    - style
    - inst
    - function
    argTypes:
    - xsltStylesheetPtr
    - xmlNodePtr
    - xsltTransformFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2091
      start: 2058
    functionDepth: 6
    functionLinenumber: 2058
    functionLinenumberEnd: 2091
    functionName: xsltExtElementPreCompTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltNewElemPreComp
    - xsltStyleGetExtData
    - xsltGenericDebug
    linkageType: ''
    returnType: xsltElemPreCompPtr
    signature: "xsltElemPreCompPtr xsltExtElementPreCompTest(xsltStylesheetPtr style,
      xmlNodePtr inst,\n                          xsltTransformFunction function)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2110,1
    - Dst: xsltGetExtData
      Src: /src/libxslt/libxslt/extensions.c:2113,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2115,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2121,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2126,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2131,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2136,1
    - Dst: xmlNewComment
      Src: /src/libxslt/libxslt/extensions.c:2140,1
    - Dst: xmlAddChild
      Src: /src/libxslt/libxslt/extensions.c:2142,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 4
    argNames:
    - ctxt
    - node
    - inst
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltTransformContextPtr
    - xmlNodePtr
    - xmlNodePtr
    - xsltElemPreCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2143
      start: 2102
    functionDepth: 5
    functionLinenumber: 2102
    functionLinenumberEnd: 2143
    functionName: xsltExtElementTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltGenericDebug
    - xsltTransformError
    - xsltGetExtData
    - xmlAddChild
    - xmlNewComment
    linkageType: ''
    returnType: void
    signature: "void xsltExtElementTest(xsltTransformContextPtr ctxt, xmlNodePtr node,\n
      \                  xmlNodePtr inst,\n                   xsltElemPreCompPtr comp
      ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2158,1
    - Dst: xsltStyleGetExtData
      Src: /src/libxslt/libxslt/extensions.c:2161,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2163,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2169,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - URI
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2177
      start: 2154
    functionDepth: 6
    functionLinenumber: 2154
    functionLinenumberEnd: 2177
    functionName: xsltExtInitTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltStyleGetExtData
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltExtInitTest(xsltTransformContextPtr ctxt, const xmlChar * URI)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2193,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2198,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctxt
    - URI
    - data
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2204
      start: 2188
    functionDepth: 3
    functionLinenumber: 2188
    functionLinenumberEnd: 2204
    functionName: xsltExtShutdownTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: "void xsltExtShutdownTest(xsltTransformContextPtr ctxt,\n                    const
      xmlChar * URI, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2220,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - URI
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2228
      start: 2215
    functionDepth: 3
    functionLinenumber: 2215
    functionLinenumberEnd: 2228
    functionName: xsltExtStyleInitTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    linkageType: ''
    returnType: void
    signature: "void *\nxsltExtStyleInitTest(xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n
      \                    const xmlChar * URI)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xsltGenericError
      Src: /src/libxslt/libxslt/extensions.c:2244,1
    - Dst: xsltTransformError
      Src: /src/libxslt/libxslt/extensions.c:2249,1
    - Dst: xsltGenericDebug
      Src: /src/libxslt/libxslt/extensions.c:2253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - URI
    - data
    argTypes:
    - xsltStylesheetPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2239
    functionDepth: 3
    functionLinenumber: 2239
    functionLinenumberEnd: 2255
    functionName: xsltExtStyleShutdownTest
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - xsltTransformError
    - xsltGenericDebug
    - xsltGenericError
    linkageType: ''
    returnType: void
    signature: "void xsltExtStyleShutdownTest(xsltStylesheetPtr style ATTRIBUTE_UNUSED,\n
      \                        const xmlChar * URI, void *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltInitGlobals
      Src: /src/libxslt/libxslt/extensions.c:2265,1
    - Dst: xsltRegisterExtModuleFull
      Src: /src/libxslt/libxslt/extensions.c:2266,1
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/libxslt/extensions.c:2270,1
    - Dst: xsltRegisterExtModuleElement
      Src: /src/libxslt/libxslt/extensions.c:2273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2262
    functionDepth: 5
    functionLinenumber: 2262
    functionLinenumberEnd: 2277
    functionName: xsltRegisterTestModule
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 1
    functionsReached:
    - xsltRegisterExtModuleElement
    - xsltRegisterExtModuleFunction
    - xsltRegisterExtModuleFull
    - xsltInitGlobals
    linkageType: ''
    returnType: void
    signature: void xsltRegisterTestModule(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FreeLibrary
      Src: /src/libxslt/libxslt/extensions.c:2286,1
    - Dst: dlclose
      Src: /src/libxslt/libxslt/extensions.c:2288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2293
      start: 2279
    functionDepth: 0
    functionLinenumber: 2279
    functionLinenumberEnd: 2293
    functionName: xsltHashScannerModuleFree
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - dlclose
    - FreeLibrary
    linkageType: ''
    returnType: void
    signature: "void xsltHashScannerModuleFree(void *payload,\n                          void
      *data ATTRIBUTE_UNUSED,\n                          const xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewMutex
      Src: /src/libxslt/libxslt/extensions.c:2304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2306
      start: 2300
    functionDepth: 1
    functionLinenumber: 2300
    functionLinenumberEnd: 2306
    functionName: xsltInitGlobals
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 11
    functionsReached:
    - xmlNewMutex
    linkageType: ''
    returnType: void
    signature: void xsltInitGlobals(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltUnregisterAllExtModules
      Src: /src/libxslt/libxslt/extensions.c:2316,1
    - Dst: xsltUnregisterAllExtModuleFunction
      Src: /src/libxslt/libxslt/extensions.c:2317,1
    - Dst: xsltUnregisterAllExtModuleElement
      Src: /src/libxslt/libxslt/extensions.c:2318,1
    - Dst: xsltUnregisterAllExtModuleTopLevel
      Src: /src/libxslt/libxslt/extensions.c:2319,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:2321,1
    - Dst: xmlHashScan
      Src: /src/libxslt/libxslt/extensions.c:2324,1
    - Dst: xmlHashFree
      Src: /src/libxslt/libxslt/extensions.c:2325,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:2328,1
    - Dst: xmlFreeMutex
      Src: /src/libxslt/libxslt/extensions.c:2330,1
    - Dst: xsltFreeLocales
      Src: /src/libxslt/libxslt/extensions.c:2332,1
    - Dst: xsltUninit
      Src: /src/libxslt/libxslt/extensions.c:2333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2334
      start: 2313
    functionDepth: 2
    functionLinenumber: 2313
    functionLinenumberEnd: 2334
    functionName: xsltCleanupGlobals
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 2
    functionsReached:
    - xmlMutexUnlock
    - xsltFreeLocales
    - xsltUninit
    - xsltUnregisterAllExtModuleFunction
    - xsltUnregisterAllExtModuleElement
    - xmlHashFree
    - xmlMutexLock
    - xsltUnregisterAllExtModules
    - xmlFreeMutex
    - xmlHashScan
    - xsltUnregisterAllExtModuleTopLevel
    linkageType: ''
    returnType: void
    signature: void xsltCleanupGlobals(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - data
    - name
    - URI
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2346
      start: 2336
    functionDepth: 0
    functionLinenumber: 2336
    functionLinenumberEnd: 2346
    functionName: xsltDebugDumpExtensionsCallback
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xsltDebugDumpExtensionsCallback(void *function ATTRIBUTE_UNUSED,\n
      \                               void *data, const xmlChar * name,\n                                const
      xmlChar * URI,\n                                const xmlChar * not_used ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - data
    - URI
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2348
    functionDepth: 0
    functionLinenumber: 2348
    functionLinenumberEnd: 2358
    functionName: xsltDebugDumpExtModulesCallback
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xsltDebugDumpExtModulesCallback(void *function ATTRIBUTE_UNUSED,\n
      \                               void *data, const xmlChar * URI,\n                                const
      xmlChar * not_used ATTRIBUTE_UNUSED,\n                                const
      xmlChar * not_used2 ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2371,1
    - Dst: xmlMutexLock
      Src: /src/libxslt/libxslt/extensions.c:2373,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2375,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2377,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libxslt/extensions.c:2378,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2382,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2384,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libxslt/extensions.c:2385,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2389,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2391,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libxslt/extensions.c:2392,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2396,1
    - Dst: fprintf
      Src: /src/libxslt/libxslt/extensions.c:2398,1
    - Dst: xmlHashScanFull
      Src: /src/libxslt/libxslt/extensions.c:2399,1
    - Dst: xmlMutexUnlock
      Src: /src/libxslt/libxslt/extensions.c:2402,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 1
    argNames:
    - output
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2403
      start: 2366
    functionDepth: 1
    functionLinenumber: 2366
    functionLinenumberEnd: 2403
    functionName: xsltDebugDumpExtensions
    functionSourceFile: /src/libxslt/libxslt/extensions.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlMutexUnlock
    - xmlMutexLock
    - xmlHashScanFull
    linkageType: ''
    returnType: void
    signature: void xsltDebugDumpExtensions(FILE * output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionName: XSLT_REGISTER_FUNCTION_LOOKUP
    functionSourceFile: /src/libxslt/libxslt/functions.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_REGISTER_FUNCTION_LOOKUP(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - style
    - ','
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionName: XSLT_GET_IMPORT_PTR
    functionSourceFile: /src/libxslt/libxslt/imports.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_GET_IMPORT_PTR(res, style, name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - style
    - ','
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 47
    functionName: XSLT_GET_IMPORT_INT
    functionSourceFile: /src/libxslt/libxslt/imports.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XSLT_GET_IMPORT_INT(res, style, name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ucol_open
      Src: /src/libxslt/examples/xsltICUSort.c:25,1
    - Dst: U_FAILURE
      Src: /src/libxslt/examples/xsltICUSort.c:26,1
    - Dst: ucol_open
      Src: /src/libxslt/examples/xsltICUSort.c:28,1
    - Dst: U_FAILURE
      Src: /src/libxslt/examples/xsltICUSort.c:29,1
    - Dst: ucol_setAttribute
      Src: /src/libxslt/examples/xsltICUSort.c:35,1
    - Dst: ucol_setAttribute
      Src: /src/libxslt/examples/xsltICUSort.c:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - lang
    - lowerFirst
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 40
    functionName: xsltICUNewLocale
    functionSourceFile: /src/libxslt/examples/xsltICUSort.c
    functionUses: 0
    functionsReached:
    - U_FAILURE
    - ucol_open
    - ucol_setAttribute
    linkageType: ''
    returnType: void
    signature: 'void *

      xsltICUNewLocale(const xmlChar *lang, int lowerFirst)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ucol_close
      Src: /src/libxslt/examples/xsltICUSort.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - coll
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: xsltICUFreeLocale
    functionSourceFile: /src/libxslt/examples/xsltICUSort.c
    functionUses: 0
    functionsReached:
    - ucol_close
    linkageType: ''
    returnType: void
    signature: void xsltICUFreeLocale(void *coll)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ucnv_open
      Src: /src/libxslt/examples/xsltICUSort.c:68,1
    - Dst: U_FAILURE
      Src: /src/libxslt/examples/xsltICUSort.c:69,1
    - Dst: ucnv_toUChars
      Src: /src/libxslt/examples/xsltICUSort.c:72,1
    - Dst: U_FAILURE
      Src: /src/libxslt/examples/xsltICUSort.c:73,1
    - Dst: xmlMalloc
      Src: /src/libxslt/examples/xsltICUSort.c:76,1
    - Dst: ucnv_toUChars
      Src: /src/libxslt/examples/xsltICUSort.c:79,1
    - Dst: U_FAILURE
      Src: /src/libxslt/examples/xsltICUSort.c:81,1
    - Dst: ucol_getSortKey
      Src: /src/libxslt/examples/xsltICUSort.c:84,1
    - Dst: xmlMalloc
      Src: /src/libxslt/examples/xsltICUSort.c:87,1
    - Dst: ucol_getSortKey
      Src: /src/libxslt/examples/xsltICUSort.c:90,1
    - Dst: xmlFree
      Src: /src/libxslt/examples/xsltICUSort.c:93,1
    - Dst: xmlFree
      Src: /src/libxslt/examples/xsltICUSort.c:99,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 2
    argNames:
    - coll
    - str
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 101
    functionName: xsltICUGenSortKey
    functionSourceFile: /src/libxslt/examples/xsltICUSort.c
    functionUses: 0
    functionsReached:
    - U_FAILURE
    - xmlFree
    - ucnv_open
    - ucol_getSortKey
    - xmlMalloc
    - ucnv_toUChars
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xsltICUGenSortKey(void *coll, const xmlChar *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxslt/examples/xsltICUSort.c:104,1
    - Dst: xmlReadDoc
      Src: /src/libxslt/examples/xsltICUSort.c:112,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/examples/xsltICUSort.c:126,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/examples/xsltICUSort.c:128,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/examples/xsltICUSort.c:130,1
    - Dst: xsltSetCtxtLocaleHandlers
      Src: /src/libxslt/examples/xsltICUSort.c:131,1
    - Dst: xsltApplyStylesheetUser
      Src: /src/libxslt/examples/xsltICUSort.c:134,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/examples/xsltICUSort.c:137,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/examples/xsltICUSort.c:139,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/examples/xsltICUSort.c:141,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/examples/xsltICUSort.c:142,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/examples/xsltICUSort.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 103
    functionDepth: 9
    functionLinenumber: 103
    functionLinenumberEnd: 146
    functionName: main
    functionSourceFile: /src/libxslt/examples/xsltICUSort.c
    functionUses: 0
    functionsReached:
    - xsltParseStylesheetDoc
    - xsltFreeTransformContext
    - xsltNewTransformContext
    - xmlReadDoc
    - xsltFreeStylesheet
    - xsltSetCtxtLocaleHandlers
    - xsltApplyStylesheetUser
    - xmlFreeDoc
    - xsltSaveResultToFile
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:107,1
    - Dst: xmlStrndup
      Src: /src/libxslt/xsltproc/xsltproc.c:117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 123
    functionName: parsePath
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlStrndup
    linkageType: ''
    returnType: void
    signature: void parsePath(const xmlChar *path)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: defaultEntityLoader
      Src: /src/libxslt/xsltproc/xsltproc.c:151,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:156,1
    - Dst: xmlStrdup
      Src: /src/libxslt/xsltproc/xsltproc.c:168,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:169,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:170,1
    - Dst: defaultEntityLoader
      Src: /src/libxslt/xsltproc/xsltproc.c:173,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:178,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/xsltproc.c:184,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/xsltproc.c:187,1
    - Dst: warning
      Src: /src/libxslt/xsltproc/xsltproc.c:193,1
    - Dst: warning
      Src: /src/libxslt/xsltproc/xsltproc.c:195,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 3
    argNames:
    - URL
    - ID
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 198
    functionName: xsltprocExternalEntityLoader
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - defaultEntityLoader
    - fprintf
    - xmlStrcat
    - warning
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr xsltprocExternalEntityLoader(const char *URL, const
      char *ID,\n\t\t\t     xmlParserCtxtPtr ctxt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ftime
      Src: /src/libxslt/xsltproc/xsltproc.c:214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - tvp
    - tzp
    argTypes:
    - struct timeval*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 220
    functionName: my_gettimeofday
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - ftime
    linkageType: ''
    returnType: int
    signature: int my_gettimeofday(struct timeval *tvp, void *tzp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/libxslt/xsltproc/xsltproc.c:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: startTimer
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: void
    signature: void startTimer(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/libxslt/xsltproc/xsltproc.c:250,1
    - Dst: va_start
      Src: /src/libxslt/xsltproc/xsltproc.c:255,1
    - Dst: vfprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:256,1
    - Dst: va_end
      Src: /src/libxslt/xsltproc/xsltproc.c:257,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 260
    functionName: endTimer
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - va_end
    - va_start
    - gettimeofday
    - vfprintf
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endTimer(const char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock
      Src: /src/libxslt/xsltproc/xsltproc.c:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 275
    functionName: startTimer
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - clock
    linkageType: ''
    returnType: void
    signature: void startTimer(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock
      Src: /src/libxslt/xsltproc/xsltproc.c:281,1
    - Dst: va_start
      Src: /src/libxslt/xsltproc/xsltproc.c:284,1
    - Dst: vfprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:285,1
    - Dst: va_end
      Src: /src/libxslt/xsltproc/xsltproc.c:286,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 288
    functionName: endTimer
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - va_end
    - va_start
    - clock
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endTimer(const char *format, ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxslt/xsltproc/xsltproc.c:307,1
    - Dst: xmlStrncmp
      Src: /src/libxslt/xsltproc/xsltproc.c:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xsltSecurityPrefsPtr
    - xsltTransformContextPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 312
    functionName: xsltSubtreeCheck
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - xmlStrncmp
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: "int xsltSubtreeCheck(xsltSecurityPrefsPtr sec ATTRIBUTE_UNUSED,\n\t
      \         xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n\t\t  const char *value
      ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:320,1
    - Dst: htmlReadFd
      Src: /src/libxslt/xsltproc/xsltproc.c:321,1
    - Dst: htmlReadFile
      Src: /src/libxslt/xsltproc/xsltproc.c:323,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:327,1
    - Dst: xmlReadFd
      Src: /src/libxslt/xsltproc/xsltproc.c:328,1
    - Dst: xmlReadFile
      Src: /src/libxslt/xsltproc/xsltproc.c:330,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 334
    functionName: xsltReadFile
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - htmlReadFile
    - htmlReadFd
    - xmlReadFd
    - strcmp
    - xmlReadFile
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xsltReadFile(const char *filename)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:347,1
    - Dst: xmlXIncludeProcessFlags
      Src: /src/libxslt/xsltproc/xsltproc.c:349,1
    - Dst: xmlXIncludeProcess
      Src: /src/libxslt/xsltproc/xsltproc.c:351,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:354,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:364,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/xsltproc/xsltproc.c:370,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:371,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:372,1
    - Dst: xsltReadFile
      Src: /src/libxslt/xsltproc/xsltproc.c:373,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/xsltproc/xsltproc.c:376,1
    - Dst: xsltSetCtxtParseOptions
      Src: /src/libxslt/xsltproc/xsltproc.c:379,1
    - Dst: xsltApplyStylesheetUser
      Src: /src/libxslt/xsltproc/xsltproc.c:385,1
    - Dst: xsltApplyStylesheetUser
      Src: /src/libxslt/xsltproc/xsltproc.c:388,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/xsltproc/xsltproc.c:395,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:398,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:400,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:402,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:404,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:408,1
    - Dst: xmlDebugDumpDocument
      Src: /src/libxslt/xsltproc/xsltproc.c:413,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:418,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/xsltproc/xsltproc.c:419,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:421,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/xsltproc/xsltproc.c:423,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:425,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:427,1
    - Dst: xsltSaveResultToFile
      Src: /src/libxslt/xsltproc/xsltproc.c:428,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:430,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:432,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:442,1
    - Dst: xsltNewTransformContext
      Src: /src/libxslt/xsltproc/xsltproc.c:445,1
    - Dst: xsltSetCtxtParseOptions
      Src: /src/libxslt/xsltproc/xsltproc.c:448,1
    - Dst: xsltRunStylesheetUser
      Src: /src/libxslt/xsltproc/xsltproc.c:457,1
    - Dst: xsltRunStylesheetUser
      Src: /src/libxslt/xsltproc/xsltproc.c:460,1
    - Dst: xsltFreeTransformContext
      Src: /src/libxslt/xsltproc/xsltproc.c:469,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:471,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:472,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 103
    argCount: 3
    argNames:
    - doc
    - cur
    - filename
    argTypes:
    - xmlDocPtr
    - xsltStylesheetPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 336
    functionDepth: 9
    functionLinenumber: 336
    functionLinenumberEnd: 474
    functionName: xsltProcess
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - xsltRunStylesheetUser
    - xmlXIncludeProcess
    - xmlStrEqual
    - xmlDebugDumpDocument
    - xsltSetCtxtParseOptions
    - endTimer
    - xsltFreeTransformContext
    - xsltNewTransformContext
    - xmlXIncludeProcessFlags
    - startTimer
    - xsltApplyStylesheet
    - xsltReadFile
    - fprintf
    - xsltApplyStylesheetUser
    - xmlFreeDoc
    - xsltSaveResultToFile
    linkageType: ''
    returnType: void
    signature: void xsltProcess(xmlDocPtr doc, xsltStylesheetPtr cur, const char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:477,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:478,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:479,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:480,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:481,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:482,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:483,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:485,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:487,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:488,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:489,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:490,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:491,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:492,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:493,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:494,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:495,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:497,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:499,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:500,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:501,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:502,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:503,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:504,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:505,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:506,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:507,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:508,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:509,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:510,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:512,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:513,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:514,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:517,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:518,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:520,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:521,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 39
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 476
    functionDepth: 0
    functionLinenumber: 476
    functionLinenumberEnd: 523
    functionName: usage
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 2
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 78
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/libxslt/xsltproc/xsltproc.c:534,1
    - Dst: srand
      Src: /src/libxslt/xsltproc/xsltproc.c:538,1
    - Dst: time
      Src: /src/libxslt/xsltproc/xsltproc.c:538,1
    - Dst: setmode
      Src: /src/libxslt/xsltproc/xsltproc.c:541,1
    - Dst: fileno
      Src: /src/libxslt/xsltproc/xsltproc.c:541,1
    - Dst: setmode
      Src: /src/libxslt/xsltproc/xsltproc.c:542,1
    - Dst: fileno
      Src: /src/libxslt/xsltproc/xsltproc.c:542,1
    - Dst: _set_output_format
      Src: /src/libxslt/xsltproc/xsltproc.c:545,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:550,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:551,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxslt/xsltproc/xsltproc.c:552,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxslt/xsltproc/xsltproc.c:553,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:556,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:562,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:562,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:566,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:567,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:568,1
    - Dst: xsltSetGenericDebugFunc
      Src: /src/libxslt/xsltproc/xsltproc.c:569,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:570,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:571,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:572,1
    - Dst: xmlCanonicPath
      Src: /src/libxslt/xsltproc/xsltproc.c:575,1
    - Dst: xmlStrdup
      Src: /src/libxslt/xsltproc/xsltproc.c:578,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:579,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:580,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:581,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:582,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:584,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:587,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/xsltproc.c:589,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:591,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:592,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:597,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:598,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:600,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:601,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:603,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:604,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:607,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:608,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:611,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:612,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:614,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:615,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:617,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:618,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:620,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:621,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:623,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:624,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:626,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:627,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:629,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:630,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:631,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:633,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:635,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:637,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:638,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:639,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:641,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:642,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:645,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:647,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:648,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:652,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:653,1
    - Dst: getenv
      Src: /src/libxslt/xsltproc/xsltproc.c:656,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:658,1
    - Dst: xmlLoadCatalogs
      Src: /src/libxslt/xsltproc/xsltproc.c:660,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:664,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:665,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:667,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:668,1
    - Dst: xsltSetXIncludeDefault
      Src: /src/libxslt/xsltproc/xsltproc.c:670,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:672,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:673,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:675,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:676,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:681,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:684,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:685,1
    - Dst: xmlStrchr
      Src: /src/libxslt/xsltproc/xsltproc.c:692,1
    - Dst: xmlStrchr
      Src: /src/libxslt/xsltproc/xsltproc.c:693,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:694,1
    - Dst: xmlStrdup
      Src: /src/libxslt/xsltproc/xsltproc.c:698,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:699,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:700,1
    - Dst: xmlStrdup
      Src: /src/libxslt/xsltproc/xsltproc.c:702,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:703,1
    - Dst: xmlStrcat
      Src: /src/libxslt/xsltproc/xsltproc.c:704,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:710,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:713,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:714,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:719,1
    - Dst: sscanf
      Src: /src/libxslt/xsltproc/xsltproc.c:723,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:727,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:728,1
    - Dst: sscanf
      Src: /src/libxslt/xsltproc/xsltproc.c:732,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:736,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:737,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:739,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:740,1
    - Dst: sscanf
      Src: /src/libxslt/xsltproc/xsltproc.c:744,1
    - Dst: srand
      Src: /src/libxslt/xsltproc/xsltproc.c:746,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:748,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:749,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:752,1
    - Dst: usage
      Src: /src/libxslt/xsltproc/xsltproc.c:753,1
    - Dst: exsltRegisterAll
      Src: /src/libxslt/xsltproc/xsltproc.c:769,1
    - Dst: xsltRegisterTestModule
      Src: /src/libxslt/xsltproc/xsltproc.c:770,1
    - Dst: xsltDebugDumpExtensions
      Src: /src/libxslt/xsltproc/xsltproc.c:773,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:776,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:777,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:780,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:781,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:784,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:785,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:788,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:789,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:790,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:793,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:794,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:797,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:798,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:801,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:802,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:806,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:806,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:810,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:811,1
    - Dst: strcmp
      Src: /src/libxslt/xsltproc/xsltproc.c:815,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:817,1
    - Dst: xmlReadFile
      Src: /src/libxslt/xsltproc/xsltproc.c:818,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:820,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:825,1
    - Dst: xmlXIncludeProcessFlags
      Src: /src/libxslt/xsltproc/xsltproc.c:827,1
    - Dst: xmlXIncludeProcess
      Src: /src/libxslt/xsltproc/xsltproc.c:829,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:832,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:838,1
    - Dst: xsltLoadStylesheetPI
      Src: /src/libxslt/xsltproc/xsltproc.c:842,1
    - Dst: xsltProcess
      Src: /src/libxslt/xsltproc/xsltproc.c:845,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/xsltproc/xsltproc.c:846,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:850,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/xsltproc.c:858,1
    - Dst: startTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:873,1
    - Dst: xsltReadFile
      Src: /src/libxslt/xsltproc/xsltproc.c:874,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/xsltproc.c:876,1
    - Dst: endTimer
      Src: /src/libxslt/xsltproc/xsltproc.c:881,1
    - Dst: xsltProcess
      Src: /src/libxslt/xsltproc/xsltproc.c:882,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/xsltproc/xsltproc.c:887,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/xsltproc.c:889,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/xsltproc.c:891,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/libxslt/xsltproc/xsltproc.c:892,1
    - Dst: xsltCleanupGlobals
      Src: /src/libxslt/xsltproc/xsltproc.c:893,1
    - Dst: xmlCleanupParser
      Src: /src/libxslt/xsltproc/xsltproc.c:894,1
    CyclomaticComplexity: 145
    EdgeCount: 145
    ICount: 299
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 525
    functionDepth: 10
    functionLinenumber: 525
    functionLinenumberEnd: 896
    functionName: main
    functionSourceFile: /src/libxslt/xsltproc/xsltproc.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlStrdup
    - xmlCleanupParser
    - _set_output_format
    - xsltSetSecurityPrefs
    - xmlXIncludeProcessFlags
    - xmlCanonicPath
    - xmlLoadCatalogs
    - xsltDebugDumpExtensions
    - sscanf
    - xsltRegisterTestModule
    - exsltRegisterAll
    - xmlFree
    - endTimer
    - strcmp
    - time
    - fprintf
    - xmlStrcat
    - xsltFreeStylesheet
    - fileno
    - xsltSetXIncludeDefault
    - xsltNewSecurityPrefs
    - xsltProcess
    - xsltFreeSecurityPrefs
    - xsltLoadStylesheetPI
    - setmode
    - startTimer
    - xsltReadFile
    - getenv
    - xmlStrchr
    - xmlGetExternalEntityLoader
    - xmlXIncludeProcess
    - usage
    - xsltParseStylesheetDoc
    - xsltCleanupGlobals
    - xmlSetExternalEntityLoader
    - xmlReadFile
    - printf
    - xsltSetGenericDebugFunc
    - xmlFreeDoc
    - srand
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathReturnString
      Src: /src/libxslt/xsltproc/testThreads.c:68,1
    - Dst: xmlStrdup
      Src: /src/libxslt/xsltproc/testThreads.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: fooFunction
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXPathReturnString
    linkageType: ''
    returnType: void
    signature: "void fooFunction(xmlXPathParserContextPtr ctxt,\n                        int
      nargs ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModuleFunction
      Src: /src/libxslt/xsltproc/testThreads.c:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - xsltTransformContextPtr
    - URI
    argTypes:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: registerFooExtensions
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModuleFunction
    linkageType: ''
    returnType: void
    signature: "void * registerFooExtensions(ATTRIBUTE_UNUSED xsltTransformContextPtr
      ctxt,\n                             ATTRIBUTE_UNUSED const xmlChar *URI)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxslt/xsltproc/testThreads.c:82,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:83,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/xsltproc/testThreads.c:85,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:86,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - URI
    - data
    argTypes:
    - xsltTransformContextPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 88
    functionName: shutdownFooExtensions
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: "void shutdownFooExtensions(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED,\n
      \                          const xmlChar *URI, void *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xsltRegisterExtModule
      Src: /src/libxslt/xsltproc/testThreads.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 90
    functionDepth: 6
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionName: registerFooModule
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - xsltRegisterExtModule
    linkageType: ''
    returnType: void
    signature: void registerFooModule(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadMemory
      Src: /src/libxslt/xsltproc/testThreads.c:105,1
    - Dst: strlen
      Src: /src/libxslt/xsltproc/testThreads.c:105,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:107,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:108,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/xsltproc/testThreads.c:110,1
    - Dst: strlen
      Src: /src/libxslt/xsltproc/testThreads.c:110,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:112,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:113,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/xsltproc/testThreads.c:115,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:117,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:118,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/xsltproc/testThreads.c:120,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:122,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:123,1
    - Dst: xsltSaveResultToString
      Src: /src/libxslt/xsltproc/testThreads.c:125,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:126,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:127,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/xsltproc/testThreads.c:129,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:130,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:131,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/xsltproc/testThreads.c:133,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/testThreads.c:134,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/testThreads.c:135,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/testThreads.c:136,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 1
    argNames:
    - data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 94
    functionDepth: 9
    functionLinenumber: 94
    functionLinenumberEnd: 138
    functionName: threadRoutine1
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - xsltParseStylesheetDoc
    - strlen
    - xmlStrEqual
    - xmlFree
    - xmlReadMemory
    - xsltSaveResultToString
    - exit
    - xsltApplyStylesheet
    - fprintf
    - xmlFreeDoc
    - xsltFreeStylesheet
    linkageType: ''
    returnType: void
    signature: 'void *

      threadRoutine1(void *data)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:150,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:151,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/xsltproc/testThreads.c:153,1
    - Dst: strlen
      Src: /src/libxslt/xsltproc/testThreads.c:153,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:155,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:156,1
    - Dst: xsltApplyStylesheet
      Src: /src/libxslt/xsltproc/testThreads.c:158,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:160,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:161,1
    - Dst: xsltSaveResultToString
      Src: /src/libxslt/xsltproc/testThreads.c:163,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:164,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:165,1
    - Dst: xmlStrEqual
      Src: /src/libxslt/xsltproc/testThreads.c:167,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:168,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:169,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/testThreads.c:171,1
    - Dst: xmlFreeDoc
      Src: /src/libxslt/xsltproc/testThreads.c:172,1
    - Dst: xmlFree
      Src: /src/libxslt/xsltproc/testThreads.c:173,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 1
    argNames:
    - data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 140
    functionDepth: 9
    functionLinenumber: 140
    functionLinenumberEnd: 175
    functionName: threadRoutine2
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - strlen
    - xmlFree
    - xmlReadMemory
    - xsltSaveResultToString
    - exit
    - xsltApplyStylesheet
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: 'void *

      threadRoutine2(void *data)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxslt/xsltproc/testThreads.c:184,1
    - Dst: exsltRegisterAll
      Src: /src/libxslt/xsltproc/testThreads.c:189,1
    - Dst: xsltRegisterTestModule
      Src: /src/libxslt/xsltproc/testThreads.c:190,1
    - Dst: registerFooModule
      Src: /src/libxslt/xsltproc/testThreads.c:195,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/testThreads.c:201,1
    - Dst: memset
      Src: /src/libxslt/xsltproc/testThreads.c:203,1
    - Dst: memset
      Src: /src/libxslt/xsltproc/testThreads.c:204,1
    - Dst: pthread_create
      Src: /src/libxslt/xsltproc/testThreads.c:207,1
    - Dst: perror
      Src: /src/libxslt/xsltproc/testThreads.c:210,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:211,1
    - Dst: pthread_join
      Src: /src/libxslt/xsltproc/testThreads.c:215,1
    - Dst: perror
      Src: /src/libxslt/xsltproc/testThreads.c:217,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:218,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/testThreads.c:227,1
    - Dst: xmlReadMemory
      Src: /src/libxslt/xsltproc/testThreads.c:232,1
    - Dst: strlen
      Src: /src/libxslt/xsltproc/testThreads.c:232,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:235,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:236,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/libxslt/xsltproc/testThreads.c:238,1
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:240,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:241,1
    - Dst: memset
      Src: /src/libxslt/xsltproc/testThreads.c:243,1
    - Dst: memset
      Src: /src/libxslt/xsltproc/testThreads.c:244,1
    - Dst: pthread_create
      Src: /src/libxslt/xsltproc/testThreads.c:247,1
    - Dst: perror
      Src: /src/libxslt/xsltproc/testThreads.c:249,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:250,1
    - Dst: pthread_join
      Src: /src/libxslt/xsltproc/testThreads.c:254,1
    - Dst: perror
      Src: /src/libxslt/xsltproc/testThreads.c:256,1
    - Dst: exit
      Src: /src/libxslt/xsltproc/testThreads.c:257,1
    - Dst: xsltFreeStylesheet
      Src: /src/libxslt/xsltproc/testThreads.c:260,1
    - Dst: xsltCleanupGlobals
      Src: /src/libxslt/xsltproc/testThreads.c:262,1
    - Dst: xmlCleanupParser
      Src: /src/libxslt/xsltproc/testThreads.c:263,1
    - Dst: printf
      Src: /src/libxslt/xsltproc/testThreads.c:264,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 176
    functionDepth: 7
    functionLinenumber: 176
    functionLinenumberEnd: 266
    functionName: main
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - perror
    - exsltRegisterAll
    - xsltParseStylesheetDoc
    - strlen
    - xsltCleanupGlobals
    - xmlCleanupParser
    - xmlReadMemory
    - xsltFreeStylesheet
    - registerFooModule
    - exit
    - pthread_join
    - printf
    - xmlInitParser
    - fprintf
    - pthread_create
    - xsltRegisterTestModule
    - memset
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxslt/xsltproc/testThreads.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 273
    functionName: main
    functionSourceFile: /src/libxslt/xsltproc/testThreads.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - table
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 296
    functionName: MAKE_8BIT_HANDLER
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKE_8BIT_HANDLER(name, table)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 301
    functionName: MAKE_ISO_HANDLER
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKE_ISO_HANDLER(name, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionName: MAKE_ISO_HANDLER
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKE_ISO_HANDLER(name, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - in
    - ','
    - out
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionName: MAKE_HANDLER
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAKE_HANDLER(name, in, out)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 28
    argCount: 2
    argNames:
    - in
    - len
    argTypes:
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 436
    functionName: xmlDetectCharEncoding
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncoding
    signature: xmlCharEncoding xmlDetectCharEncoding(const unsigned char* in, int
      len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:454,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:456,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:460,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 462
    functionName: xmlCleanupEncodingAliases
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlCleanupEncodingAliases(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: toupper
      Src: /src/libxml2/encoding.c:484,1
    - Dst: strcmp
      Src: /src/libxml2/encoding.c:493,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - alias
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 498
    functionName: xmlGetEncodingAlias
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - toupper
    - strcmp
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlGetEncodingAlias(const char *alias)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: toupper
      Src: /src/libxml2/encoding.c:521,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/encoding.c:530,1
    - Dst: xmlRealloc
      Src: /src/libxml2/encoding.c:534,1
    - Dst: strcmp
      Src: /src/libxml2/encoding.c:545,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:549,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:552,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:560,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:563,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:565,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 2
    argNames:
    - name
    - alias
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 572
    functionName: xmlAddEncodingAlias
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - toupper
    - xmlRealloc
    - xmlFree
    - strcmp
    - xmlMemStrdup
    - xmlGrowCapacity
    linkageType: ''
    returnType: int
    signature: int xmlAddEncodingAlias(const char *name, const char *alias)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/encoding.c:596,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:597,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:598,1
    - Dst: memmove
      Src: /src/libxml2/encoding.c:600,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - alias
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 606
    functionName: xmlDelEncodingAlias
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - memmove
    - xmlFree
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlDelEncodingAlias(const char *alias)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vkey
    - ventry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 614
    functionName: xmlCompareEncTableEntries
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCompareEncTableEntries(const void *vkey, const void *ventry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: bsearch
      Src: /src/libxml2/encoding.c:624,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 631
    functionName: xmlParseCharEncodingInternal
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - bsearch
    linkageType: ''
    returnType: xmlCharEncoding
    signature: xmlCharEncoding xmlParseCharEncodingInternal(const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseCharEncodingInternal
      Src: /src/libxml2/encoding.c:645,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 642
    functionDepth: 1
    functionLinenumber: 642
    functionLinenumberEnd: 652
    functionName: xmlParseCharEncoding
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlParseCharEncodingInternal
    linkageType: ''
    returnType: xmlCharEncoding
    signature: xmlCharEncoding xmlParseCharEncoding(const char *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - enc
    argTypes:
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 681
    functionName: xmlGetCharEncodingName
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlGetCharEncodingName(xmlCharEncoding enc)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetEncodingAlias
      Src: /src/libxml2/encoding.c:713,1
    - Dst: toupper
      Src: /src/libxml2/encoding.c:723,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:727,1
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:735,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:737,1
    - Dst: memset
      Src: /src/libxml2/encoding.c:740,1
    - Dst: xmlRegisterCharEncodingHandler
      Src: /src/libxml2/encoding.c:749,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - name
    - input
    - output
    argTypes:
    - char*
    - xmlCharEncodingInputFunc
    - xmlCharEncodingOutputFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 700
    functionDepth: 1
    functionLinenumber: 700
    functionLinenumberEnd: 751
    functionName: xmlNewCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - toupper
    - xmlFree
    - xmlMalloc
    - xmlRegisterCharEncodingHandler
    - xmlMemStrdup
    - xmlGetEncodingAlias
    - memset
    linkageType: ''
    returnType: xmlCharEncodingHandler
    signature: "xmlCharEncodingHandler *\nxmlNewCharEncodingHandler(const char *name,\n
      \                         xmlCharEncodingInputFunc input,\n                          xmlCharEncodingOutputFunc
      output)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:776,1
    - Dst: memset
      Src: /src/libxml2/encoding.c:779,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:782,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:797,1
    - Dst: ctxtDtor
      Src: /src/libxml2/encoding.c:801,1
    - Dst: ctxtDtor
      Src: /src/libxml2/encoding.c:803,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 7
    argNames:
    - name
    - input
    - output
    - ctxtDtor
    - inputCtxt
    - outputCtxt
    - out
    argTypes:
    - char*
    - xmlCharEncConvFunc
    - xmlCharEncConvFunc
    - xmlCharEncConvCtxtDtor
    - void*
    - void*
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 807
    functionName: xmlCharEncNewCustomHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlMalloc
    - ctxtDtor
    - xmlMemStrdup
    - memset
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlCharEncNewCustomHandler(const char *name,\n                           xmlCharEncConvFunc
      input, xmlCharEncConvFunc output,\n                           xmlCharEncConvCtxtDtor
      ctxtDtor,\n                           void *inputCtxt, void *outputCtxt,\n                           xmlCharEncodingHandler
      **out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/encoding.c:814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 815
    functionName: xmlInitCharEncodingHandlers
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlInitCharEncodingHandlers(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 827
    functionName: xmlInitEncodingInternal
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlInitEncodingInternal(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupEncodingAliases
      Src: /src/libxml2/encoding.c:841,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:852,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:853,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:856,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 839
    functionDepth: 1
    functionLinenumber: 839
    functionLinenumberEnd: 859
    functionName: xmlCleanupCharEncodingHandlers
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlCleanupEncodingAliases
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlCleanupCharEncodingHandlers(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:874,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:888,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:890,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - handler
    argTypes:
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 869
    functionDepth: 0
    functionLinenumber: 869
    functionLinenumberEnd: 892
    functionName: xmlRegisterCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegisterCharEncodingHandler(xmlCharEncodingHandler *handler)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: impl
      Src: /src/libxml2/encoding.c:916,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/encoding.c:927,1
    - Dst: xmlCharEncIconv
      Src: /src/libxml2/encoding.c:940,1
    - Dst: xmlCharEncUconv
      Src: /src/libxml2/encoding.c:951,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 24
    argCount: 6
    argNames:
    - norig
    - name
    - flags
    - impl
    - implCtxt
    - out
    argTypes:
    - char*
    - char*
    - xmlCharEncFlags
    - xmlCharEncConvImpl
    - void*
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 905
    functionDepth: 1
    functionLinenumber: 905
    functionLinenumberEnd: 961
    functionName: xmlFindExtraHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - impl
    - xmlCharEncUconv
    - xmlCharEncIconv
    - xmlStrcasecmp
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlFindExtraHandler(const char *norig, const char
      *name, xmlCharEncFlags flags,\n                    xmlCharEncConvImpl impl,
      void *implCtxt,\n                    xmlCharEncodingHandler **out)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFindExtraHandler
      Src: /src/libxml2/encoding.c:1013,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - enc
    - out
    argTypes:
    - xmlCharEncoding
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 984
    functionDepth: 2
    functionLinenumber: 984
    functionLinenumberEnd: 1018
    functionName: xmlLookupCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlFindExtraHandler
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlLookupCharEncodingHandler(xmlCharEncoding enc,\n
      \                            xmlCharEncodingHandler **out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlLookupCharEncodingHandler
      Src: /src/libxml2/encoding.c:1032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - enc
    argTypes:
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1028
    functionDepth: 3
    functionLinenumber: 1028
    functionLinenumberEnd: 1034
    functionName: xmlGetCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlLookupCharEncodingHandler
    linkageType: ''
    returnType: xmlCharEncodingHandler
    signature: 'xmlCharEncodingHandler *

      xmlGetCharEncodingHandler(xmlCharEncoding enc)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetEncodingAlias
      Src: /src/libxml2/encoding.c:1079,1
    - Dst: xmlParseCharEncodingInternal
      Src: /src/libxml2/encoding.c:1083,1
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:1121,1
    - Dst: memset
      Src: /src/libxml2/encoding.c:1124,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/encoding.c:1126,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:1128,1
    - Dst: xmlFindExtraHandler
      Src: /src/libxml2/encoding.c:1142,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 5
    argNames:
    - name
    - flags
    - impl
    - implCtxt
    - out
    argTypes:
    - char*
    - xmlCharEncFlags
    - xmlCharEncConvImpl
    - void*
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1063
    functionDepth: 2
    functionLinenumber: 1063
    functionLinenumberEnd: 1143
    functionName: xmlCreateCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlFindExtraHandler
    - xmlParseCharEncodingInternal
    - xmlMalloc
    - xmlMemStrdup
    - xmlGetEncodingAlias
    - memset
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlCreateCharEncodingHandler(const char *name, xmlCharEncFlags
      flags,\n                             xmlCharEncConvImpl impl, void *implCtxt,\n
      \                            xmlCharEncodingHandler **out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/encoding.c:1172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - output
    - out
    argTypes:
    - char*
    - int
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1173
      start: 1167
    functionDepth: 3
    functionLinenumber: 1167
    functionLinenumberEnd: 1173
    functionName: xmlOpenCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlCreateCharEncodingHandler
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlOpenCharEncodingHandler(const char *name, int output,\n
      \                          xmlCharEncodingHandler **out)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/encoding.c:1204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1186
    functionDepth: 3
    functionLinenumber: 1186
    functionLinenumberEnd: 1206
    functionName: xmlFindCharEncodingHandler
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 4
    functionsReached:
    - xmlCreateCharEncodingHandler
    linkageType: ''
    returnType: xmlCharEncodingHandler
    signature: 'xmlCharEncodingHandler *

      xmlFindCharEncodingHandler(const char *name)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: iconv
      Src: /src/libxml2/encoding.c:1250,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1275
      start: 1231
    functionDepth: 0
    functionLinenumber: 1231
    functionLinenumberEnd: 1275
    functionName: xmlIconvConvert
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - iconv
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError xmlIconvConvert(void *vctxt, unsigned char *out, int
      *outlen,\n                const unsigned char *in, int *inlen,\n                int
      flush ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: iconv_close
      Src: /src/libxml2/encoding.c:1285,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:1287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1277
    functionDepth: 0
    functionLinenumber: 1277
    functionLinenumberEnd: 1288
    functionName: xmlIconvFree
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - iconv_close
    linkageType: ''
    returnType: void
    signature: void xmlIconvFree(void *vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/encoding.c:1300,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/encoding.c:1302,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 2
    argNames:
    - name1
    - name2
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1294
    functionDepth: 1
    functionLinenumber: 1294
    functionLinenumberEnd: 1314
    functionName: xmlEncodingMatch
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - IS_ASCII_LETTER
    linkageType: ''
    returnType: int
    signature: int xmlEncodingMatch(const char *name1, const char *name2)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/libxml2/encoding.c:1353,1
    - Dst: xmlEncodingMatch
      Src: /src/libxml2/encoding.c:1366,1
    - Dst: xmlEncodingMatch
      Src: /src/libxml2/encoding.c:1367,1
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:1374,1
    - Dst: iconv_open
      Src: /src/libxml2/encoding.c:1381,1
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:1397,1
    - Dst: iconv_open
      Src: /src/libxml2/encoding.c:1404,1
    - Dst: xmlCharEncNewCustomHandler
      Src: /src/libxml2/encoding.c:1419,1
    - Dst: xmlIconvFree
      Src: /src/libxml2/encoding.c:1424,1
    - Dst: xmlIconvFree
      Src: /src/libxml2/encoding.c:1426,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 3
    argNames:
    - name
    - flags
    - out
    argTypes:
    - char*
    - xmlCharEncFlags
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1317
    functionDepth: 2
    functionLinenumber: 1317
    functionLinenumberEnd: 1428
    functionName: xmlCharEncIconv
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 1
    functionsReached:
    - xmlIconvFree
    - xmlEncodingMatch
    - iconv_open
    - xmlMalloc
    - xmlCharEncNewCustomHandler
    - strstr
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlCharEncIconv(const char *name, xmlCharEncFlags
      flags,\n                xmlCharEncodingHandler **out)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ucnv_convertEx
      Src: /src/libxml2/encoding.c:1493,1
    - Dst: U_SUCCESS
      Src: /src/libxml2/encoding.c:1502,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - flush
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1463
    functionDepth: 0
    functionLinenumber: 1463
    functionLinenumberEnd: 1533
    functionName: xmlUconvConvert
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - U_SUCCESS
    - ucnv_convertEx
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError xmlUconvConvert(void *vctxt, unsigned char *out, int
      *outlen,\n                const unsigned char *in, int *inlen, int flush)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:1543,1
    - Dst: ucnv_open
      Src: /src/libxml2/encoding.c:1552,1
    - Dst: U_FAILURE
      Src: /src/libxml2/encoding.c:1553,1
    - Dst: ucnv_setToUCallBack
      Src: /src/libxml2/encoding.c:1558,1
    - Dst: ucnv_setFromUCallBack
      Src: /src/libxml2/encoding.c:1562,1
    - Dst: U_FAILURE
      Src: /src/libxml2/encoding.c:1565,1
    - Dst: ucnv_open
      Src: /src/libxml2/encoding.c:1569,1
    - Dst: U_FAILURE
      Src: /src/libxml2/encoding.c:1570,1
    - Dst: ucnv_close
      Src: /src/libxml2/encoding.c:1578,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:1579,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - name
    - isInput
    - out
    argTypes:
    - char*
    - int
    - xmlUconvCtxt**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1586
    functionName: openIcuConverter
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - U_FAILURE
    - ucnv_setToUCallBack
    - ucnv_setFromUCallBack
    - xmlFree
    - ucnv_open
    - ucnv_close
    - xmlMalloc
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors openIcuConverter(const char* name, int isInput, xmlUconvCtxt
      **out)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ucnv_close
      Src: /src/libxml2/encoding.c:1593,1
    - Dst: ucnv_close
      Src: /src/libxml2/encoding.c:1594,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:1595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - conv
    argTypes:
    - xmlUconvCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1588
    functionDepth: 0
    functionLinenumber: 1588
    functionLinenumberEnd: 1596
    functionName: closeIcuConverter
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - ucnv_close
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void closeIcuConverter(xmlUconvCtxt *conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: closeIcuConverter
      Src: /src/libxml2/encoding.c:1600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1598
    functionDepth: 1
    functionLinenumber: 1598
    functionLinenumberEnd: 1601
    functionName: xmlUconvFree
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - closeIcuConverter
    linkageType: ''
    returnType: void
    signature: void xmlUconvFree(void *vctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: openIcuConverter
      Src: /src/libxml2/encoding.c:1612,1
    - Dst: openIcuConverter
      Src: /src/libxml2/encoding.c:1619,1
    - Dst: xmlCharEncNewCustomHandler
      Src: /src/libxml2/encoding.c:1625,1
    - Dst: closeIcuConverter
      Src: /src/libxml2/encoding.c:1630,1
    - Dst: closeIcuConverter
      Src: /src/libxml2/encoding.c:1632,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - name
    - flags
    - out
    argTypes:
    - char*
    - xmlCharEncFlags
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1603
    functionDepth: 1
    functionLinenumber: 1603
    functionLinenumberEnd: 1634
    functionName: xmlCharEncUconv
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 1
    functionsReached:
    - closeIcuConverter
    - xmlCharEncNewCustomHandler
    - openIcuConverter
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlCharEncUconv(const char *name, xmlCharEncFlags
      flags,\n                xmlCharEncodingHandler **out)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - code
    argTypes:
    - xmlCharEncError
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1648
    functionDepth: 0
    functionLinenumber: 1648
    functionLinenumberEnd: 1668
    functionName: xmlEncConvertError
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors xmlEncConvertError(xmlCharEncError code)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/libxml2/encoding.c:1697,1
    - Dst: func
      Src: /src/libxml2/encoding.c:1709,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 6
    argNames:
    - handler
    - out
    - outlen
    - in
    - inlen
    - flush
    argTypes:
    - xmlCharEncodingHandler*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1682
    functionDepth: 0
    functionLinenumber: 1682
    functionLinenumberEnd: 1722
    functionName: xmlEncInputChunk
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - func
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError xmlEncInputChunk(xmlCharEncodingHandler *handler,
      unsigned char *out,\n                 int *outlen, const unsigned char *in,
      int *inlen,\n                 int flush)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/libxml2/encoding.c:1749,1
    - Dst: func
      Src: /src/libxml2/encoding.c:1759,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - handler
    - out
    - outlen
    - in
    - inlen
    argTypes:
    - xmlCharEncodingHandler*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1766
      start: 1735
    functionDepth: 0
    functionLinenumber: 1735
    functionLinenumberEnd: 1766
    functionName: xmlEncOutputChunk
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - func
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError xmlEncOutputChunk(xmlCharEncodingHandler *handler,
      unsigned char *out,\n                  int *outlen, const unsigned char *in,
      int *inlen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharEncInFunc
      Src: /src/libxml2/encoding.c:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - handler
    - out
    - in
    argTypes:
    - xmlCharEncodingHandler*
    - struct _xmlBuffer*
    - struct _xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1776
    functionDepth: 1
    functionLinenumber: 1776
    functionLinenumberEnd: 1780
    functionName: xmlCharEncFirstLine
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlCharEncInFunc
    linkageType: ''
    returnType: int
    signature: "int xmlCharEncFirstLine(xmlCharEncodingHandler *handler, struct _xmlBuffer
      *out,\n                    struct _xmlBuffer *in)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufUse
      Src: /src/libxml2/encoding.c:1811,1
    - Dst: xmlBufContent
      Src: /src/libxml2/encoding.c:1814,1
    - Dst: xmlBufAvail
      Src: /src/libxml2/encoding.c:1822,1
    - Dst: xmlEncInputChunk
      Src: /src/libxml2/encoding.c:1842,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/encoding.c:1842,1
    - Dst: xmlBufAddLen
      Src: /src/libxml2/encoding.c:1851,1
    - Dst: xmlEncConvertError
      Src: /src/libxml2/encoding.c:1854,1
    - Dst: xmlBufGrow
      Src: /src/libxml2/encoding.c:1866,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/encoding.c:1873,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 3
    argNames:
    - input
    - sizeOut
    - flush
    argTypes:
    - xmlParserInputBuffer*
    - size_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1793
    functionDepth: 1
    functionLinenumber: 1793
    functionLinenumberEnd: 1882
    functionName: xmlCharEncInput
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlBufContent
    - xmlBufUse
    - xmlEncConvertError
    - xmlBufAvail
    - xmlBufAddLen
    - xmlBufGrow
    - xmlBufShrink
    - xmlEncInputChunk
    - xmlBufEnd
    linkageType: ''
    returnType: xmlCharEncError
    signature: xmlCharEncError xmlCharEncInput(xmlParserInputBuffer *input, size_t
      *sizeOut, int flush)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferGrow
      Src: /src/libxml2/encoding.c:1912,1
    - Dst: xmlEncInputChunk
      Src: /src/libxml2/encoding.c:1915,1
    - Dst: xmlBufferShrink
      Src: /src/libxml2/encoding.c:1917,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - handler
    - out
    - in
    argTypes:
    - xmlCharEncodingHandler*
    - struct _xmlBuffer*
    - struct _xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1922
      start: 1892
    functionDepth: 1
    functionLinenumber: 1892
    functionLinenumberEnd: 1922
    functionName: xmlCharEncInFunc
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 1
    functionsReached:
    - xmlBufferGrow
    - xmlBufferShrink
    - xmlEncInputChunk
    linkageType: ''
    returnType: int
    signature: "int xmlCharEncInFunc(xmlCharEncodingHandler * handler, struct _xmlBuffer
      *out,\n                 struct _xmlBuffer *in)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - buf
    - val
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1960
      start: 1934
    functionDepth: 0
    functionLinenumber: 1934
    functionLinenumberEnd: 1960
    functionName: xmlSerializeDecCharRef
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSerializeDecCharRef(char *buf, int val)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufAvail
      Src: /src/libxml2/encoding.c:1996,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2005,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/encoding.c:2005,1
    - Dst: xmlBufAddLen
      Src: /src/libxml2/encoding.c:2007,1
    - Dst: xmlBufUse
      Src: /src/libxml2/encoding.c:2014,1
    - Dst: xmlBufGrow
      Src: /src/libxml2/encoding.c:2018,1
    - Dst: xmlBufAvail
      Src: /src/libxml2/encoding.c:2022,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2029,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/encoding.c:2029,1
    - Dst: xmlBufContent
      Src: /src/libxml2/encoding.c:2030,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/encoding.c:2031,1
    - Dst: xmlBufAddLen
      Src: /src/libxml2/encoding.c:2032,1
    - Dst: xmlBufUse
      Src: /src/libxml2/encoding.c:2043,1
    - Dst: xmlBufContent
      Src: /src/libxml2/encoding.c:2044,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/encoding.c:2047,1
    - Dst: xmlSerializeDecCharRef
      Src: /src/libxml2/encoding.c:2056,1
    - Dst: xmlBufGrow
      Src: /src/libxml2/encoding.c:2057,1
    - Dst: xmlBufAvail
      Src: /src/libxml2/encoding.c:2058,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2060,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/encoding.c:2060,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/encoding.c:2067,1
    - Dst: xmlBufAddLen
      Src: /src/libxml2/encoding.c:2068,1
    - Dst: xmlEncConvertError
      Src: /src/libxml2/encoding.c:2077,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 66
    argCount: 2
    argNames:
    - output
    - init
    argTypes:
    - xmlOutputBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 1976
    functionDepth: 1
    functionLinenumber: 1976
    functionLinenumberEnd: 2082
    functionName: xmlCharEncOutput
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlBufContent
    - xmlSerializeDecCharRef
    - xmlBufUse
    - xmlEncConvertError
    - xmlBufAvail
    - xmlBufAddLen
    - xmlBufGrow
    - xmlBufShrink
    - xmlGetUTF8Char
    - xmlEncOutputChunk
    - xmlBufEnd
    linkageType: ''
    returnType: int
    signature: int xmlCharEncOutput(xmlOutputBuffer *output, int init)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2123,1
    - Dst: xmlBufferGrow
      Src: /src/libxml2/encoding.c:2135,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2138,1
    - Dst: xmlBufferShrink
      Src: /src/libxml2/encoding.c:2140,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/encoding.c:2157,1
    - Dst: xmlSerializeDecCharRef
      Src: /src/libxml2/encoding.c:2166,1
    - Dst: xmlBufferShrink
      Src: /src/libxml2/encoding.c:2167,1
    - Dst: xmlBufferGrow
      Src: /src/libxml2/encoding.c:2168,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2171,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 3
    argNames:
    - handler
    - out
    - in
    argTypes:
    - xmlCharEncodingHandler*
    - struct _xmlBuffer*
    - struct _xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2099
    functionDepth: 1
    functionLinenumber: 2099
    functionLinenumberEnd: 2182
    functionName: xmlCharEncOutFunc
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlSerializeDecCharRef
    - xmlBufferGrow
    - xmlGetUTF8Char
    - xmlEncOutputChunk
    - xmlBufferShrink
    linkageType: ''
    returnType: int
    signature: "int xmlCharEncOutFunc(xmlCharEncodingHandler *handler, struct _xmlBuffer
      *out,\n                  struct _xmlBuffer *in)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:2199,1
    - Dst: xmlCharEncodingHandler*::ctxtDtor
      Src: /src/libxml2/encoding.c:2201,1
    - Dst: xmlCharEncodingHandler*::ctxtDtor
      Src: /src/libxml2/encoding.c:2202,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:2204,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - handler
    argTypes:
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2206
      start: 2191
    functionDepth: 0
    functionLinenumber: 2191
    functionLinenumberEnd: 2206
    functionName: xmlCharEncCloseFunc
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlCharEncodingHandler*::ctxtDtor
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlCharEncCloseFunc(xmlCharEncodingHandler *handler)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/encoding.c:2246,1
    - Dst: xmlEncOutputChunk
      Src: /src/libxml2/encoding.c:2252,1
    - Dst: xmlFree
      Src: /src/libxml2/encoding.c:2254,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2222
    functionDepth: 1
    functionLinenumber: 2222
    functionLinenumberEnd: 2266
    functionName: xmlByteConsumed
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - xmlEncOutputChunk
    linkageType: ''
    returnType: long
    signature: long xmlByteConsumed(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - poutlen
    - in
    - pinlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 2274
    functionDepth: 0
    functionLinenumber: 2274
    functionLinenumberEnd: 2317
    functionName: asciiToAscii
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError asciiToAscii(void *vctxt ATTRIBUTE_UNUSED,\n             unsigned
      char* out, int *poutlen,\n             const unsigned char* in, int *pinlen,\n
      \            int flush ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2319
    functionDepth: 0
    functionLinenumber: 2319
    functionLinenumberEnd: 2359
    functionName: latin1ToUTF8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError latin1ToUTF8(void *vctxt ATTRIBUTE_UNUSED,\n             unsigned
      char* out, int *outlen,\n             const unsigned char* in, int *inlen,\n
      \            int flush ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: latin1ToUTF8
      Src: /src/libxml2/encoding.c:2377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - out
    - outlen
    - in
    - inlen
    argTypes:
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2379
      start: 2374
    functionDepth: 1
    functionLinenumber: 2374
    functionLinenumberEnd: 2379
    functionName: xmlIsolat1ToUTF8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - latin1ToUTF8
    linkageType: ''
    returnType: int
    signature: "int xmlIsolat1ToUTF8(unsigned char* out, int *outlen,\n                 const
      unsigned char* in, int *inlen)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/encoding.c:2403,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2381
    functionDepth: 0
    functionLinenumber: 2381
    functionLinenumberEnd: 2408
    functionName: UTF8ToUTF8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToUTF8(void *vctxt ATTRIBUTE_UNUSED,\n           unsigned
      char* out, int *outlen,\n           const unsigned char* in, int *inlen,\n           int
      flush ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2412
    functionDepth: 0
    functionLinenumber: 2412
    functionLinenumberEnd: 2462
    functionName: UTF8ToLatin1
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToLatin1(void *vctxt ATTRIBUTE_UNUSED,\n             unsigned
      char* out, int *outlen,\n             const unsigned char* in, int *inlen,\n
      \            int flush ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UTF8ToLatin1
      Src: /src/libxml2/encoding.c:2483,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 4
    argNames:
    - out
    - outlen
    - in
    - inlen
    argTypes:
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2485
      start: 2477
    functionDepth: 1
    functionLinenumber: 2477
    functionLinenumberEnd: 2485
    functionName: xmlUTF8ToIsolat1
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - UTF8ToLatin1
    linkageType: ''
    returnType: int
    signature: "int xmlUTF8ToIsolat1(unsigned char* out, int *outlen,\n              const
      unsigned char* in, int *inlen)"
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2555
      start: 2488
    functionDepth: 0
    functionLinenumber: 2488
    functionLinenumberEnd: 2555
    functionName: UTF16LEToUTF8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF16LEToUTF8(void *vctxt ATTRIBUTE_UNUSED,\n              unsigned
      char *out, int *outlen,\n              const unsigned char *in, int *inlen,\n
      \             int flush ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 84
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2659
      start: 2558
    functionDepth: 0
    functionLinenumber: 2558
    functionLinenumberEnd: 2659
    functionName: UTF8ToUTF16LE
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToUTF16LE(void *vctxt ATTRIBUTE_UNUSED,\n              unsigned
      char *out, int *outlen,\n              const unsigned char *in, int *inlen,\n
      \             int flush ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: UTF8ToUTF16LE
      Src: /src/libxml2/encoding.c:2681,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 6
    argNames:
    - vctxt
    - outb
    - outlen
    - in
    - inlen
    - flush
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2661
    functionDepth: 1
    functionLinenumber: 2661
    functionLinenumberEnd: 2682
    functionName: UTF8ToUTF16
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - UTF8ToUTF16LE
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToUTF16(void *vctxt,\n            unsigned char*
      outb, int *outlen,\n            const unsigned char* in, int *inlen,\n            int
      flush)"
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2752
      start: 2685
    functionDepth: 0
    functionLinenumber: 2685
    functionLinenumberEnd: 2752
    functionName: UTF16BEToUTF8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF16BEToUTF8(void *vctxt ATTRIBUTE_UNUSED,\n              unsigned
      char *out, int *outlen,\n              const unsigned char *in, int *inlen,\n
      \             int flush ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 84
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2755
    functionDepth: 0
    functionLinenumber: 2755
    functionLinenumberEnd: 2855
    functionName: UTF8ToUTF16BE
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToUTF16BE(void *vctxt ATTRIBUTE_UNUSED,\n              unsigned
      char *out, int *outlen,\n              const unsigned char *in, int *inlen,\n
      \             int flush ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlUTF8ToHtml
      Src: /src/libxml2/encoding.c:2864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2859
    functionDepth: 1
    functionLinenumber: 2859
    functionLinenumberEnd: 2865
    functionName: UTF8ToHtmlWrapper
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached:
    - htmlUTF8ToHtml
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError UTF8ToHtmlWrapper(void *vctxt ATTRIBUTE_UNUSED,\n
      \                 unsigned char *out, int *outlen,\n                  const
      unsigned char *in, int *inlen,\n                  int flush ATTRIBUTE_UNUSED)"
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2948
      start: 2868
    functionDepth: 0
    functionLinenumber: 2868
    functionLinenumberEnd: 2948
    functionName: Utf8ToEightBit
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError Utf8ToEightBit(void *vctxt,\n               unsigned
      char *out, int *outlen,\n               const unsigned char *in, int *inlen,\n
      \              int flush ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3002
      start: 2950
    functionDepth: 0
    functionLinenumber: 2950
    functionLinenumberEnd: 3002
    functionName: EightBitToUtf8
    functionSourceFile: /src/libxml2/encoding.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError EightBitToUtf8(void *vctxt,\n               unsigned
      char* out, int *outlen,\n               const unsigned char* in, int *inlen,\n
      \              int flush ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: ignoreError
    functionSourceFile: /src/libxml2/testapi.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ignoreError(void *userData ATTRIBUTE_UNUSED,\n            const
      xmlError *error ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/testapi.c:41,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/testapi.c:42,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:44,1
    - Dst: __xmlParserInputBufferCreateFilename
      Src: /src/libxml2/testapi.c:44,1
    - Dst: xmlAddAttributeDecl
      Src: /src/libxml2/testapi.c:45,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:46,1
    - Dst: xmlAddChild
      Src: /src/libxml2/testapi.c:46,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:47,1
    - Dst: xmlAddChildList
      Src: /src/libxml2/testapi.c:47,1
    - Dst: xmlAddDocEntity
      Src: /src/libxml2/testapi.c:48,1
    - Dst: xmlAddDtdEntity
      Src: /src/libxml2/testapi.c:49,1
    - Dst: xmlAddElementDecl
      Src: /src/libxml2/testapi.c:50,1
    - Dst: xmlAddEncodingAlias
      Src: /src/libxml2/testapi.c:51,1
    - Dst: xmlAddEntity
      Src: /src/libxml2/testapi.c:52,1
    - Dst: xmlAddID
      Src: /src/libxml2/testapi.c:53,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/testapi.c:54,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:55,1
    - Dst: xmlAddNextSibling
      Src: /src/libxml2/testapi.c:55,1
    - Dst: xmlAddNotationDecl
      Src: /src/libxml2/testapi.c:56,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:57,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/testapi.c:57,1
    - Dst: xmlAddRef
      Src: /src/libxml2/testapi.c:58,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:59,1
    - Dst: xmlAddSibling
      Src: /src/libxml2/testapi.c:59,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:60,1
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/testapi.c:60,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:61,1
    - Dst: xmlBufContent
      Src: /src/libxml2/testapi.c:61,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:62,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/testapi.c:62,1
    - Dst: xmlBufGetNodeContent
      Src: /src/libxml2/testapi.c:63,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/testapi.c:64,1
    - Dst: xmlBufUse
      Src: /src/libxml2/testapi.c:65,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/testapi.c:66,1
    - Dst: xmlBufferAddHead
      Src: /src/libxml2/testapi.c:67,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testapi.c:68,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testapi.c:69,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/testapi.c:70,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testapi.c:71,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testapi.c:71,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testapi.c:72,1
    - Dst: xmlBufferCreateSize
      Src: /src/libxml2/testapi.c:72,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testapi.c:73,1
    - Dst: xmlBufferCreateStatic
      Src: /src/libxml2/testapi.c:73,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:74,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testapi.c:74,1
    - Dst: xmlBufferDump
      Src: /src/libxml2/testapi.c:75,1
    - Dst: xmlBufferEmpty
      Src: /src/libxml2/testapi.c:76,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testapi.c:77,1
    - Dst: xmlBufferGrow
      Src: /src/libxml2/testapi.c:78,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/testapi.c:79,1
    - Dst: xmlBufferResize
      Src: /src/libxml2/testapi.c:80,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxml2/testapi.c:81,1
    - Dst: xmlBufferShrink
      Src: /src/libxml2/testapi.c:82,1
    - Dst: xmlBufferWriteCHAR
      Src: /src/libxml2/testapi.c:83,1
    - Dst: xmlBufferWriteChar
      Src: /src/libxml2/testapi.c:84,1
    - Dst: xmlBufferWriteQuotedString
      Src: /src/libxml2/testapi.c:85,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:86,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/testapi.c:86,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:87,1
    - Dst: xmlBuildRelativeURI
      Src: /src/libxml2/testapi.c:87,1
    - Dst: xmlBuildRelativeURISafe
      Src: /src/libxml2/testapi.c:88,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:89,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/testapi.c:89,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/testapi.c:90,1
    - Dst: xmlByteConsumed
      Src: /src/libxml2/testapi.c:91,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:92,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/testapi.c:92,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/testapi.c:93,1
    - Dst: xmlCharEncFirstLine
      Src: /src/libxml2/testapi.c:94,1
    - Dst: xmlCharEncInFunc
      Src: /src/libxml2/testapi.c:95,1
    - Dst: xmlCharEncNewCustomHandler
      Src: /src/libxml2/testapi.c:96,1
    - Dst: xmlCharEncOutFunc
      Src: /src/libxml2/testapi.c:97,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:98,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/testapi.c:98,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:99,1
    - Dst: xmlCharStrndup
      Src: /src/libxml2/testapi.c:99,1
    - Dst: xmlCheckFilename
      Src: /src/libxml2/testapi.c:100,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:101,1
    - Dst: xmlCheckHTTPInput
      Src: /src/libxml2/testapi.c:101,1
    - Dst: xmlCheckLanguageID
      Src: /src/libxml2/testapi.c:102,1
    - Dst: xmlCheckThreadLocalStorage
      Src: /src/libxml2/testapi.c:103,1
    - Dst: xmlCheckUTF8
      Src: /src/libxml2/testapi.c:104,1
    - Dst: xmlChildElementCount
      Src: /src/libxml2/testapi.c:105,1
    - Dst: xmlCleanupCharEncodingHandlers
      Src: /src/libxml2/testapi.c:106,1
    - Dst: xmlCleanupEncodingAliases
      Src: /src/libxml2/testapi.c:107,1
    - Dst: xmlCleanupGlobals
      Src: /src/libxml2/testapi.c:108,1
    - Dst: xmlCleanupInputCallbacks
      Src: /src/libxml2/testapi.c:109,1
    - Dst: xmlCleanupMemory
      Src: /src/libxml2/testapi.c:110,1
    - Dst: xmlCleanupThreads
      Src: /src/libxml2/testapi.c:111,1
    - Dst: xmlClearNodeInfoSeq
      Src: /src/libxml2/testapi.c:112,1
    - Dst: xmlClearParserCtxt
      Src: /src/libxml2/testapi.c:113,1
    - Dst: xmlCopyAttributeTable
      Src: /src/libxml2/testapi.c:114,1
    - Dst: xmlCopyChar
      Src: /src/libxml2/testapi.c:115,1
    - Dst: xmlCopyCharMultiByte
      Src: /src/libxml2/testapi.c:116,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:117,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/testapi.c:117,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/testapi.c:118,1
    - Dst: xmlCopyDocElementContent
      Src: /src/libxml2/testapi.c:118,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:119,1
    - Dst: xmlCopyDtd
      Src: /src/libxml2/testapi.c:119,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/testapi.c:120,1
    - Dst: xmlCopyElementContent
      Src: /src/libxml2/testapi.c:120,1
    - Dst: xmlCopyElementTable
      Src: /src/libxml2/testapi.c:121,1
    - Dst: xmlFreeEntitiesTable
      Src: /src/libxml2/testapi.c:122,1
    - Dst: xmlCopyEntitiesTable
      Src: /src/libxml2/testapi.c:122,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/testapi.c:123,1
    - Dst: xmlCopyEnumeration
      Src: /src/libxml2/testapi.c:123,1
    - Dst: xmlCopyError
      Src: /src/libxml2/testapi.c:124,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:125,1
    - Dst: xmlCopyNamespace
      Src: /src/libxml2/testapi.c:125,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:126,1
    - Dst: xmlCopyNamespaceList
      Src: /src/libxml2/testapi.c:126,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:127,1
    - Dst: xmlCopyNode
      Src: /src/libxml2/testapi.c:127,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:128,1
    - Dst: xmlCopyNodeList
      Src: /src/libxml2/testapi.c:128,1
    - Dst: xmlCopyNotationTable
      Src: /src/libxml2/testapi.c:129,1
    - Dst: xmlCopyProp
      Src: /src/libxml2/testapi.c:130,1
    - Dst: xmlCopyPropList
      Src: /src/libxml2/testapi.c:131,1
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/testapi.c:132,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:133,1
    - Dst: xmlCreateDocParserCtxt
      Src: /src/libxml2/testapi.c:133,1
    - Dst: xmlFreeEntitiesTable
      Src: /src/libxml2/testapi.c:134,1
    - Dst: xmlCreateEntitiesTable
      Src: /src/libxml2/testapi.c:134,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:135,1
    - Dst: xmlCreateEntityParserCtxt
      Src: /src/libxml2/testapi.c:135,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/testapi.c:136,1
    - Dst: xmlCreateEnumeration
      Src: /src/libxml2/testapi.c:136,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:137,1
    - Dst: xmlCreateFileParserCtxt
      Src: /src/libxml2/testapi.c:137,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:138,1
    - Dst: xmlCreateIOParserCtxt
      Src: /src/libxml2/testapi.c:138,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:139,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/testapi.c:139,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:140,1
    - Dst: xmlCreateMemoryParserCtxt
      Src: /src/libxml2/testapi.c:140,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/testapi.c:141,1
    - Dst: xmlCreateURI
      Src: /src/libxml2/testapi.c:141,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:142,1
    - Dst: xmlCreateURLParserCtxt
      Src: /src/libxml2/testapi.c:142,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/testapi.c:143,1
    - Dst: xmlCtxtGetCatalogs
      Src: /src/libxml2/testapi.c:144,1
    - Dst: xmlCtxtGetDeclaredEncoding
      Src: /src/libxml2/testapi.c:145,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testapi.c:146,1
    - Dst: xmlCtxtGetDict
      Src: /src/libxml2/testapi.c:146,1
    - Dst: xmlCtxtGetDocTypeDecl
      Src: /src/libxml2/testapi.c:147,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:148,1
    - Dst: xmlCtxtGetDocument
      Src: /src/libxml2/testapi.c:148,1
    - Dst: xmlCtxtGetInputPosition
      Src: /src/libxml2/testapi.c:149,1
    - Dst: xmlCtxtGetInputWindow
      Src: /src/libxml2/testapi.c:150,1
    - Dst: xmlCtxtGetLastError
      Src: /src/libxml2/testapi.c:151,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:152,1
    - Dst: xmlCtxtGetNode
      Src: /src/libxml2/testapi.c:152,1
    - Dst: xmlCtxtGetOptions
      Src: /src/libxml2/testapi.c:153,1
    - Dst: xmlCtxtGetPrivate
      Src: /src/libxml2/testapi.c:154,1
    - Dst: xmlCtxtGetSaxHandler
      Src: /src/libxml2/testapi.c:155,1
    - Dst: xmlCtxtGetStandalone
      Src: /src/libxml2/testapi.c:156,1
    - Dst: xmlCtxtGetStatus
      Src: /src/libxml2/testapi.c:157,1
    - Dst: xmlCtxtGetUserData
      Src: /src/libxml2/testapi.c:158,1
    - Dst: xmlCtxtGetVersion
      Src: /src/libxml2/testapi.c:159,1
    - Dst: xmlCtxtIsHtml
      Src: /src/libxml2/testapi.c:160,1
    - Dst: xmlCtxtIsInSubset
      Src: /src/libxml2/testapi.c:161,1
    - Dst: xmlCtxtIsStopped
      Src: /src/libxml2/testapi.c:162,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:163,1
    - Dst: xmlCtxtParseContent
      Src: /src/libxml2/testapi.c:163,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:164,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/testapi.c:164,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:165,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/testapi.c:165,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/testapi.c:166,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:167,1
    - Dst: xmlCtxtReadDoc
      Src: /src/libxml2/testapi.c:167,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:168,1
    - Dst: xmlCtxtReadFd
      Src: /src/libxml2/testapi.c:168,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:169,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testapi.c:169,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:170,1
    - Dst: xmlCtxtReadIO
      Src: /src/libxml2/testapi.c:170,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:171,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/testapi.c:171,1
    - Dst: xmlCtxtReset
      Src: /src/libxml2/testapi.c:172,1
    - Dst: xmlCtxtResetLastError
      Src: /src/libxml2/testapi.c:173,1
    - Dst: xmlCtxtResetPush
      Src: /src/libxml2/testapi.c:174,1
    - Dst: xmlCtxtSetCatalogs
      Src: /src/libxml2/testapi.c:175,1
    - Dst: xmlCtxtSetCharEncConvImpl
      Src: /src/libxml2/testapi.c:176,1
    - Dst: xmlCtxtSetDict
      Src: /src/libxml2/testapi.c:177,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/testapi.c:178,1
    - Dst: xmlCtxtSetMaxAmplification
      Src: /src/libxml2/testapi.c:179,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/testapi.c:180,1
    - Dst: xmlCtxtSetPrivate
      Src: /src/libxml2/testapi.c:181,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/testapi.c:182,1
    - Dst: xmlCtxtSetSaxHandler
      Src: /src/libxml2/testapi.c:183,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/testapi.c:184,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/testapi.c:185,1
    - Dst: xmlDOMWrapAdoptNode
      Src: /src/libxml2/testapi.c:186,1
    - Dst: xmlDOMWrapCloneNode
      Src: /src/libxml2/testapi.c:187,1
    - Dst: xmlDOMWrapFreeCtxt
      Src: /src/libxml2/testapi.c:188,1
    - Dst: xmlDOMWrapFreeCtxt
      Src: /src/libxml2/testapi.c:189,1
    - Dst: xmlDOMWrapNewCtxt
      Src: /src/libxml2/testapi.c:189,1
    - Dst: xmlDOMWrapReconcileNamespaces
      Src: /src/libxml2/testapi.c:190,1
    - Dst: xmlDOMWrapRemoveNode
      Src: /src/libxml2/testapi.c:191,1
    - Dst: xmlDefaultSAXHandlerInit
      Src: /src/libxml2/testapi.c:192,1
    - Dst: xmlDelEncodingAlias
      Src: /src/libxml2/testapi.c:193,1
    - Dst: xmlDeregisterNodeDefault
      Src: /src/libxml2/testapi.c:194,1
    - Dst: xmlDetectCharEncoding
      Src: /src/libxml2/testapi.c:195,1
    - Dst: xmlDictCleanup
      Src: /src/libxml2/testapi.c:196,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testapi.c:197,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/testapi.c:197,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testapi.c:198,1
    - Dst: xmlDictCreateSub
      Src: /src/libxml2/testapi.c:198,1
    - Dst: xmlDictExists
      Src: /src/libxml2/testapi.c:199,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testapi.c:200,1
    - Dst: xmlDictGetUsage
      Src: /src/libxml2/testapi.c:201,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testapi.c:202,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/testapi.c:203,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/testapi.c:204,1
    - Dst: xmlDictReference
      Src: /src/libxml2/testapi.c:205,1
    - Dst: xmlDictSetLimit
      Src: /src/libxml2/testapi.c:206,1
    - Dst: xmlDictSize
      Src: /src/libxml2/testapi.c:207,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:208,1
    - Dst: xmlDocCopyNode
      Src: /src/libxml2/testapi.c:208,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:209,1
    - Dst: xmlDocCopyNodeList
      Src: /src/libxml2/testapi.c:209,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:210,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/testapi.c:210,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:211,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/testapi.c:211,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:212,1
    - Dst: xmlEncodeEntitiesReentrant
      Src: /src/libxml2/testapi.c:212,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:213,1
    - Dst: xmlEncodeSpecialChars
      Src: /src/libxml2/testapi.c:213,1
    - Dst: xmlFileClose
      Src: /src/libxml2/testapi.c:214,1
    - Dst: xmlFileMatch
      Src: /src/libxml2/testapi.c:215,1
    - Dst: xmlFileOpen
      Src: /src/libxml2/testapi.c:216,1
    - Dst: xmlFileRead
      Src: /src/libxml2/testapi.c:217,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/testapi.c:218,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:219,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/testapi.c:219,1
    - Dst: xmlFormatError
      Src: /src/libxml2/testapi.c:220,1
    - Dst: xmlFreeAttributeTable
      Src: /src/libxml2/testapi.c:221,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:222,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/testapi.c:223,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:224,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/testapi.c:225,1
    - Dst: xmlFreeElementTable
      Src: /src/libxml2/testapi.c:226,1
    - Dst: xmlFreeEntitiesTable
      Src: /src/libxml2/testapi.c:227,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/testapi.c:228,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/testapi.c:229,1
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/testapi.c:230,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:231,1
    - Dst: xmlFreeMutex
      Src: /src/libxml2/testapi.c:232,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:233,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/testapi.c:234,1
    - Dst: xmlFreeNotationTable
      Src: /src/libxml2/testapi.c:235,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:236,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/testapi.c:237,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:238,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:239,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/testapi.c:240,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/testapi.c:241,1
    - Dst: xmlFreeRMutex
      Src: /src/libxml2/testapi.c:242,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/testapi.c:243,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/testapi.c:244,1
    - Dst: xmlGcMemGet
      Src: /src/libxml2/testapi.c:245,1
    - Dst: xmlGcMemSetup
      Src: /src/libxml2/testapi.c:246,1
    - Dst: xmlGetBufferAllocationScheme
      Src: /src/libxml2/testapi.c:247,1
    - Dst: xmlGetCharEncodingHandler
      Src: /src/libxml2/testapi.c:248,1
    - Dst: xmlGetCharEncodingName
      Src: /src/libxml2/testapi.c:249,1
    - Dst: xmlGetCompressMode
      Src: /src/libxml2/testapi.c:250,1
    - Dst: xmlGetDocCompressMode
      Src: /src/libxml2/testapi.c:251,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testapi.c:252,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/testapi.c:253,1
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/testapi.c:254,1
    - Dst: xmlGetDtdEntity
      Src: /src/libxml2/testapi.c:255,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/testapi.c:256,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/testapi.c:257,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/testapi.c:258,1
    - Dst: xmlGetEncodingAlias
      Src: /src/libxml2/testapi.c:259,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxml2/testapi.c:260,1
    - Dst: xmlGetID
      Src: /src/libxml2/testapi.c:261,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:262,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/testapi.c:262,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:263,1
    - Dst: xmlGetLastChild
      Src: /src/libxml2/testapi.c:263,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/testapi.c:264,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/testapi.c:265,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:266,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/testapi.c:266,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:267,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/testapi.c:267,1
    - Dst: xmlGetNsList
      Src: /src/libxml2/testapi.c:268,1
    - Dst: xmlGetNsListSafe
      Src: /src/libxml2/testapi.c:269,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:270,1
    - Dst: xmlGetNsProp
      Src: /src/libxml2/testapi.c:270,1
    - Dst: xmlGetParameterEntity
      Src: /src/libxml2/testapi.c:271,1
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/testapi.c:272,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:273,1
    - Dst: xmlGetProp
      Src: /src/libxml2/testapi.c:273,1
    - Dst: xmlListDelete
      Src: /src/libxml2/testapi.c:274,1
    - Dst: xmlGetRefs
      Src: /src/libxml2/testapi.c:274,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/testapi.c:275,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/testapi.c:276,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/testapi.c:277,1
    - Dst: xmlHasProp
      Src: /src/libxml2/testapi.c:278,1
    - Dst: xmlHashAdd
      Src: /src/libxml2/testapi.c:279,1
    - Dst: xmlHashAdd2
      Src: /src/libxml2/testapi.c:280,1
    - Dst: xmlHashAdd3
      Src: /src/libxml2/testapi.c:281,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/testapi.c:282,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/testapi.c:283,1
    - Dst: xmlHashAddEntry3
      Src: /src/libxml2/testapi.c:284,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testapi.c:285,1
    - Dst: xmlHashCopy
      Src: /src/libxml2/testapi.c:285,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testapi.c:286,1
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/testapi.c:286,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testapi.c:287,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/testapi.c:287,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testapi.c:288,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/testapi.c:288,1
    - Dst: xmlHashDefaultDeallocator
      Src: /src/libxml2/testapi.c:289,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testapi.c:290,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/testapi.c:291,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/testapi.c:292,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/testapi.c:293,1
    - Dst: xmlHashQLookup
      Src: /src/libxml2/testapi.c:294,1
    - Dst: xmlHashQLookup2
      Src: /src/libxml2/testapi.c:295,1
    - Dst: xmlHashQLookup3
      Src: /src/libxml2/testapi.c:296,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/testapi.c:297,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/testapi.c:298,1
    - Dst: xmlHashRemoveEntry3
      Src: /src/libxml2/testapi.c:299,1
    - Dst: xmlHashScan
      Src: /src/libxml2/testapi.c:300,1
    - Dst: xmlHashScan3
      Src: /src/libxml2/testapi.c:301,1
    - Dst: xmlHashScanFull
      Src: /src/libxml2/testapi.c:302,1
    - Dst: xmlHashScanFull3
      Src: /src/libxml2/testapi.c:303,1
    - Dst: xmlHashSize
      Src: /src/libxml2/testapi.c:304,1
    - Dst: xmlHashUpdateEntry
      Src: /src/libxml2/testapi.c:305,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxml2/testapi.c:306,1
    - Dst: xmlHashUpdateEntry3
      Src: /src/libxml2/testapi.c:307,1
    - Dst: xmlInitCharEncodingHandlers
      Src: /src/libxml2/testapi.c:308,1
    - Dst: xmlInitGlobals
      Src: /src/libxml2/testapi.c:309,1
    - Dst: xmlInitMemory
      Src: /src/libxml2/testapi.c:310,1
    - Dst: xmlInitNodeInfoSeq
      Src: /src/libxml2/testapi.c:311,1
    - Dst: xmlInitParserCtxt
      Src: /src/libxml2/testapi.c:312,1
    - Dst: xmlInitThreads
      Src: /src/libxml2/testapi.c:313,1
    - Dst: xmlInitializeDict
      Src: /src/libxml2/testapi.c:314,1
    - Dst: xmlInputSetEncodingHandler
      Src: /src/libxml2/testapi.c:315,1
    - Dst: xmlIsBaseChar
      Src: /src/libxml2/testapi.c:316,1
    - Dst: xmlIsBlank
      Src: /src/libxml2/testapi.c:317,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/testapi.c:318,1
    - Dst: xmlIsChar
      Src: /src/libxml2/testapi.c:319,1
    - Dst: xmlIsCombining
      Src: /src/libxml2/testapi.c:320,1
    - Dst: xmlIsDigit
      Src: /src/libxml2/testapi.c:321,1
    - Dst: xmlIsExtender
      Src: /src/libxml2/testapi.c:322,1
    - Dst: xmlIsID
      Src: /src/libxml2/testapi.c:323,1
    - Dst: xmlIsIdeographic
      Src: /src/libxml2/testapi.c:324,1
    - Dst: xmlIsLetter
      Src: /src/libxml2/testapi.c:325,1
    - Dst: xmlIsMixedElement
      Src: /src/libxml2/testapi.c:326,1
    - Dst: xmlIsPubidChar
      Src: /src/libxml2/testapi.c:327,1
    - Dst: xmlIsRef
      Src: /src/libxml2/testapi.c:328,1
    - Dst: xmlIsXHTML
      Src: /src/libxml2/testapi.c:329,1
    - Dst: xmlIsolat1ToUTF8
      Src: /src/libxml2/testapi.c:330,1
    - Dst: xmlKeepBlanksDefault
      Src: /src/libxml2/testapi.c:331,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:332,1
    - Dst: xmlLastElementChild
      Src: /src/libxml2/testapi.c:332,1
    - Dst: xmlLineNumbersDefault
      Src: /src/libxml2/testapi.c:333,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/testapi.c:334,1
    - Dst: xmlListAppend
      Src: /src/libxml2/testapi.c:335,1
    - Dst: xmlListClear
      Src: /src/libxml2/testapi.c:336,1
    - Dst: xmlListCopy
      Src: /src/libxml2/testapi.c:337,1
    - Dst: xmlListDelete
      Src: /src/libxml2/testapi.c:338,1
    - Dst: xmlListCreate
      Src: /src/libxml2/testapi.c:338,1
    - Dst: xmlListDelete
      Src: /src/libxml2/testapi.c:339,1
    - Dst: xmlListDelete
      Src: /src/libxml2/testapi.c:340,1
    - Dst: xmlListDup
      Src: /src/libxml2/testapi.c:340,1
    - Dst: xmlListEmpty
      Src: /src/libxml2/testapi.c:341,1
    - Dst: xmlListEnd
      Src: /src/libxml2/testapi.c:342,1
    - Dst: xmlListFront
      Src: /src/libxml2/testapi.c:343,1
    - Dst: xmlListInsert
      Src: /src/libxml2/testapi.c:344,1
    - Dst: xmlListMerge
      Src: /src/libxml2/testapi.c:345,1
    - Dst: xmlListPopBack
      Src: /src/libxml2/testapi.c:346,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/testapi.c:347,1
    - Dst: xmlListPushBack
      Src: /src/libxml2/testapi.c:348,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/testapi.c:349,1
    - Dst: xmlListRemoveAll
      Src: /src/libxml2/testapi.c:350,1
    - Dst: xmlListRemoveFirst
      Src: /src/libxml2/testapi.c:351,1
    - Dst: xmlListRemoveLast
      Src: /src/libxml2/testapi.c:352,1
    - Dst: xmlListReverse
      Src: /src/libxml2/testapi.c:353,1
    - Dst: xmlListReverseSearch
      Src: /src/libxml2/testapi.c:354,1
    - Dst: xmlListReverseWalk
      Src: /src/libxml2/testapi.c:355,1
    - Dst: xmlListSearch
      Src: /src/libxml2/testapi.c:356,1
    - Dst: xmlListSize
      Src: /src/libxml2/testapi.c:357,1
    - Dst: xmlListSort
      Src: /src/libxml2/testapi.c:358,1
    - Dst: xmlListWalk
      Src: /src/libxml2/testapi.c:359,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:360,1
    - Dst: xmlLoadExternalEntity
      Src: /src/libxml2/testapi.c:360,1
    - Dst: xmlLockLibrary
      Src: /src/libxml2/testapi.c:361,1
    - Dst: xmlLookupCharEncodingHandler
      Src: /src/libxml2/testapi.c:362,1
    - Dst: xmlMemBlocks
      Src: /src/libxml2/testapi.c:363,1
    - Dst: xmlMemDisplay
      Src: /src/libxml2/testapi.c:364,1
    - Dst: xmlMemDisplayLast
      Src: /src/libxml2/testapi.c:365,1
    - Dst: xmlMemFree
      Src: /src/libxml2/testapi.c:366,1
    - Dst: xmlMemGet
      Src: /src/libxml2/testapi.c:367,1
    - Dst: xmlMemSetup
      Src: /src/libxml2/testapi.c:368,1
    - Dst: xmlMemShow
      Src: /src/libxml2/testapi.c:369,1
    - Dst: xmlMemSize
      Src: /src/libxml2/testapi.c:370,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/testapi.c:371,1
    - Dst: xmlMemoryDump
      Src: /src/libxml2/testapi.c:372,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/testapi.c:373,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/testapi.c:374,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:375,1
    - Dst: xmlNewCDataBlock
      Src: /src/libxml2/testapi.c:375,1
    - Dst: xmlNewCharEncodingHandler
      Src: /src/libxml2/testapi.c:376,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:377,1
    - Dst: xmlNewCharRef
      Src: /src/libxml2/testapi.c:377,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:378,1
    - Dst: xmlNewChild
      Src: /src/libxml2/testapi.c:378,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:379,1
    - Dst: xmlNewComment
      Src: /src/libxml2/testapi.c:379,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:380,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/testapi.c:380,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:381,1
    - Dst: xmlNewDocComment
      Src: /src/libxml2/testapi.c:381,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/testapi.c:382,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/testapi.c:382,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:383,1
    - Dst: xmlNewDocFragment
      Src: /src/libxml2/testapi.c:383,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:384,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/testapi.c:384,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:385,1
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxml2/testapi.c:385,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:386,1
    - Dst: xmlNewDocPI
      Src: /src/libxml2/testapi.c:386,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/testapi.c:387,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:388,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxml2/testapi.c:388,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:389,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/testapi.c:389,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:390,1
    - Dst: xmlNewDocTextLen
      Src: /src/libxml2/testapi.c:390,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:391,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/testapi.c:391,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/testapi.c:392,1
    - Dst: xmlNewElementContent
      Src: /src/libxml2/testapi.c:392,1
    - Dst: xmlNewEntity
      Src: /src/libxml2/testapi.c:393,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:394,1
    - Dst: xmlNewEntityInputStream
      Src: /src/libxml2/testapi.c:394,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:395,1
    - Dst: xmlNewIOInputStream
      Src: /src/libxml2/testapi.c:395,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:396,1
    - Dst: xmlNewInputFromFd
      Src: /src/libxml2/testapi.c:396,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:397,1
    - Dst: xmlNewInputFromFile
      Src: /src/libxml2/testapi.c:397,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:398,1
    - Dst: xmlNewInputFromIO
      Src: /src/libxml2/testapi.c:398,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:399,1
    - Dst: xmlNewInputFromMemory
      Src: /src/libxml2/testapi.c:399,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:400,1
    - Dst: xmlNewInputFromString
      Src: /src/libxml2/testapi.c:400,1
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/testapi.c:401,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:402,1
    - Dst: xmlNewInputStream
      Src: /src/libxml2/testapi.c:402,1
    - Dst: xmlFreeMutex
      Src: /src/libxml2/testapi.c:403,1
    - Dst: xmlNewMutex
      Src: /src/libxml2/testapi.c:403,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:404,1
    - Dst: xmlNewNode
      Src: /src/libxml2/testapi.c:404,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:405,1
    - Dst: xmlNewNodeEatName
      Src: /src/libxml2/testapi.c:405,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:406,1
    - Dst: xmlNewNs
      Src: /src/libxml2/testapi.c:406,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/testapi.c:407,1
    - Dst: xmlNewNsPropEatName
      Src: /src/libxml2/testapi.c:408,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:409,1
    - Dst: xmlNewPI
      Src: /src/libxml2/testapi.c:409,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:410,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testapi.c:410,1
    - Dst: xmlNewProp
      Src: /src/libxml2/testapi.c:411,1
    - Dst: xmlFreeRMutex
      Src: /src/libxml2/testapi.c:412,1
    - Dst: xmlNewRMutex
      Src: /src/libxml2/testapi.c:412,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:413,1
    - Dst: xmlNewReference
      Src: /src/libxml2/testapi.c:413,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:414,1
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/testapi.c:414,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:415,1
    - Dst: xmlNewStringInputStream
      Src: /src/libxml2/testapi.c:415,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:416,1
    - Dst: xmlNewText
      Src: /src/libxml2/testapi.c:416,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:417,1
    - Dst: xmlNewTextChild
      Src: /src/libxml2/testapi.c:417,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:418,1
    - Dst: xmlNewTextLen
      Src: /src/libxml2/testapi.c:418,1
    - Dst: xmlNextChar
      Src: /src/libxml2/testapi.c:419,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:420,1
    - Dst: xmlNextElementSibling
      Src: /src/libxml2/testapi.c:420,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:421,1
    - Dst: xmlNoNetExternalEntityLoader
      Src: /src/libxml2/testapi.c:421,1
    - Dst: xmlNodeAddContent
      Src: /src/libxml2/testapi.c:422,1
    - Dst: xmlNodeAddContentLen
      Src: /src/libxml2/testapi.c:423,1
    - Dst: xmlNodeBufGetContent
      Src: /src/libxml2/testapi.c:424,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/testapi.c:425,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:426,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/testapi.c:426,1
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/testapi.c:427,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:428,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/testapi.c:428,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:429,1
    - Dst: xmlNodeGetLang
      Src: /src/libxml2/testapi.c:429,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxml2/testapi.c:430,1
    - Dst: xmlNodeIsText
      Src: /src/libxml2/testapi.c:431,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:432,1
    - Dst: xmlNodeListGetRawString
      Src: /src/libxml2/testapi.c:432,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:433,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/testapi.c:433,1
    - Dst: xmlNodeSetBase
      Src: /src/libxml2/testapi.c:434,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/testapi.c:435,1
    - Dst: xmlNodeSetContentLen
      Src: /src/libxml2/testapi.c:436,1
    - Dst: xmlNodeSetLang
      Src: /src/libxml2/testapi.c:437,1
    - Dst: xmlNodeSetName
      Src: /src/libxml2/testapi.c:438,1
    - Dst: xmlNodeSetSpacePreserve
      Src: /src/libxml2/testapi.c:439,1
    - Dst: xmlNormalizeURIPath
      Src: /src/libxml2/testapi.c:440,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:441,1
    - Dst: xmlNormalizeWindowsPath
      Src: /src/libxml2/testapi.c:441,1
    - Dst: xmlOpenCharEncodingHandler
      Src: /src/libxml2/testapi.c:442,1
    - Dst: xmlOutputBufferCreateFilenameDefault
      Src: /src/libxml2/testapi.c:443,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:444,1
    - Dst: xmlParseAttValue
      Src: /src/libxml2/testapi.c:444,1
    - Dst: xmlParseCharEncoding
      Src: /src/libxml2/testapi.c:445,1
    - Dst: xmlParseContent
      Src: /src/libxml2/testapi.c:446,1
    - Dst: xmlParseCtxtExternalEntity
      Src: /src/libxml2/testapi.c:447,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/testapi.c:448,1
    - Dst: xmlParseEntityRef
      Src: /src/libxml2/testapi.c:449,1
    - Dst: xmlParseExtParsedEnt
      Src: /src/libxml2/testapi.c:450,1
    - Dst: xmlParseInNodeContext
      Src: /src/libxml2/testapi.c:451,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/testapi.c:452,1
    - Dst: xmlParseURI
      Src: /src/libxml2/testapi.c:452,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/testapi.c:453,1
    - Dst: xmlParseURIRaw
      Src: /src/libxml2/testapi.c:453,1
    - Dst: xmlParseURIReference
      Src: /src/libxml2/testapi.c:454,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/testapi.c:455,1
    - Dst: xmlParserAddNodeInfo
      Src: /src/libxml2/testapi.c:456,1
    - Dst: xmlParserFindNodeInfo
      Src: /src/libxml2/testapi.c:457,1
    - Dst: xmlParserFindNodeInfoIndex
      Src: /src/libxml2/testapi.c:458,1
    - Dst: xmlParserGetDirectory
      Src: /src/libxml2/testapi.c:459,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:460,1
    - Dst: xmlParserInputBufferCreateFd
      Src: /src/libxml2/testapi.c:460,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:461,1
    - Dst: xmlParserInputBufferCreateFile
      Src: /src/libxml2/testapi.c:461,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:462,1
    - Dst: xmlParserInputBufferCreateFilename
      Src: /src/libxml2/testapi.c:462,1
    - Dst: xmlParserInputBufferCreateFilenameDefault
      Src: /src/libxml2/testapi.c:463,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:464,1
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/libxml2/testapi.c:464,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:465,1
    - Dst: xmlParserInputBufferCreateMem
      Src: /src/libxml2/testapi.c:465,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:466,1
    - Dst: xmlParserInputBufferCreateStatic
      Src: /src/libxml2/testapi.c:466,1
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxml2/testapi.c:467,1
    - Dst: xmlParserInputBufferPush
      Src: /src/libxml2/testapi.c:468,1
    - Dst: xmlParserInputBufferRead
      Src: /src/libxml2/testapi.c:469,1
    - Dst: xmlParserInputGrow
      Src: /src/libxml2/testapi.c:470,1
    - Dst: xmlParserInputRead
      Src: /src/libxml2/testapi.c:471,1
    - Dst: xmlParserInputShrink
      Src: /src/libxml2/testapi.c:472,1
    - Dst: xmlParserPrintFileContext
      Src: /src/libxml2/testapi.c:473,1
    - Dst: xmlParserPrintFileInfo
      Src: /src/libxml2/testapi.c:474,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:475,1
    - Dst: xmlPathToURI
      Src: /src/libxml2/testapi.c:475,1
    - Dst: xmlPedanticParserDefault
      Src: /src/libxml2/testapi.c:476,1
    - Dst: xmlPopInput
      Src: /src/libxml2/testapi.c:477,1
    - Dst: xmlPopInputCallbacks
      Src: /src/libxml2/testapi.c:478,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:479,1
    - Dst: xmlPreviousElementSibling
      Src: /src/libxml2/testapi.c:479,1
    - Dst: xmlPrintURI
      Src: /src/libxml2/testapi.c:480,1
    - Dst: xmlPushInput
      Src: /src/libxml2/testapi.c:481,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/testapi.c:482,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/testapi.c:483,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:484,1
    - Dst: xmlReadDoc
      Src: /src/libxml2/testapi.c:484,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:485,1
    - Dst: xmlReadFile
      Src: /src/libxml2/testapi.c:485,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:486,1
    - Dst: xmlReadIO
      Src: /src/libxml2/testapi.c:486,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:487,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/testapi.c:487,1
    - Dst: xmlReconciliateNs
      Src: /src/libxml2/testapi.c:488,1
    - Dst: xmlRegisterCharEncodingHandler
      Src: /src/libxml2/testapi.c:489,1
    - Dst: xmlRegisterDefaultInputCallbacks
      Src: /src/libxml2/testapi.c:490,1
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/testapi.c:491,1
    - Dst: xmlRegisterNodeDefault
      Src: /src/libxml2/testapi.c:492,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/testapi.c:493,1
    - Dst: xmlRemoveProp
      Src: /src/libxml2/testapi.c:494,1
    - Dst: xmlRemoveRef
      Src: /src/libxml2/testapi.c:495,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:496,1
    - Dst: xmlReplaceNode
      Src: /src/libxml2/testapi.c:496,1
    - Dst: xmlResetError
      Src: /src/libxml2/testapi.c:497,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/testapi.c:498,1
    - Dst: xmlSAX2AttributeDecl
      Src: /src/libxml2/testapi.c:499,1
    - Dst: xmlSAX2CDataBlock
      Src: /src/libxml2/testapi.c:500,1
    - Dst: xmlSAX2Characters
      Src: /src/libxml2/testapi.c:501,1
    - Dst: xmlSAX2Comment
      Src: /src/libxml2/testapi.c:502,1
    - Dst: xmlSAX2ElementDecl
      Src: /src/libxml2/testapi.c:503,1
    - Dst: xmlSAX2EndDocument
      Src: /src/libxml2/testapi.c:504,1
    - Dst: xmlSAX2EndElement
      Src: /src/libxml2/testapi.c:505,1
    - Dst: xmlSAX2EndElementNs
      Src: /src/libxml2/testapi.c:506,1
    - Dst: xmlSAX2EntityDecl
      Src: /src/libxml2/testapi.c:507,1
    - Dst: xmlSAX2ExternalSubset
      Src: /src/libxml2/testapi.c:508,1
    - Dst: xmlSAX2GetColumnNumber
      Src: /src/libxml2/testapi.c:509,1
    - Dst: xmlSAX2GetEntity
      Src: /src/libxml2/testapi.c:510,1
    - Dst: xmlSAX2GetLineNumber
      Src: /src/libxml2/testapi.c:511,1
    - Dst: xmlSAX2GetParameterEntity
      Src: /src/libxml2/testapi.c:512,1
    - Dst: xmlSAX2GetPublicId
      Src: /src/libxml2/testapi.c:513,1
    - Dst: xmlSAX2GetSystemId
      Src: /src/libxml2/testapi.c:514,1
    - Dst: xmlSAX2HasExternalSubset
      Src: /src/libxml2/testapi.c:515,1
    - Dst: xmlSAX2HasInternalSubset
      Src: /src/libxml2/testapi.c:516,1
    - Dst: xmlSAX2IgnorableWhitespace
      Src: /src/libxml2/testapi.c:517,1
    - Dst: xmlSAX2InitDefaultSAXHandler
      Src: /src/libxml2/testapi.c:518,1
    - Dst: xmlSAX2InternalSubset
      Src: /src/libxml2/testapi.c:519,1
    - Dst: xmlSAX2IsStandalone
      Src: /src/libxml2/testapi.c:520,1
    - Dst: xmlSAX2NotationDecl
      Src: /src/libxml2/testapi.c:521,1
    - Dst: xmlSAX2ProcessingInstruction
      Src: /src/libxml2/testapi.c:522,1
    - Dst: xmlSAX2Reference
      Src: /src/libxml2/testapi.c:523,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/testapi.c:524,1
    - Dst: xmlSAX2ResolveEntity
      Src: /src/libxml2/testapi.c:524,1
    - Dst: xmlSAX2SetDocumentLocator
      Src: /src/libxml2/testapi.c:525,1
    - Dst: xmlSAX2StartDocument
      Src: /src/libxml2/testapi.c:526,1
    - Dst: xmlSAX2StartElement
      Src: /src/libxml2/testapi.c:527,1
    - Dst: xmlSAX2StartElementNs
      Src: /src/libxml2/testapi.c:528,1
    - Dst: xmlSAX2UnparsedEntityDecl
      Src: /src/libxml2/testapi.c:529,1
    - Dst: xmlSAXVersion
      Src: /src/libxml2/testapi.c:530,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:531,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/testapi.c:531,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:532,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/testapi.c:532,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/testapi.c:533,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/testapi.c:533,1
    - Dst: xmlSetBufferAllocationScheme
      Src: /src/libxml2/testapi.c:534,1
    - Dst: xmlSetCompressMode
      Src: /src/libxml2/testapi.c:535,1
    - Dst: xmlSetDocCompressMode
      Src: /src/libxml2/testapi.c:536,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxml2/testapi.c:537,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/testapi.c:538,1
    - Dst: xmlSetListDoc
      Src: /src/libxml2/testapi.c:539,1
    - Dst: xmlSetNs
      Src: /src/libxml2/testapi.c:540,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/testapi.c:541,1
    - Dst: xmlSetProp
      Src: /src/libxml2/testapi.c:542,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/testapi.c:543,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/testapi.c:544,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:545,1
    - Dst: xmlSplitQName
      Src: /src/libxml2/testapi.c:545,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:546,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/testapi.c:546,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/testapi.c:547,1
    - Dst: xmlStopParser
      Src: /src/libxml2/testapi.c:548,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testapi.c:549,1
    - Dst: xmlStrPrintf
      Src: /src/libxml2/testapi.c:550,1
    - Dst: xmlStrQEqual
      Src: /src/libxml2/testapi.c:551,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/testapi.c:552,1
    - Dst: xmlStrcasestr
      Src: /src/libxml2/testapi.c:553,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:554,1
    - Dst: xmlStrcat
      Src: /src/libxml2/testapi.c:554,1
    - Dst: xmlStrchr
      Src: /src/libxml2/testapi.c:555,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/testapi.c:556,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:557,1
    - Dst: xmlStrdup
      Src: /src/libxml2/testapi.c:557,1
    - Dst: xmlStringCurrentChar
      Src: /src/libxml2/testapi.c:558,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:559,1
    - Dst: xmlStringDecodeEntities
      Src: /src/libxml2/testapi.c:559,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:560,1
    - Dst: xmlStringGetNodeList
      Src: /src/libxml2/testapi.c:560,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:561,1
    - Dst: xmlStringLenDecodeEntities
      Src: /src/libxml2/testapi.c:561,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:562,1
    - Dst: xmlStringLenGetNodeList
      Src: /src/libxml2/testapi.c:562,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testapi.c:563,1
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/testapi.c:564,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:565,1
    - Dst: xmlStrncat
      Src: /src/libxml2/testapi.c:565,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:566,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/testapi.c:566,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/testapi.c:567,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:568,1
    - Dst: xmlStrndup
      Src: /src/libxml2/testapi.c:568,1
    - Dst: xmlStrstr
      Src: /src/libxml2/testapi.c:569,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:570,1
    - Dst: xmlStrsub
      Src: /src/libxml2/testapi.c:570,1
    - Dst: xmlSubstituteEntitiesDefault
      Src: /src/libxml2/testapi.c:571,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/testapi.c:572,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/testapi.c:573,1
    - Dst: xmlSwitchInputEncoding
      Src: /src/libxml2/testapi.c:574,1
    - Dst: xmlSwitchToEncoding
      Src: /src/libxml2/testapi.c:575,1
    - Dst: xmlTextConcat
      Src: /src/libxml2/testapi.c:576,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:577,1
    - Dst: xmlTextMerge
      Src: /src/libxml2/testapi.c:577,1
    - Dst: xmlThrDefDeregisterNodeDefault
      Src: /src/libxml2/testapi.c:578,1
    - Dst: xmlThrDefDoValidityCheckingDefaultValue
      Src: /src/libxml2/testapi.c:579,1
    - Dst: xmlThrDefGetWarningsDefaultValue
      Src: /src/libxml2/testapi.c:580,1
    - Dst: xmlThrDefKeepBlanksDefaultValue
      Src: /src/libxml2/testapi.c:581,1
    - Dst: xmlThrDefLineNumbersDefaultValue
      Src: /src/libxml2/testapi.c:582,1
    - Dst: xmlThrDefLoadExtDtdDefaultValue
      Src: /src/libxml2/testapi.c:583,1
    - Dst: xmlThrDefOutputBufferCreateFilenameDefault
      Src: /src/libxml2/testapi.c:584,1
    - Dst: xmlThrDefParserInputBufferCreateFilenameDefault
      Src: /src/libxml2/testapi.c:585,1
    - Dst: xmlThrDefPedanticParserDefaultValue
      Src: /src/libxml2/testapi.c:586,1
    - Dst: xmlThrDefRegisterNodeDefault
      Src: /src/libxml2/testapi.c:587,1
    - Dst: xmlThrDefSetGenericErrorFunc
      Src: /src/libxml2/testapi.c:588,1
    - Dst: xmlThrDefSetStructuredErrorFunc
      Src: /src/libxml2/testapi.c:589,1
    - Dst: xmlThrDefSubstituteEntitiesDefaultValue
      Src: /src/libxml2/testapi.c:590,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:591,1
    - Dst: xmlURIEscape
      Src: /src/libxml2/testapi.c:591,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:592,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/testapi.c:592,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/testapi.c:593,1
    - Dst: xmlUTF8Charcmp
      Src: /src/libxml2/testapi.c:594,1
    - Dst: xmlUTF8Size
      Src: /src/libxml2/testapi.c:595,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/testapi.c:596,1
    - Dst: xmlUTF8Strloc
      Src: /src/libxml2/testapi.c:597,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:598,1
    - Dst: xmlUTF8Strndup
      Src: /src/libxml2/testapi.c:598,1
    - Dst: xmlUTF8Strpos
      Src: /src/libxml2/testapi.c:599,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxml2/testapi.c:600,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:601,1
    - Dst: xmlUTF8Strsub
      Src: /src/libxml2/testapi.c:601,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/testapi.c:602,1
    - Dst: xmlUnlockLibrary
      Src: /src/libxml2/testapi.c:603,1
    - Dst: xmlUnsetNsProp
      Src: /src/libxml2/testapi.c:604,1
    - Dst: xmlUnsetProp
      Src: /src/libxml2/testapi.c:605,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/testapi.c:606,1
    - Dst: xmlValidateNMToken
      Src: /src/libxml2/testapi.c:607,1
    - Dst: xmlValidateName
      Src: /src/libxml2/testapi.c:608,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/testapi.c:609,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/testapi.c:612,1
    - Dst: xmlC14NDocSave
      Src: /src/libxml2/testapi.c:613,1
    - Dst: xmlC14NDocSaveTo
      Src: /src/libxml2/testapi.c:614,1
    - Dst: xmlC14NExecute
      Src: /src/libxml2/testapi.c:615,1
    - Dst: xmlACatalogAdd
      Src: /src/libxml2/testapi.c:619,1
    - Dst: xmlACatalogRemove
      Src: /src/libxml2/testapi.c:620,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:621,1
    - Dst: xmlACatalogResolve
      Src: /src/libxml2/testapi.c:621,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:622,1
    - Dst: xmlACatalogResolvePublic
      Src: /src/libxml2/testapi.c:622,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:623,1
    - Dst: xmlACatalogResolveSystem
      Src: /src/libxml2/testapi.c:623,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:624,1
    - Dst: xmlACatalogResolveURI
      Src: /src/libxml2/testapi.c:624,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/testapi.c:625,1
    - Dst: xmlCatalogAddLocal
      Src: /src/libxml2/testapi.c:626,1
    - Dst: xmlCatalogCleanup
      Src: /src/libxml2/testapi.c:627,1
    - Dst: xmlCatalogFreeLocal
      Src: /src/libxml2/testapi.c:628,1
    - Dst: xmlCatalogGetDefaults
      Src: /src/libxml2/testapi.c:629,1
    - Dst: xmlCatalogIsEmpty
      Src: /src/libxml2/testapi.c:630,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:631,1
    - Dst: xmlCatalogLocalResolve
      Src: /src/libxml2/testapi.c:631,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:632,1
    - Dst: xmlCatalogLocalResolveURI
      Src: /src/libxml2/testapi.c:632,1
    - Dst: xmlCatalogRemove
      Src: /src/libxml2/testapi.c:633,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:634,1
    - Dst: xmlCatalogResolve
      Src: /src/libxml2/testapi.c:634,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:635,1
    - Dst: xmlCatalogResolvePublic
      Src: /src/libxml2/testapi.c:635,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:636,1
    - Dst: xmlCatalogResolveSystem
      Src: /src/libxml2/testapi.c:636,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:637,1
    - Dst: xmlCatalogResolveURI
      Src: /src/libxml2/testapi.c:637,1
    - Dst: xmlCatalogSetDebug
      Src: /src/libxml2/testapi.c:638,1
    - Dst: xmlCatalogSetDefaultPrefer
      Src: /src/libxml2/testapi.c:639,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/testapi.c:640,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/testapi.c:641,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/testapi.c:642,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/testapi.c:643,1
    - Dst: xmlLoadACatalog
      Src: /src/libxml2/testapi.c:643,1
    - Dst: xmlLoadCatalog
      Src: /src/libxml2/testapi.c:644,1
    - Dst: xmlLoadCatalogs
      Src: /src/libxml2/testapi.c:645,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/testapi.c:646,1
    - Dst: xmlNewCatalog
      Src: /src/libxml2/testapi.c:646,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:647,1
    - Dst: xmlParseCatalogFile
      Src: /src/libxml2/testapi.c:647,1
    - Dst: xmlACatalogDump
      Src: /src/libxml2/testapi.c:649,1
    - Dst: xmlCatalogDump
      Src: /src/libxml2/testapi.c:650,1
    - Dst: xmlDebugCheckDocument
      Src: /src/libxml2/testapi.c:655,1
    - Dst: xmlDebugDumpAttr
      Src: /src/libxml2/testapi.c:656,1
    - Dst: xmlDebugDumpAttrList
      Src: /src/libxml2/testapi.c:657,1
    - Dst: xmlDebugDumpDocumentHead
      Src: /src/libxml2/testapi.c:658,1
    - Dst: xmlDebugDumpEntities
      Src: /src/libxml2/testapi.c:659,1
    - Dst: xmlDebugDumpNodeList
      Src: /src/libxml2/testapi.c:660,1
    - Dst: xmlDebugDumpOneNode
      Src: /src/libxml2/testapi.c:661,1
    - Dst: htmlAttrAllowed
      Src: /src/libxml2/testapi.c:665,1
    - Dst: htmlAutoCloseTag
      Src: /src/libxml2/testapi.c:666,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:667,1
    - Dst: htmlCreateFileParserCtxt
      Src: /src/libxml2/testapi.c:667,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:668,1
    - Dst: htmlCreateMemoryParserCtxt
      Src: /src/libxml2/testapi.c:668,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:669,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/testapi.c:669,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:670,1
    - Dst: htmlCtxtReadDoc
      Src: /src/libxml2/testapi.c:670,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:671,1
    - Dst: htmlCtxtReadFd
      Src: /src/libxml2/testapi.c:671,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:672,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/testapi.c:672,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:673,1
    - Dst: htmlCtxtReadIO
      Src: /src/libxml2/testapi.c:673,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:674,1
    - Dst: htmlCtxtReadMemory
      Src: /src/libxml2/testapi.c:674,1
    - Dst: htmlCtxtReset
      Src: /src/libxml2/testapi.c:675,1
    - Dst: htmlCtxtSetOptions
      Src: /src/libxml2/testapi.c:676,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/testapi.c:677,1
    - Dst: htmlDefaultSAXHandlerInit
      Src: /src/libxml2/testapi.c:678,1
    - Dst: htmlElementAllowedHere
      Src: /src/libxml2/testapi.c:679,1
    - Dst: htmlElementStatusHere
      Src: /src/libxml2/testapi.c:680,1
    - Dst: htmlEncodeEntities
      Src: /src/libxml2/testapi.c:681,1
    - Dst: htmlEntityLookup
      Src: /src/libxml2/testapi.c:682,1
    - Dst: htmlEntityValueLookup
      Src: /src/libxml2/testapi.c:683,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:684,1
    - Dst: htmlGetMetaEncoding
      Src: /src/libxml2/testapi.c:685,1
    - Dst: htmlHandleOmittedElem
      Src: /src/libxml2/testapi.c:686,1
    - Dst: htmlInitAutoClose
      Src: /src/libxml2/testapi.c:687,1
    - Dst: htmlIsAutoClosed
      Src: /src/libxml2/testapi.c:688,1
    - Dst: htmlIsBooleanAttr
      Src: /src/libxml2/testapi.c:689,1
    - Dst: htmlIsScriptAttribute
      Src: /src/libxml2/testapi.c:690,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:691,1
    - Dst: htmlNewDoc
      Src: /src/libxml2/testapi.c:691,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:692,1
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/testapi.c:692,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:693,1
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/testapi.c:693,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:694,1
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/testapi.c:694,1
    - Dst: htmlNodeStatus
      Src: /src/libxml2/testapi.c:695,1
    - Dst: htmlParseCharRef
      Src: /src/libxml2/testapi.c:696,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:697,1
    - Dst: htmlParseDoc
      Src: /src/libxml2/testapi.c:697,1
    - Dst: htmlParseDocument
      Src: /src/libxml2/testapi.c:698,1
    - Dst: htmlParseElement
      Src: /src/libxml2/testapi.c:699,1
    - Dst: htmlParseEntityRef
      Src: /src/libxml2/testapi.c:700,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:701,1
    - Dst: htmlParseFile
      Src: /src/libxml2/testapi.c:701,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:702,1
    - Dst: htmlReadDoc
      Src: /src/libxml2/testapi.c:702,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:703,1
    - Dst: htmlReadFile
      Src: /src/libxml2/testapi.c:703,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:704,1
    - Dst: htmlReadIO
      Src: /src/libxml2/testapi.c:704,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:705,1
    - Dst: htmlReadMemory
      Src: /src/libxml2/testapi.c:705,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:706,1
    - Dst: htmlSAXParseDoc
      Src: /src/libxml2/testapi.c:706,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:707,1
    - Dst: htmlSAXParseFile
      Src: /src/libxml2/testapi.c:707,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxml2/testapi.c:708,1
    - Dst: htmlTagLookup
      Src: /src/libxml2/testapi.c:709,1
    - Dst: htmlUTF8ToHtml
      Src: /src/libxml2/testapi.c:710,1
    - Dst: xmlSAX2InitHtmlDefaultSAXHandler
      Src: /src/libxml2/testapi.c:711,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxml2/testapi.c:713,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxml2/testapi.c:714,1
    - Dst: htmlDocDump
      Src: /src/libxml2/testapi.c:715,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/testapi.c:716,1
    - Dst: htmlDocDumpMemoryFormat
      Src: /src/libxml2/testapi.c:717,1
    - Dst: htmlNodeDump
      Src: /src/libxml2/testapi.c:718,1
    - Dst: htmlNodeDumpFile
      Src: /src/libxml2/testapi.c:719,1
    - Dst: htmlNodeDumpFileFormat
      Src: /src/libxml2/testapi.c:720,1
    - Dst: htmlNodeDumpFormatOutput
      Src: /src/libxml2/testapi.c:721,1
    - Dst: htmlNodeDumpOutput
      Src: /src/libxml2/testapi.c:722,1
    - Dst: htmlSaveFile
      Src: /src/libxml2/testapi.c:723,1
    - Dst: htmlSaveFileEnc
      Src: /src/libxml2/testapi.c:724,1
    - Dst: htmlSaveFileFormat
      Src: /src/libxml2/testapi.c:725,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:728,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/testapi.c:728,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/testapi.c:729,1
    - Dst: xmlModuleClose
      Src: /src/libxml2/testapi.c:734,1
    - Dst: xmlModuleFree
      Src: /src/libxml2/testapi.c:735,1
    - Dst: xmlModuleFree
      Src: /src/libxml2/testapi.c:736,1
    - Dst: xmlModuleOpen
      Src: /src/libxml2/testapi.c:736,1
    - Dst: xmlModuleSymbol
      Src: /src/libxml2/testapi.c:737,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:741,1
    - Dst: __xmlOutputBufferCreateFilename
      Src: /src/libxml2/testapi.c:741,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:742,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/testapi.c:742,1
    - Dst: xmlAttrSerializeTxtContent
      Src: /src/libxml2/testapi.c:743,1
    - Dst: xmlBufNodeDump
      Src: /src/libxml2/testapi.c:744,1
    - Dst: xmlCleanupOutputCallbacks
      Src: /src/libxml2/testapi.c:745,1
    - Dst: xmlDocDump
      Src: /src/libxml2/testapi.c:746,1
    - Dst: xmlDocDumpFormatMemory
      Src: /src/libxml2/testapi.c:747,1
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/testapi.c:748,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/testapi.c:749,1
    - Dst: xmlDocDumpMemoryEnc
      Src: /src/libxml2/testapi.c:750,1
    - Dst: xmlDocFormatDump
      Src: /src/libxml2/testapi.c:751,1
    - Dst: xmlDumpAttributeDecl
      Src: /src/libxml2/testapi.c:752,1
    - Dst: xmlDumpAttributeTable
      Src: /src/libxml2/testapi.c:753,1
    - Dst: xmlDumpElementDecl
      Src: /src/libxml2/testapi.c:754,1
    - Dst: xmlDumpElementTable
      Src: /src/libxml2/testapi.c:755,1
    - Dst: xmlDumpEntitiesTable
      Src: /src/libxml2/testapi.c:756,1
    - Dst: xmlDumpEntityDecl
      Src: /src/libxml2/testapi.c:757,1
    - Dst: xmlDumpNotationDecl
      Src: /src/libxml2/testapi.c:758,1
    - Dst: xmlDumpNotationTable
      Src: /src/libxml2/testapi.c:759,1
    - Dst: xmlElemDump
      Src: /src/libxml2/testapi.c:760,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/testapi.c:761,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/testapi.c:762,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:763,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:764,1
    - Dst: xmlOutputBufferCreateBuffer
      Src: /src/libxml2/testapi.c:764,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:765,1
    - Dst: xmlOutputBufferCreateFd
      Src: /src/libxml2/testapi.c:765,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:766,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/testapi.c:766,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:767,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/testapi.c:767,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/testapi.c:768,1
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/testapi.c:768,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/testapi.c:769,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/testapi.c:770,1
    - Dst: xmlOutputBufferGetSize
      Src: /src/libxml2/testapi.c:771,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/testapi.c:772,1
    - Dst: xmlOutputBufferWriteEscape
      Src: /src/libxml2/testapi.c:773,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/testapi.c:774,1
    - Dst: xmlPopOutputCallbacks
      Src: /src/libxml2/testapi.c:775,1
    - Dst: xmlRegisterDefaultOutputCallbacks
      Src: /src/libxml2/testapi.c:776,1
    - Dst: xmlRegisterOutputCallbacks
      Src: /src/libxml2/testapi.c:777,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testapi.c:778,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/testapi.c:779,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/testapi.c:780,1
    - Dst: xmlSaveFileEnc
      Src: /src/libxml2/testapi.c:781,1
    - Dst: xmlSaveFileTo
      Src: /src/libxml2/testapi.c:782,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/testapi.c:783,1
    - Dst: xmlSaveFlush
      Src: /src/libxml2/testapi.c:784,1
    - Dst: xmlSaveFormatFile
      Src: /src/libxml2/testapi.c:785,1
    - Dst: xmlSaveFormatFileEnc
      Src: /src/libxml2/testapi.c:786,1
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/testapi.c:787,1
    - Dst: xmlSaveSetAttrEscape
      Src: /src/libxml2/testapi.c:788,1
    - Dst: xmlSaveSetEscape
      Src: /src/libxml2/testapi.c:789,1
    - Dst: xmlSaveSetIndentString
      Src: /src/libxml2/testapi.c:790,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testapi.c:791,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/testapi.c:791,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testapi.c:792,1
    - Dst: xmlSaveToFd
      Src: /src/libxml2/testapi.c:792,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testapi.c:793,1
    - Dst: xmlSaveToFilename
      Src: /src/libxml2/testapi.c:793,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testapi.c:794,1
    - Dst: xmlSaveToIO
      Src: /src/libxml2/testapi.c:794,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/testapi.c:795,1
    - Dst: xmlSprintfElementContent
      Src: /src/libxml2/testapi.c:796,1
    - Dst: xmlThrDefIndentTreeOutput
      Src: /src/libxml2/testapi.c:797,1
    - Dst: xmlThrDefSaveNoEmptyTags
      Src: /src/libxml2/testapi.c:798,1
    - Dst: xmlThrDefTreeIndentString
      Src: /src/libxml2/testapi.c:799,1
    - Dst: xmlUTF8ToIsolat1
      Src: /src/libxml2/testapi.c:800,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/testapi.c:804,1
    - Dst: xmlFreePatternList
      Src: /src/libxml2/testapi.c:805,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/testapi.c:806,1
    - Dst: xmlPatternCompileSafe
      Src: /src/libxml2/testapi.c:807,1
    - Dst: xmlPatternFromRoot
      Src: /src/libxml2/testapi.c:808,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/testapi.c:809,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/testapi.c:810,1
    - Dst: xmlPatternMaxDepth
      Src: /src/libxml2/testapi.c:811,1
    - Dst: xmlPatternMinDepth
      Src: /src/libxml2/testapi.c:812,1
    - Dst: xmlPatternStreamable
      Src: /src/libxml2/testapi.c:813,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/testapi.c:814,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/testapi.c:815,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/testapi.c:816,1
    - Dst: xmlStreamPushAttr
      Src: /src/libxml2/testapi.c:817,1
    - Dst: xmlStreamPushNode
      Src: /src/libxml2/testapi.c:818,1
    - Dst: xmlStreamWantsAnyNode
      Src: /src/libxml2/testapi.c:819,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:823,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testapi.c:823,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testapi.c:824,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testapi.c:828,1
    - Dst: xmlNewTextReader
      Src: /src/libxml2/testapi.c:829,1
    - Dst: xmlNewTextReaderFilename
      Src: /src/libxml2/testapi.c:830,1
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testapi.c:831,1
    - Dst: xmlReaderForFile
      Src: /src/libxml2/testapi.c:832,1
    - Dst: xmlReaderForIO
      Src: /src/libxml2/testapi.c:833,1
    - Dst: xmlReaderForMemory
      Src: /src/libxml2/testapi.c:834,1
    - Dst: xmlReaderNewDoc
      Src: /src/libxml2/testapi.c:835,1
    - Dst: xmlReaderNewFd
      Src: /src/libxml2/testapi.c:836,1
    - Dst: xmlReaderNewFile
      Src: /src/libxml2/testapi.c:837,1
    - Dst: xmlReaderNewIO
      Src: /src/libxml2/testapi.c:838,1
    - Dst: xmlReaderNewMemory
      Src: /src/libxml2/testapi.c:839,1
    - Dst: xmlReaderNewWalker
      Src: /src/libxml2/testapi.c:840,1
    - Dst: xmlReaderWalker
      Src: /src/libxml2/testapi.c:841,1
    - Dst: xmlTextReaderAttributeCount
      Src: /src/libxml2/testapi.c:842,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:843,1
    - Dst: xmlTextReaderBaseUri
      Src: /src/libxml2/testapi.c:843,1
    - Dst: xmlTextReaderByteConsumed
      Src: /src/libxml2/testapi.c:844,1
    - Dst: xmlTextReaderClose
      Src: /src/libxml2/testapi.c:845,1
    - Dst: xmlTextReaderConstBaseUri
      Src: /src/libxml2/testapi.c:846,1
    - Dst: xmlTextReaderConstEncoding
      Src: /src/libxml2/testapi.c:847,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/testapi.c:848,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/testapi.c:849,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/testapi.c:850,1
    - Dst: xmlTextReaderConstPrefix
      Src: /src/libxml2/testapi.c:851,1
    - Dst: xmlTextReaderConstString
      Src: /src/libxml2/testapi.c:852,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/testapi.c:853,1
    - Dst: xmlTextReaderConstXmlLang
      Src: /src/libxml2/testapi.c:854,1
    - Dst: xmlTextReaderConstXmlVersion
      Src: /src/libxml2/testapi.c:855,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:856,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/testapi.c:856,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:857,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/testapi.c:857,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/testapi.c:858,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:859,1
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/testapi.c:859,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:860,1
    - Dst: xmlTextReaderGetAttribute
      Src: /src/libxml2/testapi.c:860,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:861,1
    - Dst: xmlTextReaderGetAttributeNo
      Src: /src/libxml2/testapi.c:861,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:862,1
    - Dst: xmlTextReaderGetAttributeNs
      Src: /src/libxml2/testapi.c:862,1
    - Dst: xmlTextReaderGetErrorHandler
      Src: /src/libxml2/testapi.c:863,1
    - Dst: xmlTextReaderGetLastError
      Src: /src/libxml2/testapi.c:864,1
    - Dst: xmlTextReaderGetParserColumnNumber
      Src: /src/libxml2/testapi.c:865,1
    - Dst: xmlTextReaderGetParserLineNumber
      Src: /src/libxml2/testapi.c:866,1
    - Dst: xmlTextReaderGetParserProp
      Src: /src/libxml2/testapi.c:867,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testapi.c:868,1
    - Dst: xmlTextReaderGetRemainder
      Src: /src/libxml2/testapi.c:868,1
    - Dst: xmlTextReaderHasAttributes
      Src: /src/libxml2/testapi.c:869,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/testapi.c:870,1
    - Dst: xmlTextReaderIsDefault
      Src: /src/libxml2/testapi.c:871,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/testapi.c:872,1
    - Dst: xmlTextReaderIsNamespaceDecl
      Src: /src/libxml2/testapi.c:873,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/testapi.c:874,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:875,1
    - Dst: xmlTextReaderLocalName
      Src: /src/libxml2/testapi.c:875,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:876,1
    - Dst: xmlTextReaderLocatorBaseURI
      Src: /src/libxml2/testapi.c:876,1
    - Dst: xmlTextReaderLocatorLineNumber
      Src: /src/libxml2/testapi.c:877,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:878,1
    - Dst: xmlTextReaderLookupNamespace
      Src: /src/libxml2/testapi.c:878,1
    - Dst: xmlTextReaderMoveToAttribute
      Src: /src/libxml2/testapi.c:879,1
    - Dst: xmlTextReaderMoveToAttributeNo
      Src: /src/libxml2/testapi.c:880,1
    - Dst: xmlTextReaderMoveToAttributeNs
      Src: /src/libxml2/testapi.c:881,1
    - Dst: xmlTextReaderMoveToElement
      Src: /src/libxml2/testapi.c:882,1
    - Dst: xmlTextReaderMoveToFirstAttribute
      Src: /src/libxml2/testapi.c:883,1
    - Dst: xmlTextReaderMoveToNextAttribute
      Src: /src/libxml2/testapi.c:884,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:885,1
    - Dst: xmlTextReaderName
      Src: /src/libxml2/testapi.c:885,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:886,1
    - Dst: xmlTextReaderNamespaceUri
      Src: /src/libxml2/testapi.c:886,1
    - Dst: xmlTextReaderNext
      Src: /src/libxml2/testapi.c:887,1
    - Dst: xmlTextReaderNextSibling
      Src: /src/libxml2/testapi.c:888,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/testapi.c:889,1
    - Dst: xmlTextReaderNormalization
      Src: /src/libxml2/testapi.c:890,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:891,1
    - Dst: xmlTextReaderPrefix
      Src: /src/libxml2/testapi.c:891,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:892,1
    - Dst: xmlTextReaderPreserve
      Src: /src/libxml2/testapi.c:892,1
    - Dst: xmlTextReaderQuoteChar
      Src: /src/libxml2/testapi.c:893,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testapi.c:894,1
    - Dst: xmlTextReaderReadAttributeValue
      Src: /src/libxml2/testapi.c:895,1
    - Dst: xmlTextReaderReadState
      Src: /src/libxml2/testapi.c:896,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:897,1
    - Dst: xmlTextReaderReadString
      Src: /src/libxml2/testapi.c:897,1
    - Dst: xmlTextReaderSetErrorHandler
      Src: /src/libxml2/testapi.c:898,1
    - Dst: xmlTextReaderSetMaxAmplification
      Src: /src/libxml2/testapi.c:899,1
    - Dst: xmlTextReaderSetParserProp
      Src: /src/libxml2/testapi.c:900,1
    - Dst: xmlTextReaderSetResourceLoader
      Src: /src/libxml2/testapi.c:901,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/testapi.c:902,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/testapi.c:903,1
    - Dst: xmlTextReaderStandalone
      Src: /src/libxml2/testapi.c:904,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:905,1
    - Dst: xmlTextReaderValue
      Src: /src/libxml2/testapi.c:905,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:906,1
    - Dst: xmlTextReaderXmlLang
      Src: /src/libxml2/testapi.c:906,1
    - Dst: xmlTextReaderPreservePattern
      Src: /src/libxml2/testapi.c:908,1
    - Dst: xmlTextReaderRelaxNGSetSchema
      Src: /src/libxml2/testapi.c:911,1
    - Dst: xmlTextReaderRelaxNGValidate
      Src: /src/libxml2/testapi.c:912,1
    - Dst: xmlTextReaderRelaxNGValidateCtxt
      Src: /src/libxml2/testapi.c:913,1
    - Dst: xmlTextReaderSchemaValidate
      Src: /src/libxml2/testapi.c:916,1
    - Dst: xmlTextReaderSchemaValidateCtxt
      Src: /src/libxml2/testapi.c:917,1
    - Dst: xmlTextReaderSetSchema
      Src: /src/libxml2/testapi.c:918,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:921,1
    - Dst: xmlTextReaderReadInnerXml
      Src: /src/libxml2/testapi.c:921,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:922,1
    - Dst: xmlTextReaderReadOuterXml
      Src: /src/libxml2/testapi.c:922,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/testapi.c:927,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/testapi.c:928,1
    - Dst: xmlAutomataIsDeterminist
      Src: /src/libxml2/testapi.c:929,1
    - Dst: xmlAutomataNewAllTrans
      Src: /src/libxml2/testapi.c:930,1
    - Dst: xmlAutomataNewCountTrans
      Src: /src/libxml2/testapi.c:931,1
    - Dst: xmlAutomataNewCountTrans2
      Src: /src/libxml2/testapi.c:932,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/testapi.c:933,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/testapi.c:934,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/testapi.c:935,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/testapi.c:936,1
    - Dst: xmlAutomataNewNegTrans
      Src: /src/libxml2/testapi.c:937,1
    - Dst: xmlAutomataNewOnceTrans
      Src: /src/libxml2/testapi.c:938,1
    - Dst: xmlAutomataNewOnceTrans2
      Src: /src/libxml2/testapi.c:939,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/testapi.c:940,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/testapi.c:941,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/testapi.c:942,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/testapi.c:943,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/testapi.c:944,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/testapi.c:945,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/testapi.c:945,1
    - Dst: xmlRegExecErrInfo
      Src: /src/libxml2/testapi.c:946,1
    - Dst: xmlRegExecNextValues
      Src: /src/libxml2/testapi.c:947,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/testapi.c:948,1
    - Dst: xmlRegExecPushString2
      Src: /src/libxml2/testapi.c:949,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/testapi.c:950,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/testapi.c:951,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/testapi.c:952,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/testapi.c:953,1
    - Dst: xmlRegexpExec
      Src: /src/libxml2/testapi.c:954,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/testapi.c:955,1
    - Dst: xmlRegexpPrint
      Src: /src/libxml2/testapi.c:956,1
    - Dst: xmlRelaxNGCleanupTypes
      Src: /src/libxml2/testapi.c:960,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/testapi.c:961,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/testapi.c:962,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/testapi.c:963,1
    - Dst: xmlRelaxNGGetParserErrors
      Src: /src/libxml2/testapi.c:964,1
    - Dst: xmlRelaxNGGetValidErrors
      Src: /src/libxml2/testapi.c:965,1
    - Dst: xmlRelaxNGInitTypes
      Src: /src/libxml2/testapi.c:966,1
    - Dst: xmlRelaxNGNewDocParserCtxt
      Src: /src/libxml2/testapi.c:967,1
    - Dst: xmlRelaxNGNewMemParserCtxt
      Src: /src/libxml2/testapi.c:968,1
    - Dst: xmlRelaxNGNewParserCtxt
      Src: /src/libxml2/testapi.c:969,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/testapi.c:970,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/testapi.c:970,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/testapi.c:971,1
    - Dst: xmlRelaxNGSetParserErrors
      Src: /src/libxml2/testapi.c:972,1
    - Dst: xmlRelaxNGSetParserStructuredErrors
      Src: /src/libxml2/testapi.c:973,1
    - Dst: xmlRelaxNGSetResourceLoader
      Src: /src/libxml2/testapi.c:974,1
    - Dst: xmlRelaxNGSetValidErrors
      Src: /src/libxml2/testapi.c:975,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/testapi.c:976,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/testapi.c:977,1
    - Dst: xmlRelaxNGValidateFullElement
      Src: /src/libxml2/testapi.c:978,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/testapi.c:979,1
    - Dst: xmlRelaxNGValidatePushCData
      Src: /src/libxml2/testapi.c:980,1
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/testapi.c:981,1
    - Dst: xmlRelaxParserSetFlag
      Src: /src/libxml2/testapi.c:982,1
    - Dst: xmlRelaxNGDump
      Src: /src/libxml2/testapi.c:984,1
    - Dst: xmlRelaxNGDumpTree
      Src: /src/libxml2/testapi.c:987,1
    - Dst: xmlParseBalancedChunkMemory
      Src: /src/libxml2/testapi.c:992,1
    - Dst: xmlParseBalancedChunkMemoryRecover
      Src: /src/libxml2/testapi.c:993,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:994,1
    - Dst: xmlParseDoc
      Src: /src/libxml2/testapi.c:994,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:995,1
    - Dst: xmlParseEntity
      Src: /src/libxml2/testapi.c:995,1
    - Dst: xmlParseExternalEntity
      Src: /src/libxml2/testapi.c:996,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:997,1
    - Dst: xmlParseFile
      Src: /src/libxml2/testapi.c:997,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:998,1
    - Dst: xmlParseMemory
      Src: /src/libxml2/testapi.c:998,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:999,1
    - Dst: xmlRecoverDoc
      Src: /src/libxml2/testapi.c:999,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1000,1
    - Dst: xmlRecoverFile
      Src: /src/libxml2/testapi.c:1000,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1001,1
    - Dst: xmlRecoverMemory
      Src: /src/libxml2/testapi.c:1001,1
    - Dst: xmlSAXDefaultVersion
      Src: /src/libxml2/testapi.c:1002,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1003,1
    - Dst: xmlSAXParseDoc
      Src: /src/libxml2/testapi.c:1003,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1004,1
    - Dst: xmlSAXParseEntity
      Src: /src/libxml2/testapi.c:1004,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1005,1
    - Dst: xmlSAXParseFile
      Src: /src/libxml2/testapi.c:1005,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1006,1
    - Dst: xmlSAXParseFileWithData
      Src: /src/libxml2/testapi.c:1006,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1007,1
    - Dst: xmlSAXParseMemory
      Src: /src/libxml2/testapi.c:1007,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testapi.c:1008,1
    - Dst: xmlSAXParseMemoryWithData
      Src: /src/libxml2/testapi.c:1008,1
    - Dst: xmlSAXUserParseFile
      Src: /src/libxml2/testapi.c:1009,1
    - Dst: xmlSAXUserParseMemory
      Src: /src/libxml2/testapi.c:1010,1
    - Dst: xmlSetupParserForBuffer
      Src: /src/libxml2/testapi.c:1011,1
    - Dst: xmlSchemaCheckFacet
      Src: /src/libxml2/testapi.c:1015,1
    - Dst: xmlSchemaCleanupTypes
      Src: /src/libxml2/testapi.c:1016,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1017,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/testapi.c:1017,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/testapi.c:1018,1
    - Dst: xmlSchemaCompareValuesWhtsp
      Src: /src/libxml2/testapi.c:1019,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1020,1
    - Dst: xmlSchemaCopyValue
      Src: /src/libxml2/testapi.c:1020,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/testapi.c:1021,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/testapi.c:1022,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/testapi.c:1023,1
    - Dst: xmlSchemaFreeType
      Src: /src/libxml2/testapi.c:1024,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/testapi.c:1025,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1026,1
    - Dst: xmlSchemaFreeWildcard
      Src: /src/libxml2/testapi.c:1027,1
    - Dst: xmlSchemaGetBuiltInListSimpleTypeItemType
      Src: /src/libxml2/testapi.c:1028,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/testapi.c:1029,1
    - Dst: xmlSchemaGetCanonValue
      Src: /src/libxml2/testapi.c:1030,1
    - Dst: xmlSchemaGetCanonValueWhtsp
      Src: /src/libxml2/testapi.c:1031,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/testapi.c:1032,1
    - Dst: xmlSchemaGetParserErrors
      Src: /src/libxml2/testapi.c:1033,1
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/testapi.c:1034,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/testapi.c:1035,1
    - Dst: xmlSchemaGetValidErrors
      Src: /src/libxml2/testapi.c:1036,1
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/testapi.c:1037,1
    - Dst: xmlSchemaIsBuiltInTypeFacet
      Src: /src/libxml2/testapi.c:1038,1
    - Dst: xmlSchemaIsValid
      Src: /src/libxml2/testapi.c:1039,1
    - Dst: xmlSchemaNewDocParserCtxt
      Src: /src/libxml2/testapi.c:1040,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/testapi.c:1041,1
    - Dst: xmlSchemaNewFacet
      Src: /src/libxml2/testapi.c:1041,1
    - Dst: xmlSchemaNewMemParserCtxt
      Src: /src/libxml2/testapi.c:1042,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1043,1
    - Dst: xmlSchemaNewNOTATIONValue
      Src: /src/libxml2/testapi.c:1043,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/testapi.c:1044,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1045,1
    - Dst: xmlSchemaNewQNameValue
      Src: /src/libxml2/testapi.c:1045,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1046,1
    - Dst: xmlSchemaNewStringValue
      Src: /src/libxml2/testapi.c:1046,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/testapi.c:1047,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/testapi.c:1047,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/testapi.c:1048,1
    - Dst: xmlSchemaSAXPlug
      Src: /src/libxml2/testapi.c:1049,1
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/testapi.c:1050,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/testapi.c:1051,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/testapi.c:1052,1
    - Dst: xmlSchemaSetResourceLoader
      Src: /src/libxml2/testapi.c:1053,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/testapi.c:1054,1
    - Dst: xmlSchemaSetValidOptions
      Src: /src/libxml2/testapi.c:1055,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/testapi.c:1056,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/testapi.c:1057,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/testapi.c:1058,1
    - Dst: xmlSchemaValidCtxtGetOptions
      Src: /src/libxml2/testapi.c:1059,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testapi.c:1060,1
    - Dst: xmlSchemaValidCtxtGetParserCtxt
      Src: /src/libxml2/testapi.c:1060,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/testapi.c:1061,1
    - Dst: xmlSchemaValidateFacet
      Src: /src/libxml2/testapi.c:1062,1
    - Dst: xmlSchemaValidateFacetWhtsp
      Src: /src/libxml2/testapi.c:1063,1
    - Dst: xmlSchemaValidateFile
      Src: /src/libxml2/testapi.c:1064,1
    - Dst: xmlSchemaValidateLengthFacet
      Src: /src/libxml2/testapi.c:1065,1
    - Dst: xmlSchemaValidateLengthFacetWhtsp
      Src: /src/libxml2/testapi.c:1066,1
    - Dst: xmlSchemaValidateListSimpleTypeFacet
      Src: /src/libxml2/testapi.c:1067,1
    - Dst: xmlSchemaValidateOneElement
      Src: /src/libxml2/testapi.c:1068,1
    - Dst: xmlSchemaValidatePredefinedType
      Src: /src/libxml2/testapi.c:1069,1
    - Dst: xmlSchemaValidateSetFilename
      Src: /src/libxml2/testapi.c:1070,1
    - Dst: xmlSchemaValidateSetLocator
      Src: /src/libxml2/testapi.c:1071,1
    - Dst: xmlSchemaValidateStream
      Src: /src/libxml2/testapi.c:1072,1
    - Dst: xmlSchemaValueAppend
      Src: /src/libxml2/testapi.c:1073,1
    - Dst: xmlSchemaValueGetAsBoolean
      Src: /src/libxml2/testapi.c:1074,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/testapi.c:1075,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/testapi.c:1076,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/testapi.c:1076,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1077,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/testapi.c:1077,1
    - Dst: xmlSchemaDump
      Src: /src/libxml2/testapi.c:1079,1
    - Dst: xmlSchematronFree
      Src: /src/libxml2/testapi.c:1084,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/testapi.c:1085,1
    - Dst: xmlSchematronFreeValidCtxt
      Src: /src/libxml2/testapi.c:1086,1
    - Dst: xmlSchematronNewDocParserCtxt
      Src: /src/libxml2/testapi.c:1087,1
    - Dst: xmlSchematronNewMemParserCtxt
      Src: /src/libxml2/testapi.c:1088,1
    - Dst: xmlSchematronNewParserCtxt
      Src: /src/libxml2/testapi.c:1089,1
    - Dst: xmlSchematronNewValidCtxt
      Src: /src/libxml2/testapi.c:1090,1
    - Dst: xmlSchematronParse
      Src: /src/libxml2/testapi.c:1091,1
    - Dst: xmlSchematronSetValidStructuredErrors
      Src: /src/libxml2/testapi.c:1092,1
    - Dst: xmlSchematronValidateDoc
      Src: /src/libxml2/testapi.c:1093,1
    - Dst: xmlCatalogConvert
      Src: /src/libxml2/testapi.c:1097,1
    - Dst: xmlConvertSGMLCatalog
      Src: /src/libxml2/testapi.c:1098,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/testapi.c:1099,1
    - Dst: xmlLoadSGMLSuperCatalog
      Src: /src/libxml2/testapi.c:1099,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/testapi.c:1103,1
    - Dst: xmlCtxtGetValidCtxt
      Src: /src/libxml2/testapi.c:1103,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:1104,1
    - Dst: xmlCtxtParseDtd
      Src: /src/libxml2/testapi.c:1104,1
    - Dst: xmlCtxtValidateDocument
      Src: /src/libxml2/testapi.c:1105,1
    - Dst: xmlCtxtValidateDtd
      Src: /src/libxml2/testapi.c:1106,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/testapi.c:1107,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:1108,1
    - Dst: xmlIOParseDTD
      Src: /src/libxml2/testapi.c:1108,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/testapi.c:1109,1
    - Dst: xmlNewValidCtxt
      Src: /src/libxml2/testapi.c:1109,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:1110,1
    - Dst: xmlParseDTD
      Src: /src/libxml2/testapi.c:1110,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testapi.c:1111,1
    - Dst: xmlSAXParseDTD
      Src: /src/libxml2/testapi.c:1111,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1112,1
    - Dst: xmlValidCtxtNormalizeAttributeValue
      Src: /src/libxml2/testapi.c:1112,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/testapi.c:1113,1
    - Dst: xmlValidGetValidElements
      Src: /src/libxml2/testapi.c:1114,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1115,1
    - Dst: xmlValidNormalizeAttributeValue
      Src: /src/libxml2/testapi.c:1115,1
    - Dst: xmlValidateAttributeDecl
      Src: /src/libxml2/testapi.c:1116,1
    - Dst: xmlValidateAttributeValue
      Src: /src/libxml2/testapi.c:1117,1
    - Dst: xmlValidateDocument
      Src: /src/libxml2/testapi.c:1118,1
    - Dst: xmlValidateDocumentFinal
      Src: /src/libxml2/testapi.c:1119,1
    - Dst: xmlValidateDtd
      Src: /src/libxml2/testapi.c:1120,1
    - Dst: xmlValidateDtdFinal
      Src: /src/libxml2/testapi.c:1121,1
    - Dst: xmlValidateElement
      Src: /src/libxml2/testapi.c:1122,1
    - Dst: xmlValidateElementDecl
      Src: /src/libxml2/testapi.c:1123,1
    - Dst: xmlValidateNameValue
      Src: /src/libxml2/testapi.c:1124,1
    - Dst: xmlValidateNamesValue
      Src: /src/libxml2/testapi.c:1125,1
    - Dst: xmlValidateNmtokenValue
      Src: /src/libxml2/testapi.c:1126,1
    - Dst: xmlValidateNmtokensValue
      Src: /src/libxml2/testapi.c:1127,1
    - Dst: xmlValidateNotationDecl
      Src: /src/libxml2/testapi.c:1128,1
    - Dst: xmlValidateNotationUse
      Src: /src/libxml2/testapi.c:1129,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/testapi.c:1130,1
    - Dst: xmlValidateOneElement
      Src: /src/libxml2/testapi.c:1131,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/testapi.c:1132,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/testapi.c:1133,1
    - Dst: xmlValidBuildContentModel
      Src: /src/libxml2/testapi.c:1135,1
    - Dst: xmlValidatePopElement
      Src: /src/libxml2/testapi.c:1136,1
    - Dst: xmlValidatePushCData
      Src: /src/libxml2/testapi.c:1137,1
    - Dst: xmlValidatePushElement
      Src: /src/libxml2/testapi.c:1138,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1143,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1144,1
    - Dst: xmlNewTextWriter
      Src: /src/libxml2/testapi.c:1144,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1145,1
    - Dst: xmlNewTextWriterDoc
      Src: /src/libxml2/testapi.c:1145,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1146,1
    - Dst: xmlNewTextWriterFilename
      Src: /src/libxml2/testapi.c:1146,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1147,1
    - Dst: xmlNewTextWriterMemory
      Src: /src/libxml2/testapi.c:1147,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1148,1
    - Dst: xmlNewTextWriterPushParser
      Src: /src/libxml2/testapi.c:1148,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testapi.c:1149,1
    - Dst: xmlNewTextWriterTree
      Src: /src/libxml2/testapi.c:1149,1
    - Dst: xmlTextWriterClose
      Src: /src/libxml2/testapi.c:1150,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/testapi.c:1151,1
    - Dst: xmlTextWriterEndCDATA
      Src: /src/libxml2/testapi.c:1152,1
    - Dst: xmlTextWriterEndComment
      Src: /src/libxml2/testapi.c:1153,1
    - Dst: xmlTextWriterEndDTD
      Src: /src/libxml2/testapi.c:1154,1
    - Dst: xmlTextWriterEndDTDAttlist
      Src: /src/libxml2/testapi.c:1155,1
    - Dst: xmlTextWriterEndDTDElement
      Src: /src/libxml2/testapi.c:1156,1
    - Dst: xmlTextWriterEndDTDEntity
      Src: /src/libxml2/testapi.c:1157,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/testapi.c:1158,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/testapi.c:1159,1
    - Dst: xmlTextWriterEndPI
      Src: /src/libxml2/testapi.c:1160,1
    - Dst: xmlTextWriterFlush
      Src: /src/libxml2/testapi.c:1161,1
    - Dst: xmlTextWriterFullEndElement
      Src: /src/libxml2/testapi.c:1162,1
    - Dst: xmlTextWriterSetIndent
      Src: /src/libxml2/testapi.c:1163,1
    - Dst: xmlTextWriterSetIndentString
      Src: /src/libxml2/testapi.c:1164,1
    - Dst: xmlTextWriterSetQuoteChar
      Src: /src/libxml2/testapi.c:1165,1
    - Dst: xmlTextWriterStartAttribute
      Src: /src/libxml2/testapi.c:1166,1
    - Dst: xmlTextWriterStartAttributeNS
      Src: /src/libxml2/testapi.c:1167,1
    - Dst: xmlTextWriterStartCDATA
      Src: /src/libxml2/testapi.c:1168,1
    - Dst: xmlTextWriterStartComment
      Src: /src/libxml2/testapi.c:1169,1
    - Dst: xmlTextWriterStartDTD
      Src: /src/libxml2/testapi.c:1170,1
    - Dst: xmlTextWriterStartDTDAttlist
      Src: /src/libxml2/testapi.c:1171,1
    - Dst: xmlTextWriterStartDTDElement
      Src: /src/libxml2/testapi.c:1172,1
    - Dst: xmlTextWriterStartDTDEntity
      Src: /src/libxml2/testapi.c:1173,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/testapi.c:1174,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/testapi.c:1175,1
    - Dst: xmlTextWriterStartElementNS
      Src: /src/libxml2/testapi.c:1176,1
    - Dst: xmlTextWriterStartPI
      Src: /src/libxml2/testapi.c:1177,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/testapi.c:1178,1
    - Dst: xmlTextWriterWriteAttributeNS
      Src: /src/libxml2/testapi.c:1179,1
    - Dst: xmlTextWriterWriteBase64
      Src: /src/libxml2/testapi.c:1180,1
    - Dst: xmlTextWriterWriteBinHex
      Src: /src/libxml2/testapi.c:1181,1
    - Dst: xmlTextWriterWriteCDATA
      Src: /src/libxml2/testapi.c:1182,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/testapi.c:1183,1
    - Dst: xmlTextWriterWriteDTD
      Src: /src/libxml2/testapi.c:1184,1
    - Dst: xmlTextWriterWriteDTDAttlist
      Src: /src/libxml2/testapi.c:1185,1
    - Dst: xmlTextWriterWriteDTDElement
      Src: /src/libxml2/testapi.c:1186,1
    - Dst: xmlTextWriterWriteDTDEntity
      Src: /src/libxml2/testapi.c:1187,1
    - Dst: xmlTextWriterWriteDTDExternalEntity
      Src: /src/libxml2/testapi.c:1188,1
    - Dst: xmlTextWriterWriteDTDExternalEntityContents
      Src: /src/libxml2/testapi.c:1189,1
    - Dst: xmlTextWriterWriteDTDInternalEntity
      Src: /src/libxml2/testapi.c:1190,1
    - Dst: xmlTextWriterWriteDTDNotation
      Src: /src/libxml2/testapi.c:1191,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/testapi.c:1192,1
    - Dst: xmlTextWriterWriteElementNS
      Src: /src/libxml2/testapi.c:1193,1
    - Dst: xmlTextWriterWriteFormatAttribute
      Src: /src/libxml2/testapi.c:1194,1
    - Dst: xmlTextWriterWriteFormatAttributeNS
      Src: /src/libxml2/testapi.c:1195,1
    - Dst: xmlTextWriterWriteFormatCDATA
      Src: /src/libxml2/testapi.c:1196,1
    - Dst: xmlTextWriterWriteFormatComment
      Src: /src/libxml2/testapi.c:1197,1
    - Dst: xmlTextWriterWriteFormatDTD
      Src: /src/libxml2/testapi.c:1198,1
    - Dst: xmlTextWriterWriteFormatDTDAttlist
      Src: /src/libxml2/testapi.c:1199,1
    - Dst: xmlTextWriterWriteFormatDTDElement
      Src: /src/libxml2/testapi.c:1200,1
    - Dst: xmlTextWriterWriteFormatDTDInternalEntity
      Src: /src/libxml2/testapi.c:1201,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/testapi.c:1202,1
    - Dst: xmlTextWriterWriteFormatElementNS
      Src: /src/libxml2/testapi.c:1203,1
    - Dst: xmlTextWriterWriteFormatPI
      Src: /src/libxml2/testapi.c:1204,1
    - Dst: xmlTextWriterWriteFormatRaw
      Src: /src/libxml2/testapi.c:1205,1
    - Dst: xmlTextWriterWriteFormatString
      Src: /src/libxml2/testapi.c:1206,1
    - Dst: xmlTextWriterWritePI
      Src: /src/libxml2/testapi.c:1207,1
    - Dst: xmlTextWriterWriteRaw
      Src: /src/libxml2/testapi.c:1208,1
    - Dst: xmlTextWriterWriteRawLen
      Src: /src/libxml2/testapi.c:1209,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/testapi.c:1210,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/testapi.c:1214,1
    - Dst: xmlXIncludeGetLastError
      Src: /src/libxml2/testapi.c:1215,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/testapi.c:1216,1
    - Dst: xmlXIncludeProcess
      Src: /src/libxml2/testapi.c:1217,1
    - Dst: xmlXIncludeProcessFlags
      Src: /src/libxml2/testapi.c:1218,1
    - Dst: xmlXIncludeProcessFlagsData
      Src: /src/libxml2/testapi.c:1219,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/testapi.c:1220,1
    - Dst: xmlXIncludeProcessTree
      Src: /src/libxml2/testapi.c:1221,1
    - Dst: xmlXIncludeProcessTreeFlags
      Src: /src/libxml2/testapi.c:1222,1
    - Dst: xmlXIncludeProcessTreeFlagsData
      Src: /src/libxml2/testapi.c:1223,1
    - Dst: xmlXIncludeSetErrorHandler
      Src: /src/libxml2/testapi.c:1224,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/testapi.c:1225,1
    - Dst: xmlXIncludeSetResourceLoader
      Src: /src/libxml2/testapi.c:1226,1
    - Dst: xmlXPathAddValues
      Src: /src/libxml2/testapi.c:1230,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/testapi.c:1231,1
    - Dst: xmlXPathCastBooleanToNumber
      Src: /src/libxml2/testapi.c:1232,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1233,1
    - Dst: xmlXPathCastBooleanToString
      Src: /src/libxml2/testapi.c:1233,1
    - Dst: xmlXPathCastNodeSetToBoolean
      Src: /src/libxml2/testapi.c:1234,1
    - Dst: xmlXPathCastNodeSetToNumber
      Src: /src/libxml2/testapi.c:1235,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1236,1
    - Dst: xmlXPathCastNodeSetToString
      Src: /src/libxml2/testapi.c:1236,1
    - Dst: xmlXPathCastNodeToNumber
      Src: /src/libxml2/testapi.c:1237,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1238,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/testapi.c:1238,1
    - Dst: xmlXPathCastNumberToBoolean
      Src: /src/libxml2/testapi.c:1239,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1240,1
    - Dst: xmlXPathCastNumberToString
      Src: /src/libxml2/testapi.c:1240,1
    - Dst: xmlXPathCastStringToBoolean
      Src: /src/libxml2/testapi.c:1241,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxml2/testapi.c:1242,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/testapi.c:1243,1
    - Dst: xmlXPathCastToNumber
      Src: /src/libxml2/testapi.c:1244,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1245,1
    - Dst: xmlXPathCastToString
      Src: /src/libxml2/testapi.c:1245,1
    - Dst: xmlXPathCeilingFunction
      Src: /src/libxml2/testapi.c:1246,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxml2/testapi.c:1247,1
    - Dst: xmlXPathCompareValues
      Src: /src/libxml2/testapi.c:1248,1
    - Dst: xmlXPathCompile
      Src: /src/libxml2/testapi.c:1249,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1250,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/testapi.c:1250,1
    - Dst: xmlXPathCompiledEvalToBoolean
      Src: /src/libxml2/testapi.c:1251,1
    - Dst: xmlXPathConcatFunction
      Src: /src/libxml2/testapi.c:1252,1
    - Dst: xmlXPathContainsFunction
      Src: /src/libxml2/testapi.c:1253,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxml2/testapi.c:1254,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1255,1
    - Dst: xmlXPathConvertBoolean
      Src: /src/libxml2/testapi.c:1255,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1256,1
    - Dst: xmlXPathConvertNumber
      Src: /src/libxml2/testapi.c:1256,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1257,1
    - Dst: xmlXPathConvertString
      Src: /src/libxml2/testapi.c:1257,1
    - Dst: xmlXPathCountFunction
      Src: /src/libxml2/testapi.c:1258,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/testapi.c:1259,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1260,1
    - Dst: xmlXPathDifference
      Src: /src/libxml2/testapi.c:1260,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1261,1
    - Dst: xmlXPathDistinct
      Src: /src/libxml2/testapi.c:1261,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1262,1
    - Dst: xmlXPathDistinctSorted
      Src: /src/libxml2/testapi.c:1262,1
    - Dst: xmlXPathDivValues
      Src: /src/libxml2/testapi.c:1263,1
    - Dst: xmlXPathEqualValues
      Src: /src/libxml2/testapi.c:1264,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/testapi.c:1265,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1266,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/testapi.c:1266,1
    - Dst: xmlXPathEvalExpr
      Src: /src/libxml2/testapi.c:1267,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1268,1
    - Dst: xmlXPathEvalExpression
      Src: /src/libxml2/testapi.c:1268,1
    - Dst: xmlXPathEvalPredicate
      Src: /src/libxml2/testapi.c:1269,1
    - Dst: xmlXPathEvaluatePredicateResult
      Src: /src/libxml2/testapi.c:1270,1
    - Dst: xmlXPathFalseFunction
      Src: /src/libxml2/testapi.c:1271,1
    - Dst: xmlXPathFloorFunction
      Src: /src/libxml2/testapi.c:1272,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/testapi.c:1273,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/testapi.c:1274,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1275,1
    - Dst: xmlXPathFreeNodeSetList
      Src: /src/libxml2/testapi.c:1276,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1277,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/testapi.c:1278,1
    - Dst: xmlXPathFunctionLookup
      Src: /src/libxml2/testapi.c:1279,1
    - Dst: xmlXPathFunctionLookupNS
      Src: /src/libxml2/testapi.c:1280,1
    - Dst: xmlXPathHasSameNodes
      Src: /src/libxml2/testapi.c:1281,1
    - Dst: xmlXPathIdFunction
      Src: /src/libxml2/testapi.c:1282,1
    - Dst: xmlXPathInit
      Src: /src/libxml2/testapi.c:1283,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1284,1
    - Dst: xmlXPathIntersection
      Src: /src/libxml2/testapi.c:1284,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/testapi.c:1285,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/testapi.c:1286,1
    - Dst: xmlXPathIsNodeType
      Src: /src/libxml2/testapi.c:1287,1
    - Dst: xmlXPathLangFunction
      Src: /src/libxml2/testapi.c:1288,1
    - Dst: xmlXPathLastFunction
      Src: /src/libxml2/testapi.c:1289,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1290,1
    - Dst: xmlXPathLeading
      Src: /src/libxml2/testapi.c:1290,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1291,1
    - Dst: xmlXPathLeadingSorted
      Src: /src/libxml2/testapi.c:1291,1
    - Dst: xmlXPathLocalNameFunction
      Src: /src/libxml2/testapi.c:1292,1
    - Dst: xmlXPathModValues
      Src: /src/libxml2/testapi.c:1293,1
    - Dst: xmlXPathMultValues
      Src: /src/libxml2/testapi.c:1294,1
    - Dst: xmlXPathNamespaceURIFunction
      Src: /src/libxml2/testapi.c:1295,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1296,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/testapi.c:1296,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1297,1
    - Dst: xmlXPathNewCString
      Src: /src/libxml2/testapi.c:1297,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/testapi.c:1298,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/testapi.c:1298,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1299,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/testapi.c:1299,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1300,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/testapi.c:1300,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1301,1
    - Dst: xmlXPathNewNodeSetList
      Src: /src/libxml2/testapi.c:1301,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/testapi.c:1302,1
    - Dst: xmlXPathNewParserContext
      Src: /src/libxml2/testapi.c:1302,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1303,1
    - Dst: xmlXPathNewString
      Src: /src/libxml2/testapi.c:1303,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1304,1
    - Dst: xmlXPathNewValueTree
      Src: /src/libxml2/testapi.c:1304,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1305,1
    - Dst: xmlXPathNextAncestor
      Src: /src/libxml2/testapi.c:1305,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1306,1
    - Dst: xmlXPathNextAncestorOrSelf
      Src: /src/libxml2/testapi.c:1306,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1307,1
    - Dst: xmlXPathNextAttribute
      Src: /src/libxml2/testapi.c:1307,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1308,1
    - Dst: xmlXPathNextChild
      Src: /src/libxml2/testapi.c:1308,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1309,1
    - Dst: xmlXPathNextDescendant
      Src: /src/libxml2/testapi.c:1309,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1310,1
    - Dst: xmlXPathNextDescendantOrSelf
      Src: /src/libxml2/testapi.c:1310,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1311,1
    - Dst: xmlXPathNextFollowing
      Src: /src/libxml2/testapi.c:1311,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1312,1
    - Dst: xmlXPathNextFollowingSibling
      Src: /src/libxml2/testapi.c:1312,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1313,1
    - Dst: xmlXPathNextNamespace
      Src: /src/libxml2/testapi.c:1313,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1314,1
    - Dst: xmlXPathNextParent
      Src: /src/libxml2/testapi.c:1314,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1315,1
    - Dst: xmlXPathNextPreceding
      Src: /src/libxml2/testapi.c:1315,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1316,1
    - Dst: xmlXPathNextPrecedingSibling
      Src: /src/libxml2/testapi.c:1316,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testapi.c:1317,1
    - Dst: xmlXPathNextSelf
      Src: /src/libxml2/testapi.c:1317,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1318,1
    - Dst: xmlXPathNodeEval
      Src: /src/libxml2/testapi.c:1318,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1319,1
    - Dst: xmlXPathNodeLeading
      Src: /src/libxml2/testapi.c:1319,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1320,1
    - Dst: xmlXPathNodeLeadingSorted
      Src: /src/libxml2/testapi.c:1320,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxml2/testapi.c:1321,1
    - Dst: xmlXPathNodeSetAddNs
      Src: /src/libxml2/testapi.c:1322,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/testapi.c:1323,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/testapi.c:1324,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1325,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/testapi.c:1325,1
    - Dst: xmlXPathNodeSetDel
      Src: /src/libxml2/testapi.c:1326,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/testapi.c:1327,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1328,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/testapi.c:1328,1
    - Dst: xmlXPathNodeSetRemove
      Src: /src/libxml2/testapi.c:1329,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/testapi.c:1330,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1331,1
    - Dst: xmlXPathNodeTrailing
      Src: /src/libxml2/testapi.c:1331,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1332,1
    - Dst: xmlXPathNodeTrailingSorted
      Src: /src/libxml2/testapi.c:1332,1
    - Dst: xmlXPathNormalizeFunction
      Src: /src/libxml2/testapi.c:1333,1
    - Dst: xmlXPathNotEqualValues
      Src: /src/libxml2/testapi.c:1334,1
    - Dst: xmlXPathNotFunction
      Src: /src/libxml2/testapi.c:1335,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxml2/testapi.c:1336,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/testapi.c:1337,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1338,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxml2/testapi.c:1338,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxml2/testapi.c:1339,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1340,1
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/testapi.c:1340,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1341,1
    - Dst: xmlXPathParseName
      Src: /src/libxml2/testapi.c:1341,1
    - Dst: xmlXPathPopBoolean
      Src: /src/libxml2/testapi.c:1342,1
    - Dst: xmlXPathPopExternal
      Src: /src/libxml2/testapi.c:1343,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1344,1
    - Dst: xmlXPathPopNodeSet
      Src: /src/libxml2/testapi.c:1344,1
    - Dst: xmlXPathPopNumber
      Src: /src/libxml2/testapi.c:1345,1
    - Dst: xmlFree
      Src: /src/libxml2/testapi.c:1346,1
    - Dst: xmlXPathPopString
      Src: /src/libxml2/testapi.c:1346,1
    - Dst: xmlXPathPositionFunction
      Src: /src/libxml2/testapi.c:1347,1
    - Dst: xmlXPathRegisterAllFunctions
      Src: /src/libxml2/testapi.c:1348,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/libxml2/testapi.c:1349,1
    - Dst: xmlXPathRegisterFuncLookup
      Src: /src/libxml2/testapi.c:1350,1
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxml2/testapi.c:1351,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/testapi.c:1352,1
    - Dst: xmlXPathRegisterVariable
      Src: /src/libxml2/testapi.c:1353,1
    - Dst: xmlXPathRegisterVariableLookup
      Src: /src/libxml2/testapi.c:1354,1
    - Dst: xmlXPathRegisterVariableNS
      Src: /src/libxml2/testapi.c:1355,1
    - Dst: xmlXPathRegisteredFuncsCleanup
      Src: /src/libxml2/testapi.c:1356,1
    - Dst: xmlXPathRegisteredNsCleanup
      Src: /src/libxml2/testapi.c:1357,1
    - Dst: xmlXPathRegisteredVariablesCleanup
      Src: /src/libxml2/testapi.c:1358,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/testapi.c:1359,1
    - Dst: xmlXPathRoundFunction
      Src: /src/libxml2/testapi.c:1360,1
    - Dst: xmlXPathSetContextNode
      Src: /src/libxml2/testapi.c:1361,1
    - Dst: xmlXPathSetErrorHandler
      Src: /src/libxml2/testapi.c:1362,1
    - Dst: xmlXPathStartsWithFunction
      Src: /src/libxml2/testapi.c:1363,1
    - Dst: xmlXPathStringEvalNumber
      Src: /src/libxml2/testapi.c:1364,1
    - Dst: xmlXPathStringFunction
      Src: /src/libxml2/testapi.c:1365,1
    - Dst: xmlXPathStringLengthFunction
      Src: /src/libxml2/testapi.c:1366,1
    - Dst: xmlXPathSubValues
      Src: /src/libxml2/testapi.c:1367,1
    - Dst: xmlXPathSubstringAfterFunction
      Src: /src/libxml2/testapi.c:1368,1
    - Dst: xmlXPathSubstringBeforeFunction
      Src: /src/libxml2/testapi.c:1369,1
    - Dst: xmlXPathSubstringFunction
      Src: /src/libxml2/testapi.c:1370,1
    - Dst: xmlXPathSumFunction
      Src: /src/libxml2/testapi.c:1371,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1372,1
    - Dst: xmlXPathTrailing
      Src: /src/libxml2/testapi.c:1372,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/testapi.c:1373,1
    - Dst: xmlXPathTrailingSorted
      Src: /src/libxml2/testapi.c:1373,1
    - Dst: xmlXPathTranslateFunction
      Src: /src/libxml2/testapi.c:1374,1
    - Dst: xmlXPathTrueFunction
      Src: /src/libxml2/testapi.c:1375,1
    - Dst: xmlXPathValueFlipSign
      Src: /src/libxml2/testapi.c:1376,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1377,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/testapi.c:1377,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/testapi.c:1378,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1379,1
    - Dst: xmlXPathVariableLookup
      Src: /src/libxml2/testapi.c:1379,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1380,1
    - Dst: xmlXPathVariableLookupNS
      Src: /src/libxml2/testapi.c:1380,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1381,1
    - Dst: xmlXPathWrapCString
      Src: /src/libxml2/testapi.c:1381,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1382,1
    - Dst: xmlXPathWrapExternal
      Src: /src/libxml2/testapi.c:1382,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1383,1
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxml2/testapi.c:1383,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1384,1
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/testapi.c:1384,1
    - Dst: xmlXPatherror
      Src: /src/libxml2/testapi.c:1385,1
    - Dst: xmlXPathDebugDumpCompExpr
      Src: /src/libxml2/testapi.c:1387,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxml2/testapi.c:1388,1
    - Dst: xlinkGetDefaultDetect
      Src: /src/libxml2/testapi.c:1393,1
    - Dst: xlinkGetDefaultHandler
      Src: /src/libxml2/testapi.c:1394,1
    - Dst: xlinkIsLink
      Src: /src/libxml2/testapi.c:1395,1
    - Dst: xlinkSetDefaultDetect
      Src: /src/libxml2/testapi.c:1396,1
    - Dst: xlinkSetDefaultHandler
      Src: /src/libxml2/testapi.c:1397,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/testapi.c:1398,1
    - Dst: xmlXPtrEval
      Src: /src/libxml2/testapi.c:1398,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/testapi.c:1399,1
    - Dst: xmlXPtrNewContext
      Src: /src/libxml2/testapi.c:1399,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/testapi.c:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1278
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1404
      start: 39
    functionDepth: 4
    functionLinenumber: 39
    functionLinenumberEnd: 1404
    functionName: main
    functionSourceFile: /src/libxml2/testapi.c
    functionUses: 0
    functionsReached:
    - xmlLineNumbersDefault
    - xmlDocCopyNode
    - xmlXPathNsLookup
    - xmlACatalogAdd
    - xmlLastElementChild
    - xmlGetDtdEntity
    - xmlTextWriterWriteFormatDTDAttlist
    - xmlNewTextReaderFilename
    - xmlParseInNodeContext
    - xmlSwitchEncoding
    - xmlOutputBufferCreateFilenameDefault
    - xmlHashRemoveEntry3
    - xmlTextReaderSetResourceLoader
    - htmlParseEntityRef
    - xmlHashFree
    - xmlXPathValuePush
    - htmlNodeDumpFileFormat
    - xmlSchemaGetCanonValueWhtsp
    - xmlSAXParseDoc
    - xmlHashScan
    - xmlAllocOutputBuffer
    - xmlACatalogResolveSystem
    - xmlValidateNotationUse
    - xmlGetPredefinedEntity
    - xmlRelaxNGCleanupTypes
    - xmlTextReaderNamespaceUri
    - xmlSAX2GetSystemId
    - xmlFileClose
    - xmlGetEncodingAlias
    - htmlSetMetaEncoding
    - xmlMemDisplay
    - xmlBufferCreateStatic
    - xmlTextWriterWriteFormatComment
    - xmlClearParserCtxt
    - xmlHashCreateDict
    - xmlTextWriterWriteFormatDTDElement
    - xmlXPathCastBooleanToString
    - xmlSchemaGetBuiltInType
    - xmlXPathNextPrecedingSibling
    - xmlTextWriterWriteDTDExternalEntityContents
    - xmlXPathParseName
    - xmlXPathPositionFunction
    - xmlSetProp
    - xmlTextReaderMoveToElement
    - xmlXPathStringLengthFunction
    - xmlDictCleanup
    - xmlXPathIsInf
    - xmlStreamPushNode
    - xlinkSetDefaultDetect
    - htmlParseCharRef
    - xmlBufferCreate
    - xmlACatalogRemove
    - xmlRelaxNGGetValidErrors
    - xmlNodeListGetRawString
    - xmlSAX2EndDocument
    - xmlNodeIsText
    - xmlDocDumpFormatMemory
    - xmlMemFree
    - htmlElementAllowedHere
    - htmlDocDumpMemoryFormat
    - xmlCtxtReadFile
    - xmlAddElementDecl
    - xmlDefaultSAXHandlerInit
    - htmlAttrAllowed
    - xmlTextWriterWriteFormatAttribute
    - xmlSchemaValidateDoc
    - xmlIsBlank
    - xmlChildElementCount
    - htmlCtxtUseOptions
    - xmlStringLenGetNodeList
    - xmlCtxtErrMemory
    - xmlTextReaderReadOuterXml
    - htmlNodeDumpFormatOutput
    - htmlCreatePushParserCtxt
    - xmlCreateEnumeration
    - xmlSchemaSetResourceLoader
    - htmlCtxtReadFile
    - xmlSAX2HasExternalSubset
    - xmlSAXParseFileWithData
    - xmlCreateFileParserCtxt
    - htmlParseFile
    - xmlReaderForMemory
    - xmlHashAdd
    - xmlHashAdd2
    - xmlListReverse
    - xmlXPathStartsWithFunction
    - xmlSchemaNewMemParserCtxt
    - xmlXPathNewString
    - xmlDebugDumpEntities
    - htmlCtxtReadFd
    - xmlTextWriterStartComment
    - xmlParserInputShrink
    - xmlParseDTD
    - xmlXPathNewValueTree
    - xmlBufferResize
    - htmlSaveFileFormat
    - xmlNewPI
    - xmlDocDumpMemoryEnc
    - xmlSchemaNewQNameValue
    - xmlRelaxNGInitTypes
    - xmlMemGet
    - xmlXPathNodeSetFreeNs
    - xmlCopyDoc
    - xmlCtxtGetSaxHandler
    - xmlSchemaNewDocParserCtxt
    - xmlXPathTrueFunction
    - xmlParseExtParsedEnt
    - xmlXPathCompareValues
    - xmlValidateNameValue
    - xmlSwitchEncodingName
    - xmlCheckHTTPInput
    - xmlListReverseWalk
    - xmlTextReaderGetAttribute
    - xmlBuildRelativeURI
    - xmlSchemaCleanupTypes
    - xlinkIsLink
    - xmlXPathCompiledEval
    - xmlSchemaValPredefTypeNode
    - xmlNodeGetAttrValue
    - xmlOutputBufferCreateIO
    - xmlTextReaderConstName
    - xmlBufferEmpty
    - xmlRegisterNodeDefault
    - xmlModuleClose
    - xmlCopyEnumeration
    - xmlTextConcat
    - xmlConvertSGMLCatalog
    - xmlCharEncNewCustomHandler
    - xmlCreatePushParserCtxt
    - xmlTextReaderGetAttributeNo
    - xmlHashCopySafe
    - xmlNoNetExternalEntityLoader
    - xmlStringLenDecodeEntities
    - xmlGetParameterEntity
    - xmlXPathParseNCName
    - xmlAutomataIsDeterminist
    - xmlSchematronSetValidStructuredErrors
    - xmlListRemoveFirst
    - xmlSAX2ElementDecl
    - xmlTextReaderIsDefault
    - xmlSaveFile
    - htmlCreateFileParserCtxt
    - xmlXPathOrderDocElems
    - xmlSAX2SetDocumentLocator
    - xmlDocDumpFormatMemoryEnc
    - xmlAutomataNewOnceTrans2
    - xmlDictQLookup
    - xmlDocCopyNodeList
    - xmlNewDocElementContent
    - xmlCtxtGetDeclaredEncoding
    - xmlParseAttValue
    - xmlRegFreeExecCtxt
    - xmlTextReaderConstBaseUri
    - xmlNewTextWriter
    - xmlURIEscapeStr
    - xmlSubstituteEntitiesDefault
    - xmlBufferCat
    - htmlDocDumpMemory
    - xmlTextReaderPreservePattern
    - xmlTextReaderConstXmlLang
    - xmlTextReaderSetStructuredErrorHandler
    - xmlFreeNotationTable
    - xmlXPathCastNodeSetToString
    - xmlDictReference
    - xmlPatterncompile
    - xmlInitializeDict
    - xmlRelaxNGParse
    - xmlValidateAttributeDecl
    - xmlTextReaderAttributeCount
    - xmlParserInputRead
    - xmlAddIDSafe
    - xmlIsIdeographic
    - xmlParseEntity
    - xmlNewParserCtxt
    - xmlAutomataNewTransition
    - xmlIsXHTML
    - xmlTextReaderNodeType
    - xmlAddPrevSibling
    - xmlSchemaGetCanonValue
    - xmlFreePropList
    - xmlHashUpdateEntry3
    - xmlHashScanFull
    - xmlPatternMatch
    - xmlSchemaFreeFacet
    - xmlSetStructuredErrorFunc
    - xmlCharStrndup
    - xmlBufferFree
    - xmlFreeRMutex
    - xmlCheckFilename
    - xmlCleanupMemory
    - xmlNewAutomata
    - xmlXPathFalseFunction
    - htmlSaveFile
    - xmlBufferContent
    - htmlNewSAXParserCtxt
    - xmlTextWriterEndDTD
    - xmlParserGetDirectory
    - xmlTextReaderGetParserLineNumber
    - xmlValidateRoot
    - xmlNodeSetContentLen
    - xmlAutomataGetInitState
    - xmlValidateDtdFinal
    - xmlSchemaGetPredefinedType
    - xmlXPathRegisteredNsCleanup
    - htmlIsScriptAttribute
    - xmlCopyAttributeTable
    - xmlStreamPush
    - xmlValidCtxtNormalizeAttributeValue
    - xmlParserInputBufferPush
    - xmlXPathRegisterFunc
    - xmlGetDtdNotationDesc
    - xmlCopyChar
    - xmlAddID
    - xmlParseDocument
    - xmlBufferWriteChar
    - xmlListPushBack
    - xmlParserInputGrow
    - xmlNewDocText
    - xmlSchemaGetFacetValueAsULong
    - xmlTextReaderConstXmlVersion
    - xmlTextWriterWriteFormatElementNS
    - htmlSaveFileEnc
    - xmlCtxtValidateDocument
    - xmlUTF8Charcmp
    - xmlSaveTree
    - xmlThrDefDoValidityCheckingDefaultValue
    - xmlSchemaFreeType
    - xmlTextWriterWriteDTDEntity
    - xmlRemoveRef
    - xmlDumpNotationTable
    - xmlDocGetRootElement
    - xmlCtxtParseDtd
    - xmlTextReaderNextSibling
    - xmlCtxtGetLastError
    - xmlSchemaDump
    - xmlTextReaderReadInnerXml
    - xmlCharEncOutFunc
    - xmlDebugDumpDocumentHead
    - xmlSaveFileEnc
    - xmlReaderNewFile
    - xmlXPathValuePop
    - xmlNodeSetSpacePreserve
    - htmlCtxtSetOptions
    - xmlTextReaderRelaxNGValidateCtxt
    - xmlNodeDumpOutput
    - xmlTextReaderXmlLang
    - xmlC14NExecute
    - xmlSaveClose
    - xmlBuildRelativeURISafe
    - xmlXPathInit
    - xmlSetNs
    - xmlTextReaderStandalone
    - xmlPreviousElementSibling
    - xmlCatalogDump
    - xmlXPathWrapString
    - xmlTextWriterEndComment
    - xmlNodeSetName
    - xmlXPathDifference
    - xmlSaveFormatFileEnc
    - xmlCreateCharEncodingHandler
    - xmlDictLookup
    - xmlUnsetNsProp
    - xmlSchemaGetValidErrors
    - xmlRelaxNGSetParserErrors
    - xmlThrDefRegisterNodeDefault
    - xmlXPathNewContext
    - xmlListPopFront
    - xmlURIEscape
    - xmlSetCompressMode
    - xmlBufContent
    - xmlXPathModValues
    - xmlOutputBufferWrite
    - xmlCreateURLParserCtxt
    - xmlTextReaderGetAttributeNs
    - xmlXPathFloorFunction
    - xmlTextWriterEndDTDEntity
    - xmlParserFindNodeInfo
    - xmlParserAddNodeInfo
    - xmlSAX2Comment
    - xmlTextWriterEndPI
    - xmlTextReaderReadState
    - xmlXPathRegisterNs
    - xmlCatalogSetDefaultPrefer
    - xmlStrsub
    - xmlBufferAdd
    - xmlCleanupParser
    - xmlRegExecNextValues
    - xmlCleanupCharEncodingHandlers
    - xmlLoadCatalogs
    - xmlTextWriterStartDocument
    - xmlSaveSetEscape
    - xmlLoadCatalog
    - xmlMemBlocks
    - xmlNodeAddContent
    - xmlRegisterDefaultOutputCallbacks
    - xmlNewNsProp
    - xmlFreeParserInputBuffer
    - xmlFreeRefTable
    - xmlSchemaValueGetAsBoolean
    - htmlInitAutoClose
    - xmlCleanupEncodingAliases
    - xmlAddAttributeDecl
    - xmlXPathNodeLeadingSorted
    - xmlRelaxNGFreeParserCtxt
    - xmlXPathNodeSetAddNs
    - xmlFreeEntitiesTable
    - xmlSaveFinish
    - xmlDictSetLimit
    - xmlTextWriterWriteBase64
    - xmlHashScanFull3
    - xmlDOMWrapAdoptNode
    - xmlStrncmp
    - xmlReplaceNode
    - xmlBuildURISafe
    - xmlNewTextReader
    - xmlRegExecPushString
    - xmlTextWriterSetIndent
    - xmlStrstr
    - xmlValidateAttributeValue
    - xmlXPathPopExternal
    - xmlTextReaderLocatorBaseURI
    - htmlDocDump
    - xmlInitThreads
    - xmlStrEqual
    - xmlNewInputFromUrl
    - xmlSAX2GetColumnNumber
    - xmlNewDocRawNode
    - xmlNewDocFragment
    - xmlXPathEqualValues
    - xmlXPathNodeSetMerge
    - xmlSchemaParse
    - xmlNewChild
    - xmlCopyElementTable
    - xmlCtxtReadMemory
    - xmlThrDefGetWarningsDefaultValue
    - xmlAddChild
    - xmlDictExists
    - xmlDocDumpMemory
    - xmlTextWriterClose
    - xmlRemoveID
    - xmlValidateNMToken
    - xmlXPathNextFollowingSibling
    - xmlBufEnd
    - xmlTextReaderGetParserProp
    - xmlGetProp
    - xmlXPathNewBoolean
    - xmlSetGenericErrorFunc
    - xmlXPathCompile
    - xmlNodeGetContent
    - xmlNewDocPI
    - xmlIsID
    - htmlCtxtParseDocument
    - xmlBufNodeDump
    - xmlCtxtPushInput
    - xmlXPathNextParent
    - xmlValidateOneAttribute
    - xmlRelaxNGValidatePushElement
    - xmlDumpAttributeDecl
    - xmlDictCreate
    - xmlSAX2ResolveEntity
    - xmlFreeEntity
    - xmlParseBalancedChunkMemory
    - xmlTextReaderLocatorLineNumber
    - xmlNewValidCtxt
    - xmlPushInput
    - xmlPopOutputCallbacks
    - xmlCopyProp
    - xmlTextReaderGetErrorHandler
    - xmlHasNsProp
    - xmlCatalogConvert
    - xmlRelaxNGNewDocParserCtxt
    - xmlSchemaFreeValue
    - xmlSchemaSetValidStructuredErrors
    - xmlBufGetNodeContent
    - htmlGetMetaEncoding
    - xmlTextReaderIsValid
    - xmlFreeValidCtxt
    - xmlNewNs
    - xmlDumpAttributeTable
    - xmlPatternMinDepth
    - xmlTextWriterWriteRaw
    - xmlUTF8ToIsolat1
    - xmlParseEntityRef
    - xmlXPathCastNumberToBoolean
    - xmlParserInputBufferCreateFd
    - xmlXPathIntersection
    - xmlInitCharEncodingHandlers
    - xmlSAX2ProcessingInstruction
    - htmlTagLookup
    - xmlParseFile
    - xmlXPathStringEvalNumber
    - xmlXPathNodeSetDel
    - xmlCtxtGetUserData
    - htmlCtxtReadDoc
    - xmlGetCompressMode
    - xmlRegisterInputCallbacks
    - xmlSchemaSAXUnplug
    - xmlCurrentChar
    - htmlCtxtReadMemory
    - xmlValidateQName
    - xmlTextWriterWriteAttribute
    - xmlXPathNewParserContext
    - xmlNewText
    - xmlHashLookup
    - xmlDumpElementDecl
    - xmlXPathNormalizeFunction
    - xmlOutputBufferFlush
    - xmlOutputBufferGetSize
    - xmlXPathSubstringAfterFunction
    - xmlFreeProp
    - xmlNewCDataBlock
    - xmlThrDefTreeIndentString
    - xmlRegExecErrInfo
    - xmlNewInputStream
    - xmlPrintURI
    - xmlValidatePopElement
    - xmlTextWriterWriteElementNS
    - xmlTextWriterStartAttributeNS
    - xmlNewNsPropEatName
    - xmlValidateNCName
    - xmlStrncasecmp
    - xmlSchematronParse
    - xmlSchemaValidateFile
    - xmlStreamPushAttr
    - htmlEntityLookup
    - xmlFindCharEncodingHandler
    - xmlXPathNumberFunction
    - xmlParserInputBufferGrow
    - xmlCatalogSetDebug
    - xmlSchemaValueAppend
    - xmlParseExternalEntity
    - xmlTextWriterWriteDTDNotation
    - xmlNewDtd
    - xmlIsDigit
    - xmlSaveFlush
    - xmlSAX2GetEntity
    - xmlReaderForIO
    - xmlXPathFreeObject
    - xmlXPathConcatFunction
    - xmlTextWriterStartCDATA
    - xmlCtxtSetResourceLoader
    - xmlSAX2StartDocument
    - htmlDefaultSAXHandlerInit
    - xmlIsRef
    - xmlParseCtxtExternalEntity
    - xmlSaveToFd
    - xmlSchemaNewParserCtxt
    - xmlCopyNamespaceList
    - xmlListCreate
    - xmlTextWriterWriteDTDElement
    - xmlXPathNextAttribute
    - xmlCleanupOutputCallbacks
    - xmlSchemaValidateSetFilename
    - xmlStrndup
    - xmlSchemaNewStringValue
    - htmlNewParserCtxt
    - xmlSAX2AttributeDecl
    - xmlSchemaFreeWildcard
    - xmlCanonicPath
    - htmlNodeDump
    - xmlCtxtParseContent
    - xmlXPtrNewContext
    - xmlStrcmp
    - xmlValidateName
    - xmlHashScan3
    - xmlPathToURI
    - xmlLookupCharEncodingHandler
    - xmlCopyCharMultiByte
    - xmlFreeNodeList
    - xmlThrDefSaveNoEmptyTags
    - xmlSchematronFreeValidCtxt
    - xmlValidateNamesValue
    - xmlStringDecodeEntities
    - xmlBufferAddHead
    - xmlCtxtGetPrivate
    - htmlReadDoc
    - xmlGetNsList
    - xmlXPathNodeSetRemove
    - xmlInitMemory
    - xmlTextReaderGetRemainder
    - xmlDocSetRootElement
    - xmlXPathPopNumber
    - htmlSAXParseDoc
    - xmlHashRemoveEntry2
    - xmlNewTextWriterFilename
    - xmlCopyDtd
    - xmlMemUsed
    - xmlDOMWrapCloneNode
    - xmlHashAddEntry
    - xmlXPathNextNamespace
    - xmlOutputBufferCreateFilename
    - xmlIOParseDTD
    - xmlReaderNewDoc
    - xmlNewSAXParserCtxt
    - xmlXPathDebugDumpCompExpr
    - xmlCtxtGetStandalone
    - xmlXPathLeadingSorted
    - xmlFreeNode
    - xmlLoadSGMLSuperCatalog
    - xmlTextWriterWriteCDATA
    - xmlCtxtGetCatalogs
    - xmlRecoverDoc
    - xmlStopParser
    - xmlSchemaValidateFacet
    - xmlValidateOneNamespace
    - htmlIsAutoClosed
    - htmlEntityValueLookup
    - xmlNodeSetBase
    - xmlTextWriterFullEndElement
    - xmlThrDefKeepBlanksDefaultValue
    - xmlXIncludeSetResourceLoader
    - xmlCatalogGetDefaults
    - xmlRelaxNGNewMemParserCtxt
    - xmlSchemaInitTypes
    - xmlXPathNodeSetSort
    - xmlStrcasecmp
    - xmlTextReaderConstEncoding
    - xmlXPathLangFunction
    - xmlCheckThreadLocalStorage
    - xmlSaveUri
    - xmlNodeGetBase
    - xmlHashUpdateEntry
    - xmlXPathNewCString
    - xmlSAXParseFile
    - xmlXPathCastNodeSetToNumber
    - xmlValidateElementDecl
    - xmlXIncludeFreeContext
    - xmlNewEntity
    - xmlXIncludeSetErrorHandler
    - xmlOutputBufferWriteEscape
    - xmlSchematronNewValidCtxt
    - xmlSaveSetAttrEscape
    - xmlCtxtPopInput
    - xmlXPathIsNodeType
    - xmlSchemaValidateLengthFacet
    - xmlEncodeEntitiesReentrant
    - xmlStreamPop
    - xmlXPathFreeParserContext
    - xmlDumpElementTable
    - xmlXPathNextAncestor
    - xmlParserPrintFileInfo
    - xmlAutomataNewAllTrans
    - xmlHashQLookup
    - xmlSAXParseEntity
    - xmlXPathNotFunction
    - xmlXPathNodeSetCreate
    - xmlNewCatalog
    - xmlSchemaNewFacet
    - xmlSchemaFreeValidCtxt
    - xmlOutputBufferCreateFile
    - xmlFreeInputStream
    - xmlFreeDtd
    - xmlXPathNodeTrailingSorted
    - xmlXPathCastNodeToString
    - xmlXPathCtxtCompile
    - xmlNodeDump
    - xmlSAXUserParseFile
    - xmlSAX2NotationDecl
    - xmlCharStrdup
    - xmlThrDefParserInputBufferCreateFilenameDefault
    - xmlSAX2EndElement
    - xmlBufUse
    - xmlHashSize
    - xmlXPathSubstringFunction
    - xmlCtxtGetStatus
    - xmlCtxtIsInSubset
    - xmlGetDtdQElementDesc
    - xmlListEmpty
    - xmlSAX2GetLineNumber
    - xmlSchematronNewDocParserCtxt
    - xmlLoadExternalEntity
    - xmlPatternStreamable
    - xmlRegExecPushString2
    - xmlUTF8Strpos
    - xmlValidateDocumentFinal
    - htmlFreeParserCtxt
    - xmlGetDocEntity
    - htmlElementStatusHere
    - xmlValidatePushElement
    - xmlTextReaderConstString
    - xmlBufferDump
    - xmlDumpEntitiesTable
    - xmlAutomataNewCountTrans
    - xmlParserInputBufferCreateFilename
    - xmlValidBuildContentModel
    - xmlXPathSubstringBeforeFunction
    - xmlListInsert
    - xmlAddChildList
    - xmlOutputBufferCreateFd
    - xlinkSetDefaultHandler
    - xmlCharEncCloseFunc
    - xmlSchemaCheckFacet
    - xmlStrQEqual
    - xmlUnlockLibrary
    - xmlNormalizeURIPath
    - xmlMutexLock
    - xmlPopInputCallbacks
    - xmlAutomataNewEpsilon
    - xmlRecoverFile
    - xmlSetListDoc
    - xmlGetDtdElementDesc
    - xmlXPathIsNaN
    - xmlBufferWriteQuotedString
    - xmlSchematronNewMemParserCtxt
    - xmlXPathRegisterAllFunctions
    - xmlFreeStreamCtxt
    - xmlNewInputFromString
    - xmlXPathNewFloat
    - xmlCreateDocParserCtxt
    - xmlXPathNewNodeSetList
    - xmlXPathDistinct
    - xmlRelaxNGSetParserStructuredErrors
    - xmlInputSetEncodingHandler
    - xmlCatalogResolve
    - xmlTextReaderGetLastError
    - xmlInitParser
    - xmlSAX2Reference
    - xmlRegexpIsDeterminist
    - xmlGetLastChild
    - xmlCreateEntitiesTable
    - xmlThrDefSubstituteEntitiesDefaultValue
    - xmlThrDefDeregisterNodeDefault
    - xmlDOMWrapFreeCtxt
    - xmlTextReaderPreserve
    - xmlTextWriterStartElementNS
    - xmlBuildQName
    - xmlThrDefIndentTreeOutput
    - xmlRegexpExec
    - xmlAutomataNewCountTrans2
    - xmlReadFile
    - xmlNodeGetSpacePreserve
    - xmlParseURIReference
    - xmlValidNormalizeAttributeValue
    - xmlTextReaderMoveToFirstAttribute
    - xmlRelaxNGGetParserErrors
    - xmlXIncludeProcessFlagsData
    - xmlXPathCastToString
    - xmlThrDefLoadExtDtdDefaultValue
    - xmlXPathRegisterVariableNS
    - xmlXPathNodeTrailing
    - htmlNodeStatus
    - xmlIsBlankNode
    - xmlSaveToFilename
    - xmlTextReaderClose
    - xmlTextWriterWriteAttributeNS
    - xmlXPatherror
    - xmlXPathErr
    - xmlRegNewExecCtxt
    - xmlOpenCharEncodingHandler
    - xmlXPathCastToNumber
    - xmlTextReaderName
    - xmlCtxtSetMaxAmplification
    - xmlXPathFunctionLookupNS
    - xmlStrncat
    - xmlXPathPopNodeSet
    - xmlStrcasestr
    - xmlCopyError
    - xmlSaveDoc
    - xmlXIncludeProcessTreeFlags
    - xmlXPathNextAncestorOrSelf
    - xmlTextReaderSetErrorHandler
    - htmlNodeDumpFile
    - htmlParseChunk
    - xmlNewTextWriterTree
    - xmlXPathRegisteredVariablesCleanup
    - xmlXPathRegisterFuncLookup
    - xmlXPathRegisterFuncNS
    - xmlReaderNewIO
    - xmlFreeDoc
    - xmlPatternCompileSafe
    - xmlTextReaderRelaxNGValidate
    - xmlXPathFreeNodeSetList
    - xmlListFront
    - xmlDebugDumpNodeList
    - xmlHashCopy
    - xmlSaveFormatFile
    - xmlRecoverMemory
    - xmlTextReaderIsNamespaceDecl
    - xmlRegisterCharEncodingHandler
    - xmlGetIntSubset
    - xmlCtxtSetPrivate
    - xmlCtxtSetOptions
    - xmlSchemaIsValid
    - xmlTextWriterWriteDTD
    - xmlTextReaderSchemaValidateCtxt
    - xmlTextWriterWritePI
    - xmlXPathCmpNodes
    - xmlMutexUnlock
    - xmlFileRead
    - xmlTextReaderSetParserProp
    - xmlTextWriterWriteFormatDTD
    - xmlValidatePushCData
    - xmlParserInputBufferCreateStatic
    - xmlParseDoc
    - xmlAutomataCompile
    - xmlTextWriterEndDocument
    - xmlTextReaderIsEmptyElement
    - xmlCtxtReadFd
    - xmlFreeNsList
    - xmlNormalizeWindowsPath
    - xmlIsPubidChar
    - xmlFreeTextWriter
    - xmlAutomataNewCounter
    - xmlListMerge
    - xmlHashLookup3
    - xmlTextWriterStartPI
    - xmlXPathSetContextNode
    - xmlCreateIntSubset
    - xmlCatalogCleanup
    - xmlCtxtGetOptions
    - xmlXPathConvertString
    - xmlCtxtGetNode
    - xmlTextWriterWriteRawLen
    - xmlDocFormatDump
    - xmlListPushFront
    - xmlRMutexLock
    - xmlSchemaValidateListSimpleTypeFacet
    - xmlSchemaWhiteSpaceReplace
    - xmlThrDefLineNumbersDefaultValue
    - xmlCatalogLocalResolve
    - xmlOutputBufferGetContent
    - xmlXPathRegisterVariable
    - xmlCopyNotationTable
    - htmlParseDocument
    - xmlTextReaderLocalName
    - xmlSchemaFreeParserCtxt
    - xmlBufferGrow
    - xmlCatalogIsEmpty
    - xmlXPathSumFunction
    - xmlTextReaderRelaxNGSetSchema
    - htmlCtxtReadIO
    - xmlParseCatalogFile
    - xmlListAppend
    - xmlNewDocTextLen
    - xmlStrcat
    - xmlTextReaderSetSchema
    - xmlXPathWrapNodeSet
    - xmlTextWriterStartElement
    - xmlSchemaGetParserErrors
    - xmlTextWriterStartAttribute
    - xmlIsCombining
    - xmlParserFindNodeInfoIndex
    - xmlTextReaderValue
    - xmlCtxtIsHtml
    - xmlSchemaSetValidErrors
    - xmlReaderNewMemory
    - xmlReaderForFile
    - xmlCheckUTF8
    - xmlLinkGetData
    - xmlXPathEvaluatePredicateResult
    - xmlXIncludeSetFlags
    - xmlAddDtdEntity
    - htmlEncodeEntities
    - xmlHashRemoveEntry
    - xmlNewInputFromMemory
    - xmlCtxtParseDocument
    - xmlSAX2InitDefaultSAXHandler
    - xmlCtxtGetDocument
    - xmlRelaxNGDumpTree
    - xmlTextReaderDepth
    - xmlXPathTranslateFunction
    - xmlGetExternalEntityLoader
    - xmlXPtrEval
    - xmlTextWriterSetIndentString
    - xmlXPathFreeNodeSet
    - xmlListSize
    - xmlTextWriterEndDTDAttlist
    - xmlReadIO
    - xmlBufferShrink
    - xmlStringCurrentChar
    - xmlSetBufferAllocationScheme
    - xmlRelaxParserSetFlag
    - xmlRelaxNGValidateDoc
    - xmlRegexpCompile
    - xmlXPathFunctionLookup
    - xmlXIncludeProcessTree
    - xmlListDup
    - xmlCopyEntitiesTable
    - xmlXPathDivValues
    - xmlOutputBufferCreateBuffer
    - htmlNewDoc
    - xmlCtxtResetPush
    - xmlGetDtdAttrDesc
    - xmlFileOpen
    - xmlAttrSerializeTxtContent
    - xmlCheckLanguageID
    - xmlGetCharEncodingName
    - xmlFreeCatalog
    - xmlTextWriterStartDTDEntity
    - xmlDOMWrapNewCtxt
    - xmlTextReaderGetParserColumnNumber
    - xmlSchemaNewValidCtxt
    - xmlFormatError
    - xmlSetNsProp
    - xmlCatalogResolvePublic
    - xmlSchematronFree
    - xmlParseChunk
    - xmlDictSize
    - xmlTextWriterSetQuoteChar
    - xmlTextWriterEndAttribute
    - xmlFreeMutex
    - xmlTextWriterEndCDATA
    - xmlCatalogLocalResolveURI
    - xmlRelaxNGFree
    - xmlFree
    - xmlStrncatNew
    - xmlSetDocCompressMode
    - xmlTextReaderMoveToAttribute
    - xmlTextWriterWriteFormatDTDInternalEntity
    - xmlSchemaSetParserStructuredErrors
    - xmlNewTextWriterDoc
    - xmlCatalogAddLocal
    - xmlXPathNextSelf
    - xmlAddSibling
    - xmlSchemaCopyValue
    - xmlSnprintfElementContent
    - xmlCtxtUseOptions
    - xmlValidGetValidElements
    - xmlXPathTrailing
    - xmlUTF8Strndup
    - xmlStrPrintf
    - xmlSplitQName3
    - xmlTextReaderExpand
    - xmlSchemaValidatePredefinedType
    - xmlTextWriterWriteString
    - xmlElemDump
    - xmlTextReaderByteConsumed
    - xmlXPathRoundFunction
    - xmlFreeIDTable
    - htmlReadFile
    - xmlXIncludeNewContext
    - xmlBufShrink
    - xmlSwitchInputEncoding
    - xmlXPathCastNodeToNumber
    - xmlUTF8Strsize
    - xmlSplitQName
    - xmlTextWriterWriteElement
    - xmlCtxtSetCharEncConvImpl
    - xmlFreeTextReader
    - xmlRelaxNGSetValidStructuredErrors
    - xmlXPathContextSetCache
    - xmlStreamWantsAnyNode
    - xmlRelaxNGDump
    - xmlCtxtIsStopped
    - xmlIsMixedElement
    - xmlXPathConvertNumber
    - xmlCtxtSetDict
    - xmlNewDocNodeEatName
    - xmlSaveFormatFileTo
    - xmlNextChar
    - xmlTextWriterWriteFormatString
    - xmlThrDefSetGenericErrorFunc
    - xmlRegisterOutputCallbacks
    - xmlNodeSetLang
    - xmlSchemaSetParserErrors
    - xmlUTF8Strsub
    - xmlXPathCastToBoolean
    - xmlCatalogResolveSystem
    - xmlInitializeCatalog
    - xmlXPathEvalExpr
    - xmlGetNsListSafe
    - xmlXPathFreeCompExpr
    - xmlGetNsProp
    - htmlReadIO
    - xmlC14NDocSaveTo
    - xmlBufferCCat
    - xmlCreateURI
    - xmlDelEncodingAlias
    - xmlCtxtValidateDtd
    - xmlNewDocComment
    - xmlXPathCastStringToBoolean
    - xmlC14NDocDumpMemory
    - xmlParseURIRaw
    - xmlTextWriterWriteFormatPI
    - xmlFreeElementTable
    - xmlCatalogRemove
    - xmlRelaxNGSetValidErrors
    - xmlParserInputBufferCreateFilenameDefault
    - xmlListClear
    - xmlInitGlobals
    - htmlDocContentDumpOutput
    - xmlTextReaderRead
    - xmlFreeDocElementContent
    - xmlOutputBufferWriteString
    - htmlReadMemory
    - xmlCtxtReset
    - xmlRelaxNGSetResourceLoader
    - xmlSchemaGetBuiltInListSimpleTypeItemType
    - xmlXPathPopBoolean
    - xmlXPathLeading
    - xmlGetBufferAllocationScheme
    - xmlFreeAutomata
    - xmlReaderNewFd
    - xmlSAXParseDTD
    - xmlCtxtGetInputPosition
    - xmlSAXParseMemoryWithData
    - xmlCtxtGetDict
    - xmlInitParserCtxt
    - xmlCharEncFirstLine
    - xmlIsChar
    - xmlNewDocNode
    - xmlXPathNextPreceding
    - xmlXPathIdFunction
    - xmlAddEncodingAlias
    - xmlReaderForDoc
    - xmlOutputBufferClose
    - xmlFreeAttributeTable
    - xmlModuleOpen
    - xmlDictGetUsage
    - xmlGcMemSetup
    - xmlNewCharRef
    - xmlGetDocCompressMode
    - xmlXPathNotEqualValues
    - xmlAllocParserInputBuffer
    - xmlXIncludeProcessTreeFlagsData
    - xmlAddDocEntity
    - xmlCtxtSetErrorHandler
    - xmlSchemaValidCtxtGetParserCtxt
    - xmlACatalogResolveURI
    - xmlXPathObjectCopy
    - xmlThrDefPedanticParserDefaultValue
    - xmlReadDoc
    - xmlGetLineNo
    - xmlTextWriterStartDTDAttlist
    - xmlTextWriterWriteFormatRaw
    - xmlParseURI
    - xmlAutomataNewOnceTrans
    - xmlPopInput
    - xmlRelaxNGFreeValidCtxt
    - xmlACatalogResolve
    - xmlNewComment
    - xmlNewReference
    - xmlXPathNextChild
    - xmlTextReaderMoveToNextAttribute
    - __xmlOutputBufferCreateFilename
    - xmlReaderWalker
    - xmlRegFreeRegexp
    - xmlXPathCompiledEvalToBoolean
    - xmlCleanupThreads
    - xmlParserInputBufferCreateIO
    - xmlXPathNextFollowing
    - xmlXPathCountFunction
    - xmlACatalogDump
    - xmlTextReaderReadAttributeValue
    - xmlPatternFromRoot
    - htmlHandleOmittedElem
    - xmlXPathWrapCString
    - xlinkGetDefaultDetect
    - xmlXPathNewNodeSet
    - xmlXPathNextDescendant
    - xmlListRemoveAll
    - xmlTextReaderPrefix
    - xmlSearchNs
    - xmlByteConsumed
    - xmlNodeSetContent
    - xmlGetUTF8Char
    - htmlIsBooleanAttr
    - xmlParseURISafe
    - xmlValidateNmtokenValue
    - xmlXPathRegisteredFuncsCleanup
    - xmlCtxtGetValidCtxt
    - xmlSAX2StartElementNs
    - xmlHashAdd3
    - xmlXIncludeProcessFlags
    - xmlXPathRoot
    - xmlXPathLocalNameFunction
    - xmlFreePatternList
    - xmlValidateDocument
    - xmlStringGetNodeList
    - xmlTextWriterWriteBinHex
    - xmlNodeListGetString
    - xmlSchemaGetValType
    - xmlXPathNodeEval
    - xmlXPathFreeContext
    - xmlUTF8Strlen
    - xmlParseMemory
    - xmlSAXVersion
    - xmlSearchNsByHref
    - xmlValidGetPotentialChildren
    - xmlNewCharEncodingHandler
    - xmlHasProp
    - xmlRegexpPrint
    - xmlXPathContainsFunction
    - xmlTextReaderLookupNamespace
    - xmlXPathNodeLeading
    - xmlNextElementSibling
    - htmlUTF8ToHtml
    - xmlSAX2UnparsedEntityDecl
    - xmlTextReaderCurrentNode
    - xmlXPathAddValues
    - xmlGetID
    - xmlKeepBlanksDefault
    - xmlSAXParseMemory
    - xmlCreateEntityParserCtxt
    - xmlSAX2CDataBlock
    - xmlNewNode
    - xmlCatalogFreeLocal
    - xmlUnlinkNode
    - xmlTextWriterWriteComment
    - xmlAutomataNewState
    - xmlHashAddEntry3
    - xmlXPathCastStringToNumber
    - xmlCtxtResetLastError
    - xmlDebugDumpOneNode
    - xmlCopyNode
    - xmlTextWriterWriteDTDExternalEntity
    - xmlSchemaCompareValues
    - xmlXPathHasSameNodes
    - xmlFreeElementContent
    - xmlGetRefs
    - xmlBufferDetach
    - xmlTextWriterStartDTDElement
    - xmlXPathEvalPredicate
    - xmlCtxtSetSaxHandler
    - xmlIsBaseChar
    - xmlResetLastError
    - xmlTextReaderConstValue
    - xmlXPathCastNumberToString
    - xmlSAX2ExternalSubset
    - xmlHashAddEntry2
    - xmlGcMemGet
    - xmlSchemaIsBuiltInTypeFacet
    - xmlDeregisterNodeDefault
    - xmlSaveToIO
    - xmlNewNodeEatName
    - xmlPedanticParserDefault
    - xmlHashQLookup3
    - xmlParserInputBufferCreateFile
    - xmlValidateElement
    - xmlTextReaderConstNamespaceUri
    - xmlParserInputBufferRead
    - xmlReaderNewWalker
    - xmlTextReaderSetMaxAmplification
    - xmlDOMWrapRemoveNode
    - xmlCopyNamespace
    - xmlXIncludeProcessNode
    - xmlListDelete
    - xmlAddEntity
    - xmlCatalogSetDefaults
    - xmlXPathBooleanFunction
    - xmlSAX2StartElement
    - xmlSAX2IgnorableWhitespace
    - xmlThrDefOutputBufferCreateFilenameDefault
    - xmlXPathCeilingFunction
    - htmlCreateMemoryParserCtxt
    - xmlHashCreate
    - xmlValidateNotationDecl
    - xmlURIUnescapeString
    - xmlMemSetup
    - xmlFreeURI
    - xmlSchemaCompareValuesWhtsp
    - xmlLockLibrary
    - xmlGetCharEncodingHandler
    - xmlSchemaValidateSetLocator
    - xmlPatternGetStreamCtxt
    - xmlListEnd
    - xmlTextReaderReadString
    - xmlCatalogResolveURI
    - xmlXPathEval
    - htmlParseDoc
    - xmlCtxtGetDocTypeDecl
    - xmlNodeGetBaseSafe
    - xmlResetError
    - xmlFreeNs
    - xmlSchemaValidateStream
    - xmlXPathConvertBoolean
    - xmlListReverseSearch
    - xmlLoadACatalog
    - xmlNewTextWriterMemory
    - xmlTextReaderConstLocalName
    - xmlDOMWrapReconcileNamespaces
    - xmlTextWriterWriteDTDInternalEntity
    - xmlSetExternalEntityLoader
    - xmlXPathStringFunction
    - xmlCtxtReadDoc
    - xmlCtxtSetCatalogs
    - xmlListRemoveLast
    - xmlNewRMutex
    - xmlSAX2Characters
    - xmlSAX2GetParameterEntity
    - xmlValidateNmtokensValue
    - xmlAddNextSibling
    - xmlBufferCreateSize
    - xmlNodeBufGetContent
    - xmlHashDefaultDeallocator
    - xmlCopyDocElementContent
    - htmlSAXParseFile
    - xmlTextReaderSetup
    - xmlPatternMaxDepth
    - xmlSchemaValidateOneElement
    - xmlXIncludeGetLastError
    - xmlXPathSetErrorHandler
    - xmlFileMatch
    - xmlIsExtender
    - xmlNewTextChild
    - xmlHasFeature
    - xmlListPopBack
    - xmlRemoveProp
    - xmlEncodeSpecialChars
    - xmlSplitQName2
    - xmlListCopy
    - xmlTextReaderMoveToAttributeNs
    - xmlCtxtGetVersion
    - xmlFirstElementChild
    - xmlBufferWriteCHAR
    - xmlTextWriterWriteFormatCDATA
    - xmlNewDoc
    - xmlFreeEnumeration
    - xmlMemoryDump
    - xmlNewTextLen
    - xmlStrchr
    - xmlNodeGetLang
    - xmlSAX2HasInternalSubset
    - xmlListWalk
    - htmlCtxtReset
    - xmlXPathVariableLookupNS
    - xmlCopyElementContent
    - xmlNodeAddContentLen
    - xmlSchemaValidCtxtGetOptions
    - xmlAutomataNewTransition2
    - xmlDebugDumpAttrList
    - xmlReadMemory
    - xmlHashQLookup2
    - xmlIsolat1ToUTF8
    - xmlSAX2EntityDecl
    - xmlXPathMultValues
    - htmlParseElement
    - xmlNewInputFromFile
    - xmlAddNotationDecl
    - xmlAutomataSetFinalState
    - xlinkGetDefaultHandler
    - xmlSetupParserForBuffer
    - xmlHashUpdateEntry2
    - xmlTextReaderQuoteChar
    - xmlXPathNodeSetAdd
    - xmlXPathNodeSetAddUnique
    - xmlNewInputFromIO
    - xmlParseContent
    - xmlSchematronFreeParserCtxt
    - xmlRelaxNGNewValidCtxt
    - xmlSchemaValueGetNext
    - xmlUnsetProp
    - xmlXPathTrailingSorted
    - xmlXPathValueFlipSign
    - xmlTextWriterWriteDTDAttlist
    - xmlSchemaCollapseString
    - xmlRelaxNGNewParserCtxt
    - xmlParserInputBufferCreateMem
    - xmlHashLookup2
    - xmlDictCreateSub
    - xmlReconciliateNs
    - xmlAutomataNewCounterTrans
    - xmlDictOwns
    - xmlSchemaFree
    - xmlCharEncInFunc
    - xmlTextReaderMoveToAttributeNo
    - xmlSAX2EndElementNs
    - xmlCatalogAdd
    - xmlCreateMemoryParserCtxt
    - xmlSchemaValPredefTypeNodeNoNorm
    - xmlSchematronValidateDoc
    - xmlTextWriterFlush
    - xmlXPathCastBooleanToNumber
    - xmlBufferLength
    - xmlCopyPropList
    - xmlTextReaderSchemaValidate
    - xmlDictFree
    - xmlParserPrintFileContext
    - xmlTextReaderConstPrefix
    - xmlValidateDtd
    - xmlC14NDocSave
    - xmlSchemaSetValidOptions
    - xmlValidateOneElement
    - xmlSwitchToEncoding
    - xmlSAX2InitHtmlDefaultSAXHandler
    - xmlSaveSetIndentString
    - xmlCtxtReadIO
    - xmlThrDefSetStructuredErrorFunc
    - xmlUTF8Strloc
    - xmlModuleFree
    - xmlFreePattern
    - xmlMemSize
    - xmlSchemaValidateLengthFacetWhtsp
    - xmlModuleSymbol
    - htmlDocContentDumpFormatOutput
    - xmlSAX2InternalSubset
    - xmlTextMerge
    - xmlNewInputFromFd
    - xmlSchemaValueGetAsString
    - xmlDocDump
    - xmlDebugDumpAttr
    - __xmlParserInputBufferCreateFilename
    - xmlSetTreeDoc
    - xmlCleanupInputCallbacks
    - xmlUTF8Size
    - xmlXPathNextDescendantOrSelf
    - xmlSchematronNewParserCtxt
    - xmlTextReaderNext
    - xmlXPathNamespaceURIFunction
    - xmlXPathDebugDumpObject
    - xmlAutomataNewCountedTrans
    - xmlSchemaSAXPlug
    - xmlXPathVariableLookup
    - xmlXPathRegisterVariableLookup
    - xmlBuildURI
    - xmlTextWriterWriteFormatAttributeNS
    - xmlIsLetter
    - xmlNewIOInputStream
    - xmlRMutexUnlock
    - xmlGetNodePath
    - xmlTextWriterEndElement
    - xmlTextWriterStartDTD
    - xmlXPathLastFunction
    - xmlTextReaderHasValue
    - xmlStrdup
    - xmlTextWriterEndDTDElement
    - htmlAutoCloseTag
    - xmlSAX2IsStandalone
    - xmlSAXDefaultVersion
    - xmlSchemaNewNOTATIONValue
    - xmlClearNodeInfoSeq
    - xmlACatalogResolvePublic
    - xmlDebugCheckDocument
    - xmlMemShow
    - xmlXPathPopString
    - xmlNewElementContent
    - xmlNewProp
    - xmlDumpEntityDecl
    - xmlTextReaderBaseUri
    - xmlGetLastError
    - xmlListSearch
    - xmlTextReaderHasAttributes
    - xmlDetectCharEncoding
    - xmlStrlen
    - xmlRelaxNGValidatePushCData
    - xmlNewMutex
    - xmlNewTextWriterPushParser
    - xmlTextReaderCurrentDoc
    - xmlAutomataNewNegTrans
    - xmlSprintfElementContent
    - xmlParseBalancedChunkMemoryRecover
    - xmlCtxtGetInputWindow
    - xmlNewEntityInputStream
    - xmlXPathDistinctSorted
    - xmlGetDtdQAttrDesc
    - xmlDumpNotationDecl
    - xmlRelaxNGValidateFullElement
    - xmlNewDocProp
    - htmlNodeDumpOutput
    - xmlXPathSubValues
    - xmlInitNodeInfoSeq
    - xmlListSort
    - xmlFreeParserCtxt
    - xmlSAXUserParseMemory
    - xmlGetNoNsProp
    - xmlMemDisplayLast
    - xmlXIncludeProcess
    - xmlRelaxNGValidatePopElement
    - xmlTextWriterWriteFormatElement
    - xmlTextReaderNormalization
    - xmlXPathWrapExternal
    - xmlSAX2GetPublicId
    - xmlXPathNodeSetContains
    - xmlParseCharEncoding
    - xmlCleanupGlobals
    - xmlXPathEvalExpression
    - xmlCopyNodeList
    - htmlNewDocNoDtD
    - xmlSchemaValidateFacetWhtsp
    - xmlNewStringInputStream
    - xmlSaveToBuffer
    - xmlBufferSetAllocationScheme
    - xmlAddRef
    - xmlSaveFileTo
    - xmlXPathCastNodeSetToBoolean
    - xmlCreateIOParserCtxt
    - xmlRegisterDefaultInputCallbacks
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:250,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmllint.c:261,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - lint
    - path
    argTypes:
    - xmllintState*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 267
    functionName: parsePath
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlStrndup
    linkageType: ''
    returnType: void
    signature: void parsePath(xmllintState *lint, const xmlChar *path)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmllintState*::defaultResourceLoader
      Src: /src/libxml2/xmllint.c:288,1
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/xmllint.c:290,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:293,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmllint.c:302,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmllint.c:303,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmllint.c:304,1
    - Dst: xmllintState*::defaultResourceLoader
      Src: /src/libxml2/xmllint.c:307,1
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/xmllint.c:310,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:313,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:316,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:319,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 6
    argNames:
    - ctxt
    - URL
    - ID
    - type
    - flags
    - out
    argTypes:
    - void*
    - char*
    - char*
    - xmlResourceType
    - xmlParserInputFlags
    - xmlParserInputPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 324
    functionName: xmllintResourceLoader
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlNewInputFromUrl
    - xmlFree
    - xmllintState*::defaultResourceLoader
    - fprintf
    - xmlStrcat
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmllintResourceLoader(void *ctxt, const char *URL,\n
      \                     const char *ID, xmlResourceType type,\n                      xmlParserInputFlags
      flags, xmlParserInputPtr *out)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/xmllint.c:346,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:348,1
    - Dst: fread
      Src: /src/libxml2/xmllint.c:354,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmllint.c:355,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmllint.c:357,1
    - Dst: xmlCtxtGetDocument
      Src: /src/libxml2/xmllint.c:358,1
    - Dst: fclose
      Src: /src/libxml2/xmllint.c:361,1
    - Dst: xmlNewInputFromMemory
      Src: /src/libxml2/xmllint.c:371,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/xmllint.c:378,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:383,1
    - Dst: xmlCtxtReadFd
      Src: /src/libxml2/xmllint.c:384,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/xmllint.c:387,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 391
    functionName: parseXml
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlCtxtReadFd
    - xmlNewInputFromMemory
    - xmlCtxtReadFile
    - xmlParseChunk
    - fopen
    - fclose
    - xmlCtxtParseDocument
    - strcmp
    - fprintf
    - fread
    - xmlCtxtGetDocument
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr parseXml(xmllintState *lint, const char *filename)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/xmllint.c:408,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:410,1
    - Dst: fread
      Src: /src/libxml2/xmllint.c:416,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/xmllint.c:417,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/xmllint.c:419,1
    - Dst: xmlCtxtGetDocument
      Src: /src/libxml2/xmllint.c:420,1
    - Dst: fclose
      Src: /src/libxml2/xmllint.c:423,1
    - Dst: xmlNewInputFromMemory
      Src: /src/libxml2/xmllint.c:433,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/xmllint.c:440,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:445,1
    - Dst: htmlCtxtReadFd
      Src: /src/libxml2/xmllint.c:446,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/xmllint.c:449,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 452
    functionName: parseHtml
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlNewInputFromMemory
    - htmlParseChunk
    - fopen
    - fclose
    - strcmp
    - htmlCtxtReadFd
    - htmlCtxtReadFile
    - htmlCtxtParseDocument
    - fprintf
    - fread
    - xmlCtxtGetDocument
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr parseHtml(xmllintState *lint, const char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemFree
      Src: /src/libxml2/xmllint.c:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 463
    functionDepth: 1
    functionLinenumber: 463
    functionLinenumberEnd: 466
    functionName: myFreeFunc
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlMemFree
    linkageType: ''
    returnType: void
    signature: void myFreeFunc(void *mem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemUsed
      Src: /src/libxml2/xmllint.c:472,1
    - Dst: abort
      Src: /src/libxml2/xmllint.c:474,1
    - Dst: xmlMemMalloc
      Src: /src/libxml2/xmllint.c:481,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 486
    functionName: myMallocFunc
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlMemUsed
    - xmlMemMalloc
    - abort
    linkageType: ''
    returnType: void
    signature: 'void *

      myMallocFunc(size_t size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSize
      Src: /src/libxml2/xmllint.c:491,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/xmllint.c:493,1
    - Dst: abort
      Src: /src/libxml2/xmllint.c:495,1
    - Dst: xmlMemRealloc
      Src: /src/libxml2/xmllint.c:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - mem
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 507
    functionName: myReallocFunc
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlMemUsed
    - abort
    - xmlMemSize
    - xmlMemRealloc
    linkageType: ''
    returnType: void
    signature: 'void *

      myReallocFunc(void *mem, size_t size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmllint.c:517,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/xmllint.c:518,1
    - Dst: abort
      Src: /src/libxml2/xmllint.c:520,1
    - Dst: xmlMemMalloc
      Src: /src/libxml2/xmllint.c:527,1
    - Dst: memcpy
      Src: /src/libxml2/xmllint.c:533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 509
    functionDepth: 1
    functionLinenumber: 509
    functionLinenumberEnd: 536
    functionName: myStrdupFunc
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - strlen
    - abort
    - memcpy
    - xmlMemUsed
    - xmlMemMalloc
    linkageType: ''
    returnType: char
    signature: 'char *

      myStrdupFunc(const char *str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _ftime64
      Src: /src/libxml2/xmllint.c:550,1
    - Dst: gettimeofday
      Src: /src/libxml2/xmllint.c:556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - time
    argTypes:
    - xmlTime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 545
    functionDepth: 0
    functionLinenumber: 545
    functionLinenumberEnd: 560
    functionName: getTime
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - _ftime64
    - gettimeofday
    linkageType: ''
    returnType: void
    signature: void getTime(xmlTime *time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getTime
      Src: /src/libxml2/xmllint.c:568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lint
    argTypes:
    - xmllintState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 569
    functionName: startTimer
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 2
    functionsReached:
    - getTime
    linkageType: ''
    returnType: void
    signature: void startTimer(xmllintState *lint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getTime
      Src: /src/libxml2/xmllint.c:582,1
    - Dst: va_start
      Src: /src/libxml2/xmllint.c:587,1
    - Dst: vfprintf
      Src: /src/libxml2/xmllint.c:588,1
    - Dst: va_end
      Src: /src/libxml2/xmllint.c:589,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - lint
    - fmt
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 592
    functionName: endTimer
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 2
    functionsReached:
    - va_end
    - getTime
    - va_start
    - vfprintf
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endTimer(xmllintState *lint, const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 648
    functionName: isStandaloneDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int isStandaloneDebug(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 660
    functionName: hasInternalSubsetDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int hasInternalSubsetDebug(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 672
    functionName: hasExternalSubsetDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int hasExternalSubsetDebug(void *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:683,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:685,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:687,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:689,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:691,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 674
    functionDepth: 0
    functionLinenumber: 674
    functionLinenumberEnd: 692
    functionName: internalSubsetDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void internalSubsetDebug(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:703,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:705,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:707,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:709,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:711,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 712
    functionName: externalSubsetDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void externalSubsetDebug(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:725,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:727,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:729,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:731,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:733,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 714
    functionDepth: 0
    functionLinenumber: 714
    functionLinenumberEnd: 735
    functionName: resolveEntityDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: xmlParserInputPtr resolveEntityDebug(void *ctx, const xmlChar *publicId,
      const xmlChar *systemId)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:745,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 747
    functionName: getEntityDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getEntityDebug(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 759
    functionName: getParameterEntityDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getParameterEntityDebug(void *ctx, const xmlChar *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:778,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - ctx
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 780
    functionName: entityDeclDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void entityDeclDebug(void *ctx, const xmlChar *name, int type,\n          const
      xmlChar *publicId, const xmlChar *systemId, xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:793,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:796,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/xmllint.c:798,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - ctx
    - elem
    - name
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 799
    functionName: attributeDeclDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeEnumeration
    linkageType: ''
    returnType: void
    signature: "void attributeDeclDebug(void *ctx, const xmlChar * elem,\n                   const
      xmlChar * name, int type, int def,\n                   const xmlChar * defaultValue,
      xmlEnumerationPtr tree)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:810,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - name
    - type
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 801
    functionDepth: 0
    functionLinenumber: 801
    functionLinenumberEnd: 812
    functionName: elementDeclDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void elementDeclDebug(void *ctx, const xmlChar *name, int type,\n\t
      \   xmlElementContentPtr content ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 814
    functionDepth: 0
    functionLinenumber: 814
    functionLinenumberEnd: 825
    functionName: notationDeclDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void notationDeclDebug(void *ctx, const xmlChar *name,\n\t     const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:844,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    - notationName
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 847
    functionName: unparsedEntityDeclDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void unparsedEntityDeclDebug(void *ctx, const xmlChar *name,\n\t\t
      \  const xmlChar *publicId, const xmlChar *systemId,\n\t\t   const xmlChar *notationName)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:857,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlSAXLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 858
    functionName: setDocumentLocatorDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void setDocumentLocatorDebug(void *ctx, xmlSAXLocatorPtr loc ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:868,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 860
    functionDepth: 0
    functionLinenumber: 860
    functionLinenumberEnd: 869
    functionName: startDocumentDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void startDocumentDebug(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:879,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 880
    functionName: endDocumentDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endDocumentDebug(void *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:891,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:894,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:896,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:899,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - name
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 882
    functionDepth: 0
    functionLinenumber: 882
    functionLinenumberEnd: 900
    functionName: startElementDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void startElementDebug(void *ctx, const xmlChar *name, const xmlChar
      **atts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:910,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 911
    functionName: endElementDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endElementDebug(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:927,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 913
    functionDepth: 0
    functionLinenumber: 913
    functionLinenumberEnd: 928
    functionName: charactersDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void charactersDebug(void *ctx, const xmlChar *ch, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 930
    functionDepth: 0
    functionLinenumber: 930
    functionLinenumberEnd: 939
    functionName: referenceDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void referenceDebug(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:954,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 955
    functionName: ignorableWhitespaceDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ignorableWhitespaceDebug(void *ctx, const xmlChar *ch, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:967,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:970,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 972
    functionName: processingInstructionDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void processingInstructionDebug(void *ctx, const xmlChar *target,\n
      \                     const xmlChar *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:982,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - value
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 974
    functionDepth: 0
    functionLinenumber: 974
    functionLinenumberEnd: 984
    functionName: cdataBlockDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void cdataBlockDebug(void *ctx, const xmlChar *value, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:994,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 995
    functionName: commentDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void commentDebug(void *ctx, const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmllint.c:1006,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1007,1
    - Dst: vfprintf
      Src: /src/libxml2/xmllint.c:1008,1
    - Dst: va_end
      Src: /src/libxml2/xmllint.c:1009,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 998
    functionDepth: 0
    functionLinenumber: 998
    functionLinenumberEnd: 1010
    functionName: warningDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void warningDebug(void *ctx, const char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmllint.c:1021,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1022,1
    - Dst: vfprintf
      Src: /src/libxml2/xmllint.c:1023,1
    - Dst: va_end
      Src: /src/libxml2/xmllint.c:1024,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1013
    functionDepth: 0
    functionLinenumber: 1013
    functionLinenumberEnd: 1025
    functionName: errorDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void errorDebug(void *ctx, const char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmllint.c:1036,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1037,1
    - Dst: vfprintf
      Src: /src/libxml2/xmllint.c:1038,1
    - Dst: va_end
      Src: /src/libxml2/xmllint.c:1039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1028
    functionDepth: 0
    functionLinenumber: 1028
    functionLinenumberEnd: 1040
    functionName: fatalErrorDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void fatalErrorDebug(void *ctx, const char *msg, ...)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1100,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1102,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1104,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1106,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1108,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1109,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1113,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1115,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1117,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1120,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1124,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1126,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1127,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1131,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 9
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1083
    functionDepth: 0
    functionLinenumber: 1083
    functionLinenumberEnd: 1132
    functionName: startElementNsDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void startElementNsDebug(void *ctx,\n                    const xmlChar
      *localname,\n                    const xmlChar *prefix,\n                    const
      xmlChar *URI,\n\t\t    int nb_namespaces,\n\t\t    const xmlChar **namespaces,\n\t\t
      \   int nb_attributes,\n\t\t    int nb_defaulted,\n\t\t    const xmlChar **attributes)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1145,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1147,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1149,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1151,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1134
    functionDepth: 0
    functionLinenumber: 1134
    functionLinenumberEnd: 1154
    functionName: endElementNsDebug
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void endElementNsDebug(void *ctx,\n                  const xmlChar
      *localname,\n                  const xmlChar *prefix,\n                  const
      xmlChar *URI)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:1201,1
    - Dst: xmlParserInputBufferCreateFd
      Src: /src/libxml2/xmllint.c:1202,1
    - Dst: xmlParserInputBufferCreateFilename
      Src: /src/libxml2/xmllint.c:1205,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmllint.c:1210,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmllint.c:1213,1
    - Dst: xmlSchemaValidateSetFilename
      Src: /src/libxml2/xmllint.c:1216,1
    - Dst: xmlSchemaValidateStream
      Src: /src/libxml2/xmllint.c:1218,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1222,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1225,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1228,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmllint.c:1233,1
    - Dst: parseHtml
      Src: /src/libxml2/xmllint.c:1238,1
    - Dst: parseXml
      Src: /src/libxml2/xmllint.c:1242,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1191
    functionDepth: 2
    functionLinenumber: 1191
    functionLinenumberEnd: 1244
    functionName: testSAX
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlParserInputBufferCreateFd
    - xmlSchemaValidateStream
    - xmlSchemaValidateSetFilename
    - xmlSchemaNewValidCtxt
    - strcmp
    - parseXml
    - xmlSchemaFreeValidCtxt
    - xmlParserInputBufferCreateFilename
    - parseHtml
    - xmlFreeParserInputBuffer
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testSAX(xmllintState *lint, const char *filename)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/xmllint.c:1256,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/xmllint.c:1257,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/xmllint.c:1260,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/xmllint.c:1264,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1267,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/xmllint.c:1268,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/xmllint.c:1272,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1274,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1276,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/xmllint.c:1286,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/xmllint.c:1287,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/xmllint.c:1290,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/xmllint.c:1290,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1291,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xmllint.c:1298,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/xmllint.c:1299,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/xmllint.c:1300,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1302,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmllint.c:1303,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/xmllint.c:1307,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/xmllint.c:1308,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1310,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1313,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1316,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/xmllint.c:1317,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xmllint.c:1323,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1325,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmllint.c:1326,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:1332,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 52
    argCount: 2
    argNames:
    - lint
    - reader
    argTypes:
    - xmllintState*
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1335
      start: 1252
    functionDepth: 1
    functionLinenumber: 1252
    functionLinenumberEnd: 1335
    functionName: processNode
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlGetNodePath
    - xmlTextReaderConstNamespaceUri
    - xmlFree
    - xmlTextReaderConstLocalName
    - xmlTextReaderDepth
    - xmlTextReaderNodeType
    - xmlTextReaderConstValue
    - fprintf
    - xmlTextReaderIsEmptyElement
    - printf
    - xmlTextReaderConstName
    - xmlTextReaderHasValue
    - xmlTextReaderCurrentNode
    - xmlStreamPush
    - xmlStreamPop
    - xmlPatternMatch
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: void
    signature: void processNode(xmllintState *lint, xmlTextReaderPtr reader)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForMemory
      Src: /src/libxml2/xmllint.c:1345,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/xmllint.c:1354,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:1356,1
    - Dst: xmlReaderForFd
      Src: /src/libxml2/xmllint.c:1357,1
    - Dst: xmlReaderForFile
      Src: /src/libxml2/xmllint.c:1361,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/xmllint.c:1365,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1370,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/xmllint.c:1379,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xmllint.c:1381,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1383,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmllint.c:1384,1
    - Dst: xmlTextReaderSetResourceLoader
      Src: /src/libxml2/xmllint.c:1392,1
    - Dst: xmlTextReaderSetMaxAmplification
      Src: /src/libxml2/xmllint.c:1394,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1399,1
    - Dst: xmlTextReaderRelaxNGValidate
      Src: /src/libxml2/xmllint.c:1401,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1403,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1409,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1416,1
    - Dst: xmlTextReaderSchemaValidate
      Src: /src/libxml2/xmllint.c:1418,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1420,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1426,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1435,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmllint.c:1437,1
    - Dst: processNode
      Src: /src/libxml2/xmllint.c:1444,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmllint.c:1445,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1450,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1455,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1458,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/xmllint.c:1463,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1464,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/xmllint.c:1483,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1484,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1488,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmllint.c:1497,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmllint.c:1498,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1500,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmllint.c:1505,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 113
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1337
    functionDepth: 1
    functionLinenumber: 1337
    functionLinenumberEnd: 1509
    functionName: streamFile
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderRead
    - xmlTextReaderIsValid
    - endTimer
    - xmlTextReaderSetMaxAmplification
    - strcmp
    - xmlReaderForMemory
    - xmlGetLastError
    - xmlFreeParserInputBuffer
    - fprintf
    - xmlResetLastError
    - startTimer
    - xmlReaderForFd
    - processNode
    - xmlPatternGetStreamCtxt
    - xmlFreeStreamCtxt
    - xmlTextReaderSetResourceLoader
    - xmlTextReaderSchemaValidate
    - xmlReaderForFile
    - xmlStreamPush
    - xmlTextReaderRelaxNGValidate
    - xmlFreeTextReader
    linkageType: ''
    returnType: void
    signature: void streamFile(xmllintState *lint, const char *filename)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmllint.c:1523,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1525,1
    - Dst: xmlPatternCompileSafe
      Src: /src/libxml2/xmllint.c:1537,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1543,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/xmllint.c:1550,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xmllint.c:1556,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1558,1
    - Dst: xmlReaderWalker
      Src: /src/libxml2/xmllint.c:1564,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1567,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmllint.c:1569,1
    - Dst: processNode
      Src: /src/libxml2/xmllint.c:1576,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmllint.c:1577,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1580,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmllint.c:1582,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1584,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1588,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmllint.c:1595,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmllint.c:1599,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 72
    argCount: 2
    argNames:
    - lint
    - doc
    argTypes:
    - xmllintState*
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1511
    functionDepth: 1
    functionLinenumber: 1511
    functionLinenumberEnd: 1603
    functionName: walkDoc
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlFreePattern
    - processNode
    - xmlTextReaderRead
    - endTimer
    - xmlReaderWalker
    - startTimer
    - xmlStreamPush
    - xmlFreeStreamCtxt
    - fprintf
    - xmlPatternCompileSafe
    - xmlDocGetRootElement
    - xmlPatternGetStreamCtxt
    - xmlFreeTextReader
    linkageType: ''
    returnType: void
    signature: void walkDoc(xmllintState *lint, xmlDocPtr doc)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1625,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/xmllint.c:1629,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/xmllint.c:1636,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmllint.c:1637,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmllint.c:1639,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1641,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1646,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1647,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xmllint.c:1650,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1652,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1655,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xmllint.c:1658,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1659,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1661,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1666,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1669,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1673,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 2
    argNames:
    - lint
    - cur
    argTypes:
    - xmllintState*
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1613
    functionDepth: 1
    functionLinenumber: 1613
    functionLinenumberEnd: 1677
    functionName: doXPathDump
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsNaN
    - xmlOutputBufferWrite
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - printf
    - xmlNodeDumpOutput
    - xmlXPathIsInf
    - fprintf
    linkageType: ''
    returnType: void
    signature: void doXPathDump(xmllintState *lint, xmlXPathObjectPtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/xmllint.c:1685,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/xmllint.c:1691,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1693,1
    - Dst: xmlXPathDebugDumpCompExpr
      Src: /src/libxml2/xmllint.c:1700,1
    - Dst: printf
      Src: /src/libxml2/xmllint.c:1701,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/xmllint.c:1706,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1708,1
    - Dst: doXPathDump
      Src: /src/libxml2/xmllint.c:1713,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xmllint.c:1716,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/xmllint.c:1717,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xmllint.c:1718,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 3
    argNames:
    - lint
    - doc
    - query
    argTypes:
    - xmllintState*
    - xmlDocPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1719
      start: 1679
    functionDepth: 2
    functionLinenumber: 1679
    functionLinenumberEnd: 1719
    functionName: doXPathQuery
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xmlXPathFreeContext
    - xmlXPathFreeCompExpr
    - xmlXPathNewContext
    - printf
    - xmlXPathCtxtCompile
    - xmlXPathDebugDumpCompExpr
    - fprintf
    - xmlXPathFreeObject
    - doXPathDump
    linkageType: ''
    returnType: void
    signature: void doXPathQuery(xmllintState *lint, xmlDocPtr doc, const char *query)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/xmllint.c:1735,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/xmllint.c:1740,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:1742,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/xmllint.c:1746,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xmllint.c:1747,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:1748,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/xmllint.c:1752,1
    - Dst: parseHtml
      Src: /src/libxml2/xmllint.c:1759,1
    - Dst: parseXml
      Src: /src/libxml2/xmllint.c:1764,1
    - Dst: xmlCtxtGetStatus
      Src: /src/libxml2/xmllint.c:1773,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1728
    functionDepth: 2
    functionLinenumber: 1728
    functionLinenumberEnd: 1785
    functionName: parseFile
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xmlNewDoc
    - parseXml
    - xmlNodeSetContent
    - xmlCtxtGetStatus
    - parseHtml
    - xmlFreeNode
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr parseFile(xmllintState *lint, const char *filename)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1796,1
    - Dst: parseFile
      Src: /src/libxml2/xmllint.c:1798,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1806,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/xmllint.c:1812,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmllint.c:1814,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1825,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/xmllint.c:1828,1
    - Dst: xmlXIncludeSetResourceLoader
      Src: /src/libxml2/xmllint.c:1833,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/xmllint.c:1834,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/xmllint.c:1835,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/xmllint.c:1836,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1846,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxml2/xmllint.c:1856,1
    - Dst: xmllintShell
      Src: /src/libxml2/xmllint.c:1858,1
    - Dst: xmlXPathOrderDocElems
      Src: /src/libxml2/xmllint.c:1864,1
    - Dst: doXPathQuery
      Src: /src/libxml2/xmllint.c:1865,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1877,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/xmllint.c:1879,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:1882,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1886,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1889,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:1891,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:1893,1
    - Dst: xmlValidGetValidElements
      Src: /src/libxml2/xmllint.c:1914,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1916,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1918,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1920,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1923,1
    - Dst: walkDoc
      Src: /src/libxml2/xmllint.c:1932,1
    - Dst: xmlSetDocCompressMode
      Src: /src/libxml2/xmllint.c:1939,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:1949,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/xmllint.c:1956,1
    - Dst: write
      Src: /src/libxml2/xmllint.c:1958,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1959,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:1961,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1963,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/xmllint.c:1970,1
    - Dst: write
      Src: /src/libxml2/xmllint.c:1972,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1973,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:1975,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1977,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/xmllint.c:1984,1
    - Dst: write
      Src: /src/libxml2/xmllint.c:1986,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1987,1
    - Dst: xmlFree
      Src: /src/libxml2/xmllint.c:1989,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:1991,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/xmllint.c:1998,1
    - Dst: xmlSaveToFd
      Src: /src/libxml2/xmllint.c:2016,1
    - Dst: xmlSaveToFilename
      Src: /src/libxml2/xmllint.c:2019,1
    - Dst: xmlSaveSetIndentString
      Src: /src/libxml2/xmllint.c:2024,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/xmllint.c:2026,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2027,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/xmllint.c:2031,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2037,1
    - Dst: fopen
      Src: /src/libxml2/xmllint.c:2045,1
    - Dst: xmlDebugDumpDocument
      Src: /src/libxml2/xmllint.c:2048,1
    - Dst: fclose
      Src: /src/libxml2/xmllint.c:2051,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2053,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2069,1
    - Dst: xmlParseDTD
      Src: /src/libxml2/xmllint.c:2072,1
    - Dst: xmlParseDTD
      Src: /src/libxml2/xmllint.c:2074,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2076,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2080,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2083,1
    - Dst: xmlNewValidCtxt
      Src: /src/libxml2/xmllint.c:2089,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/xmllint.c:2092,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2097,1
    - Dst: xmlValidateDtd
      Src: /src/libxml2/xmllint.c:2099,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2101,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2105,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2111,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/xmllint.c:2113,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/xmllint.c:2114,1
    - Dst: xmlNewValidCtxt
      Src: /src/libxml2/xmllint.c:2119,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:2122,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2127,1
    - Dst: xmlValidateDocument
      Src: /src/libxml2/xmllint.c:2129,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2130,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2135,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/xmllint.c:2137,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2147,1
    - Dst: xmlSchematronNewValidCtxt
      Src: /src/libxml2/xmllint.c:2156,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:2159,1
    - Dst: xmlSchematronValidateDoc
      Src: /src/libxml2/xmllint.c:2162,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2165,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2168,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2171,1
    - Dst: xmlSchematronFreeValidCtxt
      Src: /src/libxml2/xmllint.c:2175,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2177,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2188,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/xmllint.c:2191,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:2194,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/xmllint.c:2197,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2200,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2203,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2206,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/xmllint.c:2210,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2212,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2223,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmllint.c:2226,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:2229,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/xmllint.c:2232,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2235,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2238,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2241,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmllint.c:2245,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2247,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:2260,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmllint.c:2262,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:2264,1
    CyclomaticComplexity: 120
    EdgeCount: 120
    ICount: 339
    argCount: 2
    argNames:
    - lint
    - filename
    argTypes:
    - xmllintState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 1787
    functionDepth: 3
    functionLinenumber: 1787
    functionLinenumberEnd: 2266
    functionName: parseAndPrintFile
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - xmlUnlinkNode
    - xmlFreeDtd
    - xmlValidGetValidElements
    - xmlSaveDoc
    - fclose
    - doXPathQuery
    - xmlXIncludeSetFlags
    - xmlFree
    - endTimer
    - xmlFreeValidCtxt
    - xmlValidateDocument
    - fprintf
    - xmlCopyDoc
    - xmlSaveToFd
    - xmlRelaxNGValidateDoc
    - xmlSaveClose
    - xmlGetIntSubset
    - xmlXIncludeNewContext
    - xmlSetDocCompressMode
    - xmlSaveFile
    - xmlSchemaNewValidCtxt
    - xmlSaveToFilename
    - xmlXPathOrderDocElems
    - xmlXIncludeFreeContext
    - xmlXIncludeProcessNode
    - xmlValidateDtd
    - xmlSchemaValidateDoc
    - startTimer
    - xmlSchematronValidateDoc
    - xmllintShell
    - xmlRelaxNGNewValidCtxt
    - write
    - walkDoc
    - xmlDebugDumpDocument
    - xmlRelaxNGFreeValidCtxt
    - xmlSchematronNewValidCtxt
    - xmlNewValidCtxt
    - xmlC14NDocDumpMemory
    - fopen
    - parseFile
    - xmlSchemaFreeValidCtxt
    - xmlSchematronFreeValidCtxt
    - xmlXIncludeSetResourceLoader
    - xmlSaveSetIndentString
    - xmlFreeDoc
    - xmlParseDTD
    linkageType: ''
    returnType: void
    signature: void parseAndPrintFile(xmllintState *lint, const char *filename)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2275,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2276,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2277,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2277,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2278,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2279,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2279,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2280,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2280,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2281,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2281,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2282,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2282,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2283,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2283,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2284,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2284,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2285,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2285,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2286,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2286,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2287,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2287,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2288,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2288,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2289,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2289,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2290,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2290,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2291,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2291,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2292,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2292,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2293,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2293,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2294,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2294,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2295,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2296,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2297,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2297,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2298,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2298,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2299,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2299,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2300,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2300,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2301,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2301,1
    - Dst: xmlHasFeature
      Src: /src/libxml2/xmllint.c:2302,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2302,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2303,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 2
    argNames:
    - errStream
    - name
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2304
      start: 2274
    functionDepth: 1
    functionLinenumber: 2274
    functionLinenumberEnd: 2304
    functionName: showVersion
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlHasFeature
    linkageType: ''
    returnType: void
    signature: void showVersion(FILE *errStream, const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2307,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2309,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2311,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2313,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2314,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2315,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2316,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2317,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2318,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2319,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2320,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2321,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2322,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2323,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2324,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2325,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2327,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2328,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2329,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2330,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2331,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2333,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2334,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2335,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2336,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2337,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2339,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2340,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2342,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2346,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2349,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2351,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2352,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2353,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2354,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2355,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2356,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2358,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2359,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2360,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2361,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2362,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2363,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2364,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2366,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2369,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2370,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2371,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2374,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2376,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2377,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2378,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2380,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2382,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2384,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2385,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2386,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2388,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2389,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2391,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2392,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2394,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2398,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2401,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2404,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2407,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2409,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2410,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2412,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2414,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 72
    argCount: 2
    argNames:
    - f
    - name
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2417
      start: 2306
    functionDepth: 0
    functionLinenumber: 2306
    functionLinenumberEnd: 2417
    functionName: usage
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 3
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(FILE *f, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/libxml2/xmllint.c:2426,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2428,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2432,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 6
    argNames:
    - result
    - errStream
    - ctxt
    - str
    - min
    - max
    argTypes:
    - unsigned long*
    - FILE*
    - char*
    - char*
    - unsigned long
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2419
    functionDepth: 0
    functionLinenumber: 2419
    functionLinenumberEnd: 2438
    functionName: parseInteger
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    - strtoul
    linkageType: ''
    returnType: int
    signature: "int parseInteger(unsigned long *result, FILE *errStream, const char
      *ctxt,\n             const char *str, unsigned long min, unsigned long max)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2442,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2443,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2444,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2445,1
    - Dst: LIBXML_OUTPUT_ENABLED
      Src: /src/libxml2/xmllint.c:2446,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2447,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2448,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2449,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2450,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2451,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2452,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2453,1
    - Dst: LIBXML_VALID_ENABLED
      Src: /src/libxml2/xmllint.c:2455,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2456,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2457,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2458,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2459,1
    - Dst: LIBXML_RELAXNG_ENABLED
      Src: /src/libxml2/xmllint.c:2461,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2462,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2463,1
    - Dst: LIBXML_SCHEMAS_ENABLED
      Src: /src/libxml2/xmllint.c:2465,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2466,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2467,1
    - Dst: LIBXML_SCHEMATRON_ENABLED
      Src: /src/libxml2/xmllint.c:2469,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2470,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2471,1
    - Dst: defined
      Src: /src/libxml2/xmllint.c:2473,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2474,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2475,1
    - Dst: LIBXML_XPATH_ENABLED
      Src: /src/libxml2/xmllint.c:2477,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2478,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2479,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2481,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2482,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 3
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2485
      start: 2440
    functionDepth: 0
    functionLinenumber: 2440
    functionLinenumberEnd: 2485
    functionName: skipArgs
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - LIBXML_XPATH_ENABLED
    - LIBXML_SCHEMAS_ENABLED
    - LIBXML_RELAXNG_ENABLED
    - strcmp
    - LIBXML_SCHEMATRON_ENABLED
    - LIBXML_VALID_ENABLED
    - LIBXML_OUTPUT_ENABLED
    - defined
    linkageType: ''
    returnType: int
    signature: int skipArgs(const char *arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/xmllint.c:2492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - lint
    argTypes:
    - xmllintState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2490
    functionDepth: 0
    functionLinenumber: 2490
    functionLinenumberEnd: 2500
    functionName: xmllintInit
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void xmllintInit(xmllintState *lint)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - errStream
    - opt
    - nosupp
    argTypes:
    - FILE*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2505
      start: 2502
    functionDepth: 0
    functionLinenumber: 2502
    functionLinenumberEnd: 2505
    functionName: xmllintOptWarnNoSupport
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmllintOptWarnNoSupport(FILE *errStream, const char *opt, const
      char *nosupp)
  - BBCount: 116
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/libxml2/xmllint.c:2514,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2524,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2525,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2528,1
    - Dst: parseInteger
      Src: /src/libxml2/xmllint.c:2531,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2535,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2536,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2538,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2539,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2541,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2542,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2544,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2545,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2547,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2548,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2553,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2554,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2556,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2557,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2562,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2563,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2565,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2566,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2568,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2569,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2571,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2572,1
    - Dst: showVersion
      Src: /src/libxml2/xmllint.c:2573,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2575,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2576,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2579,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2580,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2582,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2583,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2586,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2587,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2591,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2592,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2594,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2595,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2598,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2599,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2601,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2602,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2605,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2606,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2610,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2611,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2615,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2616,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2619,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2620,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2622,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2623,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2625,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2626,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2628,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2629,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2631,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2632,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2634,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2635,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2645,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2646,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2650,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2651,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2655,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2656,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2659,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2660,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2664,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2665,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2670,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2671,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2677,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2678,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2682,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2683,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2685,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2686,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2690,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2691,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2697,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2698,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2699,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2702,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2703,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2709,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2710,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2713,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2714,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2717,1
    - Dst: parseInteger
      Src: /src/libxml2/xmllint.c:2720,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2725,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2726,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2730,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2731,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2734,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2735,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2738,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2739,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2745,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2746,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2748,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2749,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2753,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2754,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2760,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2761,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2764,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2765,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2768,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2769,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2775,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2776,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2782,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2783,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2788,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2789,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2791,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2792,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2797,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2798,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2800,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2801,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2805,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2806,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2811,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2812,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2814,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:2815,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2818,1
    - Dst: parseInteger
      Src: /src/libxml2/xmllint.c:2821,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2826,1
    - Dst: usage
      Src: /src/libxml2/xmllint.c:2827,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2840,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2843,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2847,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2857,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2861,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2867,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2869,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2871,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2873,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2876,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2880,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2884,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2886,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2888,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2890,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2894,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2898,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2900,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2902,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2906,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2910,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2914,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2916,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2918,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2925,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2932,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2934,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2936,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2938,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2940,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2942,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2944,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2946,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2948,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2950,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2952,1
    - Dst: xmllintOptWarnNoSupport
      Src: /src/libxml2/xmllint.c:2954,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2957,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:2961,1
    CyclomaticComplexity: 184
    EdgeCount: 184
    ICount: 352
    argCount: 3
    argNames:
    - lint
    - argc
    - argv
    argTypes:
    - xmllintState*
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2968
      start: 2507
    functionDepth: 2
    functionLinenumber: 2507
    functionLinenumberEnd: 2968
    functionName: xmllintParseOptions
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - usage
    - parseInteger
    - strcmp
    - xmllintOptWarnNoSupport
    - fprintf
    - showVersion
    linkageType: ''
    returnType: int
    signature: int xmllintParseOptions(xmllintState *lint, int argc, const char **argv)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: _setmode
      Src: /src/libxml2/xmllint.c:2978,1
    - Dst: _fileno
      Src: /src/libxml2/xmllint.c:2978,1
    - Dst: _setmode
      Src: /src/libxml2/xmllint.c:2979,1
    - Dst: _fileno
      Src: /src/libxml2/xmllint.c:2979,1
    - Dst: _setmode
      Src: /src/libxml2/xmllint.c:2980,1
    - Dst: _fileno
      Src: /src/libxml2/xmllint.c:2980,1
    - Dst: xmllintInit
      Src: /src/libxml2/xmllint.c:2984,1
    - Dst: xmllintParseOptions
      Src: /src/libxml2/xmllint.c:2988,1
    - Dst: xmlMemSetup
      Src: /src/libxml2/xmllint.c:3001,1
    - Dst: getenv
      Src: /src/libxml2/xmllint.c:3011,1
    - Dst: xmlLoadCatalogs
      Src: /src/libxml2/xmllint.c:3013,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3015,1
    - Dst: getenv
      Src: /src/libxml2/xmllint.c:3023,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:3041,1
    - Dst: xmlSchematronNewParserCtxt
      Src: /src/libxml2/xmllint.c:3043,1
    - Dst: xmlSchematronParse
      Src: /src/libxml2/xmllint.c:3048,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/xmllint.c:3049,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3051,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:3057,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:3073,1
    - Dst: xmlRelaxNGNewParserCtxt
      Src: /src/libxml2/xmllint.c:3075,1
    - Dst: xmlRelaxNGSetResourceLoader
      Src: /src/libxml2/xmllint.c:3080,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/xmllint.c:3081,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/xmllint.c:3082,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3084,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:3090,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:3104,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmllint.c:3106,1
    - Dst: xmlSchemaSetResourceLoader
      Src: /src/libxml2/xmllint.c:3111,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/xmllint.c:3112,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmllint.c:3113,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3115,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:3121,1
    - Dst: xmlPatternCompileSafe
      Src: /src/libxml2/xmllint.c:3128,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3134,1
    - Dst: strcmp
      Src: /src/libxml2/xmllint.c:3152,1
    - Dst: skipArgs
      Src: /src/libxml2/xmllint.c:3153,1
    - Dst: stat
      Src: /src/libxml2/xmllint.c:3160,1
    - Dst: open
      Src: /src/libxml2/xmllint.c:3164,1
    - Dst: mmap
      Src: /src/libxml2/xmllint.c:3169,1
    - Dst: close
      Src: /src/libxml2/xmllint.c:3172,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3173,1
    - Dst: startTimer
      Src: /src/libxml2/xmllint.c:3182,1
    - Dst: streamFile
      Src: /src/libxml2/xmllint.c:3187,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/xmllint.c:3197,1
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/xmllint.c:3203,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/xmllint.c:3205,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmllint.c:3211,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xmllint.c:3216,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/xmllint.c:3218,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xmllint.c:3242,1
    - Dst: xmlCtxtSetMaxAmplification
      Src: /src/libxml2/xmllint.c:3244,1
    - Dst: xmlCtxtResetPush
      Src: /src/libxml2/xmllint.c:3252,1
    - Dst: xmlCtxtReset
      Src: /src/libxml2/xmllint.c:3256,1
    - Dst: testSAX
      Src: /src/libxml2/xmllint.c:3261,1
    - Dst: parseAndPrintFile
      Src: /src/libxml2/xmllint.c:3263,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmllint.c:3267,1
    - Dst: endTimer
      Src: /src/libxml2/xmllint.c:3271,1
    - Dst: munmap
      Src: /src/libxml2/xmllint.c:3278,1
    - Dst: close
      Src: /src/libxml2/xmllint.c:3279,1
    - Dst: parseAndPrintFile
      Src: /src/libxml2/xmllint.c:3285,1
    - Dst: usage
      Src: /src/libxml2/xmllint.c:3288,1
    - Dst: xmlSchematronFree
      Src: /src/libxml2/xmllint.c:3296,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmllint.c:3300,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmllint.c:3304,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmllint.c:3308,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/xmllint.c:3311,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3314,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3317,1
    - Dst: fprintf
      Src: /src/libxml2/xmllint.c:3323,1
    - Dst: abort
      Src: /src/libxml2/xmllint.c:3325,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 235
    argCount: 4
    argNames:
    - argc
    - argv
    - errStream
    - loader
    argTypes:
    - int
    - char**
    - FILE*
    - xmlResourceLoader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3330
      start: 2970
    functionDepth: 4
    functionLinenumber: 2970
    functionLinenumberEnd: 3330
    functionName: xmllintMain
    functionSourceFile: /src/libxml2/xmllint.c
    functionUses: 0
    functionsReached:
    - testSAX
    - xmlSchemaFreeParserCtxt
    - streamFile
    - xmlCtxtUseOptions
    - xmlCleanupParser
    - xmlNewParserCtxt
    - xmlSchemaSetResourceLoader
    - xmlCtxtResetPush
    - stat
    - xmlLoadCatalogs
    - xmlRelaxNGNewParserCtxt
    - xmlFreePattern
    - xmlSchematronNewParserCtxt
    - xmlRelaxNGFree
    - xmlSchematronParse
    - xmlCreatePushParserCtxt
    - xmlRelaxNGSetResourceLoader
    - xmlCtxtSetResourceLoader
    - xmlMemSetup
    - endTimer
    - xmlCtxtReset
    - _setmode
    - abort
    - strcmp
    - xmlSchemaFree
    - fprintf
    - xmllintParseOptions
    - xmlSchemaNewParserCtxt
    - open
    - munmap
    - parseAndPrintFile
    - _fileno
    - startTimer
    - xmlRelaxNGParse
    - skipArgs
    - getenv
    - htmlCtxtUseOptions
    - xmlSchematronFreeParserCtxt
    - xmlSchemaParse
    - xmlFreeParserCtxt
    - xmlRelaxNGFreeParserCtxt
    - usage
    - xmlSchematronFree
    - xmlCtxtSetMaxAmplification
    - htmlNewParserCtxt
    - htmlCreatePushParserCtxt
    - close
    - mmap
    - xmlPatternCompileSafe
    - xmllintInit
    linkageType: ''
    returnType: int
    signature: "int xmllintMain(int argc, const char **argv, FILE *errStream,\n            xmlResourceLoader
      loader)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: DICT_FREE
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DICT_FREE(str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlreader.c:195,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/xmlreader.c:196,1
    - Dst: va_end
      Src: /src/libxml2/xmlreader.c:200,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlreader.c:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - code
    - msg
    argTypes:
    - xmlParserErrors
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 203
    functionName: xmlTextReaderErr
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVRaiseError
    - xmlRaiseMemoryError
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderErr(xmlParserErrors code, const char *msg, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlreader.c:208,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/xmlreader.c:213,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlreader.c:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 219
    functionName: xmlTextReaderErrMemory
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderErrMemory(xmlTextReaderPtr reader)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlreader.c:228,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - reader
    - string
    argTypes:
    - xmlTextReaderPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 233
    functionName: readerStrdup
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      readerStrdup(xmlTextReaderPtr reader, const xmlChar *string)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlreader.c:242,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - reader
    - string
    argTypes:
    - xmlTextReaderPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 247
    functionName: constString
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      constString(xmlTextReaderPtr reader, const xmlChar *string)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictQLookup
      Src: /src/libxml2/xmlreader.c:257,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:259,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - reader
    - prefix
    - name
    argTypes:
    - xmlTextReaderPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 262
    functionName: constQString
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlDictQLookup
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nconstQString(xmlTextReaderPtr reader, const xmlChar *prefix,\n
      \            const xmlChar *name)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/xmlreader.c:287,1
    - Dst: xmlTextReaderFreeNodeList
      Src: /src/libxml2/xmlreader.c:290,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:298,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:302,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:311,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 2
    argNames:
    - reader
    - cur
    argTypes:
    - xmlTextReaderPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 313
    functionName: xmlTextReaderFreeProp
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - DICT_FREE
    - xmlDeregisterNodeDefaultValue
    - xmlFree
    - xmlTextReaderFreeNodeList
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderFreeProp(xmlTextReaderPtr reader, xmlAttrPtr cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderFreeProp
      Src: /src/libxml2/xmlreader.c:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - reader
    - cur
    argTypes:
    - xmlTextReaderPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 321
    functionDepth: 2
    functionLinenumber: 321
    functionLinenumberEnd: 330
    functionName: xmlTextReaderFreePropList
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderFreeProp
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderFreePropList(xmlTextReaderPtr reader, xmlAttrPtr
      cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNsList
      Src: /src/libxml2/xmlreader.c:352,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlreader.c:357,1
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/xmlreader.c:376,1
    - Dst: xmlTextReaderFreePropList
      Src: /src/libxml2/xmlreader.c:382,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:388,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/xmlreader.c:394,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:401,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:410,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 51
    argCount: 2
    argNames:
    - reader
    - cur
    argTypes:
    - xmlTextReaderPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 339
    functionDepth: 3
    functionLinenumber: 339
    functionLinenumberEnd: 424
    functionName: xmlTextReaderFreeNodeList
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlFreeNsList
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - DICT_FREE
    - xmlFreeDoc
    - xmlTextReaderFreePropList
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderFreeNodeList(xmlTextReaderPtr reader, xmlNodePtr
      cur)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDtd
      Src: /src/libxml2/xmlreader.c:442,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/xmlreader.c:446,1
    - Dst: xmlTextReaderFreeProp
      Src: /src/libxml2/xmlreader.c:450,1
    - Dst: xmlTextReaderFreeNodeList
      Src: /src/libxml2/xmlreader.c:457,1
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/xmlreader.c:462,1
    - Dst: xmlTextReaderFreePropList
      Src: /src/libxml2/xmlreader.c:468,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:474,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/xmlreader.c:480,1
    - Dst: DICT_FREE
      Src: /src/libxml2/xmlreader.c:487,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:497,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 39
    argCount: 2
    argNames:
    - reader
    - cur
    argTypes:
    - xmlTextReaderPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 433
    functionDepth: 4
    functionLinenumber: 433
    functionLinenumberEnd: 499
    functionName: xmlTextReaderFreeNode
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlFreeNsList
    - xmlFreeDtd
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - xmlTextReaderFreeProp
    - xmlTextReaderFreeNodeList
    - xmlFreeNs
    - DICT_FREE
    - xmlTextReaderFreePropList
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderFreeNode(xmlTextReaderPtr reader, xmlNodePtr cur)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/xmlreader.c:514,1
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/xmlreader.c:519,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/xmlreader.c:521,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:528,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/xmlreader.c:530,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:533,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/xmlreader.c:535,1
    - Dst: xmlTextReaderFreeNodeList
      Src: /src/libxml2/xmlreader.c:538,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:540,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:541,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:542,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/xmlreader.c:543,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:544,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlreader.c:545,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:547,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 2
    argNames:
    - reader
    - cur
    argTypes:
    - xmlTextReaderPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 507
    functionDepth: 4
    functionLinenumber: 507
    functionLinenumberEnd: 548
    functionName: xmlTextReaderFreeDoc
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xmlUnlinkNode
    - xmlFreeIDTable
    - xmlFreeRefTable
    - xmlFree
    - xmlFreeDtd
    - xmlFreeNsList
    - xmlDeregisterNodeDefaultValue
    - xmlTextReaderFreeNodeList
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderFreeDoc(xmlTextReaderPtr reader, xmlDocPtr cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::sErrorFunc
      Src: /src/libxml2/xmlreader.c:562,1
    - Dst: xmlTextReaderPtr::errorFunc
      Src: /src/libxml2/xmlreader.c:579,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - userData
    - error
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 582
    functionName: xmlTextReaderStructuredRelay
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::errorFunc
    - xmlTextReaderPtr::sErrorFunc
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderStructuredRelay(void *userData, const xmlError *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlreader.c:598,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:601,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlreader.c:604,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:606,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - reader
    - value
    argTypes:
    - xmlTextReaderPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 615
    functionName: xmlTextReaderEntPush
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderEntPush(xmlTextReaderPtr reader, xmlNodePtr value)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 638
    functionName: xmlTextReaderEntPop
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlTextReaderEntPop(xmlTextReaderPtr reader)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::startElement
      Src: /src/libxml2/xmlreader.c:654,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - fullname
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 647
    functionDepth: 0
    functionLinenumber: 647
    functionLinenumberEnd: 662
    functionName: xmlTextReaderStartElement
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::startElement
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderStartElement(void *ctx, const xmlChar *fullname,\n\t
      \                 const xmlChar **atts)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::endElement
      Src: /src/libxml2/xmlreader.c:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - fullname
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 678
    functionName: xmlTextReaderEndElement
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::endElement
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderEndElement(void *ctx, const xmlChar *fullname)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::startElementNs
      Src: /src/libxml2/xmlreader.c:709,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 8
    argCount: 9
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 719
    functionName: xmlTextReaderStartElementNs
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::startElementNs
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderStartElementNs(void *ctx,\n                      const
      xmlChar *localname,\n\t\t      const xmlChar *prefix,\n\t\t      const xmlChar
      *URI,\n\t\t      int nb_namespaces,\n\t\t      const xmlChar **namespaces,\n\t\t
      \     int nb_attributes,\n\t\t      int nb_defaulted,\n\t\t      const xmlChar
      **attributes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::endElementNs
      Src: /src/libxml2/xmlreader.c:739,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 729
    functionDepth: 0
    functionLinenumber: 729
    functionLinenumberEnd: 741
    functionName: xmlTextReaderEndElementNs
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::endElementNs
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderEndElementNs(void *ctx,\n                          const
      xmlChar * localname,\n                          const xmlChar * prefix,\n\t\t
      \         const xmlChar * URI)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::characters
      Src: /src/libxml2/xmlreader.c:758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 751
    functionDepth: 0
    functionLinenumber: 751
    functionLinenumberEnd: 760
    functionName: xmlTextReaderCharacters
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::characters
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderCharacters(void *ctx, const xmlChar *ch, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderPtr::cdataBlock
      Src: /src/libxml2/xmlreader.c:776,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 769
    functionDepth: 0
    functionLinenumber: 769
    functionLinenumberEnd: 778
    functionName: xmlTextReaderCDataBlock
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPtr::cdataBlock
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderCDataBlock(void *ctx, const xmlChar *ch, int len)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:801,1
    - Dst: xmlParserInputBufferRead
      Src: /src/libxml2/xmlreader.c:806,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:808,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/xmlreader.c:813,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:826,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlreader.c:827,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:828,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:836,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlreader.c:837,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:838,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/xmlreader.c:853,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:866,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlreader.c:867,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:868,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:870,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 68
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 787
    functionDepth: 1
    functionLinenumber: 787
    functionLinenumberEnd: 886
    functionName: xmlTextReaderPushData
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlBufContent
    - xmlParserInputBufferRead
    - xmlCtxtErrIO
    - xmlBufUse
    - xmlParseChunk
    - xmlBufShrink
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderPushData(xmlTextReaderPtr reader)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidatePushElement
      Src: /src/libxml2/xmlreader.c:902,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/xmlreader.c:908,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:910,1
    - Dst: xmlValidatePushElement
      Src: /src/libxml2/xmlreader.c:913,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:916,1
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/xmlreader.c:931,1
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/xmlreader.c:938,1
    - Dst: xmlRelaxNGValidateFullElement
      Src: /src/libxml2/xmlreader.c:942,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 894
    functionDepth: 2
    functionLinenumber: 894
    functionLinenumberEnd: 954
    functionName: xmlTextReaderValidatePush
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlBuildQName
    - xmlFree
    - xmlTextReaderErrMemory
    - xmlTextReaderExpand
    - xmlRelaxNGValidateFullElement
    - xmlRelaxNGValidatePushElement
    - xmlValidatePushElement
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderValidatePush(xmlTextReaderPtr reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidatePushCData
      Src: /src/libxml2/xmlreader.c:969,1
    - Dst: xmlRelaxNGValidatePushCData
      Src: /src/libxml2/xmlreader.c:979,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 3
    argNames:
    - reader
    - data
    - len
    argTypes:
    - xmlTextReaderPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 963
    functionDepth: 1
    functionLinenumber: 963
    functionLinenumberEnd: 984
    functionName: xmlTextReaderValidateCData
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlValidatePushCData
    - xmlRelaxNGValidatePushCData
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderValidateCData(xmlTextReaderPtr reader,\n                           const
      xmlChar *data, int len)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidatePopElement
      Src: /src/libxml2/xmlreader.c:999,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/xmlreader.c:1005,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1007,1
    - Dst: xmlValidatePopElement
      Src: /src/libxml2/xmlreader.c:1010,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:1013,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/xmlreader.c:1032,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 991
    functionDepth: 2
    functionLinenumber: 991
    functionLinenumberEnd: 1041
    functionName: xmlTextReaderValidatePop
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlBuildQName
    - xmlFree
    - xmlTextReaderErrMemory
    - xmlRelaxNGValidatePopElement
    - xmlValidatePopElement
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderValidatePop(xmlTextReaderPtr reader)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderEntPush
      Src: /src/libxml2/xmlreader.c:1060,1
    - Dst: xmlTextReaderValidatePush
      Src: /src/libxml2/xmlreader.c:1078,1
    - Dst: xmlTextReaderValidateCData
      Src: /src/libxml2/xmlreader.c:1082,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlreader.c:1083,1
    - Dst: xmlTextReaderValidatePop
      Src: /src/libxml2/xmlreader.c:1094,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:1109,1
    - Dst: xmlTextReaderFreeNode
      Src: /src/libxml2/xmlreader.c:1110,1
    - Dst: xmlTextReaderValidatePop
      Src: /src/libxml2/xmlreader.c:1116,1
    - Dst: xmlTextReaderEntPop
      Src: /src/libxml2/xmlreader.c:1121,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 70
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1050
    functionDepth: 5
    functionLinenumber: 1050
    functionLinenumberEnd: 1134
    functionName: xmlTextReaderValidateEntity
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlUnlinkNode
    - xmlStrlen
    - xmlTextReaderFreeNode
    - xmlTextReaderValidatePop
    - xmlTextReaderValidatePush
    - xmlTextReaderEntPop
    - xmlTextReaderValidateCData
    - xmlTextReaderEntPush
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderValidateEntity(xmlTextReaderPtr reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1144
    functionDepth: 0
    functionLinenumber: 1144
    functionLinenumberEnd: 1154
    functionName: xmlTextReaderGetSuccessor
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlTextReaderGetSuccessor(xmlNodePtr cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/xmlreader.c:1172,1
    - Dst: xmlTextReaderGetSuccessor
      Src: /src/libxml2/xmlreader.c:1175,1
    - Dst: xmlTextReaderPushData
      Src: /src/libxml2/xmlreader.c:1181,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1165
    functionDepth: 2
    functionLinenumber: 1165
    functionLinenumberEnd: 1189
    functionName: xmlTextReaderDoExpand
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderGetSuccessor
    - PARSER_STOPPED
    - xmlTextReaderPushData
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderDoExpand(xmlTextReaderPtr reader)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderReadTree
      Src: /src/libxml2/xmlreader.c:1212,1
    - Dst: xmlTextReaderPushData
      Src: /src/libxml2/xmlreader.c:1222,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/xmlreader.c:1288,1
    - Dst: xmlTextReaderPushData
      Src: /src/libxml2/xmlreader.c:1289,1
    - Dst: xmlTextReaderValidatePop
      Src: /src/libxml2/xmlreader.c:1324,1
    - Dst: LIBXML_XINCLUDE_ENABLED
      Src: /src/libxml2/xmlreader.c:1337,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:1347,1
    - Dst: xmlTextReaderFreeNode
      Src: /src/libxml2/xmlreader.c:1348,1
    - Dst: xmlTextReaderValidatePop
      Src: /src/libxml2/xmlreader.c:1364,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlreader.c:1376,1
    - Dst: LIBXML_XINCLUDE_ENABLED
      Src: /src/libxml2/xmlreader.c:1391,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:1397,1
    - Dst: xmlTextReaderFreeNode
      Src: /src/libxml2/xmlreader.c:1398,1
    - Dst: LIBXML_XINCLUDE_ENABLED
      Src: /src/libxml2/xmlreader.c:1404,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xmlreader.c:1411,1
    - Dst: xmlTextReaderFreeNode
      Src: /src/libxml2/xmlreader.c:1412,1
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/xmlreader.c:1425,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:1438,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:1439,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/xmlreader.c:1441,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1443,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/xmlreader.c:1446,1
    - Dst: xmlXIncludeSetStreamingMode
      Src: /src/libxml2/xmlreader.c:1448,1
    - Dst: xmlXIncludeSetErrorHandler
      Src: /src/libxml2/xmlreader.c:1450,1
    - Dst: xmlXIncludeSetResourceLoader
      Src: /src/libxml2/xmlreader.c:1453,1
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/xmlreader.c:1459,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/xmlreader.c:1461,1
    - Dst: xmlXIncludeGetLastError
      Src: /src/libxml2/xmlreader.c:1462,1
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/xmlreader.c:1464,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/xmlreader.c:1465,1
    - Dst: xmlTextReaderEntPush
      Src: /src/libxml2/xmlreader.c:1490,1
    - Dst: xmlTextReaderValidateEntity
      Src: /src/libxml2/xmlreader.c:1498,1
    - Dst: xmlTextReaderEntPop
      Src: /src/libxml2/xmlreader.c:1505,1
    - Dst: xmlTextReaderValidatePush
      Src: /src/libxml2/xmlreader.c:1516,1
    - Dst: xmlTextReaderValidateCData
      Src: /src/libxml2/xmlreader.c:1520,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlreader.c:1521,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/xmlreader.c:1530,1
    - Dst: xmlTextReaderPreserve
      Src: /src/libxml2/xmlreader.c:1531,1
    - Dst: xmlSchemaIsValid
      Src: /src/libxml2/xmlreader.c:1541,1
    CyclomaticComplexity: 153
    EdgeCount: 153
    ICount: 223
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1548
      start: 1199
    functionDepth: 6
    functionLinenumber: 1199
    functionLinenumberEnd: 1548
    functionName: xmlTextReaderRead
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 3
    functionsReached:
    - xmlUnlinkNode
    - xmlTextReaderFreeNode
    - xmlTextReaderValidateEntity
    - xmlTextReaderValidateCData
    - xmlXIncludeSetFlags
    - xmlTextReaderValidatePop
    - xmlTextReaderExpand
    - LIBXML_XINCLUDE_ENABLED
    - xmlTextReaderPreserve
    - xmlXIncludeNewContext
    - xmlStrEqual
    - xmlStrlen
    - xmlSchemaIsValid
    - xmlTextReaderValidatePush
    - xmlXIncludeProcessNode
    - xmlFatalErr
    - xmlXIncludeGetLastError
    - xmlPatternMatch
    - xmlXIncludeSetErrorHandler
    - xmlTextReaderEntPush
    - xmlIsCatastrophicError
    - xmlTextReaderPushData
    - xmlTextReaderErrMemory
    - xmlXIncludeSetStreamingMode
    - xmlParseChunk
    - PARSER_STOPPED
    - xmlTextReaderEntPop
    - xmlXIncludeSetResourceLoader
    - xmlTextReaderReadTree
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderRead(xmlTextReader *reader)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1561
      start: 1556
    functionDepth: 0
    functionLinenumber: 1556
    functionLinenumberEnd: 1561
    functionName: xmlTextReaderReadState
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderReadState(xmlTextReader *reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderDoExpand
      Src: /src/libxml2/xmlreader.c:1579,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1582
      start: 1571
    functionDepth: 3
    functionLinenumber: 1571
    functionLinenumberEnd: 1582
    functionName: xmlTextReaderExpand
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 3
    functionsReached:
    - xmlTextReaderDoExpand
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlTextReaderExpand(xmlTextReader *reader)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNextTree
      Src: /src/libxml2/xmlreader.c:1600,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1603,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1605,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1607,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1609,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1613,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1592
    functionDepth: 7
    functionLinenumber: 1592
    functionLinenumberEnd: 1614
    functionName: xmlTextReaderNext
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderRead
    - xmlTextReaderNextTree
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderNext(xmlTextReader *reader)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/xmlreader.c:1628,1
    - Dst: xmlDocCopyNode
      Src: /src/libxml2/xmlreader.c:1636,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1638,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/xmlreader.c:1642,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xmlreader.c:1644,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - reader
    - output
    - node
    argTypes:
    - xmlTextReaderPtr
    - xmlOutputBufferPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1617
    functionDepth: 2
    functionLinenumber: 1617
    functionLinenumberEnd: 1646
    functionName: xmlTextReaderDumpCopy
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlDocCopyNode
    - xmlFreeNode
    - xmlTextReaderErrMemory
    - xmlNodeDumpOutput
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderDumpCopy(xmlTextReaderPtr reader, xmlOutputBufferPtr
      output,\n                      xmlNodePtr node)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/xmlreader.c:1663,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlreader.c:1669,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1671,1
    - Dst: xmlTextReaderDumpCopy
      Src: /src/libxml2/xmlreader.c:1676,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/xmlreader.c:1679,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/xmlreader.c:1681,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlreader.c:1682,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1685
      start: 1656
    functionDepth: 4
    functionLinenumber: 1656
    functionLinenumberEnd: 1685
    functionName: xmlTextReaderReadInnerXml
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlCtxtErrIO
    - xmlTextReaderErrMemory
    - xmlTextReaderExpand
    - xmlBufDetach
    - xmlAllocOutputBuffer
    - xmlOutputBufferClose
    - xmlTextReaderDumpCopy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderReadInnerXml(xmlTextReader *reader)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/xmlreader.c:1702,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlreader.c:1709,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1711,1
    - Dst: xmlTextReaderDumpCopy
      Src: /src/libxml2/xmlreader.c:1715,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/xmlreader.c:1717,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/xmlreader.c:1719,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlreader.c:1720,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1695
    functionDepth: 4
    functionLinenumber: 1695
    functionLinenumberEnd: 1723
    functionName: xmlTextReaderReadOuterXml
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlCtxtErrIO
    - xmlTextReaderErrMemory
    - xmlTextReaderExpand
    - xmlBufDetach
    - xmlAllocOutputBuffer
    - xmlOutputBufferClose
    - xmlTextReaderDumpCopy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderReadOuterXml(xmlTextReader *reader)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderDoExpand
      Src: /src/libxml2/xmlreader.c:1751,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlreader.c:1759,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1761,1
    - Dst: xmlBufCat
      Src: /src/libxml2/xmlreader.c:1770,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/xmlreader.c:1796,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:1798,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlreader.c:1800,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1735
    functionDepth: 3
    functionLinenumber: 1735
    functionLinenumberEnd: 1802
    functionName: xmlTextReaderReadString
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderDoExpand
    - xmlTextReaderErrMemory
    - xmlBufDetach
    - xmlBufCreate
    - xmlBufCat
    - xmlBufFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderReadString(xmlTextReader *reader)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlreader.c:1843,1
    - Dst: xmlTextReaderNextTree
      Src: /src/libxml2/xmlreader.c:1862,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1809
    functionDepth: 7
    functionLinenumber: 1809
    functionLinenumberEnd: 1868
    functionName: xmlTextReaderNextTree
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderRead
    - xmlTextReaderNextTree
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderNextTree(xmlTextReaderPtr reader)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 53
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1939
      start: 1878
    functionDepth: 0
    functionLinenumber: 1878
    functionLinenumberEnd: 1939
    functionName: xmlTextReaderReadTree
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderReadTree(xmlTextReaderPtr reader)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNextTree
      Src: /src/libxml2/xmlreader.c:1963,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1972
      start: 1950
    functionDepth: 8
    functionLinenumber: 1950
    functionLinenumberEnd: 1972
    functionName: xmlTextReaderNextSibling
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderNextTree
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderNextSibling(xmlTextReader *reader)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlreader.c:1992,1
    - Dst: memset
      Src: /src/libxml2/xmlreader.c:1995,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlreader.c:2001,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2003,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlreader.c:2006,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlreader.c:2008,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2009,1
    - Dst: xmlSAXVersion
      Src: /src/libxml2/xmlreader.c:2012,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:2039,1
    - Dst: xmlParserInputBufferRead
      Src: /src/libxml2/xmlreader.c:2040,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:2042,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlreader.c:2043,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:2044,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlreader.c:2049,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlreader.c:2055,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2056,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2057,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 72
    argCount: 2
    argNames:
    - input
    - URI
    argTypes:
    - xmlParserInputBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 1986
    functionDepth: 1
    functionLinenumber: 1986
    functionLinenumberEnd: 2076
    functionName: xmlNewTextReader
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlBufContent
    - xmlSAXVersion
    - xmlParserInputBufferRead
    - xmlFree
    - xmlCreatePushParserCtxt
    - xmlBufUse
    - xmlBufCreate
    - xmlMalloc
    - xmlBufFree
    - memset
    linkageType: ''
    returnType: xmlTextReader
    signature: 'xmlTextReader *

      xmlNewTextReader(xmlParserInputBuffer *input, const char *URI)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateFilenameValue
      Src: /src/libxml2/xmlreader.c:2090,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:2093,1
    - Dst: xmlParserInputBufferCreateUrl
      Src: /src/libxml2/xmlreader.c:2102,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:2105,1
    - Dst: xmlNewTextReader
      Src: /src/libxml2/xmlreader.c:2110,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2112,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:2113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2084
    functionDepth: 2
    functionLinenumber: 2084
    functionLinenumberEnd: 2118
    functionName: xmlNewTextReaderFilename
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlParserInputBufferCreateUrl
    - xmlParserInputBufferCreateFilenameValue
    - xmlTextReaderErrMemory
    - xmlTextReaderErr
    - xmlNewTextReader
    - xmlFreeParserInputBuffer
    linkageType: ''
    returnType: xmlTextReader
    signature: 'xmlTextReader *

      xmlNewTextReaderFilename(const char *URI)'
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmlreader.c:2131,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:2136,1
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/xmlreader.c:2142,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:2147,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:2151,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/xmlreader.c:2157,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmlreader.c:2164,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2166,1
    - Dst: xmlTextReaderClose
      Src: /src/libxml2/xmlreader.c:2170,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlreader.c:2175,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2178,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlreader.c:2180,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2182,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlreader.c:2184,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2185,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 51
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2186
      start: 2125
    functionDepth: 1
    functionLinenumber: 2125
    functionLinenumberEnd: 2186
    functionName: xmlFreeTextReader
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 3
    functionsReached:
    - xmlFreePattern
    - xmlDictFree
    - xmlRelaxNGFree
    - xmlFree
    - xmlRelaxNGFreeValidCtxt
    - xmlTextReaderClose
    - xmlXIncludeFreeContext
    - xmlFreeParserCtxt
    - xmlSchemaFreeValidCtxt
    - xmlSchemaFree
    - xmlSchemaSAXUnplug
    - xmlBufFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeTextReader(xmlTextReader *reader)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNode
      Src: /src/libxml2/xmlreader.c:2209,1
    - Dst: xmlValidatePopElement
      Src: /src/libxml2/xmlreader.c:2218,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2220,1
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlreader.c:2225,1
    - Dst: xmlTextReaderFreeDoc
      Src: /src/libxml2/xmlreader.c:2228,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:2233,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2237
      start: 2201
    functionDepth: 5
    functionLinenumber: 2201
    functionLinenumberEnd: 2237
    functionName: xmlTextReaderClose
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - xmlStopParser
    - xmlValidatePopElement
    - xmlTextReaderFreeDoc
    - xmlFreeParserInputBuffer
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderClose(xmlTextReader *reader)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:2270,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/xmlreader.c:2284,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2286,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 2
    argNames:
    - reader
    - 'no'
    argTypes:
    - xmlTextReader*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2288
      start: 2248
    functionDepth: 3
    functionLinenumber: 2248
    functionLinenumberEnd: 2288
    functionName: xmlTextReaderGetAttributeNo
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    - xmlNodeListGetString
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderGetAttributeNo(xmlTextReader *reader, int no)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/xmlreader.c:2317,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2319,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2326,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:2330,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xmlreader.c:2337,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2339,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2346,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2349,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:2350,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/xmlreader.c:2356,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2358,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xmlreader.c:2360,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2363,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2368,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 2
    argNames:
    - reader
    - name
    argTypes:
    - xmlTextReader*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2370
      start: 2298
    functionDepth: 3
    functionLinenumber: 2298
    functionLinenumberEnd: 2370
    functionName: xmlTextReaderGetAttribute
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlSearchNsSafe
    - xmlStrEqual
    - xmlFree
    - xmlTextReaderErrMemory
    - readerStrdup
    - xmlNodeGetAttrValue
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderGetAttribute(xmlTextReader *reader, const xmlChar *name)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2401,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2402,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2408,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:2409,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xmlreader.c:2416,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2418,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 3
    argNames:
    - reader
    - localName
    - namespaceURI
    argTypes:
    - xmlTextReader*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2382
    functionDepth: 3
    functionLinenumber: 2382
    functionLinenumberEnd: 2421
    functionName: xmlTextReaderGetAttributeNs
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    - xmlStrEqual
    - xmlNodeGetAttrValue
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlTextReaderGetAttributeNs(xmlTextReader *reader, const
      xmlChar *localName,\n\t\t\t    const xmlChar *namespaceURI)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlreader.c:2449,1
    - Dst: xmlTextReaderFreeDoc
      Src: /src/libxml2/xmlreader.c:2452,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2470
      start: 2436
    functionDepth: 5
    functionLinenumber: 2436
    functionLinenumberEnd: 2470
    functionName: xmlTextReaderGetRemainder
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderFreeDoc
    - xmlStopParser
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlTextReaderGetRemainder(xmlTextReader *reader)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/xmlreader.c:2491,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2493,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:2498,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - reader
    - prefix
    argTypes:
    - xmlTextReader*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2499
      start: 2481
    functionDepth: 3
    functionLinenumber: 2481
    functionLinenumberEnd: 2499
    functionName: xmlTextReaderLookupNamespace
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    - xmlSearchNsSafe
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderLookupNamespace(xmlTextReader *reader, const xmlChar *prefix)'
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - reader
    - 'no'
    argTypes:
    - xmlTextReader*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2547
      start: 2510
    functionDepth: 0
    functionLinenumber: 2510
    functionLinenumberEnd: 2547
    functionName: xmlTextReaderMoveToAttributeNo
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderMoveToAttributeNo(xmlTextReader *reader, int no)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/xmlreader.c:2573,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2575,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2582,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2601,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2614,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2617,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2632,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2633,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2641,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2646,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 66
    argCount: 2
    argNames:
    - reader
    - name
    argTypes:
    - xmlTextReader*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2648
      start: 2557
    functionDepth: 2
    functionLinenumber: 2557
    functionLinenumberEnd: 2648
    functionName: xmlTextReaderMoveToAttribute
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlStrEqual
    - xmlFree
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderMoveToAttribute(xmlTextReader *reader, const xmlChar
      *name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2675,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2676,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2682,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2698,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlreader.c:2700,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 3
    argNames:
    - reader
    - localName
    - namespaceURI
    argTypes:
    - xmlTextReader*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2707
      start: 2659
    functionDepth: 1
    functionLinenumber: 2659
    functionLinenumberEnd: 2707
    functionName: xmlTextReaderMoveToAttributeNs
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderMoveToAttributeNs(xmlTextReader *reader,\n\tconst
      xmlChar *localName, const xmlChar *namespaceURI)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2734
      start: 2716
    functionDepth: 0
    functionLinenumber: 2716
    functionLinenumberEnd: 2734
    functionName: xmlTextReaderMoveToFirstAttribute
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderMoveToFirstAttribute(xmlTextReader *reader)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderMoveToFirstAttribute
      Src: /src/libxml2/xmlreader.c:2752,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2743
    functionDepth: 1
    functionLinenumber: 2743
    functionLinenumberEnd: 2771
    functionName: xmlTextReaderMoveToNextAttribute
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderMoveToFirstAttribute
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderMoveToNextAttribute(xmlTextReader *reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2780
    functionDepth: 0
    functionLinenumber: 2780
    functionLinenumberEnd: 2793
    functionName: xmlTextReaderMoveToElement
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderMoveToElement(xmlTextReader *reader)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocText
      Src: /src/libxml2/xmlreader.c:2819,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2822,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:2829,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlreader.c:2833,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:2835,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2847
      start: 2803
    functionDepth: 2
    functionLinenumber: 2803
    functionLinenumberEnd: 2847
    functionName: xmlTextReaderReadAttributeValue
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlNewDocText
    - xmlFree
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderReadAttributeValue(xmlTextReader *reader)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetActualEncoding
      Src: /src/libxml2/xmlreader.c:2864,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:2868,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2856
    functionDepth: 3
    functionLinenumber: 2856
    functionLinenumberEnd: 2869
    functionName: xmlTextReaderConstEncoding
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlGetActualEncoding
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstEncoding(xmlTextReader *reader)'
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2917
      start: 2883
    functionDepth: 0
    functionLinenumber: 2883
    functionLinenumberEnd: 2917
    functionName: xmlTextReaderAttributeCount
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderAttributeCount(xmlTextReader *reader)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/xmlreader.c:2949,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxml2/xmlreader.c:2950,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 52
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2986
      start: 2927
    functionDepth: 1
    functionLinenumber: 2927
    functionLinenumberEnd: 2986
    functionName: xmlTextReaderNodeType
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlNodeGetSpacePreserve
    - xmlIsBlankNode
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderNodeType(xmlTextReader *reader)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3013
      start: 2994
    functionDepth: 0
    functionLinenumber: 2994
    functionLinenumberEnd: 3013
    functionName: xmlTextReaderIsEmptyElement
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderIsEmptyElement(xmlTextReader *reader)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3034,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3036,1
    - Dst: xmlTextReaderName
      Src: /src/libxml2/xmlreader.c:3040,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3041,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3042
      start: 3022
    functionDepth: 3
    functionLinenumber: 3022
    functionLinenumberEnd: 3042
    functionName: xmlTextReaderLocalName
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    - xmlTextReaderName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderLocalName(xmlTextReader *reader)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3063,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/xmlreader.c:3069,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3071
      start: 3051
    functionDepth: 3
    functionLinenumber: 3051
    functionLinenumberEnd: 3071
    functionName: xmlTextReaderConstLocalName
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderConstName
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstLocalName(xmlTextReader *reader)'
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3096,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/xmlreader.c:3098,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3100,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3103,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3105,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3108,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3110,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3112,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3115,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3117,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3119,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3122,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3127,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/xmlreader.c:3128,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3130,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3142
    functionName: xmlTextReaderName
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - readerStrdup
    - xmlTextReaderErrMemory
    - xmlBuildQName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderName(xmlTextReader *reader)'
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: constQString
      Src: /src/libxml2/xmlreader.c:3167,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3169,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3171,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3174,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3176,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3178,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3181,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3183,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3185,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3188,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3193,1
    - Dst: constQString
      Src: /src/libxml2/xmlreader.c:3194,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 46
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3205
      start: 3151
    functionDepth: 3
    functionLinenumber: 3151
    functionLinenumberEnd: 3205
    functionName: xmlTextReaderConstName
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 3
    functionsReached:
    - constQString
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstName(xmlTextReader *reader)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3227,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3233,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3235
      start: 3214
    functionDepth: 3
    functionLinenumber: 3214
    functionLinenumberEnd: 3235
    functionName: xmlTextReaderPrefix
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderPrefix(xmlTextReader *reader)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3257,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3263,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3244
    functionDepth: 3
    functionLinenumber: 3244
    functionLinenumberEnd: 3265
    functionName: xmlTextReaderConstPrefix
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstPrefix(xmlTextReader *reader)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3284,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3289,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3291
      start: 3274
    functionDepth: 3
    functionLinenumber: 3274
    functionLinenumberEnd: 3291
    functionName: xmlTextReaderNamespaceUri
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderNamespaceUri(xmlTextReader *reader)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3310,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3315,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3317
      start: 3300
    functionDepth: 3
    functionLinenumber: 3300
    functionLinenumberEnd: 3317
    functionName: xmlTextReaderConstNamespaceUri
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstNamespaceUri(xmlTextReader *reader)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/xmlreader.c:3333,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3335,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3326
    functionDepth: 2
    functionLinenumber: 3326
    functionLinenumberEnd: 3338
    functionName: xmlTextReaderBaseUri
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetBaseSafe
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderBaseUri(xmlTextReader *reader)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/xmlreader.c:3355,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3357,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3360,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:3361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3363
      start: 3347
    functionDepth: 3
    functionLinenumber: 3347
    functionLinenumberEnd: 3363
    functionName: xmlTextReaderConstBaseUri
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetBaseSafe
    - xmlFree
    - xmlTextReaderErrMemory
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstBaseUri(xmlTextReader *reader)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3385
      start: 3371
    functionDepth: 0
    functionLinenumber: 3371
    functionLinenumberEnd: 3385
    functionName: xmlTextReaderDepth
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderDepth(xmlTextReader *reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3410
      start: 3393
    functionDepth: 0
    functionLinenumber: 3393
    functionLinenumberEnd: 3410
    functionName: xmlTextReaderHasAttributes
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderHasAttributes(xmlTextReader *reader)
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3418
    functionDepth: 0
    functionLinenumber: 3418
    functionLinenumberEnd: 3442
    functionName: xmlTextReaderHasValue
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderHasValue(xmlTextReader *reader)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3465,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/xmlreader.c:3475,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3477,1
    - Dst: readerStrdup
      Src: /src/libxml2/xmlreader.c:3484,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3489
      start: 3451
    functionDepth: 3
    functionLinenumber: 3451
    functionLinenumberEnd: 3489
    functionName: xmlTextReaderValue
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - readerStrdup
    - xmlNodeListGetString
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderValue(xmlTextReader *reader)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlreader.c:3523,1
    - Dst: xmlBufEmpty
      Src: /src/libxml2/xmlreader.c:3527,1
    - Dst: xmlBufGetNodeContent
      Src: /src/libxml2/xmlreader.c:3528,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:3529,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3531,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlreader.c:3533,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlreader.c:3534,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3549
      start: 3498
    functionDepth: 2
    functionLinenumber: 3498
    functionLinenumberEnd: 3549
    functionName: xmlTextReaderConstValue
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlBufContent
    - xmlBufGetNodeContent
    - xmlTextReaderErrMemory
    - xmlBufCreate
    - xmlBufFree
    - xmlBufEmpty
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstValue(xmlTextReader *reader)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3563
      start: 3558
    functionDepth: 0
    functionLinenumber: 3558
    functionLinenumberEnd: 3563
    functionName: xmlTextReaderIsDefault
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderIsDefault(xmlTextReader *reader)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3577
      start: 3571
    functionDepth: 0
    functionLinenumber: 3571
    functionLinenumberEnd: 3577
    functionName: xmlTextReaderQuoteChar
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderQuoteChar(xmlTextReader *reader)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetLang
      Src: /src/libxml2/xmlreader.c:3592,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 3586
    functionDepth: 1
    functionLinenumber: 3586
    functionLinenumberEnd: 3593
    functionName: xmlTextReaderXmlLang
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetLang
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderXmlLang(xmlTextReader *reader)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetLang
      Src: /src/libxml2/xmlreader.c:3610,1
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3613,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlreader.c:3614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3616
      start: 3601
    functionDepth: 3
    functionLinenumber: 3601
    functionLinenumberEnd: 3616
    functionName: xmlTextReaderConstXmlLang
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlNodeGetLang
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstXmlLang(xmlTextReader *reader)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:3631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - reader
    - str
    argTypes:
    - xmlTextReader*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3632
      start: 3627
    functionDepth: 3
    functionLinenumber: 3627
    functionLinenumberEnd: 3632
    functionName: xmlTextReaderConstString
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstString(xmlTextReader *reader, const xmlChar *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3649
      start: 3644
    functionDepth: 0
    functionLinenumber: 3644
    functionLinenumberEnd: 3649
    functionName: xmlTextReaderNormalization
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderNormalization(xmlTextReader *reader)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 3
    argNames:
    - reader
    - prop
    - value
    argTypes:
    - xmlTextReader*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3720
      start: 3667
    functionDepth: 0
    functionLinenumber: 3667
    functionLinenumberEnd: 3720
    functionName: xmlTextReaderSetParserProp
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderSetParserProp(xmlTextReader *reader, int prop, int
      value)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - reader
    - prop
    argTypes:
    - xmlTextReader*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3753
      start: 3729
    functionDepth: 0
    functionLinenumber: 3729
    functionLinenumberEnd: 3753
    functionName: xmlTextReaderGetParserProp
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderGetParserProp(xmlTextReader *reader, int prop)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3770
      start: 3762
    functionDepth: 0
    functionLinenumber: 3762
    functionLinenumberEnd: 3770
    functionName: xmlTextReaderGetParserLineNumber
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderGetParserLineNumber(xmlTextReader *reader)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3786
      start: 3778
    functionDepth: 0
    functionLinenumber: 3778
    functionLinenumberEnd: 3786
    functionName: xmlTextReaderGetParserColumnNumber
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderGetParserColumnNumber(xmlTextReader *reader)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3804
      start: 3796
    functionDepth: 0
    functionLinenumber: 3796
    functionLinenumberEnd: 3804
    functionName: xmlTextReaderCurrentNode
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlTextReaderCurrentNode(xmlTextReader *reader)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3838
      start: 3814
    functionDepth: 0
    functionLinenumber: 3814
    functionLinenumberEnd: 3838
    functionName: xmlTextReaderPreserve
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlTextReaderPreserve(xmlTextReader *reader)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatterncompile
      Src: /src/libxml2/xmlreader.c:3860,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlreader.c:3868,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3871,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlreader.c:3874,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:3876,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - reader
    - pattern
    - namespaces
    argTypes:
    - xmlTextReader*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3884
      start: 3851
    functionDepth: 2
    functionLinenumber: 3851
    functionLinenumberEnd: 3884
    functionName: xmlTextReaderPreservePattern
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlRealloc
    - xmlGrowCapacity
    - xmlPatterncompile
    - xmlTextReaderErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderPreservePattern(xmlTextReader *reader, const xmlChar
      *pattern,\n                             const xmlChar **namespaces)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3908
      start: 3897
    functionDepth: 0
    functionLinenumber: 3897
    functionLinenumberEnd: 3908
    functionName: xmlTextReaderCurrentDoc
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlTextReaderCurrentDoc(xmlTextReader *reader)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmlreader.c:3929,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:3934,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmlreader.c:3943,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:3948,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/xmlreader.c:3952,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:3956,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 2
    argNames:
    - reader
    - schema
    argTypes:
    - xmlTextReader*
    - xmlRelaxNG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3962
      start: 3923
    functionDepth: 1
    functionLinenumber: 3923
    functionLinenumberEnd: 3962
    functionName: xmlTextReaderRelaxNGSetSchema
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGSetValidStructuredErrors
    - xmlRelaxNGFreeValidCtxt
    - xmlRelaxNGFree
    - xmlRelaxNGNewValidCtxt
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderRelaxNGSetSchema(xmlTextReader *reader, xmlRelaxNG
      *schema)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNo
      Src: /src/libxml2/xmlreader.c:4000,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - file
    - line
    argTypes:
    - void*
    - char**
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4016
      start: 3975
    functionDepth: 1
    functionLinenumber: 3975
    functionLinenumberEnd: 4016
    functionName: xmlTextReaderLocator
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlGetLineNo
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderLocator(void *ctx, const char **file, unsigned long
      *line)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/xmlreader.c:4036,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4041,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4046,1
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/xmlreader.c:4054,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4059,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4064,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmlreader.c:4067,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4069,1
    - Dst: xmlSchemaSAXPlug
      Src: /src/libxml2/xmlreader.c:4073,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4077,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4079,1
    - Dst: xmlSchemaValidateSetLocator
      Src: /src/libxml2/xmlreader.c:4083,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4088,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 2
    argNames:
    - reader
    - schema
    argTypes:
    - xmlTextReader*
    - xmlSchema*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4093
      start: 4030
    functionDepth: 1
    functionLinenumber: 4030
    functionLinenumberEnd: 4093
    functionName: xmlTextReaderSetSchema
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaNewValidCtxt
    - xmlSchemaValidateSetLocator
    - xmlSchemaFreeValidCtxt
    - xmlSchemaFree
    - xmlSchemaSAXPlug
    - xmlSchemaSAXUnplug
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderSetSchema(xmlTextReader *reader, xmlSchema *schema)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4129,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmlreader.c:4134,1
    - Dst: xmlRelaxNGNewParserCtxt
      Src: /src/libxml2/xmlreader.c:4148,1
    - Dst: xmlRelaxNGSetParserStructuredErrors
      Src: /src/libxml2/xmlreader.c:4150,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/xmlreader.c:4152,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/xmlreader.c:4153,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/xmlreader.c:4157,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/xmlreader.c:4159,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4175,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 44
    argCount: 4
    argNames:
    - reader
    - rng
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlTextReaderPtr
    - char*
    - xmlRelaxNGValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4181
      start: 4109
    functionDepth: 1
    functionLinenumber: 4109
    functionLinenumberEnd: 4181
    functionName: xmlTextReaderRelaxNGValidateInternal
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFree
    - xmlRelaxNGFreeParserCtxt
    - xmlRelaxNGFreeValidCtxt
    - xmlRelaxNGSetValidStructuredErrors
    - xmlRelaxNGSetParserStructuredErrors
    - xmlRelaxNGParse
    - xmlRelaxNGNewParserCtxt
    - xmlRelaxNGNewValidCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderRelaxNGValidateInternal(xmlTextReaderPtr reader,\n\t\t\t\t
      \    const char *rng,\n\t\t\t\t     xmlRelaxNGValidCtxtPtr ctxt,\n\t\t\t\t     int
      options ATTRIBUTE_UNUSED)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/xmlreader.c:4216,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4221,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4226,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmlreader.c:4238,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlreader.c:4240,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/xmlreader.c:4242,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlreader.c:4243,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmlreader.c:4246,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4248,1
    - Dst: xmlSchemaSAXPlug
      Src: /src/libxml2/xmlreader.c:4252,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlreader.c:4256,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlreader.c:4258,1
    - Dst: xmlSchemaSAXPlug
      Src: /src/libxml2/xmlreader.c:4266,1
    - Dst: xmlSchemaValidateSetLocator
      Src: /src/libxml2/xmlreader.c:4275,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4285,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 62
    argCount: 4
    argNames:
    - reader
    - xsd
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlTextReaderPtr
    - char*
    - xmlSchemaValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4290
      start: 4197
    functionDepth: 1
    functionLinenumber: 4197
    functionLinenumberEnd: 4290
    functionName: xmlTextReaderSchemaValidateInternal
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaNewParserCtxt
    - xmlSchemaFreeParserCtxt
    - xmlSchemaNewValidCtxt
    - xmlSchemaValidateSetLocator
    - xmlSchemaFreeValidCtxt
    - xmlSchemaFree
    - xmlSchemaSetParserStructuredErrors
    - xmlSchemaSAXPlug
    - xmlSchemaSAXUnplug
    - xmlSchemaParse
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderSchemaValidateInternal(xmlTextReaderPtr reader,\n\t\t\t\t
      \   const char *xsd,\n\t\t\t\t    xmlSchemaValidCtxtPtr ctxt,\n\t\t\t\t    int
      options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderSchemaValidateInternal
      Src: /src/libxml2/xmlreader.c:4308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - reader
    - ctxt
    - options
    argTypes:
    - xmlTextReader*
    - xmlSchemaValidCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4309
      start: 4303
    functionDepth: 2
    functionLinenumber: 4303
    functionLinenumberEnd: 4309
    functionName: xmlTextReaderSchemaValidateCtxt
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderSchemaValidateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderSchemaValidateCtxt(xmlTextReader *reader,\n\t\t\t\t
      \   xmlSchemaValidCtxt *ctxt,\n\t\t\t\t    int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderSchemaValidateInternal
      Src: /src/libxml2/xmlreader.c:4324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - reader
    - xsd
    argTypes:
    - xmlTextReader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4325
      start: 4321
    functionDepth: 2
    functionLinenumber: 4321
    functionLinenumberEnd: 4325
    functionName: xmlTextReaderSchemaValidate
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderSchemaValidateInternal
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderSchemaValidate(xmlTextReader *reader, const char *xsd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderRelaxNGValidateInternal
      Src: /src/libxml2/xmlreader.c:4345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - reader
    - ctxt
    - options
    argTypes:
    - xmlTextReader*
    - xmlRelaxNGValidCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4346
      start: 4340
    functionDepth: 2
    functionLinenumber: 4340
    functionLinenumberEnd: 4346
    functionName: xmlTextReaderRelaxNGValidateCtxt
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderRelaxNGValidateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderRelaxNGValidateCtxt(xmlTextReader *reader,\n\t\t\t\t
      xmlRelaxNGValidCtxt *ctxt,\n\t\t\t\t int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderRelaxNGValidateInternal
      Src: /src/libxml2/xmlreader.c:4361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - reader
    - rng
    argTypes:
    - xmlTextReader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4362
      start: 4358
    functionDepth: 2
    functionLinenumber: 4358
    functionLinenumberEnd: 4362
    functionName: xmlTextReaderRelaxNGValidate
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderRelaxNGValidateInternal
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderRelaxNGValidate(xmlTextReader *reader, const char
      *rng)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4390
      start: 4374
    functionDepth: 0
    functionLinenumber: 4374
    functionLinenumberEnd: 4390
    functionName: xmlTextReaderIsNamespaceDecl
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderIsNamespaceDecl(xmlTextReader *reader)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: constString
      Src: /src/libxml2/xmlreader.c:4414,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4415
      start: 4399
    functionDepth: 3
    functionLinenumber: 4399
    functionLinenumberEnd: 4415
    functionName: xmlTextReaderConstXmlVersion
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - constString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderConstXmlVersion(xmlTextReader *reader)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4438
      start: 4425
    functionDepth: 0
    functionLinenumber: 4425
    functionLinenumberEnd: 4438
    functionName: xmlTextReaderStandalone
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderStandalone(xmlTextReader *reader)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNo
      Src: /src/libxml2/xmlreader.c:4461,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - locator
    argTypes:
    - xmlTextReaderLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4478
      start: 4452
    functionDepth: 1
    functionLinenumber: 4452
    functionLinenumberEnd: 4478
    functionName: xmlTextReaderLocatorLineNumber
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlGetLineNo
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderLocatorLineNumber(xmlTextReaderLocatorPtr locator)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/xmlreader.c:4496,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlreader.c:4505,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - locator
    argTypes:
    - xmlTextReaderLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4513
      start: 4487
    functionDepth: 1
    functionLinenumber: 4487
    functionLinenumberEnd: 4513
    functionName: xmlTextReaderLocatorBaseURI
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlNodeGetBase
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextReaderLocatorBaseURI(xmlTextReaderLocatorPtr locator)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlreader.c:4537,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4541,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4547,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlreader.c:4556,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4559,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4565,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - reader
    - f
    - arg
    argTypes:
    - xmlTextReader*
    - xmlTextReaderErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4570
      start: 4526
    functionDepth: 1
    functionLinenumber: 4526
    functionLinenumberEnd: 4570
    functionName: xmlTextReaderSetErrorHandler
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGSetValidStructuredErrors
    - xmlSchemaSetValidStructuredErrors
    - xmlCtxtSetErrorHandler
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderSetErrorHandler(xmlTextReader *reader,\n                             xmlTextReaderErrorFunc
      f, void *arg)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlreader.c:4594,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4598,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4604,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlreader.c:4613,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4616,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlreader.c:4622,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - reader
    - f
    - arg
    argTypes:
    - xmlTextReader*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4627
      start: 4583
    functionDepth: 1
    functionLinenumber: 4583
    functionLinenumberEnd: 4627
    functionName: xmlTextReaderSetStructuredErrorHandler
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGSetValidStructuredErrors
    - xmlSchemaSetValidStructuredErrors
    - xmlCtxtSetErrorHandler
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderSetStructuredErrorHandler(xmlTextReader *reader,\n
      \                                      xmlStructuredErrorFunc f, void *arg)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - reader
    - f
    - arg
    argTypes:
    - xmlTextReader*
    - xmlTextReaderErrorFunc*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4644
      start: 4636
    functionDepth: 0
    functionLinenumber: 4636
    functionLinenumberEnd: 4644
    functionName: xmlTextReaderGetErrorHandler
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderGetErrorHandler(xmlTextReader *reader,\n                             xmlTextReaderErrorFunc
      * f, void **arg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xmlreader.c:4664,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - reader
    - loader
    - data
    argTypes:
    - xmlTextReader*
    - xmlResourceLoader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4665
      start: 4655
    functionDepth: 1
    functionLinenumber: 4655
    functionLinenumberEnd: 4665
    functionName: xmlTextReaderSetResourceLoader
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlCtxtSetResourceLoader
    linkageType: ''
    returnType: void
    signature: "void xmlTextReaderSetResourceLoader(xmlTextReader *reader,\n                               xmlResourceLoader
      loader, void *data)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4689
      start: 4673
    functionDepth: 0
    functionLinenumber: 4673
    functionLinenumberEnd: 4689
    functionName: xmlTextReaderIsValid
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextReaderIsValid(xmlTextReader *reader)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:4715,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:4731,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlreader.c:4740,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlreader.c:4745,1
    - Dst: xmlSAXVersion
      Src: /src/libxml2/xmlreader.c:4749,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:4777,1
    - Dst: xmlParserInputBufferRead
      Src: /src/libxml2/xmlreader.c:4778,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlreader.c:4781,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlreader.c:4782,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlreader.c:4783,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlreader.c:4789,1
    - Dst: xmlCtxtReset
      Src: /src/libxml2/xmlreader.c:4800,1
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlreader.c:4801,1
    - Dst: xmlNewInputStream
      Src: /src/libxml2/xmlreader.c:4803,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:4805,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/xmlreader.c:4813,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/xmlreader.c:4815,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/xmlreader.c:4817,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/xmlreader.c:4818,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlreader.c:4827,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlreader.c:4835,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/xmlreader.c:4847,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmlreader.c:4865,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/xmlreader.c:4874,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/xmlreader.c:4876,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlreader.c:4880,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 141
    argCount: 5
    argNames:
    - reader
    - input
    - URL
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - xmlParserInputBuffer*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4888
      start: 4708
    functionDepth: 1
    functionLinenumber: 4708
    functionLinenumberEnd: 4888
    functionName: xmlTextReaderSetup
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlDictFree
    - xmlSAXVersion
    - xmlNewInputStream
    - xmlStrdup
    - xmlCtxtUseOptions
    - xmlBufResetInput
    - xmlCanonicPath
    - xmlCtxtPushInput
    - xmlFreePattern
    - xmlAllocParserInputBuffer
    - xmlParserInputBufferRead
    - xmlCtxtReset
    - xmlCreatePushParserCtxt
    - xmlBufCreate
    - xmlMalloc
    - xmlDictCreate
    - xmlFreeParserInputBuffer
    - xmlBufUse
    - xmlXIncludeFreeContext
    - xmlSwitchEncodingName
    - xmlBufContent
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: "int xmlTextReaderSetup(xmlTextReader *reader,\n                   xmlParserInputBuffer
      *input, const char *URL,\n                   const char *encoding, int options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtSetMaxAmplification
      Src: /src/libxml2/xmlreader.c:4901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - reader
    - maxAmpl
    argTypes:
    - xmlTextReader*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4902
      start: 4896
    functionDepth: 1
    functionLinenumber: 4896
    functionLinenumberEnd: 4902
    functionName: xmlTextReaderSetMaxAmplification
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlCtxtSetMaxAmplification
    linkageType: ''
    returnType: void
    signature: void xmlTextReaderSetMaxAmplification(xmlTextReader *reader, unsigned
      maxAmpl)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4916
      start: 4910
    functionDepth: 0
    functionLinenumber: 4910
    functionLinenumberEnd: 4916
    functionName: xmlTextReaderGetLastError
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlError
    signature: 'xmlError *

      xmlTextReaderGetLastError(xmlTextReader *reader)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4943
      start: 4933
    functionDepth: 0
    functionLinenumber: 4933
    functionLinenumberEnd: 4943
    functionName: xmlTextReaderByteConsumed
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: long
    signature: long xmlTextReaderByteConsumed(xmlTextReader *reader)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlreader.c:4960,1
    - Dst: memset
      Src: /src/libxml2/xmlreader.c:4964,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlreader.c:4975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4977
      start: 4952
    functionDepth: 1
    functionLinenumber: 4952
    functionLinenumberEnd: 4977
    functionName: xmlReaderWalker
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlDictCreate
    - memset
    linkageType: ''
    returnType: xmlTextReader
    signature: 'xmlTextReader *

      xmlReaderWalker(xmlDoc *doc)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlreader.c:4997,1
    - Dst: xmlReaderForMemory
      Src: /src/libxml2/xmlreader.c:4999,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - cur
    - URL
    - encoding
    - options
    argTypes:
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5001
      start: 4989
    functionDepth: 1
    functionLinenumber: 4989
    functionLinenumberEnd: 5001
    functionName: xmlReaderForDoc
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlReaderForMemory
    - xmlStrlen
    linkageType: ''
    returnType: xmlTextReader
    signature: "xmlTextReader *\nxmlReaderForDoc(const xmlChar * cur, const char *URL,
      const char *encoding,\n                int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewTextReaderFilename
      Src: /src/libxml2/xmlreader.c:5017,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5020,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmlreader.c:5021,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - filename
    - encoding
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5025
      start: 5012
    functionDepth: 3
    functionLinenumber: 5012
    functionLinenumberEnd: 5025
    functionName: xmlReaderForFile
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlNewTextReaderFilename
    - xmlTextReaderSetup
    - xmlFreeTextReader
    linkageType: ''
    returnType: xmlTextReader
    signature: 'xmlTextReader *

      xmlReaderForFile(const char *filename, const char *encoding, int options)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateMem
      Src: /src/libxml2/xmlreader.c:5045,1
    - Dst: xmlNewTextReader
      Src: /src/libxml2/xmlreader.c:5049,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5051,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5055,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmlreader.c:5056,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 5
    argNames:
    - buffer
    - size
    - URL
    - encoding
    - options
    argTypes:
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5060
      start: 5038
    functionDepth: 2
    functionLinenumber: 5038
    functionLinenumberEnd: 5060
    functionName: xmlReaderForMemory
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 3
    functionsReached:
    - xmlTextReaderSetup
    - xmlNewTextReader
    - xmlFreeParserInputBuffer
    - xmlParserInputBufferCreateMem
    - xmlFreeTextReader
    linkageType: ''
    returnType: xmlTextReader
    signature: "xmlTextReader *\nxmlReaderForMemory(const char *buffer, int size,
      const char *URL,\n                   const char *encoding, int options)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5082,1
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5086,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5088,1
    - Dst: xmlInputFromFd
      Src: /src/libxml2/xmlreader.c:5094,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5096,1
    - Dst: xmlNewTextReader
      Src: /src/libxml2/xmlreader.c:5101,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5103,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5104,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5108,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5109,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmlreader.c:5110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - fd
    - URL
    - encoding
    - options
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5114
      start: 5074
    functionDepth: 2
    functionLinenumber: 5074
    functionLinenumberEnd: 5114
    functionName: xmlReaderForFd
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlTextReaderErrMemory
    - xmlTextReaderSetup
    - xmlInputFromFd
    - xmlTextReaderErr
    - xmlNewTextReader
    - xmlFreeParserInputBuffer
    - xmlFreeTextReader
    linkageType: ''
    returnType: xmlTextReader
    signature: 'xmlTextReader *

      xmlReaderForFd(int fd, const char *URL, const char *encoding, int options)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/libxml2/xmlreader.c:5139,1
    - Dst: ioclose
      Src: /src/libxml2/xmlreader.c:5143,1
    - Dst: xmlNewTextReader
      Src: /src/libxml2/xmlreader.c:5146,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5148,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5152,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/xmlreader.c:5153,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 6
    argNames:
    - ioread
    - ioclose
    - ioctx
    - URL
    - encoding
    - options
    argTypes:
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5157
      start: 5128
    functionDepth: 2
    functionLinenumber: 5128
    functionLinenumberEnd: 5157
    functionName: xmlReaderForIO
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - ioclose
    - xmlParserInputBufferCreateIO
    - xmlTextReaderSetup
    - xmlNewTextReader
    - xmlFreeParserInputBuffer
    - xmlFreeTextReader
    linkageType: ''
    returnType: xmlTextReader
    signature: "xmlTextReader *\nxmlReaderForIO(xmlInputReadCallback ioread, xmlInputCloseCallback
      ioclose,\n               void *ioctx, const char *URL, const char *encoding,\n
      \              int options)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5176,1
    - Dst: xmlCtxtReset
      Src: /src/libxml2/xmlreader.c:5179,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlreader.c:5196,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 2
    argNames:
    - reader
    - doc
    argTypes:
    - xmlTextReader*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5199
      start: 5167
    functionDepth: 1
    functionLinenumber: 5167
    functionLinenumberEnd: 5199
    functionName: xmlReaderNewWalker
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlFreeParserInputBuffer
    - xmlDictCreate
    - xmlCtxtReset
    linkageType: ''
    returnType: int
    signature: int xmlReaderNewWalker(xmlTextReader *reader, xmlDoc *doc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlreader.c:5225,1
    - Dst: xmlReaderNewMemory
      Src: /src/libxml2/xmlreader.c:5226,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - reader
    - cur
    - URL
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5228
      start: 5213
    functionDepth: 1
    functionLinenumber: 5213
    functionLinenumberEnd: 5228
    functionName: xmlReaderNewDoc
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlReaderNewMemory
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: "int xmlReaderNewDoc(xmlTextReader *reader, const xmlChar * cur,\n
      \               const char *URL, const char *encoding, int options)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5248,1
    - Dst: xmlParserInputBufferCreateFilenameValue
      Src: /src/libxml2/xmlreader.c:5253,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5256,1
    - Dst: xmlParserInputBufferCreateUrl
      Src: /src/libxml2/xmlreader.c:5269,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5272,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5277,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5278,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - reader
    - filename
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5283
      start: 5241
    functionDepth: 2
    functionLinenumber: 5241
    functionLinenumberEnd: 5283
    functionName: xmlReaderNewFile
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlParserInputBufferCreateUrl
    - xmlParserInputBufferCreateFilenameValue
    - xmlTextReaderErrMemory
    - xmlTextReaderSetup
    - xmlTextReaderErr
    linkageType: ''
    returnType: int
    signature: "int xmlReaderNewFile(xmlTextReader *reader, const char *filename,\n
      \                const char *encoding, int options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateMem
      Src: /src/libxml2/xmlreader.c:5309,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 6
    argNames:
    - reader
    - buffer
    - size
    - URL
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5315
      start: 5298
    functionDepth: 2
    functionLinenumber: 5298
    functionLinenumberEnd: 5315
    functionName: xmlReaderNewMemory
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderSetup
    - xmlParserInputBufferCreateMem
    linkageType: ''
    returnType: int
    signature: "int xmlReaderNewMemory(xmlTextReader *reader, const char *buffer,
      int size,\n                   const char *URL, const char *encoding, int options)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5339,1
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlreader.c:5343,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5345,1
    - Dst: xmlInputFromFd
      Src: /src/libxml2/xmlreader.c:5351,1
    - Dst: xmlTextReaderErr
      Src: /src/libxml2/xmlreader.c:5353,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5358,1
    - Dst: xmlTextReaderErrMemory
      Src: /src/libxml2/xmlreader.c:5359,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 5
    argNames:
    - reader
    - fd
    - URL
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5364
      start: 5331
    functionDepth: 2
    functionLinenumber: 5331
    functionLinenumberEnd: 5364
    functionName: xmlReaderNewFd
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlTextReaderErrMemory
    - xmlTextReaderSetup
    - xmlInputFromFd
    - xmlTextReaderErr
    linkageType: ''
    returnType: int
    signature: "int xmlReaderNewFd(xmlTextReader *reader, int fd,\n               const
      char *URL, const char *encoding, int options)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/libxml2/xmlreader.c:5393,1
    - Dst: ioclose
      Src: /src/libxml2/xmlreader.c:5397,1
    - Dst: xmlTextReaderSetup
      Src: /src/libxml2/xmlreader.c:5400,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 7
    argNames:
    - reader
    - ioread
    - ioclose
    - ioctx
    - URL
    - encoding
    - options
    argTypes:
    - xmlTextReader*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5401
      start: 5381
    functionDepth: 2
    functionLinenumber: 5381
    functionLinenumberEnd: 5401
    functionName: xmlReaderNewIO
    functionSourceFile: /src/libxml2/xmlreader.c
    functionUses: 1
    functionsReached:
    - xmlParserInputBufferCreateIO
    - xmlTextReaderSetup
    - ioclose
    linkageType: ''
    returnType: int
    signature: "int xmlReaderNewIO(xmlTextReader *reader, xmlInputReadCallback ioread,\n
      \              xmlInputCloseCallback ioclose, void *ioctx,\n               const
      char *URL, const char *encoding, int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_init
      Src: /src/libxml2/threads.c:59,1
    - Dst: InitializeCriticalSection
      Src: /src/libxml2/threads.c:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - mutex
    argTypes:
    - xmlMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionName: xmlInitMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - InitializeCriticalSection
    - pthread_mutex_init
    linkageType: ''
    returnType: void
    signature: void xmlInitMutex(xmlMutex *mutex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libxml2/threads.c:78,1
    - Dst: xmlInitMutex
      Src: /src/libxml2/threads.c:81,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 83
    functionName: xmlNewMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - malloc
    - xmlInitMutex
    linkageType: ''
    returnType: xmlMutex
    signature: 'xmlMutex *

      xmlNewMutex(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_destroy
      Src: /src/libxml2/threads.c:94,1
    - Dst: DeleteCriticalSection
      Src: /src/libxml2/threads.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - mutex
    argTypes:
    - xmlMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 100
    functionName: xmlCleanupMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - pthread_mutex_destroy
    - DeleteCriticalSection
    linkageType: ''
    returnType: void
    signature: void xmlCleanupMutex(xmlMutex *mutex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/threads.c:113,1
    - Dst: free
      Src: /src/libxml2/threads.c:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: xmlFreeMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - free
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlFreeMutex(xmlMutex *tok)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/libxml2/threads.c:132,1
    - Dst: EnterCriticalSection
      Src: /src/libxml2/threads.c:134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 137
    functionName: xmlMutexLock
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 24
    functionsReached:
    - EnterCriticalSection
    - pthread_mutex_lock
    linkageType: ''
    returnType: void
    signature: void xmlMutexLock(xmlMutex *tok)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_unlock
      Src: /src/libxml2/threads.c:150,1
    - Dst: LeaveCriticalSection
      Src: /src/libxml2/threads.c:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: xmlMutexUnlock
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 24
    functionsReached:
    - pthread_mutex_unlock
    - LeaveCriticalSection
    linkageType: ''
    returnType: void
    signature: void xmlMutexUnlock(xmlMutex *tok)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_init
      Src: /src/libxml2/threads.c:166,1
    - Dst: pthread_cond_init
      Src: /src/libxml2/threads.c:169,1
    - Dst: InitializeCriticalSection
      Src: /src/libxml2/threads.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlRMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 173
    functionName: xmlInitRMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - InitializeCriticalSection
    - pthread_mutex_init
    - pthread_cond_init
    linkageType: ''
    returnType: void
    signature: void xmlInitRMutex(xmlRMutex *tok)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libxml2/threads.c:188,1
    - Dst: xmlInitRMutex
      Src: /src/libxml2/threads.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 193
    functionName: xmlNewRMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - malloc
    - xmlInitRMutex
    linkageType: ''
    returnType: xmlRMutex
    signature: 'xmlRMutex *

      xmlNewRMutex(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_destroy
      Src: /src/libxml2/threads.c:205,1
    - Dst: pthread_cond_destroy
      Src: /src/libxml2/threads.c:206,1
    - Dst: DeleteCriticalSection
      Src: /src/libxml2/threads.c:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlRMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 210
    functionName: xmlCleanupRMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - pthread_mutex_destroy
    - DeleteCriticalSection
    - pthread_cond_destroy
    linkageType: ''
    returnType: void
    signature: void xmlCleanupRMutex(xmlRMutex *tok)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupRMutex
      Src: /src/libxml2/threads.c:223,1
    - Dst: free
      Src: /src/libxml2/threads.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlRMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 225
    functionName: xmlFreeRMutex
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - free
    - xmlCleanupRMutex
    linkageType: ''
    returnType: void
    signature: void xmlFreeRMutex(xmlRMutex *tok)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/libxml2/threads.c:238,1
    - Dst: pthread_equal
      Src: /src/libxml2/threads.c:240,1
    - Dst: pthread_self
      Src: /src/libxml2/threads.c:240,1
    - Dst: pthread_mutex_unlock
      Src: /src/libxml2/threads.c:242,1
    - Dst: pthread_cond_wait
      Src: /src/libxml2/threads.c:247,1
    - Dst: pthread_self
      Src: /src/libxml2/threads.c:251,1
    - Dst: pthread_mutex_unlock
      Src: /src/libxml2/threads.c:253,1
    - Dst: EnterCriticalSection
      Src: /src/libxml2/threads.c:255,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - tok
    argTypes:
    - xmlRMutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 257
    functionName: xmlRMutexLock
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 3
    functionsReached:
    - EnterCriticalSection
    - pthread_mutex_unlock
    - pthread_equal
    - pthread_self
    - pthread_mutex_lock
    - pthread_cond_wait
    linkageType: ''
    returnType: void
    signature: void xmlRMutexLock(xmlRMutex *tok)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexLock
      Src: /src/libxml2/threads.c:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 293
    functionDepth: 1
    functionLinenumber: 293
    functionLinenumberEnd: 297
    functionName: xmlLockLibrary
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - xmlRMutexLock
    linkageType: ''
    returnType: void
    signature: void xmlLockLibrary(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/threads.c:306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 307
    functionName: xmlUnlockLibrary
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 2
    functionsReached:
    - xmlRMutexUnlock
    linkageType: ''
    returnType: void
    signature: void xmlUnlockLibrary(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/threads.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 316
    functionName: xmlInitThreads
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlInitThreads(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 327
    functionName: xmlCleanupThreads
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCleanupThreads(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitRMutex
      Src: /src/libxml2/threads.c:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionName: xmlInitThreadsInternal
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - xmlInitRMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitThreadsInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupRMutex
      Src: /src/libxml2/threads.c:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionName: xmlCleanupThreadsInternal
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - xmlCleanupRMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupThreadsInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitRandom
      Src: /src/libxml2/threads.c:360,1
    - Dst: xmlInitMemoryInternal
      Src: /src/libxml2/threads.c:361,1
    - Dst: xmlInitThreadsInternal
      Src: /src/libxml2/threads.c:362,1
    - Dst: xmlInitGlobalsInternal
      Src: /src/libxml2/threads.c:363,1
    - Dst: xmlInitDictInternal
      Src: /src/libxml2/threads.c:364,1
    - Dst: xmlInitEncodingInternal
      Src: /src/libxml2/threads.c:365,1
    - Dst: xmlInitXPathInternal
      Src: /src/libxml2/threads.c:367,1
    - Dst: xmlInitIOCallbacks
      Src: /src/libxml2/threads.c:369,1
    - Dst: xmlInitCatalogInternal
      Src: /src/libxml2/threads.c:371,1
    - Dst: xmlInitSchemasTypesInternal
      Src: /src/libxml2/threads.c:374,1
    - Dst: xmlInitRelaxNGInternal
      Src: /src/libxml2/threads.c:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 355
    functionDepth: 2
    functionLinenumber: 355
    functionLinenumberEnd: 381
    functionName: xmlInitParserInternal
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - xmlInitMemoryInternal
    - xmlInitGlobalsInternal
    - xmlInitXPathInternal
    - xmlInitRandom
    - xmlInitIOCallbacks
    - xmlInitCatalogInternal
    - xmlInitEncodingInternal
    - xmlInitDictInternal
    - xmlInitSchemasTypesInternal
    - xmlInitThreadsInternal
    - xmlInitRelaxNGInternal
    linkageType: ''
    returnType: void
    signature: void xmlInitParserInternal(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_once
      Src: /src/libxml2/threads.c:406,1
    - Dst: InitOnceExecuteOnce
      Src: /src/libxml2/threads.c:408,1
    - Dst: xmlInitParserInternal
      Src: /src/libxml2/threads.c:411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 403
    functionDepth: 3
    functionLinenumber: 403
    functionLinenumberEnd: 415
    functionName: xmlInitParser
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 6
    functionsReached:
    - InitOnceExecuteOnce
    - xmlInitParserInternal
    - pthread_once
    linkageType: ''
    returnType: void
    signature: void xmlInitParser(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupCharEncodingHandlers
      Src: /src/libxml2/threads.c:453,1
    - Dst: xmlCatalogCleanup
      Src: /src/libxml2/threads.c:455,1
    - Dst: xmlCleanupCatalogInternal
      Src: /src/libxml2/threads.c:456,1
    - Dst: xmlSchemaCleanupTypes
      Src: /src/libxml2/threads.c:459,1
    - Dst: xmlRelaxNGCleanupTypes
      Src: /src/libxml2/threads.c:462,1
    - Dst: xmlCleanupSchemasTypesInternal
      Src: /src/libxml2/threads.c:467,1
    - Dst: xmlCleanupRelaxNGInternal
      Src: /src/libxml2/threads.c:470,1
    - Dst: xmlCleanupDictInternal
      Src: /src/libxml2/threads.c:473,1
    - Dst: xmlCleanupRandom
      Src: /src/libxml2/threads.c:474,1
    - Dst: xmlCleanupGlobalsInternal
      Src: /src/libxml2/threads.c:475,1
    - Dst: xmlCleanupThreadsInternal
      Src: /src/libxml2/threads.c:476,1
    - Dst: xmlCleanupMemoryInternal
      Src: /src/libxml2/threads.c:482,1
    - Dst: memcpy
      Src: /src/libxml2/threads.c:492,1
    - Dst: memcpy
      Src: /src/libxml2/threads.c:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 502
    functionName: xmlCleanupParser
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 7
    functionsReached:
    - xmlCleanupMemoryInternal
    - xmlRelaxNGCleanupTypes
    - xmlCleanupGlobalsInternal
    - xmlCleanupSchemasTypesInternal
    - xmlCleanupDictInternal
    - memcpy
    - xmlCleanupCharEncodingHandlers
    - xmlCleanupCatalogInternal
    - xmlCleanupRelaxNGInternal
    - xmlCleanupRandom
    - xmlCleanupThreadsInternal
    - xmlCatalogCleanup
    - xmlSchemaCleanupTypes
    linkageType: ''
    returnType: void
    signature: void xmlCleanupParser(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupParser
      Src: /src/libxml2/threads.c:516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 508
    functionDepth: 3
    functionLinenumber: 508
    functionLinenumberEnd: 517
    functionName: ATTRIBUTE_DESTRUCTOR::xmlDestructor
    functionSourceFile: /src/libxml2/threads.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    linkageType: ''
    returnType: void
    signature: 'void ATTRIBUTE_DESTRUCTOR

      xmlDestructor(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: SORT_CMP
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_CMP(x, y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: SORT_SWAP
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_SWAP(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: MAX
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: MIN
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN(x,y)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 1
    argNames:
    - x
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 123
    functionName: clzll
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int clzll(uint64_t x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CLZ
      Src: /src/libxml2/timsort.h:130,1
    - Dst: MAX
      Src: /src/libxml2/timsort.h:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 129
    functionDepth: 1
    functionLinenumber: 129
    functionLinenumberEnd: 140
    functionName: compute_minrun
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - MAX
    - CLZ
    linkageType: ''
    returnType: int
    signature: int compute_minrun(const uint64_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: SORT_CONCAT
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_CONCAT(x, y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: SORT_MAKE_STR1
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_MAKE_STR1(x, y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: SORT_MAKE_STR
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_MAKE_STR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: MAX
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: MIN
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN(x,y)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:188,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:190,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - dst
    - x
    - size
    argTypes:
    - SORT_TYPE*
    - SORT_TYPE
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 216
    functionName: BINARY_INSERTION_FIND
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - SORT_CMP
    linkageType: ''
    returnType: size_t
    signature: "size_t BINARY_INSERTION_FIND(SORT_TYPE *dst, const SORT_TYPE x,\n
      \   const size_t size)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:228,1
    - Dst: BINARY_INSERTION_FIND
      Src: /src/libxml2/timsort.h:234,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - dst
    - start
    - size
    argTypes:
    - SORT_TYPE*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 246
    functionName: BINARY_INSERTION_SORT_START
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - BINARY_INSERTION_FIND
    - SORT_CMP
    linkageType: ''
    returnType: void
    signature: void BINARY_INSERTION_SORT_START(SORT_TYPE *dst, const size_t start,
      const size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BINARY_INSERTION_SORT_START
      Src: /src/libxml2/timsort.h:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - size
    argTypes:
    - SORT_TYPE*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 256
    functionName: BINARY_INSERTION_SORT
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - BINARY_INSERTION_SORT_START
    linkageType: ''
    returnType: void
    signature: void BINARY_INSERTION_SORT(SORT_TYPE *dst, const size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SORT_SWAP
      Src: /src/libxml2/timsort.h:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - dst
    - start
    - end
    argTypes:
    - SORT_TYPE*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 270
    functionName: REVERSE_ELEMENTS
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - SORT_SWAP
    linkageType: ''
    returnType: void
    signature: void REVERSE_ELEMENTS(SORT_TYPE *dst, size_t start, size_t end)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:280,1
    - Dst: SORT_SWAP
      Src: /src/libxml2/timsort.h:281,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:289,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:296,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:311,1
    - Dst: REVERSE_ELEMENTS
      Src: /src/libxml2/timsort.h:319,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 3
    argNames:
    - dst
    - start
    - size
    argTypes:
    - SORT_TYPE*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 272
    functionDepth: 2
    functionLinenumber: 272
    functionLinenumberEnd: 322
    functionName: COUNT_RUN
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - SORT_SWAP
    - REVERSE_ELEMENTS
    - SORT_CMP
    linkageType: ''
    returnType: size_t
    signature: size_t COUNT_RUN(SORT_TYPE *dst, const size_t start, const size_t size)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - stack
    - stack_curr
    argTypes:
    - TIM_SORT_RUN_T*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 351
    functionName: CHECK_INVARIANT
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int CHECK_INVARIANT(TIM_SORT_RUN_T *stack, const int stack_curr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: realloc
      Src: /src/libxml2/timsort.h:360,1
    - Dst: fprintf
      Src: /src/libxml2/timsort.h:363,1
    - Dst: exit
      Src: /src/libxml2/timsort.h:365,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - store
    - new_size
    argTypes:
    - TEMP_STORAGE_T*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 371
    functionName: TIM_SORT_RESIZE
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - fprintf
    - exit
    - realloc
    linkageType: ''
    returnType: void
    signature: void TIM_SORT_RESIZE(TEMP_STORAGE_T *store, const size_t new_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TIM_SORT_RESIZE
      Src: /src/libxml2/timsort.h:380,1
    - Dst: MIN
      Src: /src/libxml2/timsort.h:380,1
    - Dst: memcpy
      Src: /src/libxml2/timsort.h:385,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:391,1
    - Dst: memcpy
      Src: /src/libxml2/timsort.h:404,1
    - Dst: SORT_CMP
      Src: /src/libxml2/timsort.h:412,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 4
    argNames:
    - dst
    - stack
    - stack_curr
    - store
    argTypes:
    - SORT_TYPE*
    - TIM_SORT_RUN_T*
    - int
    - TEMP_STORAGE_T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 424
    functionName: TIM_SORT_MERGE
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - MIN
    - TIM_SORT_RESIZE
    - memcpy
    - SORT_CMP
    linkageType: ''
    returnType: void
    signature: "void TIM_SORT_MERGE(SORT_TYPE *dst, const TIM_SORT_RUN_T *stack, const
      int stack_curr,\n                           TEMP_STORAGE_T *store)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TIM_SORT_MERGE
      Src: /src/libxml2/timsort.h:439,1
    - Dst: TIM_SORT_MERGE
      Src: /src/libxml2/timsort.h:446,1
    - Dst: TIM_SORT_MERGE
      Src: /src/libxml2/timsort.h:475,1
    - Dst: TIM_SORT_MERGE
      Src: /src/libxml2/timsort.h:481,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 5
    argNames:
    - dst
    - stack
    - stack_curr
    - store
    - size
    argTypes:
    - SORT_TYPE*
    - TIM_SORT_RUN_T*
    - int
    - TEMP_STORAGE_T*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 488
    functionName: TIM_SORT_COLLAPSE
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - TIM_SORT_MERGE
    linkageType: ''
    returnType: int
    signature: "int TIM_SORT_COLLAPSE(SORT_TYPE *dst, TIM_SORT_RUN_T *stack, int stack_curr,\n
      \                            TEMP_STORAGE_T *store, const size_t size)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: COUNT_RUN
      Src: /src/libxml2/timsort.h:497,1
    - Dst: BINARY_INSERTION_SORT_START
      Src: /src/libxml2/timsort.h:505,1
    - Dst: TIM_SORT_MERGE
      Src: /src/libxml2/timsort.h:517,1
    - Dst: free
      Src: /src/libxml2/timsort.h:523,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 7
    argNames:
    - dst
    - size
    - store
    - minrun
    - run_stack
    - stack_curr
    - curr
    argTypes:
    - SORT_TYPE*
    - size_t
    - TEMP_STORAGE_T*
    - size_t
    - TIM_SORT_RUN_T*
    - size_t*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 490
    functionDepth: 3
    functionLinenumber: 490
    functionLinenumberEnd: 531
    functionName: PUSH_NEXT
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - COUNT_RUN
    - BINARY_INSERTION_SORT_START
    - free
    - TIM_SORT_MERGE
    linkageType: ''
    returnType: int
    signature: "int PUSH_NEXT(SORT_TYPE *dst,\n                              const
      size_t size,\n                              TEMP_STORAGE_T *store,\n                              const
      size_t minrun,\n                              TIM_SORT_RUN_T *run_stack,\n                              size_t
      *stack_curr,\n                              size_t *curr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BINARY_INSERTION_SORT
      Src: /src/libxml2/timsort.h:546,1
    - Dst: compute_minrun
      Src: /src/libxml2/timsort.h:551,1
    - Dst: PUSH_NEXT
      Src: /src/libxml2/timsort.h:557,1
    - Dst: PUSH_NEXT
      Src: /src/libxml2/timsort.h:561,1
    - Dst: PUSH_NEXT
      Src: /src/libxml2/timsort.h:565,1
    - Dst: CHECK_INVARIANT
      Src: /src/libxml2/timsort.h:570,1
    - Dst: TIM_SORT_COLLAPSE
      Src: /src/libxml2/timsort.h:571,1
    - Dst: PUSH_NEXT
      Src: /src/libxml2/timsort.h:575,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - dst
    - size
    argTypes:
    - SORT_TYPE*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 533
    functionDepth: 4
    functionLinenumber: 533
    functionLinenumberEnd: 579
    functionName: TIM_SORT
    functionSourceFile: /src/libxml2/timsort.h
    functionUses: 0
    functionsReached:
    - compute_minrun
    - CHECK_INVARIANT
    - TIM_SORT_COLLAPSE
    - BINARY_INSERTION_SORT
    - PUSH_NEXT
    linkageType: ''
    returnType: void
    signature: void TIM_SORT(SORT_TYPE *dst, const size_t size)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/libxml2/runtest.c:150,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:151,1
    - Dst: memset
      Src: /src/libxml2/runtest.c:163,1
    - Dst: FindFirstFileA
      Src: /src/libxml2/runtest.c:165,1
    - Dst: xmlMalloc
      Src: /src/libxml2/runtest.c:169,1
    - Dst: FindClose
      Src: /src/libxml2/runtest.c:171,1
    - Dst: strncpy
      Src: /src/libxml2/runtest.c:174,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:175,1
    - Dst: FindNextFileA
      Src: /src/libxml2/runtest.c:179,1
    - Dst: xmlRealloc
      Src: /src/libxml2/runtest.c:183,1
    - Dst: strncpy
      Src: /src/libxml2/runtest.c:189,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:190,1
    - Dst: FindClose
      Src: /src/libxml2/runtest.c:198,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 4
    argNames:
    - pattern
    - flags
    - errfunc
    - pglob
    argTypes:
    - char*
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 200
    functionName: glob
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 2
    functionsReached:
    - strncpy
    - FindFirstFileA
    - strlen
    - FindClose
    - xmlRealloc
    - xmlMalloc
    - FindNextFileA
    - xmlMemStrdup
    - memset
    linkageType: ''
    returnType: int
    signature: "int glob(const char *pattern, ATTRIBUTE_UNUSED int flags,\n                ATTRIBUTE_UNUSED
      int errfunc(const char *epath, int eerrno),\n                glob_t *pglob)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:211,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - pglob
    argTypes:
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: globfree
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 2
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void globfree(glob_t *pglob)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - errfunc
    - pglob
    argTypes:
    - char*
    - int
    - int
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionName: glob
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int glob(const char *pattern ATTRIBUTE_UNUSED, int flags ATTRIBUTE_UNUSED,\n
      \    int errfunc(const char *epath, int eerrno) ATTRIBUTE_UNUSED,\n     glob_t
      *pglob)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:258,1
    - Dst: exit
      Src: /src/libxml2/runtest.c:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionName: fatalError
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - fprintf
    - exit
    linkageType: ''
    returnType: int
    signature: int fatalError(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/runtest.c:276,1
    - Dst: vsnprintf
      Src: /src/libxml2/runtest.c:277,1
    - Dst: va_end
      Src: /src/libxml2/runtest.c:280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 289
    functionName: testErrorHandler
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 2
    functionsReached:
    - va_end
    - vsnprintf
    - va_start
    linkageType: ''
    returnType: void
    signature: void testErrorHandler(void *ctx  ATTRIBUTE_UNUSED, const char *msg,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFormatError
      Src: /src/libxml2/runtest.c:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - err
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionName: testStructuredErrorHandler
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlFormatError
    linkageType: ''
    returnType: void
    signature: void testStructuredErrorHandler(void *ctx ATTRIBUTE_UNUSED, const xmlError
      *err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/runtest.c:306,1
    - Dst: xmlMemSetup
      Src: /src/libxml2/runtest.c:307,1
    - Dst: putenv
      Src: /src/libxml2/runtest.c:314,1
    - Dst: setenv
      Src: /src/libxml2/runtest.c:316,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/runtest.c:318,1
    - Dst: xmlRelaxNGInitTypes
      Src: /src/libxml2/runtest.c:321,1
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/runtest.c:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 296
    functionDepth: 4
    functionLinenumber: 296
    functionLinenumberEnd: 326
    functionName: initializeLibxml2
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - setenv
    - putenv
    - xmlSchemaInitTypes
    - xmlMemSetup
    - xmlRelaxNGInitTypes
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/runtest.c:339,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 345
    functionName: baseFilename
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: char
    signature: char *baseFilename(const char *filename)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:360,1
    - Dst: strncpy
      Src: /src/libxml2/runtest.c:366,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:368,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:370,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - filename
    - out
    - suffix
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 371
    functionName: resultFilename
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strncpy
    - baseFilename
    - snprintf
    - xmlMemStrdup
    linkageType: ''
    returnType: char
    signature: "char *resultFilename(const char *filename, const char *out,\n                            const
      char *suffix)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/runtest.c:376,1
    - Dst: S_ISREG
      Src: /src/libxml2/runtest.c:383,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 388
    functionName: checkTestFile
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - stat
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int checkTestFile(const char *filename)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: open
      Src: /src/libxml2/runtest.c:397,1
    - Dst: open
      Src: /src/libxml2/runtest.c:400,1
    - Dst: close
      Src: /src/libxml2/runtest.c:402,1
    - Dst: read
      Src: /src/libxml2/runtest.c:407,1
    - Dst: write
      Src: /src/libxml2/runtest.c:411,1
    - Dst: close
      Src: /src/libxml2/runtest.c:415,1
    - Dst: close
      Src: /src/libxml2/runtest.c:416,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:418,1
    - Dst: open
      Src: /src/libxml2/runtest.c:422,1
    - Dst: open
      Src: /src/libxml2/runtest.c:425,1
    - Dst: read
      Src: /src/libxml2/runtest.c:427,1
    - Dst: read
      Src: /src/libxml2/runtest.c:428,1
    - Dst: close
      Src: /src/libxml2/runtest.c:430,1
    - Dst: close
      Src: /src/libxml2/runtest.c:432,1
    - Dst: memcmp
      Src: /src/libxml2/runtest.c:437,1
    - Dst: close
      Src: /src/libxml2/runtest.c:438,1
    - Dst: close
      Src: /src/libxml2/runtest.c:440,1
    - Dst: close
      Src: /src/libxml2/runtest.c:444,1
    - Dst: close
      Src: /src/libxml2/runtest.c:446,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 2
    argNames:
    - r1
    - r2
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 448
    functionName: compareFiles
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - unlink
    - write
    - open
    - memcmp
    - close
    - read
    linkageType: ''
    returnType: int
    signature: int compareFiles(const char *r1 /* temp */, const char *r2 /* result
      */)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: unlink
      Src: /src/libxml2/runtest.c:459,1
    - Dst: open
      Src: /src/libxml2/runtest.c:462,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:464,1
    - Dst: write
      Src: /src/libxml2/runtest.c:467,1
    - Dst: close
      Src: /src/libxml2/runtest.c:468,1
    - Dst: stat
      Src: /src/libxml2/runtest.c:472,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:475,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:479,1
    - Dst: open
      Src: /src/libxml2/runtest.c:483,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:485,1
    - Dst: read
      Src: /src/libxml2/runtest.c:489,1
    - Dst: memcmp
      Src: /src/libxml2/runtest.c:494,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:499,1
    - Dst: close
      Src: /src/libxml2/runtest.c:500,1
    - Dst: close
      Src: /src/libxml2/runtest.c:505,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:507,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 51
    argCount: 3
    argNames:
    - filename
    - mem
    - size
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 510
    functionName: compareFileMem
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - unlink
    - write
    - open
    - stat
    - memcmp
    - close
    - read
    - fprintf
    linkageType: ''
    returnType: int
    signature: int compareFileMem(const char *filename, const char *mem, int size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/runtest.c:517,1
    - Dst: xmlMalloc
      Src: /src/libxml2/runtest.c:519,1
    - Dst: open
      Src: /src/libxml2/runtest.c:522,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:524,1
    - Dst: read
      Src: /src/libxml2/runtest.c:527,1
    - Dst: close
      Src: /src/libxml2/runtest.c:530,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:533,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - filename
    - mem
    - size
    argTypes:
    - char*
    - char**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 541
    functionName: loadMem
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - open
    - xmlMalloc
    - stat
    - close
    - read
    linkageType: ''
    returnType: int
    signature: int loadMem(const char *filename, const char **mem, int *size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mem
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 543
    functionDepth: 0
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionName: unloadMem
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int unloadMem(const char *mem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 624
    functionName: isStandaloneDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int isStandaloneDebug(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:638,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 640
    functionName: hasInternalSubsetDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int hasInternalSubsetDebug(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 656
    functionName: hasExternalSubsetDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int hasExternalSubsetDebug(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:672,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:674,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:676,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:678,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:680,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 681
    functionName: internalSubsetDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void internalSubsetDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *name,\n\t       const xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:695,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:697,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:699,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:701,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:703,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 704
    functionName: externalSubsetDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void externalSubsetDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *name,\n\t       const xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:727,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:729,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:731,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:733,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:735,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 718
    functionDepth: 0
    functionLinenumber: 718
    functionLinenumberEnd: 742
    functionName: resolveEntityDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: xmlParserInputPtr resolveEntityDebug(void *ctx ATTRIBUTE_UNUSED, const
      xmlChar *publicId, const xmlChar *systemId)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:759,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/runtest.c:761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 751
    functionDepth: 1
    functionLinenumber: 751
    functionLinenumberEnd: 762
    functionName: getEntityDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlHashLookup
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getEntityDebug(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:779,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/runtest.c:781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 771
    functionDepth: 1
    functionLinenumber: 771
    functionLinenumberEnd: 782
    functionName: getParameterEntityDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlHashLookup
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getParameterEntityDebug(void *ctx, const xmlChar *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewEntity
      Src: /src/libxml2/runtest.c:803,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/runtest.c:805,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/runtest.c:809,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/runtest.c:811,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:823,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 6
    argNames:
    - ctx
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 825
    functionName: entityDeclDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlBuildURI
    - fprintf
    - xmlNewEntity
    - xmlHashAddEntry
    linkageType: ''
    returnType: void
    signature: "void entityDeclDebug(void *ctx, const xmlChar *name, int type,\n          const
      xmlChar *publicId, const xmlChar *systemId, xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:843,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:846,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/runtest.c:848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - ATTRIBUTE_UNUSED
    - elem
    - name
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 834
    functionDepth: 1
    functionLinenumber: 834
    functionLinenumberEnd: 849
    functionName: attributeDeclDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeEnumeration
    linkageType: ''
    returnType: void
    signature: "void attributeDeclDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      * elem,\n                   const xmlChar * name, int type, int def,\n                   const
      xmlChar * defaultValue, xmlEnumerationPtr tree)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - type
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 859
    functionDepth: 0
    functionLinenumber: 859
    functionLinenumberEnd: 868
    functionName: elementDeclDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void elementDeclDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name,
      int type,\n\t    xmlElementContentPtr content ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:885,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 878
    functionDepth: 0
    functionLinenumber: 878
    functionLinenumberEnd: 887
    functionName: notationDeclDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void notationDeclDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name,\n\t
      \    const xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:914,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - publicId
    - systemId
    - notationName
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 898
    functionDepth: 0
    functionLinenumber: 898
    functionLinenumberEnd: 917
    functionName: unparsedEntityDeclDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void unparsedEntityDeclDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *name,\n\t\t   const xmlChar *publicId, const xmlChar *systemId,\n\t\t   const
      xmlChar *notationName)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:932,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlSAXLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 933
    functionName: setDocumentLocatorDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void setDocumentLocatorDebug(void *ctx ATTRIBUTE_UNUSED, xmlSAXLocatorPtr
      loc ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 940
    functionDepth: 0
    functionLinenumber: 940
    functionLinenumberEnd: 947
    functionName: startDocumentDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void startDocumentDebug(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:960,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 961
    functionName: endDocumentDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endDocumentDebug(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:977,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:980,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:982,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:985,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 986
    functionName: startElementDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void startElementDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name,
      const xmlChar **atts)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1000,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 994
    functionDepth: 0
    functionLinenumber: 994
    functionLinenumberEnd: 1001
    functionName: endElementDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void endElementDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1024,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1025
    functionName: charactersDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void charactersDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *ch,
      int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1040
    functionName: referenceDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void referenceDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1063,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1051
    functionDepth: 0
    functionLinenumber: 1051
    functionLinenumberEnd: 1064
    functionName: ignorableWhitespaceDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void ignorableWhitespaceDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *ch, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1082,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1085,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1074
    functionDepth: 0
    functionLinenumber: 1074
    functionLinenumberEnd: 1087
    functionName: processingInstructionDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void processingInstructionDebug(void *ctx ATTRIBUTE_UNUSED, const
      xmlChar *target,\n                      const xmlChar *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - value
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1096
    functionDepth: 0
    functionLinenumber: 1096
    functionLinenumberEnd: 1104
    functionName: cdataBlockDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void cdataBlockDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *value,
      int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1119
    functionName: commentDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void commentDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/runtest.c:1137,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1138,1
    - Dst: vfprintf
      Src: /src/libxml2/runtest.c:1139,1
    - Dst: va_end
      Src: /src/libxml2/runtest.c:1140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1141
    functionName: warningDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void warningDebug(void *ctx ATTRIBUTE_UNUSED, const char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/runtest.c:1159,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1160,1
    - Dst: vfprintf
      Src: /src/libxml2/runtest.c:1161,1
    - Dst: va_end
      Src: /src/libxml2/runtest.c:1162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1151
    functionDepth: 0
    functionLinenumber: 1151
    functionLinenumberEnd: 1163
    functionName: errorDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void errorDebug(void *ctx ATTRIBUTE_UNUSED, const char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/runtest.c:1181,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1182,1
    - Dst: vfprintf
      Src: /src/libxml2/runtest.c:1183,1
    - Dst: va_end
      Src: /src/libxml2/runtest.c:1184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1173
    functionDepth: 0
    functionLinenumber: 1173
    functionLinenumberEnd: 1185
    functionName: fatalErrorDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void fatalErrorDebug(void *ctx ATTRIBUTE_UNUSED, const char *msg, ...)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1249,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1251,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1253,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1255,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1257,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1258,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1262,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1264,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1266,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1269,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1273,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1275,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1276,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1280,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 9
    argNames:
    - ATTRIBUTE_UNUSED
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1233
    functionDepth: 0
    functionLinenumber: 1233
    functionLinenumberEnd: 1281
    functionName: startElementNsDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void startElementNsDebug(void *ctx ATTRIBUTE_UNUSED,\n                    const
      xmlChar *localname,\n                    const xmlChar *prefix,\n                    const
      xmlChar *URI,\n\t\t    int nb_namespaces,\n\t\t    const xmlChar **namespaces,\n\t\t
      \   int nb_attributes,\n\t\t    int nb_defaulted,\n\t\t    const xmlChar **attributes)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1298,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1300,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1302,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1304,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1306,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - localname
    - prefix
    - URI
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1307
      start: 1289
    functionDepth: 0
    functionLinenumber: 1289
    functionLinenumberEnd: 1307
    functionName: endElementNsDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void endElementNsDebug(void *ctx ATTRIBUTE_UNUSED,\n                  const
      xmlChar *localname,\n                  const xmlChar *prefix,\n                  const
      xmlChar *URI)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1358,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1361,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1366,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:1367,1
    - Dst: htmlEncodeEntities
      Src: /src/libxml2/runtest.c:1369,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1371,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1374,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1378,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1353
    functionDepth: 1
    functionLinenumber: 1353
    functionLinenumberEnd: 1379
    functionName: htmlstartElementDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - strlen
    - htmlEncodeEntities
    linkageType: ''
    returnType: void
    signature: void htmlstartElementDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *name, const xmlChar **atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlEncodeEntities
      Src: /src/libxml2/runtest.c:1395,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1389
    functionDepth: 1
    functionLinenumber: 1389
    functionLinenumberEnd: 1399
    functionName: htmlcharactersDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - htmlEncodeEntities
    linkageType: ''
    returnType: void
    signature: void htmlcharactersDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *ch, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlEncodeEntities
      Src: /src/libxml2/runtest.c:1415,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1409
    functionDepth: 1
    functionLinenumber: 1409
    functionLinenumberEnd: 1419
    functionName: htmlcdataDebug
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - htmlEncodeEntities
    linkageType: ''
    returnType: void
    signature: void htmlcdataDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *ch,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeEntity
      Src: /src/libxml2/runtest.c:1463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1459
    functionDepth: 1
    functionLinenumber: 1459
    functionLinenumberEnd: 1464
    functionName: hashFreeEntity
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlFreeEntity
    linkageType: ''
    returnType: void
    signature: void hashFreeEntity(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:1482,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1484,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:1485,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:1487,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1489,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1490,1
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/runtest.c:1498,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/runtest.c:1499,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1500,1
    - Dst: xmlCreateFileParserCtxt
      Src: /src/libxml2/runtest.c:1505,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:1506,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/runtest.c:1507,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/runtest.c:1508,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1510,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1511,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1514,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1518,1
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/runtest.c:1526,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/runtest.c:1527,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1528,1
    - Dst: xmlCreateFileParserCtxt
      Src: /src/libxml2/runtest.c:1534,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:1537,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:1540,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/runtest.c:1543,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/runtest.c:1544,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/runtest.c:1546,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/runtest.c:1547,1
    - Dst: xmlHashFree
      Src: /src/libxml2/runtest.c:1549,1
    - Dst: xmlHashFree
      Src: /src/libxml2/runtest.c:1550,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1551,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1552,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:1554,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:1555,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1556,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:1562,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1563,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 72
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1567
      start: 1474
    functionDepth: 1
    functionLinenumber: 1474
    functionLinenumberEnd: 1567
    functionName: saxParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlCtxtUseOptions
    - fclose
    - htmlCtxtReadFile
    - xmlHashCreate
    - resultFilename
    - htmlFreeParserCtxt
    - unlink
    - fatalError
    - xmlFree
    - htmlNewSAXParserCtxt
    - compareFiles
    - xmlCreateFileParserCtxt
    - fprintf
    - xmlParseDocument
    - xmlFreeParserCtxt
    - fopen
    - xmlHashFree
    - memcpy
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int saxParseTest(const char *filename, const char *result,\n             const
      char *err ATTRIBUTE_UNUSED,\n             int options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1587
    functionName: startDocumentTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startDocumentTokenizer(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - config
    argTypes:
    - xmlTokenizerConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1589
    functionDepth: 0
    functionLinenumber: 1589
    functionLinenumberEnd: 1595
    functionName: pendingTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void pendingTokenizer(xmlTokenizerConfig *config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pendingTokenizer
      Src: /src/libxml2/runtest.c:1603,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1605,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1597
    functionDepth: 1
    functionLinenumber: 1597
    functionLinenumberEnd: 1609
    functionName: internalSubsetTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - pendingTokenizer
    linkageType: ''
    returnType: void
    signature: "void internalSubsetTokenizer(void *ctx, const xmlChar *name,\n                        const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: pendingTokenizer
      Src: /src/libxml2/runtest.c:1617,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1619,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1622,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1624,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1627,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - name
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1611
    functionDepth: 1
    functionLinenumber: 1611
    functionLinenumberEnd: 1628
    functionName: startElementTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - pendingTokenizer
    linkageType: ''
    returnType: void
    signature: void startElementTokenizer(void *ctx, const xmlChar *name, const xmlChar
      **atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pendingTokenizer
      Src: /src/libxml2/runtest.c:1635,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1630
    functionDepth: 1
    functionLinenumber: 1630
    functionLinenumberEnd: 1638
    functionName: endElementTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - pendingTokenizer
    linkageType: ''
    returnType: void
    signature: void endElementTokenizer(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1646,1
    - Dst: fwrite
      Src: /src/libxml2/runtest.c:1650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1640
    functionDepth: 0
    functionLinenumber: 1640
    functionLinenumberEnd: 1651
    functionName: charactersTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - fwrite
    linkageType: ''
    returnType: void
    signature: void charactersTokenizer(void *ctx, const xmlChar *ch, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pendingTokenizer
      Src: /src/libxml2/runtest.c:1658,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1660,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1653
    functionDepth: 1
    functionLinenumber: 1653
    functionLinenumberEnd: 1661
    functionName: commentTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - pendingTokenizer
    linkageType: ''
    returnType: void
    signature: void commentTokenizer(void *ctx, const xmlChar *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pendingTokenizer
      Src: /src/libxml2/runtest.c:1668,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1663
    functionDepth: 1
    functionLinenumber: 1663
    functionLinenumberEnd: 1669
    functionName: endDocumentTokenizer
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - pendingTokenizer
    linkageType: ''
    returnType: void
    signature: void endDocumentTokenizer(void *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:1726,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1728,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:1729,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:1732,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1734,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1735,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:1739,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1741,1
    - Dst: fscanf
      Src: /src/libxml2/runtest.c:1745,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1750,1
    - Dst: xmlMalloc
      Src: /src/libxml2/runtest.c:1752,1
    - Dst: fread
      Src: /src/libxml2/runtest.c:1753,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1754,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/runtest.c:1758,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/runtest.c:1766,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/runtest.c:1767,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1768,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1770,1
    - Dst: feof
      Src: /src/libxml2/runtest.c:1772,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1773,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:1777,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:1778,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:1780,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1781,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:1786,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1787,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1714
    functionDepth: 1
    functionLinenumber: 1714
    functionLinenumberEnd: 1791
    functionName: htmlTokenizerTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - htmlFreeParserCtxt
    - unlink
    - fatalError
    - xmlFree
    - htmlParseChunk
    - feof
    - fopen
    - fscanf
    - xmlMalloc
    - fclose
    - compareFiles
    - htmlCreatePushParserCtxt
    - htmlCtxtUseOptions
    - fprintf
    - fread
    linkageType: ''
    returnType: int
    signature: "int htmlTokenizerTest(const char *filename, const char *result,\n
      \                 const char *err ATTRIBUTE_UNUSED,\n                  int options)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseFile
      Src: /src/libxml2/runtest.c:1823,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:1826,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:1830,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1832,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:1833,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/runtest.c:1835,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:1836,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1839,1
    - Dst: xmlParseFile
      Src: /src/libxml2/runtest.c:1846,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:1849,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/runtest.c:1853,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:1854,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1857,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:1860,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1861,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1809
    functionDepth: 1
    functionLinenumber: 1809
    functionLinenumberEnd: 1865
    functionName: oldParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlSaveFile
    - xmlFree
    - compareFiles
    - xmlParseFile
    - xmlReadFile
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int oldParseTest(const char *filename, const char *result,\n             const
      char *err ATTRIBUTE_UNUSED,\n\t     int options ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: loadMem
      Src: /src/libxml2/runtest.c:1892,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1893,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/runtest.c:1902,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/runtest.c:1906,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:1907,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/runtest.c:1908,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/runtest.c:1915,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/runtest.c:1918,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/runtest.c:1923,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/runtest.c:1926,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:1937,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1938,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1940,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1941,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/runtest.c:1946,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/runtest.c:1949,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:1950,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:1951,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1954,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1955,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:1958,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:1960,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:1962,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1877
    functionDepth: 2
    functionLinenumber: 1877
    functionLinenumberEnd: 1967
    functionName: pushParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - loadMem
    - xmlCtxtUseOptions
    - xmlCreatePushParserCtxt
    - xmlCtxtSetErrorHandler
    - xmlFree
    - compareFileMem
    - htmlParseChunk
    - xmlParseChunk
    - htmlCreatePushParserCtxt
    - xmlDocDumpMemory
    - htmlDocDumpMemory
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int pushParseTest(const char *filename, const char *result,\n             const
      char *err ATTRIBUTE_UNUSED,\n\t     int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2InternalSubset
      Src: /src/libxml2/runtest.c:1978,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - externalID
    - systemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1974
    functionDepth: 1
    functionLinenumber: 1974
    functionLinenumberEnd: 1979
    functionName: internalSubsetBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2InternalSubset
    linkageType: ''
    returnType: void
    signature: "void internalSubsetBnd(void *ctx, const xmlChar *name, const xmlChar
      *externalID,\n                  const xmlChar *systemID)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2Reference
      Src: /src/libxml2/runtest.c:1984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1981
    functionDepth: 1
    functionLinenumber: 1981
    functionLinenumberEnd: 1985
    functionName: referenceBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2Reference
    linkageType: ''
    returnType: void
    signature: void referenceBnd(void *ctx, const xmlChar *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2Characters
      Src: /src/libxml2/runtest.c:1991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1992
      start: 1987
    functionDepth: 1
    functionLinenumber: 1987
    functionLinenumberEnd: 1992
    functionName: charactersBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2Characters
    linkageType: ''
    returnType: void
    signature: void charactersBnd(void *ctx, const xmlChar *ch, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2CDataBlock
      Src: /src/libxml2/runtest.c:1998,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1994
    functionDepth: 1
    functionLinenumber: 1994
    functionLinenumberEnd: 1999
    functionName: cdataBlockBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2CDataBlock
    linkageType: ''
    returnType: void
    signature: void cdataBlockBnd(void *ctx, const xmlChar *ch, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2ProcessingInstruction
      Src: /src/libxml2/runtest.c:2005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2006
      start: 2001
    functionDepth: 1
    functionLinenumber: 2001
    functionLinenumberEnd: 2006
    functionName: processingInstructionBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2ProcessingInstruction
    linkageType: ''
    returnType: void
    signature: "void processingInstructionBnd(void *ctx, const xmlChar *target,\n
      \                        const xmlChar *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2Comment
      Src: /src/libxml2/runtest.c:2013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2014
      start: 2008
    functionDepth: 1
    functionLinenumber: 2008
    functionLinenumberEnd: 2014
    functionName: commentBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2Comment
    linkageType: ''
    returnType: void
    signature: void commentBnd(void *ctx, const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2021,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2022,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2023,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2024,1
    - Dst: xmlSAX2StartElement
      Src: /src/libxml2/runtest.c:2027,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - xname
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2016
    functionDepth: 1
    functionLinenumber: 2016
    functionLinenumberEnd: 2028
    functionName: startElementBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strcmp
    - xmlSAX2StartElement
    linkageType: ''
    returnType: void
    signature: void startElementBnd(void *ctx, const xmlChar *xname, const xmlChar
      **atts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2EndElement
      Src: /src/libxml2/runtest.c:2033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 2030
    functionDepth: 1
    functionLinenumber: 2030
    functionLinenumberEnd: 2034
    functionName: endElementBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2EndElement
    linkageType: ''
    returnType: void
    signature: void endElementBnd(void *ctx, const xmlChar *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2StartElementNs
      Src: /src/libxml2/runtest.c:2042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 9
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2044
      start: 2036
    functionDepth: 1
    functionLinenumber: 2036
    functionLinenumberEnd: 2044
    functionName: startElementNsBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2StartElementNs
    linkageType: ''
    returnType: void
    signature: "void startElementNsBnd(void *ctx, const xmlChar *localname, const
      xmlChar *prefix,\n                  const xmlChar *URI, int nb_namespaces,\n
      \                 const xmlChar **namespaces, int nb_attributes,\n                  int
      nb_defaulted, const xmlChar **attributes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2EndElementNs
      Src: /src/libxml2/runtest.c:2050,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2051
      start: 2046
    functionDepth: 1
    functionLinenumber: 2046
    functionLinenumberEnd: 2051
    functionName: endElementNsBnd
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAX2EndElementNs
    linkageType: ''
    returnType: void
    signature: "void endElementNsBnd(void *ctx, const xmlChar *localname, const xmlChar
      *prefix,\n                const xmlChar *URI)"
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2077,1
    - Dst: memset
      Src: /src/libxml2/runtest.c:2089,1
    - Dst: xmlSAX2InitHtmlDefaultSAXHandler
      Src: /src/libxml2/runtest.c:2092,1
    - Dst: xmlSAXVersion
      Src: /src/libxml2/runtest.c:2098,1
    - Dst: loadMem
      Src: /src/libxml2/runtest.c:2113,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2114,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/runtest.c:2120,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/runtest.c:2124,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:2125,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/runtest.c:2126,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/runtest.c:2157,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/runtest.c:2160,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:2216,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:2241,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2242,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2244,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2245,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2250,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2251,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2256,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2257,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2262,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2265,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2266,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2267,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2270,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2271,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2274,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2276,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2278,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 133
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2283
      start: 2062
    functionDepth: 2
    functionLinenumber: 2062
    functionLinenumberEnd: 2283
    functionName: pushBoundaryTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSAXVersion
    - loadMem
    - xmlCtxtUseOptions
    - strlen
    - htmlDocDumpMemory
    - xmlFree
    - xmlCreatePushParserCtxt
    - xmlCtxtSetErrorHandler
    - strcmp
    - fprintf
    - htmlParseChunk
    - xmlDocDumpMemory
    - xmlFreeParserCtxt
    - memset
    - compareFileMem
    - xmlSAX2InitHtmlDefaultSAXHandler
    - xmlParseChunk
    - htmlCreatePushParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int pushBoundaryTest(const char *filename, const char *result,\n                 const
      char *err ATTRIBUTE_UNUSED,\n                 int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/runtest.c:2293,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/runtest.c:2294,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/runtest.c:2296,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/runtest.c:2297,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/runtest.c:2299,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runtest.c:2300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2302
      start: 2286
    functionDepth: 1
    functionLinenumber: 2286
    functionLinenumberEnd: 2302
    functionName: dumpNodeList
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSaveClose
    - xmlBufferDetach
    - xmlBufferFree
    - xmlSaveTree
    - xmlBufferCreate
    - xmlSaveToBuffer
    linkageType: ''
    returnType: char
    signature: 'char *

      dumpNodeList(xmlNodePtr list)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2316,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runtest.c:2325,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runtest.c:2331,1
    - Dst: dumpNodeList
      Src: /src/libxml2/runtest.c:2336,1
    - Dst: xmlNewInputFromString
      Src: /src/libxml2/runtest.c:2338,1
    - Dst: xmlCtxtParseContent
      Src: /src/libxml2/runtest.c:2339,1
    - Dst: dumpNodeList
      Src: /src/libxml2/runtest.c:2340,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2341,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2342,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2345,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/runtest.c:2346,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2349,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runtest.c:2350,1
    - Dst: xmlParseInNodeContext
      Src: /src/libxml2/runtest.c:2351,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:2351,1
    - Dst: dumpNodeList
      Src: /src/libxml2/runtest.c:2354,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:2355,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2356,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2359,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/runtest.c:2360,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2362,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 3
    argNames:
    - ctxt
    - doc
    - filename
    argTypes:
    - xmlParserCtxtPtr
    - xmlDocPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2364
      start: 2304
    functionDepth: 1
    functionLinenumber: 2304
    functionLinenumberEnd: 2364
    functionName: testParseContent
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlNewInputFromString
    - xmlFreeNodeList
    - xmlStrdup
    - xmlCtxtParseContent
    - xmlStrEqual
    - xmlFree
    - strlen
    - strcmp
    - fprintf
    - xmlParseInNodeContext
    - dumpNodeList
    - xmlDocGetRootElement
    linkageType: ''
    returnType: int
    signature: int testParseContent(xmlParserCtxtPtr ctxt, xmlDocPtr doc, const char
      *filename)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: loadMem
      Src: /src/libxml2/runtest.c:2392,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2393,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runtest.c:2397,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/runtest.c:2398,1
    - Dst: unloadMem
      Src: /src/libxml2/runtest.c:2399,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2403,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2404,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2406,1
    - Dst: testParseContent
      Src: /src/libxml2/runtest.c:2410,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2413,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:2414,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2415,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2417
      start: 2376
    functionDepth: 2
    functionLinenumber: 2376
    functionLinenumberEnd: 2417
    functionName: memParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - loadMem
    - xmlFree
    - unloadMem
    - compareFileMem
    - xmlNewParserCtxt
    - xmlFreeParserCtxt
    - xmlDocDumpMemory
    - testParseContent
    - fprintf
    - xmlCtxtReadMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int memParseTest(const char *filename, const char *result,\n             const
      char *err ATTRIBUTE_UNUSED,\n\t     int options)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:2441,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:2445,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2447,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:2448,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/runtest.c:2450,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:2451,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2454,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:2459,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/runtest.c:2463,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:2464,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2467,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:2470,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2471,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2474
      start: 2429
    functionDepth: 1
    functionLinenumber: 2429
    functionLinenumberEnd: 2474
    functionName: noentParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlSaveFile
    - xmlFree
    - compareFiles
    - xmlReadFile
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int noentParseTest(const char *filename, const char *result,\n               const
      char *err  ATTRIBUTE_UNUSED,\n\t       int options)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/runtest.c:2495,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:2496,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/runtest.c:2497,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runtest.c:2501,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:2502,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runtest.c:2503,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/runtest.c:2508,1
    - Dst: xmlXIncludeSetErrorHandler
      Src: /src/libxml2/runtest.c:2509,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/runtest.c:2510,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/runtest.c:2511,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:2512,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2513,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/runtest.c:2516,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runtest.c:2524,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2529,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2532,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2534,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2535,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2539,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2542,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2544,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2549,1
    - Dst: testParseContent
      Src: /src/libxml2/runtest.c:2554,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2557,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:2558,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2560
      start: 2484
    functionDepth: 2
    functionLinenumber: 2484
    functionLinenumberEnd: 2560
    functionName: errParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlNewParserCtxt
    - testErrorHandler
    - htmlCtxtReadFile
    - testParseContent
    - htmlDocDumpMemory
    - xmlXIncludeSetFlags
    - xmlFree
    - xmlCtxtSetErrorHandler
    - xmlCtxtReadFile
    - fprintf
    - xmlXIncludeNewContext
    - xmlXIncludeFreeContext
    - xmlXIncludeProcessNode
    - xmlDocDumpMemory
    - xmlFreeParserCtxt
    - xmlXIncludeSetErrorHandler
    - compareFileMem
    - htmlNewParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int errParseTest(const char *filename, const char *result, const char
      *err,\n             int options)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: open
      Src: /src/libxml2/runtest.c:2580,1
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/runtest.c:2583,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:2584,1
    - Dst: htmlCtxtReadFd
      Src: /src/libxml2/runtest.c:2585,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:2586,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runtest.c:2590,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:2591,1
    - Dst: xmlCtxtReadFd
      Src: /src/libxml2/runtest.c:2592,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:2593,1
    - Dst: close
      Src: /src/libxml2/runtest.c:2595,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2603,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/runtest.c:2606,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2608,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2612,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2613,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2616,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2620,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2622,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2627,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2631
      start: 2571
    functionDepth: 1
    functionLinenumber: 2571
    functionLinenumberEnd: 2631
    functionName: fdParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCtxtReadFd
    - xmlFree
    - xmlCtxtSetErrorHandler
    - compareFileMem
    - xmlNewParserCtxt
    - htmlCtxtReadFd
    - open
    - htmlNewParserCtxt
    - xmlDocDumpMemory
    - close
    - fprintf
    - htmlDocDumpMemory
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int fdParseTest(const char *filename, const char *result, const char
      *err,\n             int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/runtest.c:2646,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/runtest.c:2647,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/runtest.c:2649,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/runtest.c:2653,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2656,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/runtest.c:2657,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/runtest.c:2661,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2663,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2665,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - out
    - reader
    argTypes:
    - FILE*
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2667
      start: 2642
    functionDepth: 4
    functionLinenumber: 2642
    functionLinenumberEnd: 2667
    functionName: processNode
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 2
    functionsReached:
    - xmlTextReaderDepth
    - xmlTextReaderNodeType
    - xmlTextReaderConstValue
    - xmlTextReaderIsEmptyElement
    - xmlTextReaderConstName
    - xmlTextReaderHasValue
    - fprintf
    linkageType: ''
    returnType: void
    signature: void processNode(FILE *out, xmlTextReaderPtr reader)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:2681,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2683,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:2684,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:2686,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2688,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2689,1
    - Dst: xmlTextReaderRelaxNGValidate
      Src: /src/libxml2/runtest.c:2695,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:2697,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:2699,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:2701,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2702,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/runtest.c:2708,1
    - Dst: processNode
      Src: /src/libxml2/runtest.c:2711,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/runtest.c:2712,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:2715,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/runtest.c:2718,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:2719,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:2721,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:2725,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:2726,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:2728,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2729,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2732,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:2737,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2739,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:2740,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 66
    argCount: 6
    argNames:
    - filename
    - result
    - err
    - reader
    - rng
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - xmlTextReaderPtr
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2668
    functionDepth: 7
    functionLinenumber: 2668
    functionLinenumberEnd: 2746
    functionName: streamProcessTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - xmlTextReaderIsValid
    - compareFileMem
    - xmlTextReaderRead
    - testErrorHandler
    - compareFiles
    - fopen
    - fclose
    - printf
    - fprintf
    - processNode
    - xmlTextReaderRelaxNGValidate
    linkageType: ''
    returnType: int
    signature: "int streamProcessTest(const char *filename, const char *result, const
      char *err,\n                  xmlTextReaderPtr reader, const char *rng,\n                  int
      options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/runtest.c:2762,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/runtest.c:2763,1
    - Dst: streamProcessTest
      Src: /src/libxml2/runtest.c:2765,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/runtest.c:2766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2756
    functionDepth: 8
    functionLinenumber: 2756
    functionLinenumberEnd: 2768
    functionName: streamParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - streamProcessTest
    - xmlTextReaderSetStructuredErrorHandler
    - xmlReaderForFile
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: "int streamParseTest(const char *filename, const char *result, const
      char *err,\n                int options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:2785,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2787,1
    - Dst: xmlReaderWalker
      Src: /src/libxml2/runtest.c:2790,1
    - Dst: streamProcessTest
      Src: /src/libxml2/runtest.c:2791,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/runtest.c:2792,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:2793,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2778
    functionDepth: 8
    functionLinenumber: 2778
    functionLinenumberEnd: 2795
    functionName: walkerParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - streamProcessTest
    - xmlReadFile
    - xmlReaderWalker
    - fprintf
    - xmlFreeDoc
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: "int walkerParseTest(const char *filename, const char *result, const
      char *err,\n                int options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: loadMem
      Src: /src/libxml2/runtest.c:2816,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2817,1
    - Dst: xmlReaderForMemory
      Src: /src/libxml2/runtest.c:2820,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/runtest.c:2821,1
    - Dst: streamProcessTest
      Src: /src/libxml2/runtest.c:2823,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2824,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/runtest.c:2825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2827
      start: 2805
    functionDepth: 8
    functionLinenumber: 2805
    functionLinenumberEnd: 2827
    functionName: streamMemParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - loadMem
    - xmlFree
    - xmlTextReaderSetStructuredErrorHandler
    - streamProcessTest
    - xmlReaderForMemory
    - fprintf
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: "int streamMemParseTest(const char *filename, const char *result, const
      char *err,\n                   int options)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:2894,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2896,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:2897,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:2899,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2901,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2902,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:2906,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2908,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2910,1
    - Dst: fgets
      Src: /src/libxml2/runtest.c:2913,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:2914,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2921,1
    - Dst: testXPath
      Src: /src/libxml2/runtest.c:2924,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:2928,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:2929,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:2931,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2933,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:2938,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:2939,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 4
    argNames:
    - filename
    - result
    - xptr
    - expr
    argTypes:
    - char*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2942
      start: 2886
    functionDepth: 2
    functionLinenumber: 2886
    functionLinenumberEnd: 2942
    functionName: xpathCommonTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - strlen
    - fgets
    - compareFiles
    - fopen
    - fclose
    - testXPath
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int xpathCommonTest(const char *filename, const char *result,\n                int
      xptr, int expr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xpathCommonTest
      Src: /src/libxml2/runtest.c:2956,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2957
      start: 2952
    functionDepth: 3
    functionLinenumber: 2952
    functionLinenumberEnd: 2957
    functionName: xpathExprTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xpathCommonTest
    linkageType: ''
    returnType: int
    signature: "int xpathExprTest(const char *filename, const char *result,\n              const
      char *err ATTRIBUTE_UNUSED,\n              int options ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:2980,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:2983,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:2987,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:2988,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:2992,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:2994,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:2995,1
    - Dst: xpathCommonTest
      Src: /src/libxml2/runtest.c:2998,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3002,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3004,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 2968
    functionDepth: 3
    functionLinenumber: 2968
    functionLinenumberEnd: 3006
    functionName: xpathDocTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - baseFilename
    - glob
    - xpathCommonTest
    - globfree
    - xmlReadFile
    - snprintf
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xpathDocTest(const char *filename,\n             const char *resul
      ATTRIBUTE_UNUSED,\n             const char *err ATTRIBUTE_UNUSED,\n             int
      options)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:3030,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3033,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3037,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3038,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:3042,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3044,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3045,1
    - Dst: xpathCommonTest
      Src: /src/libxml2/runtest.c:3048,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3052,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3054,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3056
      start: 3018
    functionDepth: 3
    functionLinenumber: 3018
    functionLinenumberEnd: 3056
    functionName: xptrDocTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - baseFilename
    - glob
    - xpathCommonTest
    - globfree
    - xmlReadFile
    - snprintf
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xptrDocTest(const char *filename,\n            const char *resul
      ATTRIBUTE_UNUSED,\n            const char *err ATTRIBUTE_UNUSED,\n            int
      options ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runtest.c:3079,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runtest.c:3080,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runtest.c:3081,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runtest.c:3083,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3085,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:3089,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3091,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:3092,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:3094,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3096,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3097,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3098,1
    - Dst: testXPath
      Src: /src/libxml2/runtest.c:3102,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:3104,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:3106,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3108,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:3114,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3115,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3117,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:3120,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3122,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 43
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3127
      start: 3069
    functionDepth: 2
    functionLinenumber: 3069
    functionLinenumberEnd: 3127
    functionName: xmlidDocTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - xmlCtxtSetErrorHandler
    - compareFileMem
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - compareFiles
    - fopen
    - fclose
    - testXPath
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlidDocTest(const char *filename,\n             const char *result,\n
      \            const char *err,\n             int options)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURI
      Src: /src/libxml2/runtest.c:3144,1
    - Dst: xmlParseURIReference
      Src: /src/libxml2/runtest.c:3147,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3149,1
    - Dst: xmlNormalizeURIPath
      Src: /src/libxml2/runtest.c:3151,1
    - Dst: xmlPrintURI
      Src: /src/libxml2/runtest.c:3152,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3153,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/runtest.c:3156,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3158,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3161,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3164,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/runtest.c:3165,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - str
    - base
    - o
    argTypes:
    - char*
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3166
      start: 3138
    functionDepth: 1
    functionLinenumber: 3138
    functionLinenumberEnd: 3166
    functionName: handleURI
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlPrintURI
    - xmlParseURIReference
    - xmlFree
    - xmlBuildURI
    - xmlNormalizeURIPath
    - xmlFreeURI
    - fprintf
    - xmlCreateURI
    linkageType: ''
    returnType: void
    signature: void handleURI(const char *str, const char *base, FILE *o)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:3186,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3188,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:3189,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:3191,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3193,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3194,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:3197,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3199,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:3200,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:3202,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3203,1
    - Dst: fgets
      Src: /src/libxml2/runtest.c:3212,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3218,1
    - Dst: handleURI
      Src: /src/libxml2/runtest.c:3226,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:3229,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:3230,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:3233,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3235,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:3240,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3242,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:3248,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:3249,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 54
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - base
    argTypes:
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3252
      start: 3176
    functionDepth: 2
    functionLinenumber: 3176
    functionLinenumberEnd: 3252
    functionName: uriCommonTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - strlen
    - handleURI
    - compareFileMem
    - fgets
    - compareFiles
    - fopen
    - fclose
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int uriCommonTest(const char *filename,\n             const char *result,\n
      \            const char *err,\n             const char *base)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: uriCommonTest
      Src: /src/libxml2/runtest.c:3267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3268
      start: 3262
    functionDepth: 3
    functionLinenumber: 3262
    functionLinenumberEnd: 3268
    functionName: uriParseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - uriCommonTest
    linkageType: ''
    returnType: int
    signature: "int uriParseTest(const char *filename,\n             const char *result,\n
      \            const char *err,\n             int options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: uriCommonTest
      Src: /src/libxml2/runtest.c:3284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3279
    functionDepth: 3
    functionLinenumber: 3279
    functionLinenumberEnd: 3286
    functionName: uriBaseTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - uriCommonTest
    linkageType: ''
    returnType: int
    signature: "int uriBaseTest(const char *filename,\n             const char *result,\n
      \            const char *err,\n             int options ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3334,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3338,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3341
      start: 3330
    functionDepth: 0
    functionLinenumber: 3330
    functionLinenumberEnd: 3341
    functionName: uripMatch
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int uripMatch(const char * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3354,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3358,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3361,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3363
      start: 3350
    functionDepth: 0
    functionLinenumber: 3350
    functionLinenumberEnd: 3363
    functionName: uripOpen
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    - strcmp
    linkageType: ''
    returnType: void
    signature: 'void *

      uripOpen(const char * URI)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3377
      start: 3371
    functionDepth: 0
    functionLinenumber: 3371
    functionLinenumberEnd: 3377
    functionName: uripClose
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int uripClose(void * context)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3395,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3398
      start: 3387
    functionDepth: 0
    functionLinenumber: 3387
    functionLinenumberEnd: 3398
    functionName: uripRead
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: int
    signature: int uripRead(void * context, char * buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:3404,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3407,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - URL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3409
      start: 3400
    functionDepth: 1
    functionLinenumber: 3400
    functionLinenumberEnd: 3409
    functionName: urip_checkURL
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlReadFile
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int urip_checkURL(const char *URL)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/runtest.c:3431,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3433,1
    - Dst: urip_checkURL
      Src: /src/libxml2/runtest.c:3439,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3441,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3445,1
    - Dst: xmlPopInputCallbacks
      Src: /src/libxml2/runtest.c:3452,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3454
      start: 3420
    functionDepth: 2
    functionLinenumber: 3420
    functionLinenumberEnd: 3454
    functionName: uriPathTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlRegisterInputCallbacks
    - fprintf
    - xmlPopInputCallbacks
    - urip_checkURL
    linkageType: ''
    returnType: int
    signature: "int uriPathTest(const char *filename ATTRIBUTE_UNUSED,\n             const
      char *result ATTRIBUTE_UNUSED,\n             const char *err ATTRIBUTE_UNUSED,\n
      \            int options ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/runtest.c:3486,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/runtest.c:3487,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:3493,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3495,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/runtest.c:3498,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3499,1
    - Dst: xmlSchemaValidateFile
      Src: /src/libxml2/runtest.c:3501,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3505,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3507,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3509,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/runtest.c:3513,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:3516,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3517,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 5
    argNames:
    - sch
    - filename
    - err
    - options
    - schemas
    argTypes:
    - char*
    - char*
    - char*
    - int
    - xmlSchemaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3523
      start: 3463
    functionDepth: 1
    functionLinenumber: 3463
    functionLinenumberEnd: 3523
    functionName: schemasOneTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaNewValidCtxt
    - compareFileMem
    - xmlSchemaValidateFile
    - testErrorHandler
    - xmlSchemaFreeValidCtxt
    - xmlReadFile
    - xmlSchemaValidateDoc
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int schemasOneTest(const char *sch,\n               const char *filename,\n
      \              const char *err,\n\t       int options,\n\t       xmlSchemaPtr
      schemas)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3538,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/runtest.c:3553,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/runtest.c:3554,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/runtest.c:3555,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/runtest.c:3556,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3562,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/runtest.c:3564,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3574,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3577,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3582,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:3587,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3592,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3593,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3596,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3601,1
    - Dst: schemasOneTest
      Src: /src/libxml2/runtest.c:3606,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3610,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/runtest.c:3611,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3614
      start: 3533
    functionDepth: 2
    functionLinenumber: 3533
    functionLinenumberEnd: 3614
    functionName: schemasTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSchemaNewParserCtxt
    - xmlSchemaFreeParserCtxt
    - strlen
    - schemasOneTest
    - baseFilename
    - glob
    - globfree
    - fprintf
    - snprintf
    - xmlSchemaFree
    - memcpy
    - xmlSchemaSetParserStructuredErrors
    - xmlSchemaParse
    linkageType: ''
    returnType: int
    signature: "int schemasTest(const char *filename,\n            const char *resul
      ATTRIBUTE_UNUSED,\n            const char *errr ATTRIBUTE_UNUSED,\n            int
      options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:3633,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3635,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/runtest.c:3639,1
    - Dst: xmlRelaxNGSetValidStructuredErrors
      Src: /src/libxml2/runtest.c:3640,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/runtest.c:3641,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3643,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3645,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3647,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/runtest.c:3651,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3652,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 4
    argNames:
    - sch
    - filename
    - options
    - schemas
    argTypes:
    - char*
    - char*
    - int
    - xmlRelaxNGPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3624
    functionDepth: 1
    functionLinenumber: 3624
    functionLinenumberEnd: 3654
    functionName: rngOneTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeValidCtxt
    - testErrorHandler
    - xmlRelaxNGSetValidStructuredErrors
    - xmlReadFile
    - fprintf
    - xmlFreeDoc
    - xmlRelaxNGNewValidCtxt
    - xmlRelaxNGValidateDoc
    linkageType: ''
    returnType: int
    signature: "int rngOneTest(const char *sch,\n               const char *filename,\n\t
      \      int options,\n\t       xmlRelaxNGPtr schemas)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3668,1
    - Dst: xmlRelaxNGNewParserCtxt
      Src: /src/libxml2/runtest.c:3683,1
    - Dst: xmlRelaxNGSetParserStructuredErrors
      Src: /src/libxml2/runtest.c:3684,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/runtest.c:3686,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/runtest.c:3687,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3689,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3696,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runtest.c:3698,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3702,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3705,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:3709,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3714,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3715,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3718,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3723,1
    - Dst: rngOneTest
      Src: /src/libxml2/runtest.c:3728,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:3732,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3733,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3738,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runtest.c:3739,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3742
      start: 3663
    functionDepth: 2
    functionLinenumber: 3663
    functionLinenumberEnd: 3742
    functionName: rngTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeParserCtxt
    - strlen
    - xmlRelaxNGFree
    - compareFileMem
    - rngOneTest
    - baseFilename
    - testErrorHandler
    - glob
    - globfree
    - fprintf
    - xmlRelaxNGSetParserStructuredErrors
    - xmlRelaxNGParse
    - snprintf
    - memcpy
    - xmlRelaxNGNewParserCtxt
    linkageType: ''
    returnType: int
    signature: "int rngTest(const char *filename,\n            const char *resul ATTRIBUTE_UNUSED,\n
      \           const char *errr ATTRIBUTE_UNUSED,\n            int options)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3758,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3775,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3777,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3781,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3788,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3788,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3789,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3789,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3790,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:3790,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3793,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:3797,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3802,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3803,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3806,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3810,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3815,1
    - Dst: xmlReaderForFile
      Src: /src/libxml2/runtest.c:3818,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/runtest.c:3819,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3822,1
    - Dst: streamProcessTest
      Src: /src/libxml2/runtest.c:3825,1
    - Dst: streamProcessTest
      Src: /src/libxml2/runtest.c:3828,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/runtest.c:3830,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3832,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3836,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3839
      start: 3753
    functionDepth: 8
    functionLinenumber: 3753
    functionLinenumberEnd: 3839
    functionName: rngStreamTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    - baseFilename
    - memcpy
    - strcmp
    - glob
    - xmlTextReaderSetStructuredErrorHandler
    - streamProcessTest
    - globfree
    - snprintf
    - xmlReaderForFile
    - fprintf
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: "int rngStreamTest(const char *filename,\n            const char *resul
      ATTRIBUTE_UNUSED,\n            const char *errr ATTRIBUTE_UNUSED,\n            int
      options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:3858,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3860,1
    - Dst: xmlSchematronNewValidCtxt
      Src: /src/libxml2/runtest.c:3864,1
    - Dst: xmlSchematronSetValidStructuredErrors
      Src: /src/libxml2/runtest.c:3865,1
    - Dst: xmlSchematronValidateDoc
      Src: /src/libxml2/runtest.c:3867,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3869,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3871,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3873,1
    - Dst: xmlSchematronFreeValidCtxt
      Src: /src/libxml2/runtest.c:3877,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:3878,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 4
    argNames:
    - sch
    - filename
    - options
    - schematron
    argTypes:
    - char*
    - char*
    - int
    - xmlSchematronPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3880
      start: 3851
    functionDepth: 1
    functionLinenumber: 3851
    functionLinenumberEnd: 3880
    functionName: schematronOneTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSchematronNewValidCtxt
    - testErrorHandler
    - xmlReadFile
    - xmlSchematronFreeValidCtxt
    - xmlSchematronValidateDoc
    - fprintf
    - xmlFreeDoc
    - xmlSchematronSetValidStructuredErrors
    linkageType: ''
    returnType: int
    signature: "int schematronOneTest(const char *sch, const char *filename, int options,\n
      \                 xmlSchematronPtr schematron)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3893,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/runtest.c:3908,1
    - Dst: xmlSchematronNewParserCtxt
      Src: /src/libxml2/runtest.c:3910,1
    - Dst: xmlSchematronParse
      Src: /src/libxml2/runtest.c:3911,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/runtest.c:3912,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:3914,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3921,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:3927,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3930,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:3934,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:3939,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:3940,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:3943,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3948,1
    - Dst: schematronOneTest
      Src: /src/libxml2/runtest.c:3953,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:3957,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3958,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:3963,1
    - Dst: xmlSchematronFree
      Src: /src/libxml2/runtest.c:3966,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/runtest.c:3967,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3969
      start: 3888
    functionDepth: 2
    functionLinenumber: 3888
    functionLinenumberEnd: 3969
    functionName: schematronTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlSchematronNewParserCtxt
    - xmlSchematronParse
    - strlen
    - compareFileMem
    - xmlSchematronFree
    - baseFilename
    - testErrorHandler
    - schematronOneTest
    - glob
    - globfree
    - xmlSetStructuredErrorFunc
    - fprintf
    - snprintf
    - memcpy
    - xmlSchematronFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int schematronTest(const char *filename,\n               const char
      *resul ATTRIBUTE_UNUSED,\n               const char *errr ATTRIBUTE_UNUSED,\n
      \              int options)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/runtest.c:3986,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/runtest.c:3987,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/runtest.c:3991,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/runtest.c:3991,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/runtest.c:3994,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/runtest.c:3994,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:3995,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/runtest.c:4002,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/runtest.c:4003,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/runtest.c:4004,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4006,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/runtest.c:4007,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/runtest.c:4011,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/runtest.c:4012,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4014,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4016,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/runtest.c:4025,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4027,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/runtest.c:4028,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4034,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 5
    argNames:
    - out
    - reader
    - pattern
    - patternc
    - patstream
    argTypes:
    - FILE*
    - xmlTextReaderPtr
    - char*
    - xmlPatternPtr
    - xmlStreamCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4035
      start: 3979
    functionDepth: 4
    functionLinenumber: 3979
    functionLinenumberEnd: 4035
    functionName: patternNode
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlGetNodePath
    - xmlTextReaderConstNamespaceUri
    - xmlFree
    - xmlTextReaderConstLocalName
    - xmlTextReaderNodeType
    - xmlTextReaderIsEmptyElement
    - xmlTextReaderCurrentNode
    - xmlStreamPush
    - xmlStreamPop
    - fprintf
    - xmlPatternMatch
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: void
    signature: "void patternNode(FILE *out, xmlTextReaderPtr reader,\n                        const
      char *pattern, xmlPatternPtr patternc,\n\t\t\txmlStreamCtxtPtr patstream)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/runtest.c:4062,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:4064,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:4066,1
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:4066,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:4068,1
    - Dst: checkTestFile
      Src: /src/libxml2/runtest.c:4070,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4071,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4074,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4076,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:4079,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4081,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:4082,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4084,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4086,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4087,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4088,1
    - Dst: fgets
      Src: /src/libxml2/runtest.c:4095,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:4101,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:4108,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4110,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runtest.c:4118,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/runtest.c:4126,1
    - Dst: testErrorHandler
      Src: /src/libxml2/runtest.c:4129,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4131,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/runtest.c:4135,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/runtest.c:4137,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4139,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/runtest.c:4140,1
    - Dst: xmlReaderWalker
      Src: /src/libxml2/runtest.c:4146,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/runtest.c:4147,1
    - Dst: patternNode
      Src: /src/libxml2/runtest.c:4149,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/runtest.c:4150,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4153,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/runtest.c:4155,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4156,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/runtest.c:4157,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/runtest.c:4159,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4164,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4165,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:4167,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4169,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:4173,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4174,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 94
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4177
      start: 4045
    functionDepth: 7
    functionLinenumber: 4045
    functionLinenumberEnd: 4177
    functionName: patternTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlTextReaderRead
    - testErrorHandler
    - checkTestFile
    - fclose
    - xmlReaderWalker
    - snprintf
    - resultFilename
    - xmlFreePattern
    - unlink
    - fatalError
    - xmlFree
    - baseFilename
    - compareFiles
    - patternNode
    - fprintf
    - xmlDocGetRootElement
    - xmlPatterncompile
    - xmlPatternGetStreamCtxt
    - xmlFreeStreamCtxt
    - fgets
    - fopen
    - xmlReadFile
    - xmlStreamPush
    - memcpy
    - xmlFreeDoc
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: "int patternTest(const char *filename,\n            const char *resul
      ATTRIBUTE_UNUSED,\n            const char *err ATTRIBUTE_UNUSED,\n            int
      options)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:4198,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4200,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runtest.c:4207,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4208,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4209,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runtest.c:4214,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4219,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4220,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/runtest.c:4224,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4226,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4227,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/runtest.c:4231,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4233,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4234,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4235,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/runtest.c:4244,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4245,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4246,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/runtest.c:4247,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4248,1
    - Dst: xmlXPathEvalExpression
      Src: /src/libxml2/runtest.c:4257,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4259,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4260,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/runtest.c:4261,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4262,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4268,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/runtest.c:4269,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4270,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 56
    argCount: 2
    argNames:
    - parent_doc
    - filename
    argTypes:
    - xmlDocPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4272
      start: 4186
    functionDepth: 1
    functionLinenumber: 4186
    functionLinenumberEnd: 4272
    functionName: load_xpath_expr
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlStrEqual
    - xmlFree
    - xmlXPathRegisterNs
    - xmlXPathNewContext
    - xmlNodeGetContent
    - xmlXPathEvalExpression
    - xmlReadFile
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr load_xpath_expr (xmlDocPtr parent_doc, const char*
      filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4286
      start: 4277
    functionDepth: 0
    functionLinenumber: 4277
    functionLinenumberEnd: 4286
    functionName: xxx_growBufferReentrant
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xxx_growBufferReentrant()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/runtest.c:4298,1
    - Dst: xmlMalloc
      Src: /src/libxml2/runtest.c:4307,1
    - Dst: perror
      Src: /src/libxml2/runtest.c:4309,1
    - Dst: xxx_growBufferReentrant
      Src: /src/libxml2/runtest.c:4318,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4327
      start: 4287
    functionDepth: 1
    functionLinenumber: 4287
    functionLinenumberEnd: 4327
    functionName: parse_list
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - perror
    - xxx_growBufferReentrant
    - xmlStrlen
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar **

      parse_list(xmlChar *str)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:4346,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4349,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runtest.c:4356,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4357,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4358,1
    - Dst: load_xpath_expr
      Src: /src/libxml2/runtest.c:4366,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4368,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4369,1
    - Dst: loadMem
      Src: /src/libxml2/runtest.c:4375,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4376,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/runtest.c:4377,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4378,1
    - Dst: parse_list
      Src: /src/libxml2/runtest.c:4381,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/runtest.c:4388,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:4394,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4395,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4396,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4401,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4408,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/runtest.c:4409,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4410,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4411,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4412,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 6
    argNames:
    - xml_filename
    - with_comments
    - mode
    - xpath_filename
    - ns_filename
    - result_file
    argTypes:
    - char*
    - int
    - int
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4415
      start: 4329
    functionDepth: 2
    functionLinenumber: 4329
    functionLinenumberEnd: 4415
    functionName: c14nRunTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - loadMem
    - xmlFree
    - compareFileMem
    - parse_list
    - load_xpath_expr
    - xmlC14NDocDumpMemory
    - xmlReadFile
    - fprintf
    - xmlDocGetRootElement
    - xmlXPathFreeObject
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int c14nRunTest(const char* xml_filename, int with_comments, int mode,\n\t
      \   const char* xpath_filename, const char *ns_filename,\n\t    const char*
      result_file)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/runtest.c:4429,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:4430,1
    - Dst: memcpy
      Src: /src/libxml2/runtest.c:4432,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:4435,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:4437,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:4438,1
    - Dst: checkTestFile
      Src: /src/libxml2/runtest.c:4440,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:4441,1
    - Dst: snprintf
      Src: /src/libxml2/runtest.c:4443,1
    - Dst: checkTestFile
      Src: /src/libxml2/runtest.c:4445,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/runtest.c:4446,1
    - Dst: c14nRunTest
      Src: /src/libxml2/runtest.c:4450,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4454,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4455,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4456,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 4
    argNames:
    - filename
    - with_comments
    - mode
    - subdir
    argTypes:
    - char*
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4458
      start: 4417
    functionDepth: 3
    functionLinenumber: 4417
    functionLinenumberEnd: 4458
    functionName: c14nCommonTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlFree
    - c14nRunTest
    - baseFilename
    - checkTestFile
    - snprintf
    - xmlMemStrdup
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int c14nCommonTest(const char *filename, int with_comments, int mode,\n
      \              const char *subdir)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c14nCommonTest
      Src: /src/libxml2/runtest.c:4465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4466
      start: 4460
    functionDepth: 4
    functionLinenumber: 4460
    functionLinenumberEnd: 4466
    functionName: c14nWithCommentTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - c14nCommonTest
    linkageType: ''
    returnType: int
    signature: "int c14nWithCommentTest(const char *filename,\n                    const
      char *resul ATTRIBUTE_UNUSED,\n\t\t    const char *err ATTRIBUTE_UNUSED,\n\t\t
      \   int options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c14nCommonTest
      Src: /src/libxml2/runtest.c:4472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4473
      start: 4467
    functionDepth: 4
    functionLinenumber: 4467
    functionLinenumberEnd: 4473
    functionName: c14nWithoutCommentTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - c14nCommonTest
    linkageType: ''
    returnType: int
    signature: "int c14nWithoutCommentTest(const char *filename,\n                    const
      char *resul ATTRIBUTE_UNUSED,\n\t\t    const char *err ATTRIBUTE_UNUSED,\n\t\t
      \   int options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c14nCommonTest
      Src: /src/libxml2/runtest.c:4479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4480
      start: 4474
    functionDepth: 4
    functionLinenumber: 4474
    functionLinenumberEnd: 4480
    functionName: c14nExcWithoutCommentTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - c14nCommonTest
    linkageType: ''
    returnType: int
    signature: "int c14nExcWithoutCommentTest(const char *filename,\n                    const
      char *resul ATTRIBUTE_UNUSED,\n\t\t    const char *err ATTRIBUTE_UNUSED,\n\t\t
      \   int options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c14nCommonTest
      Src: /src/libxml2/runtest.c:4486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4487
      start: 4481
    functionDepth: 4
    functionLinenumber: 4481
    functionLinenumberEnd: 4487
    functionName: c14n11WithoutCommentTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - c14nCommonTest
    linkageType: ''
    returnType: int
    signature: "int c14n11WithoutCommentTest(const char *filename,\n                    const
      char *resul ATTRIBUTE_UNUSED,\n\t\t    const char *err ATTRIBUTE_UNUSED,\n\t\t
      \   int options ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCheckThreadLocalStorage
      Src: /src/libxml2/runtest.c:4524,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:4525,1
    - Dst: xmlMemSetup
      Src: /src/libxml2/runtest.c:4531,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runtest.c:4534,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runtest.c:4536,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:4538,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - private_data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4543
      start: 4516
    functionDepth: 1
    functionLinenumber: 4516
    functionLinenumberEnd: 4543
    functionName: thread_specific_data
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlCheckThreadLocalStorage
    - xmlMemSetup
    - xmlReadFile
    - printf
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: 'void *

      thread_specific_data(void *private_data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: thread_specific_data
      Src: /src/libxml2/runtest.c:4556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - private_data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4558
      start: 4553
    functionDepth: 2
    functionLinenumber: 4553
    functionLinenumberEnd: 4558
    functionName: win32_thread_specific_data
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - thread_specific_data
    linkageType: ''
    returnType: DWORD
    signature: DWORD win32_thread_specific_data(void *private_data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/runtest.c:4567,1
    - Dst: xmlLoadCatalog
      Src: /src/libxml2/runtest.c:4569,1
    - Dst: CreateThread
      Src: /src/libxml2/runtest.c:4579,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4584,1
    - Dst: WaitForMultipleObjects
      Src: /src/libxml2/runtest.c:4589,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4591,1
    - Dst: GetExitCodeThread
      Src: /src/libxml2/runtest.c:4597,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4599,1
    - Dst: CloseHandle
      Src: /src/libxml2/runtest.c:4602,1
    - Dst: xmlCatalogCleanup
      Src: /src/libxml2/runtest.c:4605,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4608,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4616
      start: 4560
    functionDepth: 4
    functionLinenumber: 4560
    functionLinenumberEnd: 4616
    functionName: testThread
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - WaitForMultipleObjects
    - xmlLoadCatalog
    - CloseHandle
    - GetExitCodeThread
    - CreateThread
    - xmlInitParser
    - fprintf
    - xmlCatalogCleanup
    linkageType: ''
    returnType: int
    signature: int testThread(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/runtest.c:4630,1
    - Dst: xmlLoadCatalog
      Src: /src/libxml2/runtest.c:4633,1
    - Dst: pthread_create
      Src: /src/libxml2/runtest.c:4641,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4644,1
    - Dst: pthread_join
      Src: /src/libxml2/runtest.c:4650,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4652,1
    - Dst: xmlCatalogCleanup
      Src: /src/libxml2/runtest.c:4657,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4660,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4666
      start: 4623
    functionDepth: 4
    functionLinenumber: 4623
    functionLinenumberEnd: 4666
    functionName: testThread
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlLoadCatalog
    - pthread_join
    - xmlInitParser
    - fprintf
    - xmlCatalogCleanup
    - pthread_create
    linkageType: ''
    returnType: int
    signature: int testThread(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testThread
      Src: /src/libxml2/runtest.c:4673,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4674
      start: 4668
    functionDepth: 5
    functionLinenumber: 4668
    functionLinenumberEnd: 4674
    functionName: threadsTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - testThread
    linkageType: ''
    returnType: int
    signature: "int threadsTest(const char *filename ATTRIBUTE_UNUSED,\n\t    const
      char *resul ATTRIBUTE_UNUSED,\n\t    const char *err ATTRIBUTE_UNUSED,\n\t    int
      options ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegexpExec
      Src: /src/libxml2/runtest.c:4687,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4689,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4691,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4693,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - output
    - comp
    - value
    argTypes:
    - FILE*
    - xmlRegexpPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4694
      start: 4684
    functionDepth: 1
    functionLinenumber: 4684
    functionLinenumberEnd: 4694
    functionName: testRegexp
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRegexpExec
    linkageType: ''
    returnType: void
    signature: void testRegexp(FILE *output, xmlRegexpPtr comp, const char *value)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/runtest.c:4708,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4712,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4714,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:4719,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4721,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:4722,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4724,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4726,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4727,1
    - Dst: fgets
      Src: /src/libxml2/runtest.c:4731,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:4732,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/runtest.c:4745,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4748,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/runtest.c:4749,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4751,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4755,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/runtest.c:4756,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4758,1
    - Dst: testRegexp
      Src: /src/libxml2/runtest.c:4762,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4766,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4767,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/runtest.c:4769,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:4771,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4773,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:4777,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4778,1
    - Dst: compareFileMem
      Src: /src/libxml2/runtest.c:4781,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4783,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/runtest.c:4788,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 79
    argCount: 4
    argNames:
    - filename
    - result
    - err
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4696
    functionDepth: 2
    functionLinenumber: 4696
    functionLinenumberEnd: 4791
    functionName: regexpTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - strlen
    - compareFileMem
    - fgets
    - xmlRegexpCompile
    - compareFiles
    - fopen
    - fclose
    - xmlSetStructuredErrorFunc
    - xmlRegFreeRegexp
    - testRegexp
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int regexpTest(const char *filename, const char *result, const char
      *err,\n\t   int options ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4810
      start: 4799
    functionDepth: 0
    functionLinenumber: 4799
    functionLinenumberEnd: 4810
    functionName: scanNumber
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int scanNumber(char **ptr)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4832,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4834,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:4838,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4840,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:4841,1
    - Dst: fopen
      Src: /src/libxml2/runtest.c:4843,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4845,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:4846,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/runtest.c:4850,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4852,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4854,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/runtest.c:4857,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4859,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/runtest.c:4861,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:4862,1
    - Dst: fgets
      Src: /src/libxml2/runtest.c:4867,1
    - Dst: strlen
      Src: /src/libxml2/runtest.c:4870,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4881,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4883,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4888,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4890,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4892,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4897,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4905,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4907,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4912,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4914,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4916,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/runtest.c:4917,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4922,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4924,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/runtest.c:4928,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4934,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4936,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4941,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4943,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4945,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/runtest.c:4950,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4952,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4954,1
    - Dst: scanNumber
      Src: /src/libxml2/runtest.c:4959,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4961,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/runtest.c:4970,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/runtest.c:4971,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4974,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4980,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/runtest.c:4983,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/runtest.c:4985,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4988,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4990,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:4992,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/runtest.c:4993,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/runtest.c:4999,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/runtest.c:5000,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5002,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:5007,1
    - Dst: fclose
      Src: /src/libxml2/runtest.c:5008,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/runtest.c:5010,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/runtest.c:5012,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/runtest.c:5014,1
    - Dst: compareFiles
      Src: /src/libxml2/runtest.c:5016,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5018,1
    - Dst: unlink
      Src: /src/libxml2/runtest.c:5022,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:5023,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 171
    argCount: 4
    argNames:
    - filename
    - result
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5027
      start: 4812
    functionDepth: 1
    functionLinenumber: 4812
    functionLinenumberEnd: 5027
    functionName: automataTest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlAutomataCompile
    - xmlAutomataNewState
    - fclose
    - xmlNewAutomata
    - xmlRegExecPushString
    - xmlRegFreeRegexp
    - resultFilename
    - unlink
    - fatalError
    - xmlFree
    - xmlAutomataNewEpsilon
    - compareFiles
    - fprintf
    - xmlAutomataSetFinalState
    - xmlFreeAutomata
    - scanNumber
    - xmlRegNewExecCtxt
    - xmlAutomataGetInitState
    - fgets
    - fopen
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: int
    signature: "int automataTest(const char *filename, const char *result,\n             const
      char *err ATTRIBUTE_UNUSED, int options ATTRIBUTE_UNUSED)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetCharEncodingHandler
      Src: /src/libxml2/runtest.c:5271,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/runtest.c:5272,1
    - Dst: xmlGetCharEncodingHandler
      Src: /src/libxml2/runtest.c:5278,1
    - Dst: xmlBufferCreateSize
      Src: /src/libxml2/runtest.c:5282,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/runtest.c:5283,1
    - Dst: xmlBufferCreateSize
      Src: /src/libxml2/runtest.c:5284,1
    - Dst: xmlCharEncInFunc
      Src: /src/libxml2/runtest.c:5285,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/runtest.c:5286,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runtest.c:5289,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runtest.c:5290,1
    - Dst: glob
      Src: /src/libxml2/runtest.c:5298,1
    - Dst: checkTestFile
      Src: /src/libxml2/runtest.c:5300,1
    - Dst: strstr
      Src: /src/libxml2/runtest.c:5303,1
    - Dst: strstr
      Src: /src/libxml2/runtest.c:5305,1
    - Dst: strstr
      Src: /src/libxml2/runtest.c:5309,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:5313,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5316,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:5317,1
    - Dst: resultFilename
      Src: /src/libxml2/runtest.c:5323,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5326,1
    - Dst: fatalError
      Src: /src/libxml2/runtest.c:5327,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runtest.c:5332,1
    - Dst: testDescPtr::func
      Src: /src/libxml2/runtest.c:5335,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runtest.c:5337,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5339,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runtest.c:5344,1
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5345,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runtest.c:5346,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:5352,1
    - Dst: xmlFree
      Src: /src/libxml2/runtest.c:5354,1
    - Dst: globfree
      Src: /src/libxml2/runtest.c:5356,1
    - Dst: testDescPtr::func
      Src: /src/libxml2/runtest.c:5360,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runtest.c:5361,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/runtest.c:5368,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/runtest.c:5369,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/runtest.c:5370,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    argCount: 1
    argNames:
    - tst
    argTypes:
    - testDescPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5373
      start: 5262
    functionDepth: 4
    functionLinenumber: 5262
    functionLinenumberEnd: 5373
    functionName: launchTests
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - resultFilename
    - xmlBufferFree
    - fatalError
    - xmlFree
    - xmlBufferCreateSize
    - xmlBufferCCat
    - xmlMemUsed
    - testDescPtr::func
    - xmlGetCharEncodingHandler
    - xmlResetLastError
    - xmlFindCharEncodingHandler
    - glob
    - checkTestFile
    - globfree
    - xmlCharEncCloseFunc
    - fprintf
    - strstr
    - xmlCharEncInFunc
    linkageType: ''
    returnType: int
    signature: int launchTests(testDescPtr tst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/runtest.c:5387,1
    - Dst: launchTests
      Src: /src/libxml2/runtest.c:5388,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:5393,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:5395,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5401
      start: 5378
    functionDepth: 0
    functionLinenumber: 5378
    functionLinenumberEnd: 5401
    functionName: runtest
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 1
    functionsReached:
    - launchTests
    - printf
    linkageType: ''
    returnType: int
    signature: int runtest(int i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: setvbuf
      Src: /src/libxml2/runtest.c:5409,1
    - Dst: setvbuf
      Src: /src/libxml2/runtest.c:5410,1
    - Dst: _set_output_format
      Src: /src/libxml2/runtest.c:5414,1
    - Dst: initializeLibxml2
      Src: /src/libxml2/runtest.c:5417,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:5420,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:5422,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:5424,1
    - Dst: strcmp
      Src: /src/libxml2/runtest.c:5426,1
    - Dst: strstr
      Src: /src/libxml2/runtest.c:5430,1
    - Dst: runtest
      Src: /src/libxml2/runtest.c:5431,1
    - Dst: runtest
      Src: /src/libxml2/runtest.c:5439,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:5444,1
    - Dst: printf
      Src: /src/libxml2/runtest.c:5448,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/runtest.c:5451,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5454
      start: 5403
    functionDepth: 3
    functionLinenumber: 5403
    functionLinenumberEnd: 5454
    functionName: main
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - _set_output_format
    - initializeLibxml2
    - strcmp
    - setvbuf
    - printf
    - runtest
    - strstr
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runtest.c:5459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5461
      start: 5457
    functionDepth: 0
    functionLinenumber: 5457
    functionLinenumberEnd: 5461
    functionName: main
    functionSourceFile: /src/libxml2/runtest.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock
      Src: /src/libxml2/testlimits.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: reset_timout
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - clock
    linkageType: ''
    returnType: void
    signature: void reset_timout(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clock
      Src: /src/libxml2/testlimits.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 56
    functionName: check_time
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - clock
    linkageType: ''
    returnType: int
    signature: int check_time(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: hugeMatch
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: int
    signature: int hugeMatch(const char * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:113,1
    - Dst: strcmp
      Src: /src/libxml2/testlimits.c:118,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:124,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 128
    functionName: hugeOpen
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    - strcmp
    linkageType: ''
    returnType: void
    signature: 'void *

      hugeOpen(const char * URI)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 141
    functionName: hugeClose
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int hugeClose(void * context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: fillFilling
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void fillFilling(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:178,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:183,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:191,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:195,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:201,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:204,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:209,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 216
    functionName: hugeRead
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - memcpy
    - fprintf
    - strlen
    linkageType: ''
    returnType: int
    signature: int hugeRead(void *context, char *buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 257
    functionName: crazyMatch
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: int
    signature: int crazyMatch(const char * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:268,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:271,1
    - Dst: reset_timout
      Src: /src/libxml2/testlimits.c:273,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 278
    functionName: crazyOpen
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - reset_timout
    - strncmp
    - strlen
    linkageType: ''
    returnType: void
    signature: 'void *

      crazyOpen(const char * URI)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 290
    functionName: crazyClose
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int crazyClose(void * context)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: check_time
      Src: /src/libxml2/testlimits.c:307,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:308,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:309,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:317,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:321,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:329,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:333,1
    - Dst: memcpy
      Src: /src/libxml2/testlimits.c:339,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:342,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 349
    functionName: crazyRead
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - fprintf
    - check_time
    - strlen
    - memcpy
    linkageType: ''
    returnType: int
    signature: int crazyRead(void *context, char *buffer, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxml2/testlimits.c:362,1
    - Dst: xmlInitParser
      Src: /src/libxml2/testlimits.c:363,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/testlimits.c:365,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/testlimits.c:366,1
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/testlimits.c:371,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:373,1
    - Dst: exit
      Src: /src/libxml2/testlimits.c:374,1
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/testlimits.c:376,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:378,1
    - Dst: exit
      Src: /src/libxml2/testlimits.c:379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 360
    functionDepth: 4
    functionLinenumber: 360
    functionLinenumberEnd: 381
    functionName: initializeLibxml2
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 2
    functionsReached:
    - xmlCatalogSetDefaults
    - xmlMemSetup
    - xmlInitializeCatalog
    - fprintf
    - exit
    - xmlInitParser
    - xmlRegisterInputCallbacks
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 402
    functionName: isStandaloneCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int isStandaloneCallback(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 415
    functionName: hasInternalSubsetCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int hasInternalSubsetCallback(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 428
    functionName: hasExternalSubsetCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int hasExternalSubsetCallback(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ExternalID ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 442
    functionName: internalSubsetCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void internalSubsetCallback(void *ctx ATTRIBUTE_UNUSED,\n                       const
      xmlChar * name ATTRIBUTE_UNUSED,\n                       const xmlChar * ExternalID
      ATTRIBUTE_UNUSED,\n                       const xmlChar * SystemID ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ExternalID ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 456
    functionName: externalSubsetCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void externalSubsetCallback(void *ctx ATTRIBUTE_UNUSED,\n                       const
      xmlChar * name ATTRIBUTE_UNUSED,\n                       const xmlChar * ExternalID
      ATTRIBUTE_UNUSED,\n                       const xmlChar * SystemID ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 477
    functionName: resolveEntityCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr resolveEntityCallback(void *ctx ATTRIBUTE_UNUSED,\n
      \                     const xmlChar * publicId ATTRIBUTE_UNUSED,\n                      const
      xmlChar * systemId ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 486
    functionDepth: 0
    functionLinenumber: 486
    functionLinenumberEnd: 492
    functionName: getEntityCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlEntityPtr
    signature: "xmlEntityPtr getEntityCallback(void *ctx ATTRIBUTE_UNUSED,\n                  const
      xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 507
    functionName: getParameterEntityCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlEntityPtr
    signature: "xmlEntityPtr getParameterEntityCallback(void *ctx ATTRIBUTE_UNUSED,\n
      \                          const xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 529
    functionName: entityDeclCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void entityDeclCallback(void *ctx ATTRIBUTE_UNUSED,\n                   const
      xmlChar * name ATTRIBUTE_UNUSED,\n                   int type ATTRIBUTE_UNUSED,\n
      \                  const xmlChar * publicId ATTRIBUTE_UNUSED,\n                   const
      xmlChar * systemId ATTRIBUTE_UNUSED,\n                   xmlChar * content ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - defaultValue ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 538
    functionDepth: 0
    functionLinenumber: 538
    functionLinenumberEnd: 547
    functionName: attributeDeclCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void attributeDeclCallback(void *ctx ATTRIBUTE_UNUSED,\n                      const
      xmlChar * elem ATTRIBUTE_UNUSED,\n                      const xmlChar * name
      ATTRIBUTE_UNUSED,\n                      int type ATTRIBUTE_UNUSED, int def
      ATTRIBUTE_UNUSED,\n                      const xmlChar * defaultValue ATTRIBUTE_UNUSED,\n
      \                     xmlEnumerationPtr tree ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 564
    functionName: elementDeclCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void elementDeclCallback(void *ctx ATTRIBUTE_UNUSED,\n                    const
      xmlChar * name ATTRIBUTE_UNUSED,\n                    int type ATTRIBUTE_UNUSED,\n
      \                   xmlElementContentPtr content ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 581
    functionName: notationDeclCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void notationDeclCallback(void *ctx ATTRIBUTE_UNUSED,\n                     const
      xmlChar * name ATTRIBUTE_UNUSED,\n                     const xmlChar * publicId
      ATTRIBUTE_UNUSED,\n                     const xmlChar * systemId ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - notationName ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 600
    functionName: unparsedEntityDeclCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void unparsedEntityDeclCallback(void *ctx ATTRIBUTE_UNUSED,\n                           const
      xmlChar * name ATTRIBUTE_UNUSED,\n                           const xmlChar *
      publicId ATTRIBUTE_UNUSED,\n                           const xmlChar * systemId
      ATTRIBUTE_UNUSED,\n                           const xmlChar * notationName ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlSAXLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 614
    functionName: setDocumentLocatorCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void setDocumentLocatorCallback(void *ctx ATTRIBUTE_UNUSED,\n                           xmlSAXLocatorPtr
      loc ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 621
    functionDepth: 0
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionName: startDocumentCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void startDocumentCallback(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 636
    functionName: endDocumentCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void endDocumentCallback(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 645
    functionDepth: 0
    functionLinenumber: 645
    functionLinenumberEnd: 652
    functionName: startElementCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void startElementCallback(void *ctx ATTRIBUTE_UNUSED,\n                     const
      xmlChar * name ATTRIBUTE_UNUSED,\n                     const xmlChar ** atts
      ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 666
    functionName: endElementCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void endElementCallback(void *ctx ATTRIBUTE_UNUSED,\n                   const
      xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 677
    functionDepth: 0
    functionLinenumber: 677
    functionLinenumberEnd: 683
    functionName: charactersCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void charactersCallback(void *ctx ATTRIBUTE_UNUSED,\n                   const
      xmlChar * ch ATTRIBUTE_UNUSED,\n                   int len ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 696
    functionName: referenceCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void referenceCallback(void *ctx ATTRIBUTE_UNUSED,\n                  const
      xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 713
    functionName: ignorableWhitespaceCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ignorableWhitespaceCallback(void *ctx ATTRIBUTE_UNUSED,\n                            const
      xmlChar * ch ATTRIBUTE_UNUSED,\n                            int len ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 729
    functionName: processingInstructionCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void processingInstructionCallback(void *ctx ATTRIBUTE_UNUSED,\n                              const
      xmlChar * target ATTRIBUTE_UNUSED,\n                              const xmlChar
      * data ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 744
    functionName: cdataBlockCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void cdataBlockCallback(void *ctx ATTRIBUTE_UNUSED,\n                   const
      xmlChar * value ATTRIBUTE_UNUSED,\n                   int len ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 752
    functionDepth: 0
    functionLinenumber: 752
    functionLinenumberEnd: 757
    functionName: commentCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void commentCallback(void *ctx ATTRIBUTE_UNUSED,\n                const
      xmlChar * value ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 767
    functionDepth: 0
    functionLinenumber: 767
    functionLinenumberEnd: 772
    functionName: warningCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void warningCallback(void *ctx ATTRIBUTE_UNUSED,\n                const
      char *msg ATTRIBUTE_UNUSED, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 787
    functionName: errorCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void errorCallback(void *ctx ATTRIBUTE_UNUSED, const char *msg ATTRIBUTE_UNUSED,\n
      \             ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 801
    functionName: fatalErrorCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void fatalErrorCallback(void *ctx ATTRIBUTE_UNUSED,\n                   const
      char *msg ATTRIBUTE_UNUSED, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - nb_namespaces ATTRIBUTE_UNUSED
    - namespaces ATTRIBUTE_UNUSED
    - nb_attributes ATTRIBUTE_UNUSED
    - nb_defaulted ATTRIBUTE_UNUSED
    - attributes ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 814
    functionDepth: 0
    functionLinenumber: 814
    functionLinenumberEnd: 826
    functionName: startElementNsCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void startElementNsCallback(void *ctx ATTRIBUTE_UNUSED,\n                       const
      xmlChar * localname ATTRIBUTE_UNUSED,\n                       const xmlChar
      * prefix ATTRIBUTE_UNUSED,\n                       const xmlChar * URI ATTRIBUTE_UNUSED,\n
      \                      int nb_namespaces ATTRIBUTE_UNUSED,\n                       const
      xmlChar ** namespaces ATTRIBUTE_UNUSED,\n                       int nb_attributes
      ATTRIBUTE_UNUSED,\n                       int nb_defaulted ATTRIBUTE_UNUSED,\n
      \                      const xmlChar ** attributes ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 834
    functionDepth: 0
    functionLinenumber: 834
    functionLinenumberEnd: 841
    functionName: endElementNsCallback
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void endElementNsCallback(void *ctx ATTRIBUTE_UNUSED,\n                     const
      xmlChar * localname ATTRIBUTE_UNUSED,\n                     const xmlChar *
      prefix ATTRIBUTE_UNUSED,\n                     const xmlChar * URI ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/testlimits.c:904,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:906,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testlimits.c:909,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:912,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testlimits.c:913,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:919,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:925,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testlimits.c:931,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - filename
    - limit
    - options
    - fail
    argTypes:
    - char*
    - size_t
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 895
    functionDepth: 1
    functionLinenumber: 895
    functionLinenumberEnd: 934
    functionName: saxTest
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - xmlNewSAXParserCtxt
    - xmlCtxtReadFile
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int saxTest(const char *filename, size_t limit, int options, int fail)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/testlimits.c:954,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:956,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testlimits.c:959,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testlimits.c:961,1
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:967,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:968,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:971,1
    - Dst: strncmp
      Src: /src/libxml2/testlimits.c:977,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:978,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:981,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testlimits.c:989,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 4
    argNames:
    - filename
    - limit
    - options
    - fail
    argTypes:
    - char*
    - size_t
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 945
    functionDepth: 7
    functionLinenumber: 945
    functionLinenumberEnd: 992
    functionName: readerTest
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderRead
    - xmlReaderForFile
    - fprintf
    - strncmp
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int readerTest(const char *filename, size_t limit, int options, int
      fail)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: testDescPtr::func
      Src: /src/libxml2/testlimits.c:1089,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - tst
    - test
    argTypes:
    - testDescPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1064
    functionDepth: 0
    functionLinenumber: 1064
    functionLinenumberEnd: 1097
    functionName: launchTests
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 2
    functionsReached:
    - testDescPtr::func
    linkageType: ''
    returnType: int
    signature: int launchTests(testDescPtr tst, unsigned int test)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1109,1
    - Dst: launchTests
      Src: /src/libxml2/testlimits.c:1110,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1115,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - i
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1123
    functionName: runtest
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 2
    functionsReached:
    - launchTests
    - printf
    linkageType: ''
    returnType: int
    signature: int runtest(unsigned int i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: saxTest
      Src: /src/libxml2/testlimits.c:1131,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:1137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - test
    - fail
    argTypes:
    - unsigned int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1125
    functionDepth: 2
    functionLinenumber: 1125
    functionLinenumberEnd: 1140
    functionName: launchCrazySAX
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - fprintf
    - saxTest
    linkageType: ''
    returnType: int
    signature: int launchCrazySAX(unsigned int test, int fail)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: readerTest
      Src: /src/libxml2/testlimits.c:1149,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:1155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - test
    - fail
    argTypes:
    - unsigned int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1143
    functionDepth: 8
    functionLinenumber: 1143
    functionLinenumberEnd: 1158
    functionName: launchCrazy
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - fprintf
    - readerTest
    linkageType: ''
    returnType: int
    signature: int launchCrazy(unsigned int test, int fail)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 4
    argCount: 1
    argNames:
    - test
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1161
    functionDepth: 0
    functionLinenumber: 1161
    functionLinenumberEnd: 1186
    functionName: get_crazy_fail
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_crazy_fail(int test)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1200,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:1202,1
    - Dst: launchCrazy
      Src: /src/libxml2/testlimits.c:1203,1
    - Dst: get_crazy_fail
      Src: /src/libxml2/testlimits.c:1203,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1210,1
    - Dst: strlen
      Src: /src/libxml2/testlimits.c:1212,1
    - Dst: launchCrazySAX
      Src: /src/libxml2/testlimits.c:1213,1
    - Dst: get_crazy_fail
      Src: /src/libxml2/testlimits.c:1213,1
    - Dst: fprintf
      Src: /src/libxml2/testlimits.c:1218,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1221,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1223,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1188
    functionDepth: 9
    functionLinenumber: 1188
    functionLinenumberEnd: 1229
    functionName: runcrazy
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - strlen
    - get_crazy_fail
    - launchCrazy
    - launchCrazySAX
    - printf
    - fprintf
    linkageType: ''
    returnType: int
    signature: int runcrazy(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fillFilling
      Src: /src/libxml2/testlimits.c:1237,1
    - Dst: initializeLibxml2
      Src: /src/libxml2/testlimits.c:1238,1
    - Dst: strcmp
      Src: /src/libxml2/testlimits.c:1241,1
    - Dst: strcmp
      Src: /src/libxml2/testlimits.c:1243,1
    - Dst: strcmp
      Src: /src/libxml2/testlimits.c:1245,1
    - Dst: runtest
      Src: /src/libxml2/testlimits.c:1250,1
    - Dst: runcrazy
      Src: /src/libxml2/testlimits.c:1253,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1256,1
    - Dst: printf
      Src: /src/libxml2/testlimits.c:1260,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/testlimits.c:1263,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1232
    functionDepth: 10
    functionLinenumber: 1232
    functionLinenumberEnd: 1266
    functionName: main
    functionSourceFile: /src/libxml2/testlimits.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - initializeLibxml2
    - strcmp
    - printf
    - runtest
    - fillFilling
    - runcrazy
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - level
    - code
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 59
    functionName: xmlIsCatastrophicError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIsCatastrophicError(int level, int code)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetError
      Src: /src/libxml2/error.c:83,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/error.c:91,1
    - Dst: xmlStrVASPrintf
      Src: /src/libxml2/error.c:96,1
    - Dst: xmlStrdup
      Src: /src/libxml2/error.c:105,1
    - Dst: xmlStrdup
      Src: /src/libxml2/error.c:110,1
    - Dst: xmlStrdup
      Src: /src/libxml2/error.c:115,1
    - Dst: xmlStrdup
      Src: /src/libxml2/error.c:120,1
    - Dst: xmlResetError
      Src: /src/libxml2/error.c:125,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:144,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:145,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:146,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:147,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:148,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 64
    argCount: 15
    argNames:
    - err
    - ctxt
    - node
    - domain
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - int1
    - col
    - fmt
    - ap
    argTypes:
    - xmlError*
    - void*
    - xmlNodePtr
    - int
    - int
    - xmlErrorLevel
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 150
    functionName: xmlVSetError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlResetError
    - xmlMemStrdup
    - xmlStrVASPrintf
    linkageType: ''
    returnType: int
    signature: "int xmlVSetError(xmlError *err,\n             void *ctxt, xmlNodePtr
      node,\n             int domain, int code, xmlErrorLevel level,\n             const
      char *file, int line,\n             const char *str1, const char *str2, const
      char *str3,\n             int int1, int col,\n             const char *fmt,
      va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:164,1
    - Dst: xmlVSetError
      Src: /src/libxml2/error.c:165,1
    - Dst: va_end
      Src: /src/libxml2/error.c:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 14
    argNames:
    - err
    - ctxt
    - node
    - domain
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - int1
    - col
    - fmt
    argTypes:
    - xmlError*
    - void*
    - xmlNodePtr
    - int
    - int
    - xmlErrorLevel
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 170
    functionName: xmlSetError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVSetError
    - va_start
    linkageType: ''
    returnType: void
    signature: "void xmlSetError(xmlError *err,\n            void *ctxt, xmlNodePtr
      node,\n            int domain, int code, xmlErrorLevel level,\n            const
      char *file, int line,\n            const char *str1, const char *str2, const
      char *str3,\n            int int1, int col,\n            const char *fmt, ...)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNo
      Src: /src/libxml2/error.c:208,1
    - Dst: xmlVSetError
      Src: /src/libxml2/error.c:212,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 15
    argNames:
    - err
    - ctxt
    - node
    - domain
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - int1
    - col
    - fmt
    - ap
    argTypes:
    - xmlError*
    - void*
    - xmlNodePtr
    - int
    - int
    - xmlErrorLevel
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 216
    functionName: xmlVUpdateError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - xmlGetLineNo
    - xmlVSetError
    linkageType: ''
    returnType: int
    signature: "int xmlVUpdateError(xmlError *err,\n                void *ctxt, xmlNodePtr
      node,\n                int domain, int code, xmlErrorLevel level,\n                const
      char *file, int line,\n                const char *str1, const char *str2, const
      char *str3,\n                int int1, int col,\n                const char
      *fmt, va_list ap)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:238,1
    - Dst: vfprintf
      Src: /src/libxml2/error.c:239,1
    - Dst: va_end
      Src: /src/libxml2/error.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 241
    functionName: xmlGenericErrorDefaultFunc
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - va_end
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlGenericErrorDefaultFunc(void *ctx ATTRIBUTE_UNUSED, const char
      *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlGenericErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 278
    functionName: xmlSetGenericErrorFunc
    functionSourceFile: /src/libxml2/error.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlStructuredErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 321
    functionName: xmlSetStructuredErrorFunc
    functionSourceFile: /src/libxml2/error.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc handler)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGenericError
      Src: /src/libxml2/error.c:342,1
    - Dst: xmlGenericError
      Src: /src/libxml2/error.c:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - input
    argTypes:
    - struct _xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 349
    functionName: xmlParserPrintFileInfo
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached:
    - xmlGenericError
    linkageType: ''
    returnType: void
    signature: void xmlParserPrintFileInfo(struct _xmlParserInput *input)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputGetWindow
      Src: /src/libxml2/error.c:371,1
    - Dst: memcpy
      Src: /src/libxml2/error.c:373,1
    - Dst: channel
      Src: /src/libxml2/error.c:376,1
    - Dst: channel
      Src: /src/libxml2/error.c:384,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - input
    - channel
    - data
    argTypes:
    - xmlParserInputPtr
    - xmlGenericErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 385
    functionName: xmlParserPrintFileContextInternal
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached:
    - xmlParserInputGetWindow
    - memcpy
    - channel
    linkageType: ''
    returnType: void
    signature: "void xmlParserPrintFileContextInternal(xmlParserInputPtr input ,\n\t\txmlGenericErrorFunc
      channel, void *data )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserPrintFileContextInternal
      Src: /src/libxml2/error.c:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - input
    argTypes:
    - struct _xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 399
    functionName: xmlParserPrintFileContext
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached:
    - xmlParserPrintFileContextInternal
    linkageType: ''
    returnType: void
    signature: void xmlParserPrintFileContext(struct _xmlParserInput *input)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: channel
      Src: /src/libxml2/error.c:462,1
    - Dst: channel
      Src: /src/libxml2/error.c:464,1
    - Dst: channel
      Src: /src/libxml2/error.c:467,1
    - Dst: channel
      Src: /src/libxml2/error.c:472,1
    - Dst: channel
      Src: /src/libxml2/error.c:475,1
    - Dst: channel
      Src: /src/libxml2/error.c:479,1
    - Dst: channel
      Src: /src/libxml2/error.c:482,1
    - Dst: channel
      Src: /src/libxml2/error.c:486,1
    - Dst: channel
      Src: /src/libxml2/error.c:489,1
    - Dst: channel
      Src: /src/libxml2/error.c:492,1
    - Dst: channel
      Src: /src/libxml2/error.c:495,1
    - Dst: channel
      Src: /src/libxml2/error.c:498,1
    - Dst: channel
      Src: /src/libxml2/error.c:501,1
    - Dst: channel
      Src: /src/libxml2/error.c:504,1
    - Dst: channel
      Src: /src/libxml2/error.c:507,1
    - Dst: channel
      Src: /src/libxml2/error.c:510,1
    - Dst: channel
      Src: /src/libxml2/error.c:513,1
    - Dst: channel
      Src: /src/libxml2/error.c:516,1
    - Dst: channel
      Src: /src/libxml2/error.c:519,1
    - Dst: channel
      Src: /src/libxml2/error.c:522,1
    - Dst: channel
      Src: /src/libxml2/error.c:525,1
    - Dst: channel
      Src: /src/libxml2/error.c:528,1
    - Dst: channel
      Src: /src/libxml2/error.c:531,1
    - Dst: channel
      Src: /src/libxml2/error.c:534,1
    - Dst: channel
      Src: /src/libxml2/error.c:537,1
    - Dst: channel
      Src: /src/libxml2/error.c:540,1
    - Dst: channel
      Src: /src/libxml2/error.c:543,1
    - Dst: channel
      Src: /src/libxml2/error.c:546,1
    - Dst: channel
      Src: /src/libxml2/error.c:553,1
    - Dst: channel
      Src: /src/libxml2/error.c:556,1
    - Dst: channel
      Src: /src/libxml2/error.c:559,1
    - Dst: channel
      Src: /src/libxml2/error.c:562,1
    - Dst: xmlStrlen
      Src: /src/libxml2/error.c:567,1
    - Dst: channel
      Src: /src/libxml2/error.c:569,1
    - Dst: channel
      Src: /src/libxml2/error.c:571,1
    - Dst: channel
      Src: /src/libxml2/error.c:573,1
    - Dst: channel
      Src: /src/libxml2/error.c:583,1
    - Dst: channel
      Src: /src/libxml2/error.c:587,1
    - Dst: channel
      Src: /src/libxml2/error.c:589,1
    - Dst: xmlParserPrintFileContextInternal
      Src: /src/libxml2/error.c:592,1
    - Dst: channel
      Src: /src/libxml2/error.c:596,1
    - Dst: channel
      Src: /src/libxml2/error.c:604,1
    - Dst: xmlParserPrintFileContextInternal
      Src: /src/libxml2/error.c:605,1
    - Dst: xmlStrlen
      Src: /src/libxml2/error.c:610,1
    - Dst: channel
      Src: /src/libxml2/error.c:614,1
    - Dst: channel
      Src: /src/libxml2/error.c:619,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 159
    argCount: 3
    argNames:
    - err
    - channel
    - data
    argTypes:
    - xmlError*
    - xmlGenericErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 412
    functionDepth: 1
    functionLinenumber: 412
    functionLinenumberEnd: 621
    functionName: xmlFormatError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 3
    functionsReached:
    - xmlParserPrintFileContextInternal
    - xmlStrlen
    - channel
    linkageType: ''
    returnType: void
    signature: void xmlFormatError(const xmlError *err, xmlGenericErrorFunc channel,
      void *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLastErrorInternal
      Src: /src/libxml2/error.c:640,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/error.c:642,1
    - Dst: xmlResetError
      Src: /src/libxml2/error.c:648,1
    - Dst: schannel
      Src: /src/libxml2/error.c:655,1
    - Dst: xmlStructuredError
      Src: /src/libxml2/error.c:657,1
    - Dst: channel
      Src: /src/libxml2/error.c:659,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - schannel
    - channel
    - data
    - domain
    - error
    argTypes:
    - xmlStructuredErrorFunc
    - xmlGenericErrorFunc
    - void*
    - int
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 661
    functionName: xmlRaiseMemoryError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 2
    functionsReached:
    - schannel
    - xmlResetLastError
    - xmlGetLastErrorInternal
    - xmlStructuredError
    - xmlResetError
    - channel
    linkageType: ''
    returnType: void
    signature: "void xmlRaiseMemoryError(xmlStructuredErrorFunc schannel, xmlGenericErrorFunc
      channel,\n                    void *data, int domain, xmlError *error)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLastErrorInternal
      Src: /src/libxml2/error.c:697,1
    - Dst: xmlAbort
      Src: /src/libxml2/error.c:704,1
    - Dst: xmlVUpdateError
      Src: /src/libxml2/error.c:718,1
    - Dst: xmlCopyError
      Src: /src/libxml2/error.c:723,1
    - Dst: schannel
      Src: /src/libxml2/error.c:728,1
    - Dst: xmlStructuredError
      Src: /src/libxml2/error.c:730,1
    - Dst: xmlFormatError
      Src: /src/libxml2/error.c:738,1
    - Dst: channel
      Src: /src/libxml2/error.c:740,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 30
    argCount: 17
    argNames:
    - schannel
    - channel
    - data
    - ctx
    - node
    - domain
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - int1
    - col
    - msg
    - ap
    argTypes:
    - xmlStructuredErrorFunc
    - xmlGenericErrorFunc
    - void*
    - void*
    - xmlNode*
    - int
    - int
    - xmlErrorLevel
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 687
    functionDepth: 3
    functionLinenumber: 687
    functionLinenumberEnd: 744
    functionName: xmlVRaiseError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached:
    - schannel
    - xmlVUpdateError
    - xmlCopyError
    - xmlGetLastErrorInternal
    - xmlFormatError
    - xmlAbort
    - xmlStructuredError
    - channel
    linkageType: ''
    returnType: int
    signature: "int xmlVRaiseError(xmlStructuredErrorFunc schannel,\n               xmlGenericErrorFunc
      channel, void *data, void *ctx,\n               xmlNode *node, int domain, int
      code, xmlErrorLevel level,\n               const char *file, int line, const
      char *str1,\n               const char *str2, const char *str3, int int1, int
      col,\n               const char *msg, va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:781,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/error.c:782,1
    - Dst: va_end
      Src: /src/libxml2/error.c:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 16
    argNames:
    - schannel
    - channel
    - data
    - ctx
    - node
    - domain
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - int1
    - col
    - msg
    argTypes:
    - xmlStructuredErrorFunc
    - xmlGenericErrorFunc
    - void*
    - void*
    - xmlNode*
    - int
    - int
    - xmlErrorLevel
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 770
    functionDepth: 4
    functionLinenumber: 770
    functionLinenumberEnd: 788
    functionName: xmlRaiseError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVRaiseError
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlRaiseError(xmlStructuredErrorFunc schannel,\n              xmlGenericErrorFunc
      channel, void *data, void *ctx,\n              xmlNode *node, int domain, int
      code, xmlErrorLevel level,\n              const char *file, int line, const
      char *str1,\n              const char *str2, const char *str3, int int1, int
      col,\n              const char *msg, ...)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserPrintFileInfo
      Src: /src/libxml2/error.c:805,1
    - Dst: xmlGenericError
      Src: /src/libxml2/error.c:808,1
    - Dst: xmlStrVASPrintf
      Src: /src/libxml2/error.c:810,1
    - Dst: xmlGenericError
      Src: /src/libxml2/error.c:812,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:813,1
    - Dst: xmlParserPrintFileContext
      Src: /src/libxml2/error.c:817,1
    - Dst: xmlParserPrintFileInfo
      Src: /src/libxml2/error.c:819,1
    - Dst: xmlGenericError
      Src: /src/libxml2/error.c:820,1
    - Dst: xmlParserPrintFileContext
      Src: /src/libxml2/error.c:821,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - ctx
    - level
    - fmt
    - ap
    argTypes:
    - void*
    - char*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 824
      start: 790
    functionDepth: 1
    functionLinenumber: 790
    functionLinenumberEnd: 824
    functionName: xmlVFormatLegacyError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - xmlParserPrintFileContext
    - xmlFree
    - xmlParserPrintFileInfo
    - xmlStrVASPrintf
    - xmlGenericError
    linkageType: ''
    returnType: void
    signature: "void xmlVFormatLegacyError(void *ctx, const char *level,\n                      const
      char *fmt, va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:845,1
    - Dst: xmlVFormatLegacyError
      Src: /src/libxml2/error.c:846,1
    - Dst: va_end
      Src: /src/libxml2/error.c:847,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 840
    functionDepth: 2
    functionLinenumber: 840
    functionLinenumberEnd: 848
    functionName: xmlParserError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVFormatLegacyError
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlParserError(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:869,1
    - Dst: xmlVFormatLegacyError
      Src: /src/libxml2/error.c:870,1
    - Dst: va_end
      Src: /src/libxml2/error.c:871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 864
    functionDepth: 2
    functionLinenumber: 864
    functionLinenumberEnd: 872
    functionName: xmlParserWarning
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVFormatLegacyError
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlParserWarning(void *ctx, const char *msg ATTRIBUTE_UNUSED,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:893,1
    - Dst: xmlVFormatLegacyError
      Src: /src/libxml2/error.c:894,1
    - Dst: va_end
      Src: /src/libxml2/error.c:895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 888
    functionDepth: 2
    functionLinenumber: 888
    functionLinenumberEnd: 896
    functionName: xmlParserValidityError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVFormatLegacyError
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlParserValidityError(void *ctx, const char *msg ATTRIBUTE_UNUSED,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:917,1
    - Dst: xmlVFormatLegacyError
      Src: /src/libxml2/error.c:918,1
    - Dst: va_end
      Src: /src/libxml2/error.c:919,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 920
    functionName: xmlParserValidityWarning
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVFormatLegacyError
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlParserValidityWarning(void *ctx, const char *msg ATTRIBUTE_UNUSED,
      ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLastErrorInternal
      Src: /src/libxml2/error.c:937,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 934
    functionDepth: 1
    functionLinenumber: 934
    functionLinenumberEnd: 942
    functionName: xmlGetLastError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 2
    functionsReached:
    - xmlGetLastErrorInternal
    linkageType: ''
    returnType: xmlError
    signature: 'xmlError *

      xmlGetLastError(void)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/error.c:957,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:959,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:961,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:963,1
    - Dst: xmlFree
      Src: /src/libxml2/error.c:965,1
    - Dst: memset
      Src: /src/libxml2/error.c:966,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - err
    argTypes:
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 949
    functionDepth: 0
    functionLinenumber: 949
    functionLinenumberEnd: 968
    functionName: xmlResetError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 3
    functionsReached:
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlResetError(xmlError *err)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLastErrorInternal
      Src: /src/libxml2/error.c:976,1
    - Dst: xmlResetError
      Src: /src/libxml2/error.c:979,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 973
    functionDepth: 1
    functionLinenumber: 973
    functionLinenumberEnd: 980
    functionName: xmlResetLastError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 5
    functionsReached:
    - xmlResetError
    - xmlGetLastErrorInternal
    linkageType: ''
    returnType: void
    signature: void xmlResetLastError(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetError
      Src: /src/libxml2/error.c:999,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - from
    - to
    argTypes:
    - xmlError*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1005
    functionName: xmlCopyError
    functionSourceFile: /src/libxml2/error.c
    functionUses: 2
    functionsReached:
    - xmlSetError
    linkageType: ''
    returnType: int
    signature: int xmlCopyError(const xmlError *from, xmlError *to)
  - BBCount: 125
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 375
    argCount: 1
    argNames:
    - code
    argTypes:
    - xmlParserErrors
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1336
    functionName: xmlErrString
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlErrString(xmlParserErrors code)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vfprintf
      Src: /src/libxml2/error.c:1346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fmt
    - ap
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1344
    functionDepth: 0
    functionLinenumber: 1344
    functionLinenumberEnd: 1347
    functionName: xmlVPrintErrorMessage
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - vfprintf
    linkageType: ''
    returnType: void
    signature: void xmlVPrintErrorMessage(const char *fmt, va_list ap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:1359,1
    - Dst: xmlVPrintErrorMessage
      Src: /src/libxml2/error.c:1360,1
    - Dst: va_end
      Src: /src/libxml2/error.c:1361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1362
      start: 1355
    functionDepth: 1
    functionLinenumber: 1355
    functionLinenumberEnd: 1362
    functionName: xmlPrintErrorMessage
    functionSourceFile: /src/libxml2/error.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVPrintErrorMessage
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlPrintErrorMessage(const char *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/error.c:1374,1
    - Dst: xmlVPrintErrorMessage
      Src: /src/libxml2/error.c:1375,1
    - Dst: va_end
      Src: /src/libxml2/error.c:1376,1
    - Dst: abort
      Src: /src/libxml2/error.c:1378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1370
    functionDepth: 1
    functionLinenumber: 1370
    functionLinenumberEnd: 1379
    functionName: xmlAbort
    functionSourceFile: /src/libxml2/error.c
    functionUses: 1
    functionsReached:
    - va_end
    - xmlVPrintErrorMessage
    - abort
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlAbort(const char *fmt, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - unused
    - err
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 23
    functionName: errorHandler
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void errorHandler(void *unused, const xmlError *err)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/testchar.c:35,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/testchar.c:39,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:43,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:52,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:60,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:66,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:71,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 32
    argCount: 6
    argNames:
    - ctxt
    - document
    - len
    - data
    - forbid1
    - forbid2
    argTypes:
    - xmlParserCtxtPtr
    - char*
    - int
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 74
    functionName: testDocumentRangeByte1
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeDoc
    - xmlCtxtReset
    - xmlReadMemory
    linkageType: ''
    returnType: int
    signature: "int testDocumentRangeByte1(xmlParserCtxtPtr ctxt, char *document,\n
      \                 int len,  char *data, int forbid1, int forbid2)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/testchar.c:84,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/testchar.c:89,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:94,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:107,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:120,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:133,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:144,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:149,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 41
    argCount: 4
    argNames:
    - ctxt
    - document
    - len
    - data
    argTypes:
    - xmlParserCtxtPtr
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 153
    functionName: testDocumentRangeByte2
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeDoc
    - xmlCtxtReset
    - xmlReadMemory
    linkageType: ''
    returnType: int
    signature: "int testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,\n
      \                 int len,  char *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testchar.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:173,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:177,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:178,1
    - Dst: testDocumentRangeByte1
      Src: /src/libxml2/testchar.c:185,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:185,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:187,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:188,1
    - Dst: testDocumentRangeByte1
      Src: /src/libxml2/testchar.c:194,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:194,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:197,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:198,1
    - Dst: testDocumentRangeByte1
      Src: /src/libxml2/testchar.c:205,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:205,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:207,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:208,1
    - Dst: testDocumentRangeByte1
      Src: /src/libxml2/testchar.c:214,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:214,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:216,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:218,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:219,1
    - Dst: testDocumentRangeByte2
      Src: /src/libxml2/testchar.c:226,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:226,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:228,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:229,1
    - Dst: testDocumentRangeByte2
      Src: /src/libxml2/testchar.c:235,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:235,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:238,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:239,1
    - Dst: testDocumentRangeByte2
      Src: /src/libxml2/testchar.c:246,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:246,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:248,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:249,1
    - Dst: testDocumentRangeByte2
      Src: /src/libxml2/testchar.c:255,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:255,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:257,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testchar.c:259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 70
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 261
    functionName: testDocumentRanges
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - testDocumentRangeByte2
    - strlen
    - xmlNewParserCtxt
    - testDocumentRangeByte1
    - printf
    - fprintf
    - fflush
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int testDocumentRanges(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentChar
      Src: /src/libxml2/testchar.c:269,1
    - Dst: xmlNextChar
      Src: /src/libxml2/testchar.c:275,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:281,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:287,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - len
    argTypes:
    - xmlParserCtxtPtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 295
    functionName: testCurrentChar
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlCurrentChar
    - xmlNextChar
    linkageType: ''
    returnType: int
    signature: int testCurrentChar(xmlParserCtxtPtr ctxt, int *len)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: testCurrentChar
      Src: /src/libxml2/testchar.c:309,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:315,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:321,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:325,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 330
    functionName: testCharRangeByte1
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - testCurrentChar
    linkageType: ''
    returnType: int
    signature: int testCharRangeByte1(xmlParserCtxtPtr ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: testCurrentChar
      Src: /src/libxml2/testchar.c:345,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:352,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:365,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:378,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:391,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:402,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:411,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 419
    functionName: testCharRangeByte2
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - testCurrentChar
    linkageType: ''
    returnType: int
    signature: int testCharRangeByte2(xmlParserCtxtPtr ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: testCurrentChar
      Src: /src/libxml2/testchar.c:439,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:449,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:461,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:475,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:487,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:498,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:508,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 50
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 421
    functionDepth: 2
    functionLinenumber: 421
    functionLinenumberEnd: 517
    functionName: testCharRangeByte3
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - testCurrentChar
    linkageType: ''
    returnType: int
    signature: int testCharRangeByte3(xmlParserCtxtPtr ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: testCurrentChar
      Src: /src/libxml2/testchar.c:541,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:551,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:564,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:578,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:591,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:602,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:612,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 54
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 519
    functionDepth: 2
    functionLinenumber: 519
    functionLinenumberEnd: 622
    functionName: testCharRangeByte4
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    - testCurrentChar
    linkageType: ''
    returnType: int
    signature: int testCharRangeByte4(xmlParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/testchar.c:637,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testchar.c:643,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:645,1
    - Dst: xmlParserInputBufferCreateStatic
      Src: /src/libxml2/testchar.c:648,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:651,1
    - Dst: xmlNewInputStream
      Src: /src/libxml2/testchar.c:655,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/testchar.c:657,1
    - Dst: xmlBufContent
      Src: /src/libxml2/testchar.c:664,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/testchar.c:666,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:668,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:669,1
    - Dst: testCharRangeByte1
      Src: /src/libxml2/testchar.c:670,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:671,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:672,1
    - Dst: testCharRangeByte2
      Src: /src/libxml2/testchar.c:673,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:674,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:675,1
    - Dst: testCharRangeByte3
      Src: /src/libxml2/testchar.c:676,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:677,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:678,1
    - Dst: testCharRangeByte4
      Src: /src/libxml2/testchar.c:679,1
    - Dst: printf
      Src: /src/libxml2/testchar.c:680,1
    - Dst: fflush
      Src: /src/libxml2/testchar.c:681,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testchar.c:684,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 44
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 630
    functionDepth: 3
    functionLinenumber: 630
    functionLinenumberEnd: 686
    functionName: testCharRanges
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - xmlBufContent
    - xmlCtxtPushInput
    - xmlNewInputStream
    - xmlParserInputBufferCreateStatic
    - testCharRangeByte3
    - testCharRangeByte1
    - testCharRangeByte4
    - xmlNewParserCtxt
    - printf
    - xmlFreeParserInputBuffer
    - fprintf
    - fflush
    - testCharRangeByte2
    - xmlFreeParserCtxt
    - memset
    linkageType: ''
    returnType: int
    signature: int testCharRanges(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/testchar.c:700,1
    - Dst: strlen
      Src: /src/libxml2/testchar.c:702,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testchar.c:708,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/testchar.c:722,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:724,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:731,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:739,1
    - Dst: xmlFree
      Src: /src/libxml2/testchar.c:740,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 688
    functionDepth: 1
    functionLinenumber: 688
    functionLinenumberEnd: 743
    functionName: testUserEncoding
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlFree
    - xmlReadMemory
    - xmlMalloc
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testUserEncoding(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testchar.c:753,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testchar.c:755,1
    - Dst: xmlCharEncOutFunc
      Src: /src/libxml2/testchar.c:756,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testchar.c:760,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testchar.c:762,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testchar.c:763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - handler
    - utf8
    - size
    - outSize
    argTypes:
    - xmlCharEncodingHandlerPtr
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 747
    functionDepth: 2
    functionLinenumber: 747
    functionLinenumberEnd: 765
    functionName: convert
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - xmlCharEncOutFunc
    - xmlBufferDetach
    - xmlBufferFree
    - xmlBufferCreate
    linkageType: ''
    returnType: char
    signature: "char *\nconvert(xmlCharEncodingHandlerPtr handler, const char *utf8,
      int size,\n        int *outSize)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetCharEncodingHandler
      Src: /src/libxml2/testchar.c:780,1
    - Dst: convert
      Src: /src/libxml2/testchar.c:781,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testchar.c:782,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/testchar.c:783,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:784,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:785,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/testchar.c:791,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:794,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testchar.c:795,1
    - Dst: xmlFree
      Src: /src/libxml2/testchar.c:796,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 767
    functionDepth: 4
    functionLinenumber: 767
    functionLinenumberEnd: 799
    functionName: testUserEncodingPush
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlCreatePushParserCtxt
    - xmlGetCharEncodingHandler
    - xmlFreeParserCtxt
    - xmlParseChunk
    - xmlStrcmp
    - convert
    - xmlSwitchEncoding
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testUserEncodingPush(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testchar.c:810,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:812,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:813,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:814,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:815,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:816,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:817,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/testchar.c:819,1
    - Dst: strcmp
      Src: /src/libxml2/testchar.c:820,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:822,1
    - Dst: xmlFree
      Src: /src/libxml2/testchar.c:826,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:827,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testchar.c:828,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testchar.c:830,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:832,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testchar.c:838,1
    - Dst: memcpy
      Src: /src/libxml2/testchar.c:840,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:842,1
    - Dst: xmlFree
      Src: /src/libxml2/testchar.c:843,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:845,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testchar.c:846,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/testchar.c:848,1
    - Dst: strncmp
      Src: /src/libxml2/testchar.c:849,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:850,1
    - Dst: memcmp
      Src: /src/libxml2/testchar.c:855,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:856,1
    - Dst: strcmp
      Src: /src/libxml2/testchar.c:861,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:862,1
    - Dst: xmlFree
      Src: /src/libxml2/testchar.c:868,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testchar.c:869,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testchar.c:870,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 874
    functionName: testUTF8Chunks
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlCreatePushParserCtxt
    - xmlFreeParserCtxt
    - memcpy
    - strcmp
    - xmlParseChunk
    - xmlMalloc
    - xmlDocDumpMemory
    - memcmp
    - fprintf
    - strncmp
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testUTF8Chunks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:882,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:884,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:886,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - prefix
    - content
    - len
    argTypes:
    - char*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 878
    functionDepth: 0
    functionLinenumber: 878
    functionLinenumberEnd: 887
    functionName: bufDump
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void bufDump(const char *prefix, const xmlChar *content, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferContent
      Src: /src/libxml2/testchar.c:891,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/testchar.c:892,1
    - Dst: memcmp
      Src: /src/libxml2/testchar.c:895,1
    - Dst: bufDump
      Src: /src/libxml2/testchar.c:898,1
    - Dst: bufDump
      Src: /src/libxml2/testchar.c:899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - got
    - expectContent
    - expectLen
    argTypes:
    - xmlBufferPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 889
    functionDepth: 1
    functionLinenumber: 889
    functionLinenumberEnd: 902
    functionName: bufCompare
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - bufDump
    - xmlBufferContent
    - memcmp
    - xmlBufferLength
    linkageType: ''
    returnType: int
    signature: int bufCompare(xmlBufferPtr got, const xmlChar *expectContent, int
      expectLen)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testchar.c:907,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testchar.c:908,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/testchar.c:911,1
    - Dst: xmlCharEncInFunc
      Src: /src/libxml2/testchar.c:912,1
    - Dst: bufCompare
      Src: /src/libxml2/testchar.c:913,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:914,1
    - Dst: xmlBufferEmpty
      Src: /src/libxml2/testchar.c:919,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/testchar.c:920,1
    - Dst: xmlCharEncOutFunc
      Src: /src/libxml2/testchar.c:921,1
    - Dst: bufCompare
      Src: /src/libxml2/testchar.c:922,1
    - Dst: fprintf
      Src: /src/libxml2/testchar.c:923,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testchar.c:928,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testchar.c:929,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 5
    argNames:
    - handler
    - dec
    - decSize
    - enc
    - encSize
    argTypes:
    - xmlCharEncodingHandlerPtr
    - xmlChar*
    - int
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 904
    functionDepth: 2
    functionLinenumber: 904
    functionLinenumberEnd: 931
    functionName: testEncHandler
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - bufCompare
    - xmlBufferAdd
    - xmlBufferCreate
    - xmlBufferEmpty
    - xmlCharEncOutFunc
    - fprintf
    - xmlCharEncInFunc
    linkageType: ''
    returnType: int
    signature: "int testEncHandler(xmlCharEncodingHandlerPtr handler, const xmlChar
      *dec,\n                int decSize, const xmlChar *enc, int encSize)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/testchar.c:966,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/testchar.c:967,1
    - Dst: testEncHandler
      Src: /src/libxml2/testchar.c:969,1
    - Dst: testEncHandler
      Src: /src/libxml2/testchar.c:973,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/testchar.c:978,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/testchar.c:979,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 933
    functionDepth: 4
    functionLinenumber: 933
    functionLinenumberEnd: 982
    functionName: testUTF16
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - testEncHandler
    - xmlFindCharEncodingHandler
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: int
    signature: int testUTF16(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testCharRanges
      Src: /src/libxml2/testchar.c:1003,1
    - Dst: testDocumentRanges
      Src: /src/libxml2/testchar.c:1004,1
    - Dst: testUserEncoding
      Src: /src/libxml2/testchar.c:1005,1
    - Dst: testUserEncodingPush
      Src: /src/libxml2/testchar.c:1007,1
    - Dst: testUTF8Chunks
      Src: /src/libxml2/testchar.c:1008,1
    - Dst: testUTF16
      Src: /src/libxml2/testchar.c:1010,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/testchar.c:1015,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 984
    functionDepth: 5
    functionLinenumber: 984
    functionLinenumberEnd: 1017
    functionName: main
    functionSourceFile: /src/libxml2/testchar.c
    functionUses: 0
    functionsReached:
    - testCharRanges
    - testDocumentRanges
    - xmlCleanupParser
    - testUTF8Chunks
    - testUserEncodingPush
    - testUserEncoding
    - testUTF16
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: S_ISDIR
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_ISDIR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: S_ISDIR
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_ISDIR(m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: S_ISDIR
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_ISDIR(m)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - buf
    - val
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 157
    functionName: xmlSerializeHexCharRef
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSerializeHexCharRef(char *buf, int val)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:200,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlIO.c:249,1
    - Dst: xmlSerializeHexCharRef
      Src: /src/libxml2/xmlIO.c:259,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:272,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlIO.c:278,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:280,1
    - Dst: memcpy
      Src: /src/libxml2/xmlIO.c:288,1
    - Dst: memcpy
      Src: /src/libxml2/xmlIO.c:290,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 83
    argCount: 2
    argNames:
    - string
    - flags
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 301
    functionName: xmlEscapeText
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlFree
    - xmlMalloc
    - xmlSerializeHexCharRef
    - xmlGetUTF8Char
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlEscapeText(const xmlChar *string, int flags)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:359,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:368,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlIO.c:376,1
    - Dst: xmlSerializeHexCharRef
      Src: /src/libxml2/xmlIO.c:386,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:387,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 55
    argCount: 4
    argNames:
    - buf
    - string
    - maxSize
    - flags
    argTypes:
    - xmlOutputBuffer*
    - xmlChar*
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 390
    functionName: xmlSerializeText
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlSerializeHexCharRef
    - xmlGetUTF8Char
    linkageType: ''
    returnType: void
    signature: "void xmlSerializeText(xmlOutputBuffer *buf, const xmlChar *string,
      size_t maxSize,\n                 unsigned flags)"
  - BBCount: 51
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 154
    argCount: 1
    argNames:
    - err
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 563
    functionName: xmlIOErr
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIOErr(int err)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: MultiByteToWideChar
      Src: /src/libxml2/xmlIO.c:586,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:589,1
    - Dst: MultiByteToWideChar
      Src: /src/libxml2/xmlIO.c:591,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:593,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - u8String
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 609
    functionName: __xmlIOWin32UTF8ToWChar
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - MultiByteToWideChar
    linkageType: ''
    returnType: wchar_t
    signature: 'wchar_t *

      __xmlIOWin32UTF8ToWChar(const char *u8String)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlIO.c:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 619
    functionDepth: 1
    functionLinenumber: 619
    functionLinenumberEnd: 623
    functionName: xmlNormalizeWindowsPath
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNormalizeWindowsPath(const xmlChar *path)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: __xmlIOWin32UTF8ToWChar
      Src: /src/libxml2/xmlIO.c:659,1
    - Dst: _wstat
      Src: /src/libxml2/xmlIO.c:662,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:663,1
    - Dst: stat
      Src: /src/libxml2/xmlIO.c:666,1
    - Dst: S_ISDIR
      Src: /src/libxml2/xmlIO.c:673,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 678
    functionName: xmlCheckFilename
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - S_ISDIR
    - _wstat
    - stat
    - __xmlIOWin32UTF8ToWChar
    linkageType: ''
    returnType: int
    signature: int xmlCheckFilename(const char *path)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/xmlIO.c:687,1
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/xmlIO.c:689,1
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/xmlIO.c:691,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/xmlIO.c:703,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - uri
    - out
    argTypes:
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 680
    functionDepth: 1
    functionLinenumber: 680
    functionLinenumberEnd: 709
    functionName: xmlConvertUriToPath
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlStrncasecmp
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlConvertUriToPath(const char *uri, char **out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlConvertUriToPath
      Src: /src/libxml2/xmlIO.c:732,1
    - Dst: __xmlIOWin32UTF8ToWChar
      Src: /src/libxml2/xmlIO.c:742,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:744,1
    - Dst: _wopen
      Src: /src/libxml2/xmlIO.c:751,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:752,1
    - Dst: open
      Src: /src/libxml2/xmlIO.c:759,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:770,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:777,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 3
    argNames:
    - filename
    - write
    - out
    argTypes:
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 721
    functionDepth: 2
    functionLinenumber: 721
    functionLinenumberEnd: 779
    functionName: xmlFdOpen
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlConvertUriToPath
    - xmlFree
    - open
    - __xmlIOWin32UTF8ToWChar
    - _wopen
    - xmlIOErr
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors xmlFdOpen(const char *filename, int write, int *out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/libxml2/xmlIO.c:797,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:805,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 815
    functionName: xmlFdRead
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlIOErr
    - read
    linkageType: ''
    returnType: int
    signature: int xmlFdRead(void *context, char *buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: write
      Src: /src/libxml2/xmlIO.c:834,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 826
    functionDepth: 1
    functionLinenumber: 826
    functionLinenumberEnd: 843
    functionName: xmlFdWrite
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - write
    - xmlIOErr
    linkageType: ''
    returnType: int
    signature: int xmlFdWrite(void *context, const char *buffer, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 850
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 850
    functionName: xmlFdFree
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlFdFree(void *context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/libxml2/xmlIO.c:864,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:866,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 858
    functionDepth: 1
    functionLinenumber: 858
    functionLinenumberEnd: 872
    functionName: xmlFdClose
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - close
    - xmlFree
    - xmlIOErr
    linkageType: ''
    returnType: int
    signature: int xmlFdClose (void * context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 883
    functionName: xmlFileMatch
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlFileMatch (const char *filename ATTRIBUTE_UNUSED)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlConvertUriToPath
      Src: /src/libxml2/xmlIO.c:903,1
    - Dst: __xmlIOWin32UTF8ToWChar
      Src: /src/libxml2/xmlIO.c:913,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:915,1
    - Dst: _wfopen
      Src: /src/libxml2/xmlIO.c:918,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:919,1
    - Dst: fopen
      Src: /src/libxml2/xmlIO.c:922,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:937,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:942,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - filename
    - write
    - out
    argTypes:
    - char*
    - int
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 893
    functionDepth: 2
    functionLinenumber: 893
    functionLinenumberEnd: 944
    functionName: xmlFileOpenSafe
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlConvertUriToPath
    - xmlFree
    - _wfopen
    - fopen
    - __xmlIOWin32UTF8ToWChar
    - xmlIOErr
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors xmlFileOpenSafe(const char *filename, int write, void
      **out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFileOpenSafe
      Src: /src/libxml2/xmlIO.c:956,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 952
    functionDepth: 3
    functionLinenumber: 952
    functionLinenumberEnd: 958
    functionName: xmlFileOpen
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlFileOpenSafe
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlFileOpen(const char *filename)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/libxml2/xmlIO.c:983,1
    - Dst: ferror
      Src: /src/libxml2/xmlIO.c:984,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:985,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 968
    functionDepth: 1
    functionLinenumber: 968
    functionLinenumberEnd: 988
    functionName: xmlFileRead
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - ferror
    - fread
    - xmlIOErr
    linkageType: ''
    returnType: int
    signature: int xmlFileRead(void * context, char * buffer, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/libxml2/xmlIO.c:1008,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1010,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1013
    functionName: xmlFileWrite
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - fwrite
    - xmlIOErr
    linkageType: ''
    returnType: int
    signature: int xmlFileWrite(void *context, const char *buffer, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fflush
      Src: /src/libxml2/xmlIO.c:1028,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1029,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1021
    functionDepth: 1
    functionLinenumber: 1021
    functionLinenumberEnd: 1032
    functionName: xmlFileFlush
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - fflush
    - xmlIOErr
    linkageType: ''
    returnType: int
    signature: int xmlFileFlush (void * context)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFileFlush
      Src: /src/libxml2/xmlIO.c:1050,1
    - Dst: fclose
      Src: /src/libxml2/xmlIO.c:1052,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1053,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1040
    functionDepth: 2
    functionLinenumber: 1040
    functionLinenumberEnd: 1056
    functionName: xmlFileClose
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlIOErr
    - xmlFileFlush
    - fclose
    linkageType: ''
    returnType: int
    signature: int xmlFileClose (void * context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferAdd
      Src: /src/libxml2/xmlIO.c:1072,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1068
    functionDepth: 1
    functionLinenumber: 1068
    functionLinenumberEnd: 1076
    functionName: xmlBufferWrite
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlBufferAdd
    linkageType: ''
    returnType: int
    signature: int xmlBufferWrite (void * context, const char * buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gzread
      Src: /src/libxml2/xmlIO.c:1098,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 1094
    functionDepth: 0
    functionLinenumber: 1094
    functionLinenumberEnd: 1102
    functionName: xmlGzfileRead
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - gzread
    linkageType: ''
    returnType: int
    signature: int xmlGzfileRead (void * context, char * buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gzwrite
      Src: /src/libxml2/xmlIO.c:1117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1113
    functionDepth: 0
    functionLinenumber: 1113
    functionLinenumberEnd: 1121
    functionName: xmlGzfileWrite
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - gzwrite
    linkageType: ''
    returnType: int
    signature: int xmlGzfileWrite (void * context, const char * buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gzclose
      Src: /src/libxml2/xmlIO.c:1131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1129
    functionDepth: 0
    functionLinenumber: 1129
    functionLinenumberEnd: 1134
    functionName: xmlGzfileClose
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - gzclose
    linkageType: ''
    returnType: int
    signature: int xmlGzfileClose (void * context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1146
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1146
    functionName: xmlIODefaultMatch
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIODefaultMatch(const char *filename ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _get_osfhandle
      Src: /src/libxml2/xmlIO.c:1159,1
    - Dst: GetFileType
      Src: /src/libxml2/xmlIO.c:1164,1
    - Dst: _lseeki64
      Src: /src/libxml2/xmlIO.c:1166,1
    - Dst: lseek
      Src: /src/libxml2/xmlIO.c:1168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - fd
    - offset
    - whence
    argTypes:
    - int
    - xmlFileOffset
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1170
    functionName: xmlSeek
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - GetFileType
    - _lseeki64
    - lseek
    - _get_osfhandle
    linkageType: ''
    returnType: xmlFileOffset
    signature: xmlFileOffset xmlSeek(int fd, xmlFileOffset offset, int whence)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSeek
      Src: /src/libxml2/xmlIO.c:1196,1
    - Dst: dup
      Src: /src/libxml2/xmlIO.c:1198,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1200,1
    - Dst: gzdopen
      Src: /src/libxml2/xmlIO.c:1202,1
    - Dst: close
      Src: /src/libxml2/xmlIO.c:1205,1
    - Dst: gzdirect
      Src: /src/libxml2/xmlIO.c:1207,1
    - Dst: xmlSeek
      Src: /src/libxml2/xmlIO.c:1212,1
    - Dst: xmlGzfileClose
      Src: /src/libxml2/xmlIO.c:1225,1
    - Dst: dup
      Src: /src/libxml2/xmlIO.c:1230,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1232,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1234,1
    - Dst: close
      Src: /src/libxml2/xmlIO.c:1236,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - buf
    - fd
    - flags
    argTypes:
    - xmlParserInputBuffer*
    - int
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1183
    functionDepth: 1
    functionLinenumber: 1183
    functionLinenumberEnd: 1246
    functionName: xmlInputFromFd
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - gzdopen
    - xmlSeek
    - xmlGzfileClose
    - gzdirect
    - dup
    - xmlMalloc
    - close
    - xmlIOErr
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlInputFromFd(xmlParserInputBuffer *buf, int fd,\n
      \              xmlParserInputFlags flags)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmlIO.c:1263,1
    - Dst: dup
      Src: /src/libxml2/xmlIO.c:1264,1
    - Dst: xmlIOErr
      Src: /src/libxml2/xmlIO.c:1267,1
    - Dst: xmlFdOpen
      Src: /src/libxml2/xmlIO.c:1271,1
    - Dst: snprintf
      Src: /src/libxml2/xmlIO.c:1281,1
    - Dst: gzdopen
      Src: /src/libxml2/xmlIO.c:1282,1
    - Dst: close
      Src: /src/libxml2/xmlIO.c:1285,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1297,1
    - Dst: close
      Src: /src/libxml2/xmlIO.c:1299,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - buf
    - filename
    - compression
    argTypes:
    - xmlOutputBufferPtr
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1255
    functionDepth: 3
    functionLinenumber: 1255
    functionLinenumberEnd: 1308
    functionName: xmlOutputDefaultOpen
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - gzdopen
    - xmlFdOpen
    - strcmp
    - xmlMalloc
    - dup
    - close
    - snprintf
    - xmlIOErr
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlOutputDefaultOpen(xmlOutputBufferPtr buf, const
      char *filename,\n                     int compression)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1327,1
    - Dst: memset
      Src: /src/libxml2/xmlIO.c:1331,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:1332,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1334,1
    - Dst: xmlLookupCharEncodingHandler
      Src: /src/libxml2/xmlIO.c:1338,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1340,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:1345,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - enc
    argTypes:
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1323
    functionDepth: 3
    functionLinenumber: 1323
    functionLinenumberEnd: 1355
    functionName: xmlAllocParserInputBuffer
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 4
    functionsReached:
    - xmlFree
    - xmlBufCreate
    - xmlMalloc
    - xmlLookupCharEncodingHandler
    - xmlFreeParserInputBuffer
    - memset
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlAllocParserInputBuffer(xmlCharEncoding enc)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1370,1
    - Dst: memset
      Src: /src/libxml2/xmlIO.c:1374,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:1375,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1377,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:1383,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlIO.c:1385,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1386,1
    - Dst: xmlCharEncOutput
      Src: /src/libxml2/xmlIO.c:1393,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - encoder
    argTypes:
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1366
    functionDepth: 2
    functionLinenumber: 1366
    functionLinenumberEnd: 1402
    functionName: xmlAllocOutputBuffer
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 4
    functionsReached:
    - xmlFree
    - xmlCharEncOutput
    - xmlBufCreate
    - xmlMalloc
    - xmlBufFree
    - memset
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: 'xmlOutputBuffer *

      xmlAllocOutputBuffer(xmlCharEncodingHandler *encoder)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlIO.c:1415,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlIO.c:1419,1
    - Dst: xmlParserInputBuffer*::closecallback
      Src: /src/libxml2/xmlIO.c:1422,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlIO.c:1425,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1429,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - in
    argTypes:
    - xmlParserInputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1410
    functionDepth: 1
    functionLinenumber: 1410
    functionLinenumberEnd: 1430
    functionName: xmlFreeParserInputBuffer
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 12
    functionsReached:
    - xmlParserInputBuffer*::closecallback
    - xmlFree
    - xmlBufFree
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: void
    signature: void xmlFreeParserInputBuffer(xmlParserInputBuffer *in)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlIO.c:1450,1
    - Dst: xmlOutputBuffer*::closecallback
      Src: /src/libxml2/xmlIO.c:1453,1
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/xmlIO.c:1456,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlIO.c:1470,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlIO.c:1474,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlIO.c:1477,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1481,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1441
    functionDepth: 1
    functionLinenumber: 1441
    functionLinenumberEnd: 1484
    functionName: xmlOutputBufferClose
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 8
    functionsReached:
    - xmlIsCatastrophicError
    - xmlFree
    - xmlOutputBufferFlush
    - xmlOutputBuffer*::closecallback
    - xmlCharEncCloseFunc
    - xmlBufFree
    linkageType: ''
    returnType: int
    signature: int xmlOutputBufferClose(xmlOutputBuffer *out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:1502,1
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1511,1
    - Dst: xmlFdOpen
      Src: /src/libxml2/xmlIO.c:1526,1
    - Dst: xmlInputFromFd
      Src: /src/libxml2/xmlIO.c:1529,1
    - Dst: close
      Src: /src/libxml2/xmlIO.c:1530,1
    - Dst: xmlInputCallback*::matchcallback
      Src: /src/libxml2/xmlIO.c:1536,1
    - Dst: xmlInputCallback*::opencallback
      Src: /src/libxml2/xmlIO.c:1537,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1547,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 4
    argNames:
    - URI
    - enc
    - flags
    - out
    argTypes:
    - char*
    - xmlCharEncoding
    - xmlParserInputFlags
    - xmlParserInputBuffer**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1554
      start: 1494
    functionDepth: 4
    functionLinenumber: 1494
    functionLinenumberEnd: 1554
    functionName: xmlParserInputBufferCreateUrl
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlFdOpen
    - xmlInputFromFd
    - close
    - xmlInputCallback*::opencallback
    - xmlInitParser
    - xmlFreeParserInputBuffer
    - xmlInputCallback*::matchcallback
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlParserInputBufferCreateUrl(const char *URI, xmlCharEncoding
      enc,\n                              xmlParserInputFlags flags,\n                              xmlParserInputBuffer
      **out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateUrl
      Src: /src/libxml2/xmlIO.c:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - URI
    - enc
    argTypes:
    - char*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1571
    functionDepth: 5
    functionLinenumber: 1571
    functionLinenumberEnd: 1577
    functionName: __xmlParserInputBufferCreateFilename
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlParserInputBufferCreateUrl
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      __xmlParserInputBufferCreateFilename(const char *URI, xmlCharEncoding enc)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateFilenameValue
      Src: /src/libxml2/xmlIO.c:1600,1
    - Dst: xmlParserInputBufferCreateUrl
      Src: /src/libxml2/xmlIO.c:1602,1
    - Dst: xmlRaiseError
      Src: /src/libxml2/xmlIO.c:1610,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlIO.c:1613,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - URI
    - enc
    argTypes:
    - char*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1594
    functionDepth: 5
    functionLinenumber: 1594
    functionLinenumberEnd: 1617
    functionName: xmlParserInputBufferCreateFilename
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlRaiseError
    - xmlParserInputBufferCreateUrl
    - xmlRaiseMemoryError
    - xmlParserInputBufferCreateFilenameValue
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlParserInputBufferCreateFilename(const char *URI, xmlCharEncoding enc)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:1645,1
    - Dst: xmlParseURI
      Src: /src/libxml2/xmlIO.c:1650,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/xmlIO.c:1656,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/xmlIO.c:1658,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/xmlIO.c:1663,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlIO.c:1669,1
    - Dst: xmlOutputDefaultOpen
      Src: /src/libxml2/xmlIO.c:1682,1
    - Dst: xmlOutputCallback*::matchcallback
      Src: /src/libxml2/xmlIO.c:1687,1
    - Dst: xmlOutputCallback*::opencallback
      Src: /src/libxml2/xmlIO.c:1688,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlIO.c:1700,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1705,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 3
    argNames:
    - URI
    - encoder
    - compression
    argTypes:
    - char*
    - xmlCharEncodingHandler*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1636
    functionDepth: 4
    functionLinenumber: 1636
    functionLinenumberEnd: 1707
    functionName: __xmlOutputBufferCreateFilename
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlOutputCallback*::opencallback
    - xmlFree
    - xmlURIUnescapeString
    - xmlAllocOutputBuffer
    - xmlOutputDefaultOpen
    - xmlOutputBufferClose
    - xmlFreeURI
    - xmlInitParser
    - xmlOutputCallback*::matchcallback
    - xmlParseURI
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: "xmlOutputBuffer *\n__xmlOutputBufferCreateFilename(const char *URI,\n
      \                             xmlCharEncodingHandler *encoder,\n                              int
      compression)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateFilenameValue
      Src: /src/libxml2/xmlIO.c:1730,1
    - Dst: __xmlOutputBufferCreateFilename
      Src: /src/libxml2/xmlIO.c:1732,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - URI
    - encoder
    - compression ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - xmlCharEncodingHandler*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1725
    functionDepth: 5
    functionLinenumber: 1725
    functionLinenumberEnd: 1733
    functionName: xmlOutputBufferCreateFilename
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlOutputBufferCreateFilenameValue
    - __xmlOutputBufferCreateFilename
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: "xmlOutputBuffer *\nxmlOutputBufferCreateFilename(const char *URI,\n
      \                             xmlCharEncodingHandler *encoder,\n                              int
      compression ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1756,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - file
    - enc
    argTypes:
    - FILE*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1764
      start: 1750
    functionDepth: 4
    functionLinenumber: 1750
    functionLinenumberEnd: 1764
    functionName: xmlParserInputBufferCreateFile
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlAllocParserInputBuffer
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlParserInputBufferCreateFile(FILE *file, xmlCharEncoding enc)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlIO.c:1785,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - file
    - encoder
    argTypes:
    - FILE*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1777
    functionDepth: 3
    functionLinenumber: 1777
    functionLinenumberEnd: 1793
    functionName: xmlOutputBufferCreateFile
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlAllocOutputBuffer
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: 'xmlOutputBuffer *

      xmlOutputBufferCreateFile(FILE *file, xmlCharEncodingHandler *encoder)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/xmlIO.c:1813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - buffer
    - encoder
    argTypes:
    - xmlBuffer*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1804
    functionDepth: 1
    functionLinenumber: 1804
    functionLinenumberEnd: 1817
    functionName: xmlOutputBufferCreateBuffer
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferCreateIO
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: "xmlOutputBuffer *\nxmlOutputBufferCreateBuffer(xmlBuffer *buffer,\n
      \                           xmlCharEncodingHandler *encoder)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlIO.c:1830,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1831
      start: 1825
    functionDepth: 1
    functionLinenumber: 1825
    functionLinenumberEnd: 1831
    functionName: xmlOutputBufferGetContent
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlBufContent
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlOutputBufferGetContent(xmlOutputBuffer *out)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlIO.c:1844,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1839
    functionDepth: 1
    functionLinenumber: 1839
    functionLinenumberEnd: 1845
    functionName: xmlOutputBufferGetSize
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlBufUse
    linkageType: ''
    returnType: size_t
    signature: size_t xmlOutputBufferGetSize(xmlOutputBuffer *out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1870,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1874,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - fd
    - enc
    argTypes:
    - int
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1864
    functionDepth: 4
    functionLinenumber: 1864
    functionLinenumberEnd: 1886
    functionName: xmlParserInputBufferCreateFd
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlAllocParserInputBuffer
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlParserInputBufferCreateFd(int fd, xmlCharEncoding enc)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/xmlIO.c:1900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - vctxt
    - buf
    - size
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1893
    functionDepth: 0
    functionLinenumber: 1893
    functionLinenumberEnd: 1905
    functionName: xmlMemRead
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlMemRead(void *vctxt, char *buf, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1913
      start: 1907
    functionDepth: 0
    functionLinenumber: 1907
    functionLinenumberEnd: 1913
    functionName: xmlMemClose
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlMemClose(void *vctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1937,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1941,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/xmlIO.c:1943,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:1954,1
    - Dst: memset
      Src: /src/libxml2/xmlIO.c:1957,1
    - Dst: xmlBufCreateMem
      Src: /src/libxml2/xmlIO.c:1960,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:1963,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 4
    argNames:
    - mem
    - size
    - flags
    - enc
    argTypes:
    - void*
    - size_t
    - xmlParserInputFlags
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1924
    functionDepth: 4
    functionLinenumber: 1924
    functionLinenumberEnd: 1969
    functionName: xmlNewInputBufferMemory
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlFree
    - xmlBufCreateMem
    - xmlMalloc
    - xmlFreeParserInputBuffer
    - memset
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: "xmlParserInputBuffer *\nxmlNewInputBufferMemory(const void *mem, size_t
      size,\n                        xmlParserInputFlags flags, xmlCharEncoding enc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputBufferMemory
      Src: /src/libxml2/xmlIO.c:1995,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - mem
    - size
    - enc
    argTypes:
    - char*
    - int
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1990
    functionDepth: 5
    functionLinenumber: 1990
    functionLinenumberEnd: 1996
    functionName: xmlParserInputBufferCreateMem
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 4
    functionsReached:
    - xmlNewInputBufferMemory
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlParserInputBufferCreateMem(const char *mem, int size, xmlCharEncoding enc)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputBufferMemory
      Src: /src/libxml2/xmlIO.c:2022,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - mem
    - size
    - enc
    argTypes:
    - char*
    - int
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2023
      start: 2016
    functionDepth: 5
    functionLinenumber: 2016
    functionLinenumberEnd: 2023
    functionName: xmlParserInputBufferCreateStatic
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlNewInputBufferMemory
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: "xmlParserInputBuffer *\nxmlParserInputBufferCreateStatic(const char
      *mem, int size,\n                                 xmlCharEncoding enc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:2038,1
    - Dst: memset
      Src: /src/libxml2/xmlIO.c:2041,1
    - Dst: xmlBufCreateMem
      Src: /src/libxml2/xmlIO.c:2044,1
    - Dst: strlen
      Src: /src/libxml2/xmlIO.c:2044,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:2047,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - str
    - flags
    argTypes:
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2034
    functionDepth: 1
    functionLinenumber: 2034
    functionLinenumberEnd: 2052
    functionName: xmlNewInputBufferString
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - strlen
    - xmlBufCreateMem
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: 'xmlParserInputBuffer *

      xmlNewInputBufferString(const char *str, xmlParserInputFlags flags)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlIO.c:2073,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlIO.c:2077,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - fd
    - encoder
    argTypes:
    - int
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2065
    functionDepth: 3
    functionLinenumber: 2065
    functionLinenumberEnd: 2089
    functionName: xmlOutputBufferCreateFd
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlAllocOutputBuffer
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: 'xmlOutputBuffer *

      xmlOutputBufferCreateFd(int fd, xmlCharEncodingHandler *encoder)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/xmlIO.c:2115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - ioread
    - ioclose
    - ioctx
    - enc
    argTypes:
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2123
      start: 2108
    functionDepth: 4
    functionLinenumber: 2108
    functionLinenumberEnd: 2123
    functionName: xmlParserInputBufferCreateIO
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlAllocParserInputBuffer
    linkageType: ''
    returnType: xmlParserInputBuffer
    signature: "xmlParserInputBuffer *\nxmlParserInputBufferCreateIO(xmlInputReadCallback
      \  ioread,\n\t xmlInputCloseCallback  ioclose, void *ioctx, xmlCharEncoding
      enc)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlIO.c:2148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - iowrite
    - ioclose
    - ioctx
    - encoder
    argTypes:
    - xmlOutputWriteCallback
    - xmlOutputCloseCallback
    - void*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2138
    functionDepth: 3
    functionLinenumber: 2138
    functionLinenumberEnd: 2156
    functionName: xmlOutputBufferCreateIO
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlAllocOutputBuffer
    linkageType: ''
    returnType: xmlOutputBuffer
    signature: "xmlOutputBuffer *\nxmlOutputBufferCreateIO(xmlOutputWriteCallback
      \  iowrite,\n\t xmlOutputCloseCallback  ioclose, void *ioctx,\n\t xmlCharEncodingHandler
      *encoder)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlParserInputBufferCreateFilenameFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2181
      start: 2167
    functionDepth: 0
    functionLinenumber: 2167
    functionLinenumberEnd: 2181
    functionName: xmlParserInputBufferCreateFilenameDefault
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlParserInputBufferCreateFilenameFunc
    signature: "xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameDefault(\n
      \       xmlParserInputBufferCreateFilenameFunc func)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlOutputBufferCreateFilenameFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2200
      start: 2189
    functionDepth: 0
    functionLinenumber: 2189
    functionLinenumberEnd: 2200
    functionName: xmlOutputBufferCreateFilenameDefault
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlOutputBufferCreateFilenameFunc
    signature: xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc
      func)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:2228,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/xmlIO.c:2234,1
    - Dst: xmlCharEncInput
      Src: /src/libxml2/xmlIO.c:2244,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/xmlIO.c:2251,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - in
    - len
    - buf
    argTypes:
    - xmlParserInputBuffer*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2258
      start: 2215
    functionDepth: 2
    functionLinenumber: 2215
    functionLinenumberEnd: 2258
    functionName: xmlParserInputBufferPush
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlBufAdd
    - xmlCharEncInput
    - xmlBufCreate
    linkageType: ''
    returnType: int
    signature: "int xmlParserInputBufferPush(xmlParserInputBuffer *in,\n\t                 int
      len, const char *buf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2264
    functionDepth: 0
    functionLinenumber: 2264
    functionLinenumberEnd: 2269
    functionName: endOfInput
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int endOfInput (void * context ATTRIBUTE_UNUSED,\n\t    char * buffer
      ATTRIBUTE_UNUSED,\n\t    int len ATTRIBUTE_UNUSED)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:2307,1
    - Dst: xmlBufGrow
      Src: /src/libxml2/xmlIO.c:2316,1
    - Dst: xmlParserInputBuffer*::readcallback
      Src: /src/libxml2/xmlIO.c:2321,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/xmlIO.c:2321,1
    - Dst: xmlBufAddLen
      Src: /src/libxml2/xmlIO.c:2332,1
    - Dst: xmlCharEncInput
      Src: /src/libxml2/xmlIO.c:2352,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 2
    argNames:
    - in
    - len
    argTypes:
    - xmlParserInputBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2283
    functionDepth: 2
    functionLinenumber: 2283
    functionLinenumberEnd: 2358
    functionName: xmlParserInputBufferGrow
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlParserInputBuffer*::readcallback
    - xmlCharEncInput
    - xmlBufAddLen
    - xmlBufGrow
    - xmlBufCreate
    - xmlBufEnd
    linkageType: ''
    returnType: int
    signature: int xmlParserInputBufferGrow(xmlParserInputBuffer *in, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxml2/xmlIO.c:2372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - in
    - len
    argTypes:
    - xmlParserInputBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2373
      start: 2370
    functionDepth: 3
    functionLinenumber: 2370
    functionLinenumberEnd: 2373
    functionName: xmlParserInputBufferRead
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 4
    functionsReached:
    - xmlParserInputBufferGrow
    linkageType: ''
    returnType: int
    signature: int xmlParserInputBufferRead(xmlParserInputBuffer *in, int len)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufAdd
      Src: /src/libxml2/xmlIO.c:2399,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlIO.c:2413,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlIO.c:2423,1
    - Dst: xmlCharEncOutput
      Src: /src/libxml2/xmlIO.c:2426,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlIO.c:2447,1
    - Dst: xmlOutputBuffer*::writecallback
      Src: /src/libxml2/xmlIO.c:2452,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlIO.c:2453,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/xmlIO.c:2463,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 54
    argCount: 3
    argNames:
    - out
    - len
    - data
    argTypes:
    - xmlOutputBuffer*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2473
      start: 2388
    functionDepth: 2
    functionLinenumber: 2388
    functionLinenumberEnd: 2473
    functionName: xmlOutputBufferWrite
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlBufContent
    - xmlBufUse
    - xmlBufAdd
    - xmlCharEncOutput
    - xmlBufShrink
    - xmlBufCreate
    - xmlOutputBuffer*::writecallback
    linkageType: ''
    returnType: int
    signature: int xmlOutputBufferWrite(xmlOutputBuffer *out, int len, const char
      *data)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmlIO.c:2498,1
    - Dst: xmlEscapeText
      Src: /src/libxml2/xmlIO.c:2505,1
    - Dst: strlen
      Src: /src/libxml2/xmlIO.c:2512,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2518,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:2520,1
    - Dst: escaping
      Src: /src/libxml2/xmlIO.c:2532,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2540,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - out
    - str
    - escaping
    argTypes:
    - xmlOutputBuffer*
    - xmlChar*
    - xmlCharEncodingOutputFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2547
      start: 2488
    functionDepth: 3
    functionLinenumber: 2488
    functionLinenumberEnd: 2547
    functionName: xmlOutputBufferWriteEscape
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlEscapeText
    - strlen
    - xmlFree
    - xmlOutputBufferWrite
    - escaping
    linkageType: ''
    returnType: int
    signature: "int xmlOutputBufferWriteEscape(xmlOutputBuffer *out, const xmlChar
      *str,\n                           xmlCharEncodingOutputFunc escaping)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmlIO.c:2567,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2570,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - out
    - str
    argTypes:
    - xmlOutputBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2572
      start: 2560
    functionDepth: 3
    functionLinenumber: 2560
    functionLinenumberEnd: 2572
    functionName: xmlOutputBufferWriteString
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlOutputBufferWrite
    - strlen
    linkageType: ''
    returnType: int
    signature: int xmlOutputBufferWriteString(xmlOutputBuffer *out, const char *str)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrchr
      Src: /src/libxml2/xmlIO.c:2596,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xmlIO.c:2597,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2598,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2603,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2605,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2614,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2615,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2618,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlIO.c:2619,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2620,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2623,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlIO.c:2624,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlIO.c:2625,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - buf
    - string
    argTypes:
    - xmlOutputBuffer*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2627
      start: 2588
    functionDepth: 4
    functionLinenumber: 2588
    functionLinenumberEnd: 2627
    functionName: xmlOutputBufferWriteQuotedString
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlStrchr
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: "void xmlOutputBufferWriteQuotedString(xmlOutputBuffer *buf,\n                                 const
      xmlChar *string)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharEncOutput
      Src: /src/libxml2/xmlIO.c:2648,1
    - Dst: xmlOutputBuffer*::writecallback
      Src: /src/libxml2/xmlIO.c:2659,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlIO.c:2660,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlIO.c:2661,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/xmlIO.c:2663,1
    - Dst: xmlOutputBuffer*::writecallback
      Src: /src/libxml2/xmlIO.c:2665,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xmlIO.c:2666,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlIO.c:2667,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/xmlIO.c:2669,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2681
      start: 2635
    functionDepth: 2
    functionLinenumber: 2635
    functionLinenumberEnd: 2681
    functionName: xmlOutputBufferFlush
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlBufContent
    - xmlBufUse
    - xmlCharEncOutput
    - xmlBufShrink
    - xmlOutputBuffer*::writecallback
    linkageType: ''
    returnType: int
    signature: int xmlOutputBufferFlush(xmlOutputBuffer *out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/libxml2/xmlIO.c:2704,1
    - Dst: strlen
      Src: /src/libxml2/xmlIO.c:2706,1
    - Dst: IS_XMLPGD_SEP
      Src: /src/libxml2/xmlIO.c:2708,1
    - Dst: IS_XMLPGD_SEP
      Src: /src/libxml2/xmlIO.c:2711,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/xmlIO.c:2714,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/xmlIO.c:2716,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2720
      start: 2690
    functionDepth: 1
    functionLinenumber: 2690
    functionLinenumberEnd: 2720
    functionName: xmlParserGetDirectory
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlMemStrdup
    - strncpy
    - strlen
    - IS_XMLPGD_SEP
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlParserGetDirectory(const char *filename)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2700
      start: 2699
    functionDepth: 0
    functionLinenumber: 2699
    functionLinenumberEnd: 2700
    functionName: IS_XMLPGD_SEP
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XMLPGD_SEP(ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2701
    functionDepth: 0
    functionLinenumber: 2701
    functionLinenumberEnd: 2702
    functionName: IS_XMLPGD_SEP
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_XMLPGD_SEP(ch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlConvertUriToPath
      Src: /src/libxml2/xmlIO.c:2738,1
    - Dst: xmlCheckFilename
      Src: /src/libxml2/xmlIO.c:2744,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlIO.c:2746,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2748
      start: 2730
    functionDepth: 2
    functionLinenumber: 2730
    functionLinenumberEnd: 2748
    functionName: xmlNoNetExists
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 0
    functionsReached:
    - xmlCheckFilename
    - xmlConvertUriToPath
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlNoNetExists(const char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2759
    functionDepth: 0
    functionLinenumber: 2759
    functionLinenumberEnd: 2769
    functionName: xmlInitIOCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlInitIOCallbacks(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - matchFunc
    - openFunc
    - readFunc
    - closeFunc
    argTypes:
    - xmlInputMatchCallback
    - xmlInputOpenCallback
    - xmlInputReadCallback
    - xmlInputCloseCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2782
    functionDepth: 4
    functionLinenumber: 2782
    functionLinenumberEnd: 2796
    functionName: xmlRegisterInputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 3
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int xmlRegisterInputCallbacks(xmlInputMatchCallback matchFunc,\n\txmlInputOpenCallback
      openFunc, xmlInputReadCallback readFunc,\n\txmlInputCloseCallback closeFunc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/xmlIO.c:2803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2804
      start: 2801
    functionDepth: 5
    functionLinenumber: 2801
    functionLinenumberEnd: 2804
    functionName: xmlRegisterDefaultInputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlRegisterInputCallbacks
    linkageType: ''
    returnType: void
    signature: void xmlRegisterDefaultInputCallbacks(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2823
      start: 2812
    functionDepth: 4
    functionLinenumber: 2812
    functionLinenumberEnd: 2823
    functionName: xmlPopInputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 2
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int xmlPopInputCallbacks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2835
      start: 2829
    functionDepth: 4
    functionLinenumber: 2829
    functionLinenumberEnd: 2835
    functionName: xmlCleanupInputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlCleanupInputCallbacks(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - matchFunc
    - openFunc
    - writeFunc
    - closeFunc
    argTypes:
    - xmlOutputMatchCallback
    - xmlOutputOpenCallback
    - xmlOutputWriteCallback
    - xmlOutputCloseCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2847
    functionDepth: 4
    functionLinenumber: 2847
    functionLinenumberEnd: 2861
    functionName: xmlRegisterOutputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int xmlRegisterOutputCallbacks(xmlOutputMatchCallback matchFunc,\n\txmlOutputOpenCallback
      openFunc, xmlOutputWriteCallback writeFunc,\n\txmlOutputCloseCallback closeFunc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterOutputCallbacks
      Src: /src/libxml2/xmlIO.c:2868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2866
    functionDepth: 5
    functionLinenumber: 2866
    functionLinenumberEnd: 2869
    functionName: xmlRegisterDefaultOutputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlRegisterOutputCallbacks
    linkageType: ''
    returnType: void
    signature: void xmlRegisterDefaultOutputCallbacks (void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2880,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2877
    functionDepth: 4
    functionLinenumber: 2877
    functionLinenumberEnd: 2888
    functionName: xmlPopOutputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int xmlPopOutputCallbacks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlIO.c:2897,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2900
      start: 2894
    functionDepth: 4
    functionLinenumber: 2894
    functionLinenumberEnd: 2900
    functionName: xmlCleanupOutputCallbacks
    functionSourceFile: /src/libxml2/xmlIO.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlCleanupOutputCallbacks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/xmlwriter.c:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctxt
    - error
    - msg
    argTypes:
    - xmlTextWriterPtr
    - xmlParserErrors
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 5
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: xmlWriterErrMsg
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    linkageType: ''
    returnType: void
    signature: "void xmlWriterErrMsg(xmlTextWriterPtr ctxt, xmlParserErrors error,\n
      \              const char *msg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/xmlwriter.c:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - val
    argTypes:
    - xmlTextWriterPtr
    - xmlParserErrors
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 144
    functionDepth: 5
    functionLinenumber: 144
    functionLinenumberEnd: 155
    functionName: xmlWriterErrMsgInt
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    linkageType: ''
    returnType: void
    signature: "void xmlWriterErrMsgInt(xmlTextWriterPtr ctxt, xmlParserErrors error,\n
      \              const char *msg, int val)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:170,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:172,1
    - Dst: memset
      Src: /src/libxml2/xmlwriter.c:176,1
    - Dst: xmlListCreate
      Src: /src/libxml2/xmlwriter.c:178,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:181,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:183,1
    - Dst: xmlListCreate
      Src: /src/libxml2/xmlwriter.c:187,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:190,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:192,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:193,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:198,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:202,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:203,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:204,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:205,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/xmlwriter.c:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 165
    functionDepth: 6
    functionLinenumber: 165
    functionLinenumberEnd: 215
    functionName: xmlNewTextWriter
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlNewDoc
    - xmlListCreate
    - xmlMalloc
    - xmlListDelete
    - memset
    linkageType: ''
    returnType: xmlTextWriter
    signature: 'xmlTextWriter *

      xmlNewTextWriter(xmlOutputBuffer *out)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/xmlwriter.c:230,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:232,1
    - Dst: xmlNewTextWriter
      Src: /src/libxml2/xmlwriter.c:237,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:239,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlwriter.c:241,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - uri
    - compression
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 224
    functionDepth: 7
    functionLinenumber: 224
    functionLinenumberEnd: 248
    functionName: xmlNewTextWriterFilename
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlOutputBufferCreateFilename
    - xmlNewTextWriter
    - xmlOutputBufferClose
    linkageType: ''
    returnType: xmlTextWriter
    signature: 'xmlTextWriter *

      xmlNewTextWriterFilename(const char *uri, int compression)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateBuffer
      Src: /src/libxml2/xmlwriter.c:265,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:268,1
    - Dst: xmlNewTextWriter
      Src: /src/libxml2/xmlwriter.c:273,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:275,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlwriter.c:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - buf
    - compression ATTRIBUTE_UNUSED
    argTypes:
    - xmlBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 258
    functionDepth: 7
    functionLinenumber: 258
    functionLinenumberEnd: 282
    functionName: xmlNewTextWriterMemory
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlOutputBufferClose
    - xmlNewTextWriter
    - xmlOutputBufferCreateBuffer
    linkageType: ''
    returnType: xmlTextWriter
    signature: 'xmlTextWriter *

      xmlNewTextWriterMemory(xmlBuffer *buf, int compression ATTRIBUTE_UNUSED)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:302,1
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/xmlwriter.c:307,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:311,1
    - Dst: xmlNewTextWriter
      Src: /src/libxml2/xmlwriter.c:316,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:318,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlwriter.c:320,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - compression ATTRIBUTE_UNUSED
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 294
    functionDepth: 7
    functionLinenumber: 294
    functionLinenumberEnd: 327
    functionName: xmlNewTextWriterPushParser
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlNewTextWriter
    - xmlOutputBufferCreateIO
    - xmlOutputBufferClose
    linkageType: ''
    returnType: xmlTextWriter
    signature: "xmlTextWriter *\nxmlNewTextWriterPushParser(xmlParserCtxt *ctxt,\n
      \                          int compression ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/xmlwriter.c:343,1
    - Dst: xmlSAX2InitDefaultSAXHandler
      Src: /src/libxml2/xmlwriter.c:344,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlwriter.c:347,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:349,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/xmlwriter.c:359,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlwriter.c:361,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:362,1
    - Dst: xmlNewTextWriterPushParser
      Src: /src/libxml2/xmlwriter.c:367,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlwriter.c:369,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlwriter.c:370,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:371,1
    - Dst: xmlSetDocCompressMode
      Src: /src/libxml2/xmlwriter.c:376,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - doc
    - compression
    argTypes:
    - xmlDoc**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 336
    functionDepth: 8
    functionLinenumber: 336
    functionLinenumberEnd: 384
    functionName: xmlNewTextWriterDoc
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlSetDocCompressMode
    - xmlCreatePushParserCtxt
    - xmlNewDoc
    - xmlNewTextWriterPushParser
    - xmlFreeDoc
    - xmlSAX2InitDefaultSAXHandler
    - xmlFreeParserCtxt
    - memset
    linkageType: ''
    returnType: xmlTextWriter
    signature: 'xmlTextWriter *

      xmlNewTextWriterDoc(xmlDoc ** doc, int compression)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:403,1
    - Dst: memset
      Src: /src/libxml2/xmlwriter.c:408,1
    - Dst: xmlSAX2InitDefaultSAXHandler
      Src: /src/libxml2/xmlwriter.c:409,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/xmlwriter.c:412,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:414,1
    - Dst: xmlNewTextWriterPushParser
      Src: /src/libxml2/xmlwriter.c:424,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlwriter.c:426,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:427,1
    - Dst: xmlSetDocCompressMode
      Src: /src/libxml2/xmlwriter.c:436,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - doc
    - node
    - compression
    argTypes:
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 395
    functionDepth: 8
    functionLinenumber: 395
    functionLinenumberEnd: 439
    functionName: xmlNewTextWriterTree
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlSetDocCompressMode
    - xmlCreatePushParserCtxt
    - xmlNewTextWriterPushParser
    - xmlSAX2InitDefaultSAXHandler
    - xmlFreeParserCtxt
    - memset
    linkageType: ''
    returnType: xmlTextWriter
    signature: 'xmlTextWriter *

      xmlNewTextWriterTree(xmlDoc *doc, xmlNode *node, int compression)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlwriter.c:453,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:456,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:459,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlwriter.c:463,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlwriter.c:466,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlwriter.c:470,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:473,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:474,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 475
    functionName: xmlFreeTextWriter
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlOutputBufferClose
    - xmlListDelete
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: void
    signature: void xmlFreeTextWriter(xmlTextWriter *writer)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:496,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:501,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:502,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:503,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/xmlwriter.c:510,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:512,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlwriter.c:521,1
    - Dst: xmlCharEncOutput
      Src: /src/libxml2/xmlwriter.c:523,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:525,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:530,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:534,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:539,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:541,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:545,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:550,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:554,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:559,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:564,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:571,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:575,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:579,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:583,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:589,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 88
    argCount: 4
    argNames:
    - writer
    - version
    - encoding
    - standalone
    argTypes:
    - xmlTextWriter*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 486
    functionDepth: 6
    functionLinenumber: 486
    functionLinenumberEnd: 595
    functionName: xmlTextWriterStartDocument
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlFindCharEncodingHandler
    - xmlBufCreate
    - xmlCharEncOutput
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterStartDocument(xmlTextWriter *writer, const char *version,\n
      \                          const char *encoding, const char *standalone)"
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:613,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:619,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:620,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/xmlwriter.c:627,1
    - Dst: xmlTextWriterEndPI
      Src: /src/libxml2/xmlwriter.c:634,1
    - Dst: xmlTextWriterEndCDATA
      Src: /src/libxml2/xmlwriter.c:640,1
    - Dst: xmlTextWriterEndDTD
      Src: /src/libxml2/xmlwriter.c:654,1
    - Dst: xmlTextWriterEndComment
      Src: /src/libxml2/xmlwriter.c:660,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:671,1
    - Dst: xmlTextWriterFlush
      Src: /src/libxml2/xmlwriter.c:677,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 67
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 604
    functionDepth: 6
    functionLinenumber: 604
    functionLinenumberEnd: 684
    functionName: xmlTextWriterEndDocument
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlTextWriterFlush
    - xmlTextWriterEndElement
    - xmlTextWriterEndDTD
    - xmlTextWriterEndPI
    - xmlTextWriterEndComment
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    - xmlTextWriterEndCDATA
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndDocument(xmlTextWriter *writer)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:701,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:707,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:709,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:717,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:721,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:727,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:741,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:743,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:751,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:754,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:760,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 692
    functionDepth: 6
    functionLinenumber: 692
    functionLinenumberEnd: 766
    functionName: xmlTextWriterStartComment
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlLinkGetData
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterWriteIndent
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartComment(xmlTextWriter *writer)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:783,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:788,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:790,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:795,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:802,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:812,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:818,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 774
    functionDepth: 6
    functionLinenumber: 774
    functionLinenumberEnd: 820
    functionName: xmlTextWriterEndComment
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlWriterErrMsg
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndComment(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:837,1
    - Dst: xmlTextWriterWriteVFormatComment
      Src: /src/libxml2/xmlwriter.c:839,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - writer
    - format
    argTypes:
    - xmlTextWriter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 843
    functionName: xmlTextWriterWriteFormatComment
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteVFormatComment
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatComment(xmlTextWriter *writer,\n                                const
      char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:861,1
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:866,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/xmlwriter.c:870,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - writer
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 853
    functionDepth: 6
    functionLinenumber: 853
    functionLinenumberEnd: 874
    functionName: xmlTextWriterWriteVFormatComment
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlTextWriterWriteComment
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatComment(xmlTextWriter *writer,\n                                 const
      char *format, va_list argptr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartComment
      Src: /src/libxml2/xmlwriter.c:890,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:894,1
    - Dst: xmlTextWriterEndComment
      Src: /src/libxml2/xmlwriter.c:898,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - writer
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 883
    functionDepth: 7
    functionLinenumber: 883
    functionLinenumberEnd: 904
    functionName: xmlTextWriterWriteComment
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterStartComment
    - xmlTextWriterWriteString
    - xmlTextWriterEndComment
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteComment(xmlTextWriter *writer, const xmlChar
      * content)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:925,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:927,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:936,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:943,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:947,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:953,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:963,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:965,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:970,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:972,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:974,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:979,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:982,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:986,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:991,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 63
    argCount: 2
    argNames:
    - writer
    - name
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 913
    functionDepth: 6
    functionLinenumber: 913
    functionLinenumberEnd: 997
    functionName: xmlTextWriterStartElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterWriteIndent
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartElement(xmlTextWriter *writer, const xmlChar
      * name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1022,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1023,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1025,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/xmlwriter.c:1028,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1029,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:1036,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1038,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1043,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1045,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1046,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1050,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1052,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1054,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1057,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:1059,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 4
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1008
    functionDepth: 7
    functionLinenumber: 1008
    functionLinenumberEnd: 1063
    functionName: xmlTextWriterStartElementNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlTextWriterStartElement
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlStrcat
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterStartElementNS(xmlTextWriter *writer,\n                            const
      xmlChar * prefix, const xmlChar * name,\n                            const xmlChar
      * namespaceURI)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1082,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:1084,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1089,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:1091,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:1099,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:1101,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:1109,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1116,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:1123,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1128,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1132,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1137,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1147,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:1151,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 66
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1071
    functionDepth: 4
    functionLinenumber: 1071
    functionLinenumberEnd: 1153
    functionName: xmlTextWriterEndElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlListPopFront
    - xmlListDelete
    - xmlTextWriterWriteIndent
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndElement(xmlTextWriter *writer)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1172,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1176,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:1183,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:1190,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1195,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:1204,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1209,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1213,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1218,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1228,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:1232,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1161
    functionDepth: 4
    functionLinenumber: 1161
    functionLinenumberEnd: 1234
    functionName: xmlTextWriterFullEndElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlListPopFront
    - xmlTextWriterWriteIndent
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterFullEndElement(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:1251,1
    - Dst: xmlTextWriterWriteVFormatRaw
      Src: /src/libxml2/xmlwriter.c:1253,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - writer
    - format
    argTypes:
    - xmlTextWriter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1257
    functionName: xmlTextWriterWriteFormatRaw
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - xmlTextWriterWriteVFormatRaw
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatRaw(xmlTextWriter *writer, const char
      *format,\n                            ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:1277,1
    - Dst: xmlTextWriterWriteRaw
      Src: /src/libxml2/xmlwriter.c:1281,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1283,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - writer
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1267
    functionDepth: 1
    functionLinenumber: 1267
    functionLinenumberEnd: 1285
    functionName: xmlTextWriterWriteVFormatRaw
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteRaw
    - xmlTextWriterVSprintf
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatRaw(xmlTextWriter *writer, const char
      *format,\n                             va_list argptr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1306,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1312,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1318,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1320,1
    - Dst: xmlTextWriterHandleStateDependencies
      Src: /src/libxml2/xmlwriter.c:1321,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1332,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - writer
    - content
    - len
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1339
      start: 1296
    functionDepth: 6
    functionLinenumber: 1296
    functionLinenumberEnd: 1339
    functionName: xmlTextWriterWriteRawLen
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterHandleStateDependencies
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteRawLen(xmlTextWriter *writer, const xmlChar
      * content,\n                         int len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterWriteRawLen
      Src: /src/libxml2/xmlwriter.c:1351,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlwriter.c:1351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - writer
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1348
    functionDepth: 7
    functionLinenumber: 1348
    functionLinenumberEnd: 1352
    functionName: xmlTextWriterWriteRaw
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterWriteRawLen
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteRaw(xmlTextWriter *writer, const xmlChar * content)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:1372,1
    - Dst: xmlTextWriterWriteVFormatString
      Src: /src/libxml2/xmlwriter.c:1374,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:1376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - writer
    - format
    argTypes:
    - xmlTextWriter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1362
    functionDepth: 1
    functionLinenumber: 1362
    functionLinenumberEnd: 1378
    functionName: xmlTextWriterWriteFormatString
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatString(xmlTextWriter *writer, const char
      *format,\n                               ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:1398,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:1402,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1404,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - writer
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1388
    functionDepth: 1
    functionLinenumber: 1388
    functionLinenumberEnd: 1406
    functionName: xmlTextWriterWriteVFormatString
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteString
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatString(xmlTextWriter *writer,\n                                const
      char *format, va_list argptr)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1429,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1431,1
    - Dst: xmlEncodeSpecialChars
      Src: /src/libxml2/xmlwriter.c:1439,1
    - Dst: xmlBufAttrSerializeTxtContent
      Src: /src/libxml2/xmlwriter.c:1443,1
    - Dst: xmlTextWriterWriteRaw
      Src: /src/libxml2/xmlwriter.c:1453,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1456,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 2
    argNames:
    - writer
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1415
    functionDepth: 8
    functionLinenumber: 1415
    functionLinenumberEnd: 1464
    functionName: xmlTextWriterWriteString
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 3
    functionsReached:
    - xmlFree
    - xmlBufAttrSerializeTxtContent
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterWriteRaw
    - xmlEncodeSpecialChars
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteString(xmlTextWriter *writer, const xmlChar *
      content)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1525,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1531,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 3
    argNames:
    - out
    - len
    - data
    argTypes:
    - xmlOutputBufferPtr
    - int
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1475
    functionDepth: 3
    functionLinenumber: 1475
    functionLinenumberEnd: 1544
    functionName: xmlOutputBufferWriteBase64
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: int
    signature: "int xmlOutputBufferWriteBase64(xmlOutputBufferPtr out, int len,\n
      \                          const unsigned char *data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1568,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1570,1
    - Dst: xmlTextWriterHandleStateDependencies
      Src: /src/libxml2/xmlwriter.c:1572,1
    - Dst: xmlOutputBufferWriteBase64
      Src: /src/libxml2/xmlwriter.c:1583,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 4
    argNames:
    - writer
    - data
    - start
    - len
    argTypes:
    - xmlTextWriter*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1555
    functionDepth: 4
    functionLinenumber: 1555
    functionLinenumberEnd: 1590
    functionName: xmlTextWriterWriteBase64
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferWriteBase64
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterHandleStateDependencies
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteBase64(xmlTextWriter *writer, const char *data,\n
      \                        int start, int len)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1618,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1624,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - out
    - len
    - data
    argTypes:
    - xmlOutputBufferPtr
    - int
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1601
    functionDepth: 3
    functionLinenumber: 1601
    functionLinenumberEnd: 1632
    functionName: xmlOutputBufferWriteBinHex
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: int
    signature: "int xmlOutputBufferWriteBinHex(xmlOutputBufferPtr out,\n                           int
      len, const unsigned char *data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1656,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1658,1
    - Dst: xmlTextWriterHandleStateDependencies
      Src: /src/libxml2/xmlwriter.c:1660,1
    - Dst: xmlOutputBufferWriteBinHex
      Src: /src/libxml2/xmlwriter.c:1671,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 4
    argNames:
    - writer
    - data
    - start
    - len
    argTypes:
    - xmlTextWriter*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1643
    functionDepth: 4
    functionLinenumber: 1643
    functionLinenumberEnd: 1678
    functionName: xmlTextWriterWriteBinHex
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferWriteBinHex
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterHandleStateDependencies
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteBinHex(xmlTextWriter *writer, const char *data,\n
      \                        int start, int len)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1699,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1703,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:1709,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1715,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1720,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:1725,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1729,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - writer
    - name
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1687
    functionDepth: 4
    functionLinenumber: 1687
    functionLinenumberEnd: 1740
    functionName: xmlTextWriterStartAttribute
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartAttribute(xmlTextWriter *writer, const xmlChar
      * name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1768,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1770,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1771,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1776,1
    - Dst: xmlListSearch
      Src: /src/libxml2/xmlwriter.c:1778,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1781,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/xmlwriter.c:1782,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:1794,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1796,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1802,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:1804,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1806,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1809,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:1811,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:1817,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1818,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlwriter.c:1820,1
    - Dst: xmlTextWriterStartAttribute
      Src: /src/libxml2/xmlwriter.c:1823,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1824,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 4
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1830
      start: 1751
    functionDepth: 6
    functionLinenumber: 1751
    functionLinenumberEnd: 1830
    functionName: xmlTextWriterStartAttributeNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlTextWriterStartAttribute
    - xmlListFront
    - xmlMalloc
    - xmlStrcmp
    - xmlListPushFront
    - xmlStrcat
    - xmlListSearch
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterStartAttributeNS(xmlTextWriter *writer,\n                              const
      xmlChar * prefix, const xmlChar * name,\n                              const
      xmlChar * namespaceURI)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:1849,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:1854,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:1864,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1838
    functionDepth: 3
    functionLinenumber: 1838
    functionLinenumberEnd: 1875
    functionName: xmlTextWriterEndAttribute
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 5
    functionsReached:
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndAttribute(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:1894,1
    - Dst: xmlTextWriterWriteVFormatAttribute
      Src: /src/libxml2/xmlwriter.c:1896,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:1898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - writer
    - name
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1886
    functionDepth: 1
    functionLinenumber: 1886
    functionLinenumberEnd: 1900
    functionName: xmlTextWriterWriteFormatAttribute
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatAttribute
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatAttribute(xmlTextWriter *writer,\n                                  const
      xmlChar * name, const char *format,\n                                  ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:1922,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/xmlwriter.c:1926,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:1928,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - writer
    - name
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1930
    functionName: xmlTextWriterWriteVFormatAttribute
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlTextWriterVSprintf
    - xmlTextWriterWriteAttribute
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatAttribute(xmlTextWriter *writer,\n                                   const
      xmlChar * name,\n                                   const char *format, va_list
      argptr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartAttribute
      Src: /src/libxml2/xmlwriter.c:1948,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:1952,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:1956,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - writer
    - name
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1940
    functionDepth: 9
    functionLinenumber: 1940
    functionLinenumberEnd: 1962
    functionName: xmlTextWriterWriteAttribute
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterStartAttribute
    - xmlTextWriterWriteString
    - xmlTextWriterEndAttribute
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteAttribute(xmlTextWriter *writer, const xmlChar
      * name,\n                            const xmlChar * content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:1985,1
    - Dst: xmlTextWriterWriteVFormatAttributeNS
      Src: /src/libxml2/xmlwriter.c:1987,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:1990,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1992
      start: 1975
    functionDepth: 1
    functionLinenumber: 1975
    functionLinenumberEnd: 1992
    functionName: xmlTextWriterWriteFormatAttributeNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatAttributeNS
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatAttributeNS(xmlTextWriter *writer,\n                                    const
      xmlChar * prefix,\n                                    const xmlChar * name,\n
      \                                   const xmlChar * namespaceURI,\n                                    const
      char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2018,1
    - Dst: xmlTextWriterWriteAttributeNS
      Src: /src/libxml2/xmlwriter.c:2022,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2025,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2005
    functionDepth: 1
    functionLinenumber: 2005
    functionLinenumberEnd: 2027
    functionName: xmlTextWriterWriteVFormatAttributeNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteAttributeNS
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatAttributeNS(xmlTextWriter *writer,\n
      \                                    const xmlChar * prefix,\n                                     const
      xmlChar * name,\n                                     const xmlChar * namespaceURI,\n
      \                                    const char *format, va_list argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartAttributeNS
      Src: /src/libxml2/xmlwriter.c:2052,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2056,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:2060,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 5
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2066
      start: 2039
    functionDepth: 9
    functionLinenumber: 2039
    functionLinenumberEnd: 2066
    functionName: xmlTextWriterWriteAttributeNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterStartAttributeNS
    - xmlTextWriterWriteString
    - xmlTextWriterEndAttribute
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteAttributeNS(xmlTextWriter *writer,\n                              const
      xmlChar * prefix, const xmlChar * name,\n                              const
      xmlChar * namespaceURI,\n                              const xmlChar * content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:2085,1
    - Dst: xmlTextWriterWriteVFormatElement
      Src: /src/libxml2/xmlwriter.c:2087,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:2089,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - writer
    - name
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2091
      start: 2077
    functionDepth: 1
    functionLinenumber: 2077
    functionLinenumberEnd: 2091
    functionName: xmlTextWriterWriteFormatElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - xmlTextWriterWriteVFormatElement
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatElement(xmlTextWriter *writer,\n                                const
      xmlChar * name, const char *format,\n                                ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2113,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/xmlwriter.c:2117,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - writer
    - name
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2102
    functionDepth: 1
    functionLinenumber: 2102
    functionLinenumberEnd: 2121
    functionName: xmlTextWriterWriteVFormatElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteElement
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatElement(xmlTextWriter *writer,\n                                 const
      xmlChar * name, const char *format,\n                                 va_list
      argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/xmlwriter.c:2139,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2144,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/xmlwriter.c:2149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - writer
    - name
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2155
      start: 2131
    functionDepth: 9
    functionLinenumber: 2131
    functionLinenumberEnd: 2155
    functionName: xmlTextWriterWriteElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterEndElement
    - xmlTextWriterWriteString
    - xmlTextWriterStartElement
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteElement(xmlTextWriter *writer, const xmlChar
      * name,\n                          const xmlChar * content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:2178,1
    - Dst: xmlTextWriterWriteVFormatElementNS
      Src: /src/libxml2/xmlwriter.c:2180,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:2183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2168
    functionDepth: 1
    functionLinenumber: 2168
    functionLinenumberEnd: 2185
    functionName: xmlTextWriterWriteFormatElementNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteVFormatElementNS
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatElementNS(xmlTextWriter *writer,\n                                  const
      xmlChar * prefix,\n                                  const xmlChar * name,\n
      \                                 const xmlChar * namespaceURI,\n                                  const
      char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2211,1
    - Dst: xmlTextWriterWriteElementNS
      Src: /src/libxml2/xmlwriter.c:2215,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2198
    functionDepth: 1
    functionLinenumber: 2198
    functionLinenumberEnd: 2220
    functionName: xmlTextWriterWriteVFormatElementNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlTextWriterVSprintf
    - xmlTextWriterWriteElementNS
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatElementNS(xmlTextWriter *writer,\n                                   const
      xmlChar * prefix,\n                                   const xmlChar * name,\n
      \                                  const xmlChar * namespaceURI,\n                                   const
      char *format, va_list argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartElementNS
      Src: /src/libxml2/xmlwriter.c:2246,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2250,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/xmlwriter.c:2254,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 5
    argNames:
    - writer
    - prefix
    - name
    - namespaceURI
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2260
      start: 2232
    functionDepth: 9
    functionLinenumber: 2232
    functionLinenumberEnd: 2260
    functionName: xmlTextWriterWriteElementNS
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterEndElement
    - xmlTextWriterWriteString
    - xmlTextWriterStartElementNS
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteElementNS(xmlTextWriter *writer,\n                            const
      xmlChar * prefix, const xmlChar * name,\n                            const xmlChar
      * namespaceURI,\n                            const xmlChar * content)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/xmlwriter.c:2280,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2281,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2287,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2289,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:2293,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:2300,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2304,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2316,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:2326,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2328,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:2333,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2335,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2337,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:2342,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2344,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2349,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 64
    argCount: 2
    argNames:
    - writer
    - target
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2355
      start: 2269
    functionDepth: 6
    functionLinenumber: 2269
    functionLinenumberEnd: 2355
    functionName: xmlTextWriterStartPI
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlMalloc
    - xmlStrcasecmp
    - xmlListPushFront
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartPI(xmlTextWriter *writer, const xmlChar * target)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2374,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2378,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2386,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2396,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:2402,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2363
    functionDepth: 4
    functionLinenumber: 2363
    functionLinenumberEnd: 2404
    functionName: xmlTextWriterEndPI
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndPI(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:2422,1
    - Dst: xmlTextWriterWriteVFormatPI
      Src: /src/libxml2/xmlwriter.c:2424,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:2426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - writer
    - target
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2428
      start: 2415
    functionDepth: 1
    functionLinenumber: 2415
    functionLinenumberEnd: 2428
    functionName: xmlTextWriterWriteFormatPI
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteVFormatPI
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatPI(xmlTextWriter *writer, const xmlChar
      * target,\n                           const char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2450,1
    - Dst: xmlTextWriterWritePI
      Src: /src/libxml2/xmlwriter.c:2454,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2456,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - writer
    - target
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2458
      start: 2439
    functionDepth: 1
    functionLinenumber: 2439
    functionLinenumberEnd: 2458
    functionName: xmlTextWriterWriteVFormatPI
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWritePI
    - xmlTextWriterVSprintf
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatPI(xmlTextWriter *writer,\n                            const
      xmlChar * target, const char *format,\n                            va_list argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartPI
      Src: /src/libxml2/xmlwriter.c:2476,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2481,1
    - Dst: xmlTextWriterEndPI
      Src: /src/libxml2/xmlwriter.c:2486,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - writer
    - target
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2492
      start: 2468
    functionDepth: 9
    functionLinenumber: 2468
    functionLinenumberEnd: 2492
    functionName: xmlTextWriterWritePI
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterEndPI
    - xmlTextWriterWriteString
    - xmlTextWriterStartPI
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWritePI(xmlTextWriter *writer, const xmlChar * target,\n
      \                    const xmlChar * content)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2512,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2514,1
    - Dst: xmlTextWriterEndAttribute
      Src: /src/libxml2/xmlwriter.c:2523,1
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:2530,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2534,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2541,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:2551,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2553,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:2561,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2563,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2569
      start: 2500
    functionDepth: 6
    functionLinenumber: 2500
    functionLinenumberEnd: 2569
    functionName: xmlTextWriterStartCDATA
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndAttribute
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartCDATA(xmlTextWriter *writer)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2588,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2592,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2599,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:2608,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2610
      start: 2577
    functionDepth: 4
    functionLinenumber: 2577
    functionLinenumberEnd: 2610
    functionName: xmlTextWriterEndCDATA
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndCDATA(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:2627,1
    - Dst: xmlTextWriterWriteVFormatCDATA
      Src: /src/libxml2/xmlwriter.c:2629,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:2631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - writer
    - format
    argTypes:
    - xmlTextWriter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2633
      start: 2620
    functionDepth: 1
    functionLinenumber: 2620
    functionLinenumberEnd: 2633
    functionName: xmlTextWriterWriteFormatCDATA
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteVFormatCDATA
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatCDATA(xmlTextWriter *writer, const char
      *format,\n                              ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2653,1
    - Dst: xmlTextWriterWriteCDATA
      Src: /src/libxml2/xmlwriter.c:2657,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - writer
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2643
    functionDepth: 1
    functionLinenumber: 2643
    functionLinenumberEnd: 2661
    functionName: xmlTextWriterWriteVFormatCDATA
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteCDATA
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatCDATA(xmlTextWriter *writer, const char
      *format,\n                               va_list argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartCDATA
      Src: /src/libxml2/xmlwriter.c:2677,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2682,1
    - Dst: xmlTextWriterEndCDATA
      Src: /src/libxml2/xmlwriter.c:2687,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - writer
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2670
    functionDepth: 9
    functionLinenumber: 2670
    functionLinenumberEnd: 2693
    functionName: xmlTextWriterWriteCDATA
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterEndCDATA
    - xmlTextWriterStartCDATA
    - xmlTextWriterWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteCDATA(xmlTextWriter *writer, const xmlChar *
      content)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2718,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2719,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2720,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:2726,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2728,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:2733,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2735,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2737,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:2742,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2744,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2748,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:2755,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2761,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2763,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2768,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2773,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2779,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2784,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2793,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2795,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2799,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2805,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2807,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2813,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2819,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:2824,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 92
    argCount: 4
    argNames:
    - writer
    - name
    - pubid
    - sysid
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2831
      start: 2704
    functionDepth: 6
    functionLinenumber: 2704
    functionLinenumberEnd: 2831
    functionName: xmlTextWriterStartDTD
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterStartDTD(xmlTextWriter *writer,\n                      const
      xmlChar * name,\n                      const xmlChar * pubid, const xmlChar
      * sysid)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:2854,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:2857,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2862,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2868,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:2874,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:2877,1
    - Dst: xmlTextWriterEndDTDElement
      Src: /src/libxml2/xmlwriter.c:2881,1
    - Dst: xmlTextWriterEndDTDAttlist
      Src: /src/libxml2/xmlwriter.c:2885,1
    - Dst: xmlTextWriterEndDTDEntity
      Src: /src/libxml2/xmlwriter.c:2890,1
    - Dst: xmlTextWriterEndComment
      Src: /src/libxml2/xmlwriter.c:2893,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2839
    functionDepth: 7
    functionLinenumber: 2839
    functionLinenumberEnd: 2906
    functionName: xmlTextWriterEndDTD
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterEndDTDElement
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterEndDTDEntity
    - xmlTextWriterEndDTDAttlist
    - xmlOutputBufferWriteString
    - xmlTextWriterEndComment
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndDTD(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:2928,1
    - Dst: xmlTextWriterWriteVFormatDTD
      Src: /src/libxml2/xmlwriter.c:2930,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:2933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - writer
    - name
    - pubid
    - sysid
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2935
      start: 2919
    functionDepth: 1
    functionLinenumber: 2919
    functionLinenumberEnd: 2935
    functionName: xmlTextWriterWriteFormatDTD
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatDTD
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatDTD(xmlTextWriter *writer,\n                            const
      xmlChar * name,\n                            const xmlChar * pubid,\n                            const
      xmlChar * sysid, const char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:2961,1
    - Dst: xmlTextWriterWriteDTD
      Src: /src/libxml2/xmlwriter.c:2965,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:2967,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - writer
    - name
    - pubid
    - sysid
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2969
      start: 2948
    functionDepth: 1
    functionLinenumber: 2948
    functionLinenumberEnd: 2969
    functionName: xmlTextWriterWriteVFormatDTD
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlTextWriterVSprintf
    - xmlTextWriterWriteDTD
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatDTD(xmlTextWriter *writer,\n                             const
      xmlChar * name,\n                             const xmlChar * pubid,\n                             const
      xmlChar * sysid,\n                             const char *format, va_list argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartDTD
      Src: /src/libxml2/xmlwriter.c:2991,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:2996,1
    - Dst: xmlTextWriterEndDTD
      Src: /src/libxml2/xmlwriter.c:3001,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - writer
    - name
    - pubid
    - sysid
    - subset
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3007
      start: 2981
    functionDepth: 9
    functionLinenumber: 2981
    functionLinenumberEnd: 3007
    functionName: xmlTextWriterWriteDTD
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterWriteString
    - xmlTextWriterStartDTD
    - xmlTextWriterEndDTD
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTD(xmlTextWriter *writer,\n                      const
      xmlChar * name,\n                      const xmlChar * pubid,\n                      const
      xmlChar * sysid, const xmlChar * subset)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3028,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3033,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3037,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3042,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:3058,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3060,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:3065,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3067,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3069,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:3074,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:3077,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3083,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3087,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 2
    argNames:
    - writer
    - name
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3093
      start: 3016
    functionDepth: 6
    functionLinenumber: 3016
    functionLinenumberEnd: 3093
    functionName: xmlTextWriterStartDTDElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlLinkGetData
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterWriteIndent
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartDTDElement(xmlTextWriter *writer, const xmlChar
      * name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3113,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3117,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3124,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3134,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:3140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3101
    functionDepth: 4
    functionLinenumber: 3101
    functionLinenumberEnd: 3142
    functionName: xmlTextWriterEndDTDElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndDTDElement(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:3161,1
    - Dst: xmlTextWriterWriteVFormatDTDElement
      Src: /src/libxml2/xmlwriter.c:3163,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:3165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - writer
    - name
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3167
      start: 3153
    functionDepth: 1
    functionLinenumber: 3153
    functionLinenumberEnd: 3167
    functionName: xmlTextWriterWriteFormatDTDElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatDTDElement
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatDTDElement(xmlTextWriter *writer,\n                                   const
      xmlChar * name,\n                                   const char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:3189,1
    - Dst: xmlTextWriterWriteDTDElement
      Src: /src/libxml2/xmlwriter.c:3193,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - writer
    - name
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3197
      start: 3178
    functionDepth: 1
    functionLinenumber: 3178
    functionLinenumberEnd: 3197
    functionName: xmlTextWriterWriteVFormatDTDElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteDTDElement
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatDTDElement(xmlTextWriter *writer,\n                                    const
      xmlChar * name,\n                                    const char *format, va_list
      argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartDTDElement
      Src: /src/libxml2/xmlwriter.c:3218,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:3223,1
    - Dst: xmlTextWriterEndDTDElement
      Src: /src/libxml2/xmlwriter.c:3228,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - writer
    - name
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3234
      start: 3207
    functionDepth: 9
    functionLinenumber: 3207
    functionLinenumberEnd: 3234
    functionName: xmlTextWriterWriteDTDElement
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterStartDTDElement
    - xmlTextWriterWriteString
    - xmlTextWriterEndDTDElement
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDElement(xmlTextWriter *writer,\n                             const
      xmlChar * name, const xmlChar * content)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3255,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3260,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3264,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3269,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:3285,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3287,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:3292,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3294,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3296,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:3301,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:3304,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3310,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3314,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 2
    argNames:
    - writer
    - name
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3320
      start: 3243
    functionDepth: 6
    functionLinenumber: 3243
    functionLinenumberEnd: 3320
    functionName: xmlTextWriterStartDTDAttlist
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlLinkGetData
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterWriteIndent
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterStartDTDAttlist(xmlTextWriter *writer, const xmlChar
      * name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3340,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3344,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3351,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3361,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:3367,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3369
      start: 3328
    functionDepth: 4
    functionLinenumber: 3328
    functionLinenumberEnd: 3369
    functionName: xmlTextWriterEndDTDAttlist
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndDTDAttlist(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:3388,1
    - Dst: xmlTextWriterWriteVFormatDTDAttlist
      Src: /src/libxml2/xmlwriter.c:3390,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:3392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - writer
    - name
    - format
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3380
    functionDepth: 1
    functionLinenumber: 3380
    functionLinenumberEnd: 3394
    functionName: xmlTextWriterWriteFormatDTDAttlist
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - xmlTextWriterWriteVFormatDTDAttlist
    - va_start
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatDTDAttlist(xmlTextWriter *writer,\n                                   const
      xmlChar * name,\n                                   const char *format, ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:3416,1
    - Dst: xmlTextWriterWriteDTDAttlist
      Src: /src/libxml2/xmlwriter.c:3420,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3422,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - writer
    - name
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3424
      start: 3405
    functionDepth: 1
    functionLinenumber: 3405
    functionLinenumberEnd: 3424
    functionName: xmlTextWriterWriteVFormatDTDAttlist
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteDTDAttlist
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriter *writer,\n                                    const
      xmlChar * name,\n                                    const char *format, va_list
      argptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartDTDAttlist
      Src: /src/libxml2/xmlwriter.c:3445,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:3450,1
    - Dst: xmlTextWriterEndDTDAttlist
      Src: /src/libxml2/xmlwriter.c:3455,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - writer
    - name
    - content
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3461
      start: 3434
    functionDepth: 9
    functionLinenumber: 3434
    functionLinenumberEnd: 3461
    functionName: xmlTextWriterWriteDTDAttlist
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterStartDTDAttlist
    - xmlTextWriterWriteString
    - xmlTextWriterEndDTDAttlist
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDAttlist(xmlTextWriter *writer,\n                             const
      xmlChar * name, const xmlChar * content)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3484,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3487,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3491,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3497,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:3514,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3516,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:3521,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3523,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3525,1
    - Dst: xmlListPushFront
      Src: /src/libxml2/xmlwriter.c:3534,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:3537,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3543,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3549,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3555,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 65
    argCount: 3
    argNames:
    - writer
    - pe
    - name
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3561
      start: 3471
    functionDepth: 6
    functionLinenumber: 3471
    functionLinenumberEnd: 3561
    functionName: xmlTextWriterStartDTDEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlWriterErrMsg
    - xmlStrdup
    - xmlFree
    - xmlLinkGetData
    - xmlListFront
    - xmlMalloc
    - xmlListPushFront
    - xmlTextWriterWriteIndent
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterStartDTDEntity(xmlTextWriter *writer,\n                            int
      pe, const xmlChar * name)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3581,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3585,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:3591,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3598,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3608,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:3614,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3616
      start: 3569
    functionDepth: 4
    functionLinenumber: 3569
    functionLinenumberEnd: 3616
    functionName: xmlTextWriterEndDTDEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlOutputBufferWrite
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterEndDTDEntity(xmlTextWriter *writer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlwriter.c:3637,1
    - Dst: xmlTextWriterWriteVFormatDTDInternalEntity
      Src: /src/libxml2/xmlwriter.c:3639,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:3642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - writer
    - pe
    - name
    - format
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3644
      start: 3628
    functionDepth: 1
    functionLinenumber: 3628
    functionLinenumberEnd: 3644
    functionName: xmlTextWriterWriteFormatDTDInternalEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - va_end
    - va_start
    - xmlTextWriterWriteVFormatDTDInternalEntity
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriter *writer,\n
      \                                         int pe,\n                                          const
      xmlChar * name,\n                                          const char *format,
      ...)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterVSprintf
      Src: /src/libxml2/xmlwriter.c:3669,1
    - Dst: xmlTextWriterWriteDTDInternalEntity
      Src: /src/libxml2/xmlwriter.c:3673,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:3675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - writer
    - pe
    - name
    - format
    - argptr
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3677
      start: 3656
    functionDepth: 1
    functionLinenumber: 3656
    functionLinenumberEnd: 3677
    functionName: xmlTextWriterWriteVFormatDTDInternalEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteDTDInternalEntity
    - xmlFree
    - xmlTextWriterVSprintf
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriter *writer,\n
      \                                          int pe,\n                                           const
      xmlChar * name,\n                                           const char *format,\n
      \                                          va_list argptr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterWriteDTDInternalEntity
      Src: /src/libxml2/xmlwriter.c:3706,1
    - Dst: xmlTextWriterWriteDTDExternalEntity
      Src: /src/libxml2/xmlwriter.c:3709,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 7
    argNames:
    - writer
    - pe
    - name
    - pubid
    - sysid
    - ndataid
    - content
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3711
      start: 3691
    functionDepth: 1
    functionLinenumber: 3691
    functionLinenumberEnd: 3711
    functionName: xmlTextWriterWriteDTDEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterWriteDTDInternalEntity
    - xmlTextWriterWriteDTDExternalEntity
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDEntity(xmlTextWriter *writer,\n                            int
      pe,\n                            const xmlChar * name,\n                            const
      xmlChar * pubid,\n                            const xmlChar * sysid,\n                            const
      xmlChar * ndataid,\n                            const xmlChar * content)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartDTDEntity
      Src: /src/libxml2/xmlwriter.c:3735,1
    - Dst: xmlTextWriterWriteString
      Src: /src/libxml2/xmlwriter.c:3740,1
    - Dst: xmlTextWriterEndDTDEntity
      Src: /src/libxml2/xmlwriter.c:3745,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - writer
    - pe
    - name
    - content
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3751
      start: 3722
    functionDepth: 9
    functionLinenumber: 3722
    functionLinenumberEnd: 3751
    functionName: xmlTextWriterWriteDTDInternalEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 3
    functionsReached:
    - xmlTextWriterEndDTDEntity
    - xmlTextWriterWriteString
    - xmlTextWriterStartDTDEntity
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDInternalEntity(xmlTextWriter *writer,\n                                    int
      pe,\n                                    const xmlChar * name,\n                                    const
      xmlChar * content)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterStartDTDEntity
      Src: /src/libxml2/xmlwriter.c:3781,1
    - Dst: xmlTextWriterWriteDTDExternalEntityContents
      Src: /src/libxml2/xmlwriter.c:3787,1
    - Dst: xmlTextWriterEndDTDEntity
      Src: /src/libxml2/xmlwriter.c:3793,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 6
    argNames:
    - writer
    - pe
    - name
    - pubid
    - sysid
    - ndataid
    argTypes:
    - xmlTextWriter*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3799
      start: 3764
    functionDepth: 7
    functionLinenumber: 3764
    functionLinenumberEnd: 3799
    functionName: xmlTextWriterWriteDTDExternalEntity
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlTextWriterWriteDTDExternalEntityContents
    - xmlTextWriterEndDTDEntity
    - xmlTextWriterStartDTDEntity
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDExternalEntity(xmlTextWriter *writer,\n                                    int
      pe,\n                                    const xmlChar * name,\n                                    const
      xmlChar * pubid,\n                                    const xmlChar * sysid,\n
      \                                   const xmlChar * ndataid)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3822,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3828,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3830,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3835,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3844,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3850,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:3857,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3862,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:3867,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3873,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:3878,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3886,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3892,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:3897,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3903,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:3908,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3915,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3921,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 84
    argCount: 4
    argNames:
    - writer
    - pubid
    - sysid
    - ndataid
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3929
      start: 3810
    functionDepth: 6
    functionLinenumber: 3810
    functionLinenumberEnd: 3929
    functionName: xmlTextWriterWriteDTDExternalEntityContents
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlWriterErrMsg
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriter *writer,\n
      \                                           const xmlChar * pubid,\n                                            const
      xmlChar * sysid,\n                                            const xmlChar
      * ndataid)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:3954,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:3959,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3963,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3968,1
    - Dst: xmlTextWriterWriteIndent
      Src: /src/libxml2/xmlwriter.c:3983,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3989,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3993,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:3999,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:4003,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4008,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:4012,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4020,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4025,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:4029,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4034,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlwriter.c:4038,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4044,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 90
    argCount: 4
    argNames:
    - writer
    - name
    - pubid
    - sysid
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4050
      start: 3940
    functionDepth: 4
    functionLinenumber: 3940
    functionLinenumberEnd: 4050
    functionName: xmlTextWriterWriteDTDNotation
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferWrite
    - xmlLinkGetData
    - xmlListFront
    - xmlTextWriterWriteIndent
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterWriteDTDNotation(xmlTextWriter *writer,\n                              const
      xmlChar * name,\n                              const xmlChar * pubid, const
      xmlChar * sysid)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlwriter.c:4069,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4072
      start: 4058
    functionDepth: 3
    functionLinenumber: 4058
    functionLinenumberEnd: 4072
    functionName: xmlTextWriterFlush
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 2
    functionsReached:
    - xmlOutputBufferFlush
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterFlush(xmlTextWriter *writer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlwriter.c:4090,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4099
      start: 4082
    functionDepth: 2
    functionLinenumber: 4082
    functionLinenumberEnd: 4099
    functionName: xmlTextWriterClose
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferClose
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterClose(xmlTextWriter *writer)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:4115,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4120,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - lk
    argTypes:
    - xmlLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4122
      start: 4110
    functionDepth: 1
    functionLinenumber: 4110
    functionLinenumberEnd: 4122
    functionName: xmlFreeTextWriterStackEntry
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlLinkGetData
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeTextWriterStackEntry(xmlLinkPtr lk)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxml2/xmlwriter.c:4149,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - data0
    - data1
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4150
      start: 4131
    functionDepth: 1
    functionLinenumber: 4131
    functionLinenumberEnd: 4150
    functionName: xmlCmpTextWriterStackEntry
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xmlCmpTextWriterStackEntry(const void *data0, const void *data1)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlListEmpty
      Src: /src/libxml2/xmlwriter.c:4170,1
    - Dst: xmlListFront
      Src: /src/libxml2/xmlwriter.c:4174,1
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:4175,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:4178,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:4179,1
    - Dst: xmlListPopFront
      Src: /src/libxml2/xmlwriter.c:4182,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/xmlwriter.c:4185,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4186,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4187,1
    - Dst: xmlListDelete
      Src: /src/libxml2/xmlwriter.c:4190,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriterPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4198
      start: 4161
    functionDepth: 10
    functionLinenumber: 4161
    functionLinenumberEnd: 4198
    functionName: xmlTextWriterOutputNSDecl
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 6
    functionsReached:
    - xmlStrdup
    - xmlListEmpty
    - xmlFree
    - xmlListPopFront
    - xmlLinkGetData
    - xmlListFront
    - xmlListDelete
    - xmlTextWriterWriteAttribute
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterOutputNSDecl(xmlTextWriterPtr writer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlLinkGetData
      Src: /src/libxml2/xmlwriter.c:4210,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4215,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4217,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - lk
    argTypes:
    - xmlLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4220
      start: 4205
    functionDepth: 1
    functionLinenumber: 4205
    functionLinenumberEnd: 4220
    functionName: xmlFreeTextWriterNsStackEntry
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlLinkGetData
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeTextWriterNsStackEntry(xmlLinkPtr lk)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxml2/xmlwriter.c:4248,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - data0
    - data1
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4254
      start: 4229
    functionDepth: 1
    functionLinenumber: 4229
    functionLinenumberEnd: 4254
    functionName: xmlCmpTextWriterNsStackEntry
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xmlCmpTextWriterNsStackEntry(const void *data0, const void *data1)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlwriter.c:4270,1
    - Dst: xmlWriterErrMsgInt
      Src: /src/libxml2/xmlwriter.c:4272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - context
    - str
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4279
      start: 4264
    functionDepth: 6
    functionLinenumber: 4264
    functionLinenumberEnd: 4279
    functionName: xmlTextWriterWriteDocCallback
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlWriterErrMsgInt
    - xmlParseChunk
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteDocCallback(void *context, const char *str, int
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseChunk
      Src: /src/libxml2/xmlwriter.c:4293,1
    - Dst: xmlWriterErrMsgInt
      Src: /src/libxml2/xmlwriter.c:4295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4302
      start: 4287
    functionDepth: 6
    functionLinenumber: 4287
    functionLinenumberEnd: 4302
    functionName: xmlTextWriterCloseDocCallback
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlWriterErrMsgInt
    - xmlParseChunk
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterCloseDocCallback(void *context)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:4320,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:4322,1
    - Dst: va_copy
      Src: /src/libxml2/xmlwriter.c:4327,1
    - Dst: vsnprintf
      Src: /src/libxml2/xmlwriter.c:4328,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:4330,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4331,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlwriter.c:4333,1
    - Dst: xmlWriterErrMsg
      Src: /src/libxml2/xmlwriter.c:4335,1
    - Dst: va_copy
      Src: /src/libxml2/xmlwriter.c:4339,1
    - Dst: va_end
      Src: /src/libxml2/xmlwriter.c:4341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - format
    - argptr
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4344
      start: 4311
    functionDepth: 6
    functionLinenumber: 4311
    functionLinenumberEnd: 4344
    functionName: xmlTextWriterVSprintf
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 13
    functionsReached:
    - xmlWriterErrMsg
    - va_end
    - xmlFree
    - va_copy
    - vsnprintf
    - xmlMalloc
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlTextWriterVSprintf(const char *format, va_list argptr)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/xmlwriter.c:4360,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/xmlwriter.c:4362,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/xmlwriter.c:4370,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:4374,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/xmlwriter.c:4380,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/xmlwriter.c:4387,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:4390,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4392
      start: 4351
    functionDepth: 1
    functionLinenumber: 4351
    functionLinenumberEnd: 4392
    functionName: xmlTextWriterStartDocumentCallback
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCtxtErrMemory
    - xmlNewDoc
    - htmlNewDocNoDtD
    - xmlCanonicPath
    linkageType: ''
    returnType: void
    signature: void xmlTextWriterStartDocumentCallback(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - writer
    - indent
    argTypes:
    - xmlTextWriter*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4411
      start: 4401
    functionDepth: 0
    functionLinenumber: 4401
    functionLinenumberEnd: 4411
    functionName: xmlTextWriterSetIndent
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterSetIndent(xmlTextWriter *writer, int indent)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlwriter.c:4427,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlwriter.c:4428,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - writer
    - str
    argTypes:
    - xmlTextWriter*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4434
      start: 4420
    functionDepth: 1
    functionLinenumber: 4420
    functionLinenumberEnd: 4434
    functionName: xmlTextWriterSetIndentString
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterSetIndentString(xmlTextWriter *writer, const xmlChar
      * str)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - writer
    - quotechar
    argTypes:
    - xmlTextWriter*
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4452
      start: 4443
    functionDepth: 0
    functionLinenumber: 4443
    functionLinenumberEnd: 4452
    functionName: xmlTextWriterSetQuoteChar
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterSetQuoteChar(xmlTextWriter *writer, xmlChar quotechar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListSize
      Src: /src/libxml2/xmlwriter.c:4467,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4471,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - writer
    argTypes:
    - xmlTextWriterPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4478
      start: 4460
    functionDepth: 4
    functionLinenumber: 4460
    functionLinenumberEnd: 4478
    functionName: xmlTextWriterWriteIndent
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 8
    functionsReached:
    - xmlListSize
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlTextWriterWriteIndent(xmlTextWriterPtr writer)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextWriterOutputNSDecl
      Src: /src/libxml2/xmlwriter.c:4508,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlwriter.c:4544,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 2
    argNames:
    - writer
    - p
    argTypes:
    - xmlTextWriterPtr
    - xmlTextWriterStackEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4551
      start: 4487
    functionDepth: 11
    functionLinenumber: 4487
    functionLinenumberEnd: 4551
    functionName: xmlTextWriterHandleStateDependencies
    functionSourceFile: /src/libxml2/xmlwriter.c
    functionUses: 3
    functionsReached:
    - xmlTextWriterOutputNSDecl
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlTextWriterHandleStateDependencies(xmlTextWriterPtr writer,\n
      \                                    xmlTextWriterStackEntry * p)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: XML_STREAM_XS_IDC
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_STREAM_XS_IDC(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: XML_STREAM_XS_IDC_SEL
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_STREAM_XS_IDC_SEL(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 81
    functionName: XML_STREAM_XS_IDC_FIELD
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_STREAM_XS_IDC_FIELD(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - r
    - ','
    - nsname
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: XML_PAT_COPY_NSNAME
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_PAT_COPY_NSNAME(c, r, nsname)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 88
    functionName: XML_PAT_FREE_STRING
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_PAT_FREE_STRING(c, r)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/pattern.c:204,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:206,1
    - Dst: memset
      Src: /src/libxml2/pattern.c:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 214
    functionName: xmlNewPattern
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - ERROR
    - memset
    linkageType: ''
    returnType: xmlPatternPtr
    signature: xmlPatternPtr xmlNewPattern(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreePatternList
      Src: /src/libxml2/pattern.c:223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: xmlFreePattern
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 6
    functionsReached:
    - xmlFreePatternList
    linkageType: ''
    returnType: void
    signature: void xmlFreePattern(xmlPattern *comp)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeStreamComp
      Src: /src/libxml2/pattern.c:234,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:236,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:242,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:244,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:247,1
    - Dst: xmlDictFree
      Src: /src/libxml2/pattern.c:250,1
    - Dst: memset
      Src: /src/libxml2/pattern.c:252,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:253,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 254
    functionName: xmlFreePatternInternal
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xmlFreeStreamComp
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlFreePatternInternal(xmlPatternPtr comp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreePatternInternal
      Src: /src/libxml2/pattern.c:269,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 261
    functionDepth: 2
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionName: xmlFreePatternList
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 2
    functionsReached:
    - xmlFreePatternInternal
    linkageType: ''
    returnType: void
    signature: void xmlFreePatternList(xmlPattern *comp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/pattern.c:290,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:292,1
    - Dst: memset
      Src: /src/libxml2/pattern.c:296,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - pattern
    - dict
    - namespaces
    argTypes:
    - xmlChar*
    - xmlDictPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 310
    functionName: xmlNewPatParserContext
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - ERROR
    - memset
    linkageType: ''
    returnType: xmlPatParserContextPtr
    signature: "xmlPatParserContextPtr xmlNewPatParserContext(const xmlChar *pattern,
      xmlDictPtr dict,\n                       const xmlChar **namespaces)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/pattern.c:321,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: xmlFreePatParserContext
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlFreePatParserContext(xmlPatParserContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/pattern.c:330,1
    - Dst: xmlRealloc
      Src: /src/libxml2/pattern.c:334,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 341
    functionName: xmlPatternGrow
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlPatternGrow(xmlPatternPtr comp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatternGrow
      Src: /src/libxml2/pattern.c:358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 5
    argNames:
    - ctxt
    - comp
    - op
    - value
    - value2
    argTypes:
    - xmlPatParserContextPtr
    - xmlPatternPtr
    - xmlPatOp
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 353
    functionDepth: 2
    functionLinenumber: 353
    functionLinenumberEnd: 368
    functionName: xmlPatternAdd
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlPatternGrow
    linkageType: ''
    returnType: int
    signature: "int xmlPatternAdd(xmlPatParserContextPtr ctxt, xmlPatternPtr comp,\n
      \             xmlPatOp op, xmlChar * value, xmlChar * value2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatternGrow
      Src: /src/libxml2/pattern.c:396,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 376
    functionDepth: 2
    functionLinenumber: 376
    functionLinenumberEnd: 422
    functionName: xmlReversePattern
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlPatternGrow
    linkageType: ''
    returnType: int
    signature: int xmlReversePattern(xmlPatternPtr comp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/pattern.c:436,1
    - Dst: xmlRealloc
      Src: /src/libxml2/pattern.c:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - states
    - step
    - node
    argTypes:
    - xmlStepStates*
    - int
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 449
    functionName: xmlPatPushState
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlPatPushState(xmlStepStates *states, int step, xmlNodePtr node)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:487,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:497,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:515,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:530,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:538,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:554,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:563,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:589,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:596,1
    - Dst: xmlPatPushState
      Src: /src/libxml2/pattern.c:609,1
    - Dst: xmlPatPushState
      Src: /src/libxml2/pattern.c:611,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:622,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:635,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:643,1
    CyclomaticComplexity: 121
    EdgeCount: 121
    ICount: 201
    argCount: 2
    argNames:
    - comp
    - node
    argTypes:
    - xmlPatternPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 650
    functionName: xmlPatMatch
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlPatPushState
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlPatMatch(xmlPatternPtr comp, xmlNodePtr node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 660
    functionName: SKIP
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 661
    functionName: NXT
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 662
    functionName: PEEKPREV
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PEEKPREV(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - op
    - ','
    - val
    - ','
    - val2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 671
    functionDepth: 0
    functionLinenumber: 671
    functionLinenumberEnd: 673
    functionName: PUSH
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH(op, val, val2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/pattern.c:694,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/pattern.c:698,1
    - Dst: xmlStrndup
      Src: /src/libxml2/pattern.c:700,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 686
    functionDepth: 1
    functionLinenumber: 686
    functionLinenumberEnd: 703
    functionName: xmlPatScanName
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlStrndup
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlPatScanName(xmlPatParserContextPtr ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/pattern.c:720,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/pattern.c:724,1
    - Dst: xmlStrndup
      Src: /src/libxml2/pattern.c:726,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 712
    functionDepth: 1
    functionLinenumber: 712
    functionLinenumberEnd: 731
    functionName: xmlPatScanNCName
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlStrndup
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlPatScanNCName(xmlPatParserContextPtr ctxt)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatScanNCName
      Src: /src/libxml2/pattern.c:745,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:750,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:753,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/pattern.c:765,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:766,1
    - Dst: xmlPatScanName
      Src: /src/libxml2/pattern.c:773,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:779,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:782,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:783,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:788,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:795,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:800,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:802,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:808,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:811,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:816,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:818,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:820,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 821
    functionName: xmlCompileAttributeTest
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlPatScanName
    - XML_PAT_FREE_STRING
    - xmlPatScanNCName
    - XML_PAT_COPY_NSNAME
    - PUSH
    - ERROR
    - ERROR5
    linkageType: ''
    returnType: void
    signature: void xmlCompileAttributeTest(xmlPatParserContextPtr ctxt)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:846,1
    - Dst: XML_STREAM_XS_IDC_SEL
      Src: /src/libxml2/pattern.c:853,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:854,1
    - Dst: xmlCompileAttributeTest
      Src: /src/libxml2/pattern.c:860,1
    - Dst: xmlPatScanNCName
      Src: /src/libxml2/pattern.c:865,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:871,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:874,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/pattern.c:880,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/pattern.c:890,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:891,1
    - Dst: xmlPatScanName
      Src: /src/libxml2/pattern.c:898,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:904,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:907,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:908,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:913,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:920,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:925,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:927,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:933,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:937,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:938,1
    - Dst: xmlPatScanName
      Src: /src/libxml2/pattern.c:939,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:943,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:946,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/pattern.c:957,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:958,1
    - Dst: xmlPatScanName
      Src: /src/libxml2/pattern.c:965,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:971,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:974,1
    - Dst: XML_PAT_COPY_NSNAME
      Src: /src/libxml2/pattern.c:975,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:980,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:987,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:992,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:994,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1000,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1003,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1005,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:1006,1
    - Dst: XML_STREAM_XS_IDC_SEL
      Src: /src/libxml2/pattern.c:1008,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1009,1
    - Dst: xmlCompileAttributeTest
      Src: /src/libxml2/pattern.c:1014,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1019,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1031,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1033,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:1038,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:1040,1
    - Dst: XML_PAT_FREE_STRING
      Src: /src/libxml2/pattern.c:1042,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 177
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 833
    functionDepth: 3
    functionLinenumber: 833
    functionLinenumberEnd: 1043
    functionName: xmlCompileStepPattern
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlCompileAttributeTest
    - ERROR
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlPatScanName
    - XML_PAT_FREE_STRING
    - XML_PAT_COPY_NSNAME
    - PUSH
    - ERROR5
    - XML_STREAM_XS_IDC_SEL
    - xmlPatScanNCName
    linkageType: ''
    returnType: void
    signature: void xmlCompileStepPattern(xmlPatParserContextPtr ctxt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/pattern.c:1062,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1063,1
    - Dst: NXT
      Src: /src/libxml2/pattern.c:1066,1
    - Dst: NXT
      Src: /src/libxml2/pattern.c:1066,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1067,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1074,1
    - Dst: xmlCompileAttributeTest
      Src: /src/libxml2/pattern.c:1082,1
    - Dst: xmlCompileStepPattern
      Src: /src/libxml2/pattern.c:1088,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1094,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1099,1
    - Dst: xmlCompileStepPattern
      Src: /src/libxml2/pattern.c:1105,1
    - Dst: NXT
      Src: /src/libxml2/pattern.c:1110,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1111,1
    - Dst: xmlCompileStepPattern
      Src: /src/libxml2/pattern.c:1115,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1119,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1123,1
    - Dst: xmlCompileStepPattern
      Src: /src/libxml2/pattern.c:1128,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1135,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 90
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1053
    functionDepth: 4
    functionLinenumber: 1053
    functionLinenumberEnd: 1141
    functionName: xmlCompilePathPattern
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlCompileAttributeTest
    - NXT
    - PUSH
    - ERROR5
    - xmlCompileStepPattern
    linkageType: ''
    returnType: void
    signature: void xmlCompilePathPattern(xmlPatParserContextPtr ctxt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1155,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1170,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1175,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/pattern.c:1183,1
    - Dst: PEEKPREV
      Src: /src/libxml2/pattern.c:1183,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1187,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1192,1
    - Dst: xmlCompileStepPattern
      Src: /src/libxml2/pattern.c:1203,1
    - Dst: PUSH
      Src: /src/libxml2/pattern.c:1209,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1216,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1227,1
    - Dst: ERROR5
      Src: /src/libxml2/pattern.c:1238,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 69
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlPatParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1151
    functionDepth: 4
    functionLinenumber: 1151
    functionLinenumberEnd: 1240
    functionName: xmlCompileIDCXPathPath
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - PEEKPREV
    - PUSH
    - ERROR5
    - xmlCompileStepPattern
    linkageType: ''
    returnType: void
    signature: void xmlCompileIDCXPathPath(xmlPatParserContextPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/pattern.c:1261,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1263,1
    - Dst: memset
      Src: /src/libxml2/pattern.c:1267,1
    - Dst: xmlMalloc
      Src: /src/libxml2/pattern.c:1268,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:1270,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - size
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1278
    functionName: xmlNewStreamComp
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - ERROR
    - memset
    linkageType: ''
    returnType: xmlStreamCompPtr
    signature: xmlStreamCompPtr xmlNewStreamComp(int size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:1289,1
    - Dst: xmlDictFree
      Src: /src/libxml2/pattern.c:1291,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:1292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlStreamCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1285
    functionDepth: 1
    functionLinenumber: 1285
    functionLinenumberEnd: 1294
    functionName: xmlFreeStreamComp
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached:
    - xmlDictFree
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeStreamComp(xmlStreamCompPtr comp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/pattern.c:1315,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1318,1
    - Dst: xmlRealloc
      Src: /src/libxml2/pattern.c:1322,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1324,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 5
    argNames:
    - comp
    - name
    - ns
    - nodeType
    - flags
    argTypes:
    - xmlStreamCompPtr
    - xmlChar*
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1306
    functionDepth: 1
    functionLinenumber: 1306
    functionLinenumberEnd: 1337
    functionName: xmlStreamCompAddStep
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - ERROR
    linkageType: ''
    returnType: int
    signature: "int xmlStreamCompAddStep(xmlStreamCompPtr comp, const xmlChar *name,\n
      \                    const xmlChar *ns, int nodeType, int flags)"
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewStreamComp
      Src: /src/libxml2/pattern.c:1360,1
    - Dst: xmlNewStreamComp
      Src: /src/libxml2/pattern.c:1369,1
    - Dst: xmlDictReference
      Src: /src/libxml2/pattern.c:1374,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1392,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1402,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1428,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1451,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1460,1
    - Dst: xmlStreamCompAddStep
      Src: /src/libxml2/pattern.c:1468,1
    - Dst: xmlFreeStreamComp
      Src: /src/libxml2/pattern.c:1512,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 124
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1345
    functionDepth: 2
    functionLinenumber: 1345
    functionLinenumberEnd: 1514
    functionName: xmlStreamCompile
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlNewStreamComp
    - xmlFreeStreamComp
    - xmlDictReference
    - xmlStreamCompAddStep
    linkageType: ''
    returnType: int
    signature: int xmlStreamCompile(xmlPatternPtr comp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/pattern.c:1526,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1528,1
    - Dst: memset
      Src: /src/libxml2/pattern.c:1532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - stream
    argTypes:
    - xmlStreamCompPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1522
    functionDepth: 1
    functionLinenumber: 1522
    functionLinenumberEnd: 1540
    functionName: xmlNewStreamCtxt
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - ERROR
    - memset
    linkageType: ''
    returnType: xmlStreamCtxtPtr
    signature: xmlStreamCtxtPtr xmlNewStreamCtxt(xmlStreamCompPtr stream)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:1554,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:1555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - stream
    argTypes:
    - xmlStreamCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1547
    functionDepth: 0
    functionLinenumber: 1547
    functionLinenumberEnd: 1558
    functionName: xmlFreeStreamCtxt
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 6
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeStreamCtxt(xmlStreamCtxt *stream)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/pattern.c:1582,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1585,1
    - Dst: xmlRealloc
      Src: /src/libxml2/pattern.c:1589,1
    - Dst: ERROR
      Src: /src/libxml2/pattern.c:1591,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - comp
    - idx
    - level
    argTypes:
    - xmlStreamCtxtPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1568
    functionDepth: 1
    functionLinenumber: 1568
    functionLinenumberEnd: 1601
    functionName: xmlStreamCtxtAddState
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - ERROR
    linkageType: ''
    returnType: int
    signature: int xmlStreamCtxtAddState(xmlStreamCtxtPtr comp, int idx, int level)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamCtxtAddState
      Src: /src/libxml2/pattern.c:1652,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1779,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1783,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1784,1
    - Dst: xmlStreamCtxtAddState
      Src: /src/libxml2/pattern.c:1792,1
    - Dst: XML_STREAM_XS_IDC
      Src: /src/libxml2/pattern.c:1836,1
    - Dst: XML_STREAM_XS_IDC
      Src: /src/libxml2/pattern.c:1856,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1885,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1889,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/pattern.c:1890,1
    - Dst: xmlStreamCtxtAddState
      Src: /src/libxml2/pattern.c:1898,1
    CyclomaticComplexity: 97
    EdgeCount: 97
    ICount: 184
    argCount: 4
    argNames:
    - stream
    - name
    - ns
    - nodeType
    argTypes:
    - xmlStreamCtxtPtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1923
      start: 1617
    functionDepth: 2
    functionLinenumber: 1617
    functionLinenumberEnd: 1923
    functionName: xmlStreamPushInternal
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 0
    functionsReached:
    - XML_STREAM_XS_IDC
    - xmlStrEqual
    - xmlStreamCtxtAddState
    linkageType: ''
    returnType: int
    signature: "int xmlStreamPushInternal(xmlStreamCtxtPtr stream,\n\t\t      const
      xmlChar *name, const xmlChar *ns,\n\t\t      int nodeType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPushInternal
      Src: /src/libxml2/pattern.c:1942,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - stream
    - name
    - ns
    argTypes:
    - xmlStreamCtxt*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1943
      start: 1939
    functionDepth: 3
    functionLinenumber: 1939
    functionLinenumberEnd: 1943
    functionName: xmlStreamPush
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 6
    functionsReached:
    - xmlStreamPushInternal
    linkageType: ''
    returnType: int
    signature: "int xmlStreamPush(xmlStreamCtxt *stream,\n              const xmlChar
      *name, const xmlChar *ns)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPushInternal
      Src: /src/libxml2/pattern.c:1967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - stream
    - name
    - ns
    - nodeType
    argTypes:
    - xmlStreamCtxt*
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1962
    functionDepth: 3
    functionLinenumber: 1962
    functionLinenumberEnd: 1969
    functionName: xmlStreamPushNode
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached:
    - xmlStreamPushInternal
    linkageType: ''
    returnType: int
    signature: "int xmlStreamPushNode(xmlStreamCtxt *stream,\n\t\t  const xmlChar
      *name, const xmlChar *ns,\n\t\t  int nodeType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPushInternal
      Src: /src/libxml2/pattern.c:1991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - stream
    - name
    - ns
    argTypes:
    - xmlStreamCtxt*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1992
      start: 1988
    functionDepth: 3
    functionLinenumber: 1988
    functionLinenumberEnd: 1992
    functionName: xmlStreamPushAttr
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached:
    - xmlStreamPushInternal
    linkageType: ''
    returnType: int
    signature: "int xmlStreamPushAttr(xmlStreamCtxt *stream,\n\t\t  const xmlChar
      *name, const xmlChar *ns)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - stream
    argTypes:
    - xmlStreamCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2034
    functionName: xmlStreamPop
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlStreamPop(xmlStreamCtxt *stream)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - streamCtxt
    argTypes:
    - xmlStreamCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2057
      start: 2046
    functionDepth: 0
    functionLinenumber: 2046
    functionLinenumberEnd: 2057
    functionName: xmlStreamWantsAnyNode
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlStreamWantsAnyNode(xmlStreamCtxt *streamCtxt)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewPatParserContext
      Src: /src/libxml2/pattern.c:2102,1
    - Dst: xmlStrndup
      Src: /src/libxml2/pattern.c:2104,1
    - Dst: xmlNewPatParserContext
      Src: /src/libxml2/pattern.c:2106,1
    - Dst: xmlNewPattern
      Src: /src/libxml2/pattern.c:2114,1
    - Dst: xmlDictReference
      Src: /src/libxml2/pattern.c:2124,1
    - Dst: XML_STREAM_XS_IDC
      Src: /src/libxml2/pattern.c:2135,1
    - Dst: xmlCompileIDCXPathPath
      Src: /src/libxml2/pattern.c:2136,1
    - Dst: xmlCompilePathPattern
      Src: /src/libxml2/pattern.c:2138,1
    - Dst: xmlFreePatParserContext
      Src: /src/libxml2/pattern.c:2143,1
    - Dst: xmlStreamCompile
      Src: /src/libxml2/pattern.c:2159,1
    - Dst: xmlReversePattern
      Src: /src/libxml2/pattern.c:2163,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:2167,1
    - Dst: xmlFreeStreamComp
      Src: /src/libxml2/pattern.c:2176,1
    - Dst: xmlFreePatParserContext
      Src: /src/libxml2/pattern.c:2186,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/pattern.c:2187,1
    - Dst: xmlFree
      Src: /src/libxml2/pattern.c:2188,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 105
    argCount: 5
    argNames:
    - pattern
    - dict
    - flags
    - namespaces
    - patternOut
    argTypes:
    - xmlChar*
    - xmlDict*
    - int
    - xmlChar**
    - xmlPattern**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2077
    functionDepth: 5
    functionLinenumber: 2077
    functionLinenumberEnd: 2191
    functionName: xmlPatternCompileSafe
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 3
    functionsReached:
    - xmlFreePattern
    - xmlFreeStreamComp
    - xmlStreamCompile
    - xmlNewPattern
    - xmlFreePatParserContext
    - xmlReversePattern
    - xmlFree
    - xmlStrndup
    - XML_STREAM_XS_IDC
    - xmlDictReference
    - xmlNewPatParserContext
    - xmlCompileIDCXPathPath
    - xmlCompilePathPattern
    linkageType: ''
    returnType: int
    signature: "int xmlPatternCompileSafe(const xmlChar *pattern, xmlDict *dict, int
      flags,\n                      const xmlChar **namespaces, xmlPattern **patternOut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatternCompileSafe
      Src: /src/libxml2/pattern.c:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - pattern
    - dict
    - flags
    - namespaces
    argTypes:
    - xmlChar*
    - xmlDict*
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2202
    functionDepth: 6
    functionLinenumber: 2202
    functionLinenumberEnd: 2208
    functionName: xmlPatterncompile
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 3
    functionsReached:
    - xmlPatternCompileSafe
    linkageType: ''
    returnType: xmlPattern
    signature: "xmlPattern *\nxmlPatterncompile(const xmlChar *pattern, xmlDict *dict,
      int flags,\n                  const xmlChar **namespaces)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatMatch
      Src: /src/libxml2/pattern.c:2226,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - comp
    - node
    argTypes:
    - xmlPattern*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2232
      start: 2217
    functionDepth: 3
    functionLinenumber: 2217
    functionLinenumberEnd: 2232
    functionName: xmlPatternMatch
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 4
    functionsReached:
    - xmlPatMatch
    linkageType: ''
    returnType: int
    signature: int xmlPatternMatch(xmlPattern *comp, xmlNode *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewStreamCtxt
      Src: /src/libxml2/pattern.c:2252,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/pattern.c:2266,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2268
      start: 2241
    functionDepth: 2
    functionLinenumber: 2241
    functionLinenumberEnd: 2268
    functionName: xmlPatternGetStreamCtxt
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 4
    functionsReached:
    - xmlNewStreamCtxt
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: xmlStreamCtxt
    signature: 'xmlStreamCtxt *

      xmlPatternGetStreamCtxt(xmlPattern *comp)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2287
      start: 2277
    functionDepth: 0
    functionLinenumber: 2277
    functionLinenumberEnd: 2287
    functionName: xmlPatternStreamable
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlPatternStreamable(xmlPattern *comp)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2312
      start: 2296
    functionDepth: 0
    functionLinenumber: 2296
    functionLinenumberEnd: 2312
    functionName: xmlPatternMaxDepth
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlPatternMaxDepth(xmlPattern *comp)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2336
      start: 2321
    functionDepth: 0
    functionLinenumber: 2321
    functionLinenumberEnd: 2336
    functionName: xmlPatternMinDepth
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlPatternMinDepth(xmlPattern *comp)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlPattern*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2344
    functionDepth: 0
    functionLinenumber: 2344
    functionLinenumberEnd: 2357
    functionName: xmlPatternFromRoot
    functionSourceFile: /src/libxml2/pattern.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlPatternFromRoot(xmlPattern *comp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListPtr::linkDeallocator
      Src: /src/libxml2/list.c:63,1
    - Dst: xmlFree
      Src: /src/libxml2/list.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - l
    - lk
    argTypes:
    - xmlListPtr
    - xmlLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: xmlLinkDeallocator
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlListPtr::linkDeallocator
    linkageType: ''
    returnType: void
    signature: void xmlLinkDeallocator(xmlListPtr l, xmlLinkPtr lk)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - data0
    - data1
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 83
    functionName: xmlLinkCompare
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlLinkCompare(const void *data0, const void *data1)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListPtr::linkCompare
      Src: /src/libxml2/list.c:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlListPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 101
    functionName: xmlListLowerSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached:
    - xmlListPtr::linkCompare
    linkageType: ''
    returnType: xmlLinkPtr
    signature: xmlLinkPtr xmlListLowerSearch(xmlListPtr l, void *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListPtr::linkCompare
      Src: /src/libxml2/list.c:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlListPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: xmlListHigherSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached:
    - xmlListPtr::linkCompare
    linkageType: ''
    returnType: xmlLinkPtr
    signature: xmlLinkPtr xmlListHigherSearch(xmlListPtr l, void *data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLowerSearch
      Src: /src/libxml2/list.c:134,1
    - Dst: xmlListPtr::linkCompare
      Src: /src/libxml2/list.c:138,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlListPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 142
    functionName: xmlListLinkSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached:
    - xmlListPtr::linkCompare
    - xmlListLowerSearch
    linkageType: ''
    returnType: xmlLinkPtr
    signature: xmlLinkPtr xmlListLinkSearch(xmlListPtr l, void *data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlListHigherSearch
      Src: /src/libxml2/list.c:157,1
    - Dst: xmlListPtr::linkCompare
      Src: /src/libxml2/list.c:161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlListPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 165
    functionName: xmlListLinkReverseSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 0
    functionsReached:
    - xmlListHigherSearch
    - xmlListPtr::linkCompare
    linkageType: ''
    returnType: xmlLinkPtr
    signature: xmlLinkPtr xmlListLinkReverseSearch(xmlListPtr l, void *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:178,1
    - Dst: memset
      Src: /src/libxml2/list.c:182,1
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:185,1
    - Dst: xmlFree
      Src: /src/libxml2/list.c:187,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - deallocator
    - compare
    argTypes:
    - xmlListDeallocator
    - xmlListDataCompare
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 203
    functionName: xmlListCreate
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlList
    signature: 'xmlList *

      xmlListCreate(xmlListDeallocator deallocator, xmlListDataCompare compare)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLinkSearch
      Src: /src/libxml2/list.c:218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 212
    functionDepth: 2
    functionLinenumber: 212
    functionLinenumberEnd: 222
    functionName: xmlListSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached:
    - xmlListLinkSearch
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlListSearch(xmlList *l, void *data)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLinkReverseSearch
      Src: /src/libxml2/list.c:237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 241
    functionName: xmlListReverseSearch
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListLinkReverseSearch
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlListReverseSearch(xmlList *l, void *data)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLowerSearch
      Src: /src/libxml2/list.c:257,1
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:259,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 269
    functionName: xmlListInsert
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlListLowerSearch
    linkageType: ''
    returnType: int
    signature: int xmlListInsert(xmlList *l, void *data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListHigherSearch
      Src: /src/libxml2/list.c:284,1
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 295
    functionName: xmlListAppend
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListHigherSearch
    - xmlMalloc
    linkageType: ''
    returnType: int
    signature: int xmlListAppend(xmlList *l, void *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListClear
      Src: /src/libxml2/list.c:307,1
    - Dst: xmlFree
      Src: /src/libxml2/list.c:308,1
    - Dst: xmlFree
      Src: /src/libxml2/list.c:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 310
    functionName: xmlListDelete
    functionSourceFile: /src/libxml2/list.c
    functionUses: 5
    functionsReached:
    - xmlListClear
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlListDelete(xmlList *l)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLinkSearch
      Src: /src/libxml2/list.c:327,1
    - Dst: xmlLinkDeallocator
      Src: /src/libxml2/list.c:329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 319
    functionDepth: 2
    functionLinenumber: 319
    functionLinenumberEnd: 333
    functionName: xmlListRemoveFirst
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListLinkSearch
    - xmlLinkDeallocator
    linkageType: ''
    returnType: int
    signature: int xmlListRemoveFirst(xmlList *l, void *data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListLinkReverseSearch
      Src: /src/libxml2/list.c:350,1
    - Dst: xmlLinkDeallocator
      Src: /src/libxml2/list.c:352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 342
    functionDepth: 2
    functionLinenumber: 342
    functionLinenumberEnd: 356
    functionName: xmlListRemoveLast
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListLinkReverseSearch
    - xmlLinkDeallocator
    linkageType: ''
    returnType: int
    signature: int xmlListRemoveLast(xmlList *l, void *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListRemoveFirst
      Src: /src/libxml2/list.c:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 365
    functionDepth: 3
    functionLinenumber: 365
    functionLinenumberEnd: 376
    functionName: xmlListRemoveAll
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListRemoveFirst
    linkageType: ''
    returnType: int
    signature: int xmlListRemoveAll(xmlList *l, void *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlLinkDeallocator
      Src: /src/libxml2/list.c:394,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 397
    functionName: xmlListClear
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached:
    - xmlLinkDeallocator
    linkageType: ''
    returnType: void
    signature: void xmlListClear(xmlList *l)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 411
    functionName: xmlListEmpty
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlListEmpty(xmlList *l)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 425
    functionName: xmlListFront
    functionSourceFile: /src/libxml2/list.c
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: xmlLink
    signature: 'xmlLink *

      xmlListFront(xmlList *l)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 439
    functionName: xmlListEnd
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlLink
    signature: 'xmlLink *

      xmlListEnd(xmlList *l)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 458
    functionName: xmlListSize
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlListSize(xmlList *l)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListEmpty
      Src: /src/libxml2/list.c:468,1
    - Dst: xmlLinkDeallocator
      Src: /src/libxml2/list.c:469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 470
    functionName: xmlListPopFront
    functionSourceFile: /src/libxml2/list.c
    functionUses: 11
    functionsReached:
    - xmlListEmpty
    - xmlLinkDeallocator
    linkageType: ''
    returnType: void
    signature: void xmlListPopFront(xmlList *l)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListEmpty
      Src: /src/libxml2/list.c:480,1
    - Dst: xmlLinkDeallocator
      Src: /src/libxml2/list.c:481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 477
    functionDepth: 1
    functionLinenumber: 477
    functionLinenumberEnd: 482
    functionName: xmlListPopBack
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListEmpty
    - xmlLinkDeallocator
    linkageType: ''
    returnType: void
    signature: void xmlListPopBack(xmlList *l)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 509
    functionName: xmlListPushFront
    functionSourceFile: /src/libxml2/list.c
    functionUses: 11
    functionsReached:
    - xmlMalloc
    linkageType: ''
    returnType: int
    signature: int xmlListPushFront(xmlList *l, void *data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/list.c:527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - l
    - data
    argTypes:
    - xmlList*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 536
    functionName: xmlListPushBack
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    linkageType: ''
    returnType: int
    signature: int xmlListPushBack(xmlList *l, void *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - lk
    argTypes:
    - xmlLink*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 550
    functionName: xmlLinkGetData
    functionSourceFile: /src/libxml2/list.c
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlLinkGetData(xmlLink *lk)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 574
    functionName: xmlListReverse
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlListReverse(xmlList *l)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlListEmpty
      Src: /src/libxml2/list.c:588,1
    - Dst: xmlListDup
      Src: /src/libxml2/list.c:597,1
    - Dst: xmlListClear
      Src: /src/libxml2/list.c:600,1
    - Dst: xmlListMerge
      Src: /src/libxml2/list.c:601,1
    - Dst: xmlListDelete
      Src: /src/libxml2/list.c:602,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - l
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 581
    functionDepth: 2
    functionLinenumber: 581
    functionLinenumberEnd: 603
    functionName: xmlListSort
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - xmlListMerge
    - xmlListEmpty
    - xmlListDelete
    - xmlListClear
    - xmlListDup
    linkageType: ''
    returnType: void
    signature: void xmlListSort(xmlList *l)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: walker
      Src: /src/libxml2/list.c:620,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - l
    - walker
    - user
    argTypes:
    - xmlList*
    - xmlListWalker
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 623
    functionName: xmlListWalk
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - walker
    linkageType: ''
    returnType: void
    signature: void xmlListWalk(xmlList *l, xmlListWalker walker, void *user)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: walker
      Src: /src/libxml2/list.c:640,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 3
    argNames:
    - l
    - walker
    - user
    argTypes:
    - xmlList*
    - xmlListWalker
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 633
    functionDepth: 0
    functionLinenumber: 633
    functionLinenumberEnd: 643
    functionName: xmlListReverseWalk
    functionSourceFile: /src/libxml2/list.c
    functionUses: 1
    functionsReached:
    - walker
    linkageType: ''
    returnType: void
    signature: void xmlListReverseWalk(xmlList *l, xmlListWalker walker, void *user)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlListCopy
      Src: /src/libxml2/list.c:655,1
    - Dst: xmlListClear
      Src: /src/libxml2/list.c:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - l1
    - l2
    argTypes:
    - xmlList*
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 652
    functionDepth: 2
    functionLinenumber: 652
    functionLinenumberEnd: 657
    functionName: xmlListMerge
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached:
    - xmlListCopy
    - xmlListClear
    linkageType: ''
    returnType: void
    signature: void xmlListMerge(xmlList *l1, xmlList *l2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlListCreate
      Src: /src/libxml2/list.c:678,1
    - Dst: xmlListCopy
      Src: /src/libxml2/list.c:681,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - old
    argTypes:
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 665
    functionDepth: 1
    functionLinenumber: 665
    functionLinenumberEnd: 684
    functionName: xmlListDup
    functionSourceFile: /src/libxml2/list.c
    functionUses: 2
    functionsReached:
    - xmlListCopy
    - xmlListCreate
    linkageType: ''
    returnType: xmlList
    signature: 'xmlList *

      xmlListDup(xmlList *old)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlListInsert
      Src: /src/libxml2/list.c:702,1
    - Dst: xmlListDelete
      Src: /src/libxml2/list.c:703,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - cur
    - old
    argTypes:
    - xmlList*
    - xmlList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 693
    functionDepth: 2
    functionLinenumber: 693
    functionLinenumberEnd: 708
    functionName: xmlListCopy
    functionSourceFile: /src/libxml2/list.c
    functionUses: 3
    functionsReached:
    - xmlListInsert
    - xmlListDelete
    linkageType: ''
    returnType: int
    signature: int xmlListCopy(xmlList *cur, xmlList *old)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionName: xmlNanoHTTPInit
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlNanoHTTPInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: xmlNanoHTTPCleanup
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlNanoHTTPCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: xmlNanoHTTPScanProxy
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlNanoHTTPScanProxy(const char *URL ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - contentType
    argTypes:
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: xmlNanoHTTPOpen
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlNanoHTTPOpen(const char *URL ATTRIBUTE_UNUSED, char **contentType)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - contentType
    - redir
    argTypes:
    - char*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: xmlNanoHTTPOpenRedir
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void *\nxmlNanoHTTPOpenRedir(const char *URL ATTRIBUTE_UNUSED, char
      **contentType,\n                     char **redir)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: xmlNanoHTTPRead
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlNanoHTTPRead(void *ctx ATTRIBUTE_UNUSED, void *dest ATTRIBUTE_UNUSED,\n
      \               int len ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: xmlNanoHTTPClose
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlNanoHTTPClose(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 7
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - contentType
    - redir
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - char**
    - char**
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 114
    functionName: xmlNanoHTTPMethodRedir
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void *\nxmlNanoHTTPMethodRedir(const char *URL ATTRIBUTE_UNUSED,\n
      \                      const char *method ATTRIBUTE_UNUSED,\n                       const
      char *input ATTRIBUTE_UNUSED,\n                       char **contentType, char
      **redir,\n                       const char *headers ATTRIBUTE_UNUSED,\n                       int
      ilen ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - contentType
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - char*
    - char**
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 135
    functionName: xmlNanoHTTPMethod
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void *\nxmlNanoHTTPMethod(const char *URL ATTRIBUTE_UNUSED,\n                  const
      char *method ATTRIBUTE_UNUSED,\n                  const char *input ATTRIBUTE_UNUSED,\n
      \                 char **contentType, const char *headers ATTRIBUTE_UNUSED,\n
      \                 int ilen ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - contentType
    argTypes:
    - char*
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: xmlNanoHTTPFetch
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlNanoHTTPFetch(const char *URL ATTRIBUTE_UNUSED,\n                 const
      char *filename ATTRIBUTE_UNUSED, char **contentType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionName: xmlNanoHTTPSave
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlNanoHTTPSave(void *ctxt ATTRIBUTE_UNUSED,\n                const
      char *filename ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionName: xmlNanoHTTPReturnCode
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlNanoHTTPReturnCode(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: xmlNanoHTTPAuthHeader
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlNanoHTTPAuthHeader(void *ctx ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: xmlNanoHTTPContentLength
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlNanoHTTPContentLength(void *ctx ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionName: xmlNanoHTTPRedir
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlNanoHTTPRedir(void *ctx ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: xmlNanoHTTPEncoding
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlNanoHTTPEncoding(void *ctx ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionName: xmlNanoHTTPMimeType
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlNanoHTTPMimeType(void *ctx ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: xmlIOHTTPMatch
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIOHTTPMatch(const char *filename ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: xmlIOHTTPOpen
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlIOHTTPOpen(const char *filename ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - compression ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 269
    functionName: xmlIOHTTPOpenW
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void *\nxmlIOHTTPOpenW(const char *post_uri ATTRIBUTE_UNUSED,\n               int
      compression ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 284
    functionName: xmlIOHTTPRead
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlIOHTTPRead(void *context ATTRIBUTE_UNUSED, char *buffer ATTRIBUTE_UNUSED,\n
      \             int len ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionName: xmlIOHTTPClose
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIOHTTPClose (void *context ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterDefaultOutputCallbacks
      Src: /src/libxml2/nanohttp.c:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 300
    functionDepth: 6
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionName: xmlRegisterHTTPPostCallbacks
    functionSourceFile: /src/libxml2/nanohttp.c
    functionUses: 0
    functionsReached:
    - xmlRegisterDefaultOutputCallbacks
    linkageType: ''
    returnType: void
    signature: void xmlRegisterHTTPPostCallbacks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testdso.c:10,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 12
    functionName: hello_world
    functionSourceFile: /src/libxml2/testdso.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: int
    signature: int hello_world(void)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/shell.c:94,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 115
    functionName: xmllintLsCountNode
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmllintLsCountNode(xmlNodePtr node)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:127,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:132,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:135,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:138,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:141,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:144,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:147,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:150,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:153,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:156,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:159,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:162,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:165,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:168,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:174,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:178,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:180,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:182,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:184,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:187,1
    - Dst: xmllintLsCountNode
      Src: /src/libxml2/shell.c:187,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:193,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:194,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:199,1
    - Dst: xmlDebugDumpString
      Src: /src/libxml2/shell.c:204,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:212,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:216,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:220,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:238,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:240,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:246,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:248,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 116
    argCount: 2
    argNames:
    - output
    - node
    argTypes:
    - FILE*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 249
    functionName: xmllintLsOneNode
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmllintLsCountNode
    - fprintf
    - xmlDebugDumpString
    linkageType: ''
    returnType: void
    signature: void xmllintLsOneNode(FILE *output, xmlNodePtr node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:270,1
    - Dst: xmllintLsOneNode
      Src: /src/libxml2/shell.c:277,1
    - Dst: xmllintLsOneNode
      Src: /src/libxml2/shell.c:282,1
    - Dst: xmllintLsOneNode
      Src: /src/libxml2/shell.c:286,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 261
    functionDepth: 3
    functionLinenumber: 261
    functionLinenumberEnd: 290
    functionName: xmllintShellList
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmllintLsOneNode
    linkageType: ''
    returnType: int
    signature: "int xmllintShellList(xmllintShellCtxtPtr ctxt,\n             char
      *arg ATTRIBUTE_UNUSED, xmlNodePtr node,\n             xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:311,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/shell.c:315,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:318,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:320,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 324
    functionName: xmllintShellBase
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlNodeGetBase
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmllintShellBase(xmllintShellCtxtPtr ctxt,\n             char
      *arg ATTRIBUTE_UNUSED, xmlNodePtr node,\n             xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeSetBase
      Src: /src/libxml2/shell.c:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 343
    functionName: xmllintShellSetBase
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlNodeSetBase
    linkageType: ''
    returnType: int
    signature: "int xmllintShellSetBase(xmllintShellCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \            char *arg ATTRIBUTE_UNUSED, xmlNodePtr node,\n             xmlNodePtr
      node2 ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/shell.c:366,1
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:375,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:377,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:378,1
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:385,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/shell.c:391,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:392,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:393,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:398,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 4
    argNames:
    - ctxt
    - arg
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 400
    functionName: xmllintShellRegisterNamespace
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlXPathRegisterNs
    - fprintf
    - xmlStrchr
    linkageType: ''
    returnType: int
    signature: "int xmllintShellRegisterNamespace(xmllintShellCtxtPtr ctxt, char *arg,\n
      \     xmlNodePtr node ATTRIBUTE_UNUSED, xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/shell.c:423,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/shell.c:425,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - root
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 429
    functionName: xmllintShellRegisterRootNamespaces
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterNs
    linkageType: ''
    returnType: int
    signature: "int xmllintShellRegisterRootNamespaces(xmllintShellCtxtPtr ctxt, char
      *arg ATTRIBUTE_UNUSED,\n      xmlNodePtr root, xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:453,1
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:454,1
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:455,1
    - Dst: xmlStrchr
      Src: /src/libxml2/shell.c:456,1
    - Dst: xmlStrstr
      Src: /src/libxml2/shell.c:461,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:462,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/shell.c:462,1
    - Dst: xmllintShellList
      Src: /src/libxml2/shell.c:463,1
    - Dst: xmlStrstr
      Src: /src/libxml2/shell.c:466,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:467,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/shell.c:467,1
    - Dst: xmllintShellList
      Src: /src/libxml2/shell.c:468,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 47
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - arg
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 442
    functionDepth: 4
    functionLinenumber: 442
    functionLinenumberEnd: 504
    functionName: xmllintShellGrep
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlGetNodePath
    - xmllintShellList
    - xmlStrstr
    - fprintf
    - xmlStrchr
    linkageType: ''
    returnType: int
    signature: "int xmllintShellGrep(xmllintShellCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \           char *arg, xmlNodePtr node, xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:524,1
    - Dst: xmlDebugDumpDocumentHead
      Src: /src/libxml2/shell.c:530,1
    - Dst: xmlDebugDumpAttr
      Src: /src/libxml2/shell.c:532,1
    - Dst: xmlDebugDumpOneNode
      Src: /src/libxml2/shell.c:534,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 538
    functionName: xmllintShellDir
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlDebugDumpOneNode
    - fprintf
    - xmlDebugDumpAttr
    - xmlDebugDumpDocumentHead
    linkageType: ''
    returnType: int
    signature: "int xmllintShellDir(xmllintShellCtxtPtr ctxt ATTRIBUTE_UNUSED,\n            char
      *arg ATTRIBUTE_UNUSED, xmlNodePtr node,\n            xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:561,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:565,1
    - Dst: xmlParseInNodeContext
      Src: /src/libxml2/shell.c:569,1
    - Dst: strlen
      Src: /src/libxml2/shell.c:569,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/shell.c:572,1
    - Dst: xmlAddChildList
      Src: /src/libxml2/shell.c:576,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:578,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - value
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 581
    functionName: xmllintShellSetContent
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - strlen
    - xmlAddChildList
    - xmlParseInNodeContext
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int xmllintShellSetContent(xmllintShellCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \           char *value, xmlNodePtr node,\n            xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/shell.c:589,1
    - Dst: vfprintf
      Src: /src/libxml2/shell.c:590,1
    - Dst: va_end
      Src: /src/libxml2/shell.c:591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 592
    functionName: xmllintShellPrintf
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - va_end
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmllintShellPrintf(void *ctx, const char *msg, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewParserCtxt
      Src: /src/libxml2/shell.c:616,1
    - Dst: xmlRelaxNGSetParserErrors
      Src: /src/libxml2/shell.c:617,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/shell.c:618,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/shell.c:619,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:621,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/shell.c:625,1
    - Dst: xmlRelaxNGSetValidErrors
      Src: /src/libxml2/shell.c:626,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/shell.c:627,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:629,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:631,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:633,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/shell.c:636,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/shell.c:638,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 4
    argNames:
    - sctxt
    - schemas
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 640
    functionName: xmllintShellRNGValidate
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeParserCtxt
    - xmlRelaxNGSetParserErrors
    - xmlRelaxNGFree
    - xmlRelaxNGFreeValidCtxt
    - xmlRelaxNGParse
    - xmlRelaxNGSetValidErrors
    - fprintf
    - xmlRelaxNGNewParserCtxt
    - xmlRelaxNGNewValidCtxt
    - xmlRelaxNGValidateDoc
    linkageType: ''
    returnType: int
    signature: "int xmllintShellRNGValidate(xmllintShellCtxtPtr sctxt, char *schemas,\n
      \           xmlNodePtr node ATTRIBUTE_UNUSED,\n\t    xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:661,1
    - Dst: htmlDocDump
      Src: /src/libxml2/shell.c:667,1
    - Dst: htmlNodeDumpFile
      Src: /src/libxml2/shell.c:669,1
    - Dst: xmlDocDump
      Src: /src/libxml2/shell.c:672,1
    - Dst: xmlElemDump
      Src: /src/libxml2/shell.c:674,1
    - Dst: xmlDocDump
      Src: /src/libxml2/shell.c:678,1
    - Dst: xmlElemDump
      Src: /src/libxml2/shell.c:680,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:682,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 684
    functionName: xmllintShellCat
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - htmlNodeDumpFile
    - htmlDocDump
    - xmlDocDump
    - fprintf
    - xmlElemDump
    linkageType: ''
    returnType: int
    signature: "int xmllintShellCat(xmllintShellCtxtPtr ctxt, char *arg ATTRIBUTE_UNUSED,\n
      \           xmlNodePtr node, xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseFile
      Src: /src/libxml2/shell.c:711,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:713,1
    - Dst: xmlReadFile
      Src: /src/libxml2/shell.c:717,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/shell.c:721,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/shell.c:725,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:727,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/shell.c:731,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/shell.c:733,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - ctxt
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 697
    functionDepth: 1
    functionLinenumber: 697
    functionLinenumberEnd: 737
    functionName: xmllintShellLoad
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlFree
    - xmlXPathNewContext
    - xmlReadFile
    - htmlParseFile
    - xmlCanonicPath
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmllintShellLoad(xmllintShellCtxtPtr ctxt, char *filename,\n             xmlNodePtr
      node ATTRIBUTE_UNUSED,\n             xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFile
      Src: /src/libxml2/shell.c:762,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:763,1
    - Dst: htmlSaveFile
      Src: /src/libxml2/shell.c:770,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:771,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/shell.c:776,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:777,1
    - Dst: fopen
      Src: /src/libxml2/shell.c:786,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:788,1
    - Dst: xmlElemDump
      Src: /src/libxml2/shell.c:792,1
    - Dst: fclose
      Src: /src/libxml2/shell.c:793,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 4
    argNames:
    - ctxt
    - filename
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 751
    functionDepth: 1
    functionLinenumber: 751
    functionLinenumberEnd: 797
    functionName: xmllintShellWrite
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - htmlSaveFile
    - xmlSaveFile
    - fopen
    - fclose
    - fprintf
    - xmlElemDump
    linkageType: ''
    returnType: int
    signature: "int xmllintShellWrite(xmllintShellCtxtPtr ctxt, char *filename, xmlNodePtr
      node,\n              xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFile
      Src: /src/libxml2/shell.c:822,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:823,1
    - Dst: htmlSaveFile
      Src: /src/libxml2/shell.c:829,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:830,1
    - Dst: xmlSaveFile
      Src: /src/libxml2/shell.c:834,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:835,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:841,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 4
    argNames:
    - ctxt
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 809
    functionDepth: 1
    functionLinenumber: 809
    functionLinenumberEnd: 847
    functionName: xmllintShellSave
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - htmlSaveFile
    - fprintf
    - xmlSaveFile
    linkageType: ''
    returnType: int
    signature: "int xmllintShellSave(xmllintShellCtxtPtr ctxt, char *filename,\n             xmlNodePtr
      node ATTRIBUTE_UNUSED,\n             xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/shell.c:871,1
    - Dst: xmlValidateDocument
      Src: /src/libxml2/shell.c:877,1
    - Dst: xmlParseDTD
      Src: /src/libxml2/shell.c:881,1
    - Dst: xmlValidateDtd
      Src: /src/libxml2/shell.c:883,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/shell.c:885,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - ctxt
    - dtd
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 862
    functionDepth: 1
    functionLinenumber: 862
    functionLinenumberEnd: 889
    functionName: xmllintShellValidate
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlFreeDtd
    - xmlValidateDocument
    - xmlValidateDtd
    - xmlParseDTD
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmllintShellValidate(xmllintShellCtxtPtr ctxt, char *dtd,\n                 xmlNodePtr
      node ATTRIBUTE_UNUSED,\n                 xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/shell.c:920,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:923,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:925,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:926,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 53
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - tree
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 972
    functionName: xmllintShellDu
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int xmllintShellDu(xmllintShellCtxtPtr ctxt,\n           char *arg
      ATTRIBUTE_UNUSED, xmlNodePtr tree,\n           xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNodePath
      Src: /src/libxml2/shell.c:995,1
    - Dst: snprintf
      Src: /src/libxml2/shell.c:1007,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:1009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - buffer
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmllintShellCtxtPtr
    - char*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 986
    functionDepth: 1
    functionLinenumber: 986
    functionLinenumberEnd: 1012
    functionName: xmllintShellPwd
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - xmlGetNodePath
    - xmlFree
    - snprintf
    linkageType: ''
    returnType: int
    signature: "int xmllintShellPwd(xmllintShellCtxtPtr ctxt ATTRIBUTE_UNUSED, char
      *buffer,\n            xmlNodePtr node, xmlNodePtr node2 ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: isatty
      Src: /src/libxml2/shell.c:1032,1
    - Dst: readline
      Src: /src/libxml2/shell.c:1036,1
    - Dst: add_history
      Src: /src/libxml2/shell.c:1041,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1049,1
    - Dst: fflush
      Src: /src/libxml2/shell.c:1050,1
    - Dst: fgets
      Src: /src/libxml2/shell.c:1051,1
    - Dst: strlen
      Src: /src/libxml2/shell.c:1054,1
    - Dst: malloc
      Src: /src/libxml2/shell.c:1055,1
    - Dst: memcpy
      Src: /src/libxml2/shell.c:1057,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - prompt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1025
    functionDepth: 0
    functionLinenumber: 1025
    functionLinenumberEnd: 1060
    functionName: xmllintShellReadline
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 0
    functionsReached:
    - strlen
    - isatty
    - fgets
    - memcpy
    - readline
    - add_history
    - malloc
    - fprintf
    - fflush
    linkageType: ''
    returnType: char
    signature: 'char *

      xmllintShellReadline(char *prompt)'
  - BBCount: 100
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/shell.c:1090,1
    - Dst: xmlStrdup
      Src: /src/libxml2/shell.c:1096,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/shell.c:1100,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:1102,1
    - Dst: snprintf
      Src: /src/libxml2/shell.c:1108,1
    - Dst: snprintf
      Src: /src/libxml2/shell.c:1111,1
    - Dst: snprintf
      Src: /src/libxml2/shell.c:1114,1
    - Dst: snprintf
      Src: /src/libxml2/shell.c:1116,1
    - Dst: xmllintShellReadline
      Src: /src/libxml2/shell.c:1122,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1160,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1162,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1164,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1166,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1167,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1168,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1169,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1170,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1171,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1172,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1173,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1174,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1175,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1176,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1177,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1178,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1179,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1181,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1182,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1183,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1184,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1185,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1187,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1188,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1189,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1191,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1192,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1195,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1198,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1200,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1202,1
    - Dst: xmllintShellValidate
      Src: /src/libxml2/shell.c:1203,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1205,1
    - Dst: xmllintShellLoad
      Src: /src/libxml2/shell.c:1206,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1208,1
    - Dst: xmllintShellRNGValidate
      Src: /src/libxml2/shell.c:1209,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1212,1
    - Dst: xmllintShellSave
      Src: /src/libxml2/shell.c:1213,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1214,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1216,1
    - Dst: xmllintShellWrite
      Src: /src/libxml2/shell.c:1219,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1221,1
    - Dst: xmllintShellGrep
      Src: /src/libxml2/shell.c:1222,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1223,1
    - Dst: xmllintShellPwd
      Src: /src/libxml2/shell.c:1226,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1227,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1228,1
    - Dst: xmllintShellDu
      Src: /src/libxml2/shell.c:1230,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1234,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1238,1
    - Dst: xmllintShellDu
      Src: /src/libxml2/shell.c:1250,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1256,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1260,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1264,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1268,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1272,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1277,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1279,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1285,1
    - Dst: xmllintShellBase
      Src: /src/libxml2/shell.c:1286,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1287,1
    - Dst: xmllintShellSetContent
      Src: /src/libxml2/shell.c:1288,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1290,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1292,1
    - Dst: xmllintShellRegisterNamespace
      Src: /src/libxml2/shell.c:1295,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1297,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/shell.c:1300,1
    - Dst: xmllintShellRegisterRootNamespaces
      Src: /src/libxml2/shell.c:1301,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1303,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1305,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1309,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxml2/shell.c:1310,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1311,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1315,1
    - Dst: xmllintShellSetBase
      Src: /src/libxml2/shell.c:1316,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1317,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1317,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1318,1
    - Dst: xmllintShellDir
      Src: /src/libxml2/shell.c:1322,1
    - Dst: xmllintShellList
      Src: /src/libxml2/shell.c:1324,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1328,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1332,1
    - Dst: xmllintShellDir
      Src: /src/libxml2/shell.c:1345,1
    - Dst: xmllintShellList
      Src: /src/libxml2/shell.c:1349,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1356,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1360,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1364,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1368,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1372,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1377,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1379,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1385,1
    - Dst: xmllintShellPwd
      Src: /src/libxml2/shell.c:1389,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1390,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1394,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1398,1
    - Dst: xmllintShellPwd
      Src: /src/libxml2/shell.c:1410,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1412,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1417,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1421,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1425,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1429,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1433,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1438,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1440,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1446,1
    - Dst: strlen
      Src: /src/libxml2/shell.c:1454,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1457,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1461,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1471,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1476,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1481,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1486,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1490,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1494,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1498,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1502,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1507,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1509,1
    - Dst: strcmp
      Src: /src/libxml2/shell.c:1516,1
    - Dst: xmllintShellCat
      Src: /src/libxml2/shell.c:1518,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/shell.c:1522,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1526,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1539,1
    - Dst: xmllintShellCat
      Src: /src/libxml2/shell.c:1540,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1547,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1551,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1555,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1559,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1563,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/shell.c:1568,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1570,1
    - Dst: fprintf
      Src: /src/libxml2/shell.c:1578,1
    - Dst: free
      Src: /src/libxml2/shell.c:1581,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/shell.c:1585,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/shell.c:1588,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:1591,1
    - Dst: xmlFree
      Src: /src/libxml2/shell.c:1592,1
    - Dst: free
      Src: /src/libxml2/shell.c:1594,1
    CyclomaticComplexity: 140
    EdgeCount: 140
    ICount: 380
    argCount: 3
    argNames:
    - doc
    - filename
    - output
    argTypes:
    - xmlDoc*
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1071
    functionDepth: 5
    functionLinenumber: 1071
    functionLinenumberEnd: 1595
    functionName: xmllintShell
    functionSourceFile: /src/libxml2/shell.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - strlen
    - xmllintShellWrite
    - xmllintShellReadline
    - snprintf
    - xmllintShellSave
    - xmlXPathFreeObject
    - xmllintShellValidate
    - xmlFree
    - xmllintShellSetBase
    - xmllintShellLoad
    - xmlXPathNewContext
    - xmllintShellRegisterNamespace
    - strcmp
    - xmlMalloc
    - xmlXPathDebugDumpObject
    - fprintf
    - xmlDocGetRootElement
    - xmllintShellDir
    - free
    - xmllintShellPwd
    - xmllintShellList
    - xmllintShellCat
    - xmllintShellGrep
    - xmllintShellSetContent
    - xmllintShellDu
    - xmllintShellBase
    - xmllintShellRegisterRootNamespaces
    - xmlXPathFreeContext
    - xmllintShellRNGValidate
    - xmlXPathEval
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmllintShell(xmlDoc *doc, const char *filename, FILE * output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parser.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: xmlErrMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    linkageType: ''
    returnType: void
    signature: void xmlErrMemory(xmlParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:240,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctxt
    - prefix
    - localname
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 247
    functionName: xmlErrAttributeDup
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlErrAttributeDup(xmlParserCtxtPtr ctxt, const xmlChar * prefix,\n
      \                  const xmlChar * localname)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - error
    - msg
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 262
    functionName: xmlFatalErrMsg
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlFatalErrMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \              const char *msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 279
    functionName: xmlWarningMsg
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlWarningMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \             const char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 299
    functionName: xmlValidityError
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlValidityError(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \             const char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - val
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 316
    functionName: xmlFatalErrMsgInt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlFatalErrMsgInt(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \                 const char *msg, int val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - val
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 335
    functionName: xmlFatalErrMsgStrIntStr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlFatalErrMsgStrIntStr(xmlParserCtxtPtr ctxt, xmlParserErrors
      error,\n                  const char *msg, const xmlChar *str1, int val,\n\t\t
      \ const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - val
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: xmlFatalErrMsgStr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlFatalErrMsgStr(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \                 const char *msg, const xmlChar * val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - val
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 362
    functionDepth: 1
    functionLinenumber: 362
    functionLinenumberEnd: 367
    functionName: xmlErrMsgStr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlErrMsgStr(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \                 const char *msg, const xmlChar * val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ctxt
    - error
    - msg
    - info1
    - info2
    - info3
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 389
    functionName: xmlNsErr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlNsErr(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n         const
      char *msg,\n         const xmlChar * info1, const xmlChar * info2,\n         const
      xmlChar * info3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parser.c:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctxt
    - error
    - msg
    - info1
    - info2
    - info3
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 409
    functionName: xmlNsWarn
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlNsWarn(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n         const
      char *msg,\n         const xmlChar * info1, const xmlChar * info2,\n         const
      xmlChar * info3)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parser.c:449,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:450,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:460,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:461,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:471,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - extra
    argTypes:
    - xmlParserCtxtPtr
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 478
    functionName: xmlParserEntityCheck
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSaturatedAddSizeT
    - xmlSaturatedAdd
    - xmlFatalErrMsg
    linkageType: ''
    returnType: int
    signature: int xmlParserEntityCheck(xmlParserCtxtPtr ctxt, unsigned long extra)
  - BBCount: 34
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 95
    argCount: 1
    argNames:
    - feature
    argTypes:
    - xmlFeature
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 665
    functionName: xmlHasFeature
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlHasFeature(xmlFeature feature)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - buf
    - max
    argTypes:
    - xmlSBuf*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 688
    functionName: xmlSBufInit
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSBufInit(xmlSBuf *buf, unsigned max)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:705,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlSBuf*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 715
    functionName: xmlSBufGrow
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlSBufGrow(xmlSBuf *buf, unsigned len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufGrow
      Src: /src/libxml2/parser.c:726,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:731,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - buf
    - str
    - len
    argTypes:
    - xmlSBuf*
    - xmlChar*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 733
    functionName: xmlSBufAddString
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - memcpy
    - xmlSBufGrow
    linkageType: ''
    returnType: void
    signature: void xmlSBufAddString(xmlSBuf *buf, const xmlChar *str, unsigned len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buf
    - str
    - len
    argTypes:
    - xmlSBuf*
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 2
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: xmlSBufAddCString
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSBufAddString
    linkageType: ''
    returnType: void
    signature: void xmlSBufAddCString(xmlSBuf *buf, const char *str, unsigned len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufGrow
      Src: /src/libxml2/parser.c:751,1
    - Dst: xmlCopyCharMultiByte
      Src: /src/libxml2/parser.c:761,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - buf
    - c
    argTypes:
    - xmlSBuf*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 740
    functionDepth: 1
    functionLinenumber: 740
    functionLinenumberEnd: 763
    functionName: xmlSBufAddChar
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCopyCharMultiByte
    - xmlSBufGrow
    linkageType: ''
    returnType: void
    signature: void xmlSBufAddChar(xmlSBuf *buf, int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 3
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: xmlSBufAddReplChar
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSBufAddCString
    linkageType: ''
    returnType: void
    signature: void xmlSBufAddReplChar(xmlSBuf *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parser.c:773,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - buf
    - ctxt
    - errMsg
    argTypes:
    - xmlSBuf*
    - xmlParserCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 770
    functionDepth: 1
    functionLinenumber: 770
    functionLinenumberEnd: 776
    functionName: xmlSBufReportError
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    - xmlFatalErr
    linkageType: ''
    returnType: void
    signature: void xmlSBufReportError(xmlSBuf *buf, xmlParserCtxtPtr ctxt, const
      char *errMsg)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:782,1
    - Dst: xmlSBufReportError
      Src: /src/libxml2/parser.c:798,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:800,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - buf
    - sizeOut
    - ctxt
    - errMsg
    argTypes:
    - xmlSBuf*
    - int*
    - xmlParserCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 805
    functionName: xmlSBufFinish
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlSBufReportError
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSBufFinish(xmlSBuf *buf, int *sizeOut, xmlParserCtxtPtr
      ctxt,\n              const char *errMsg)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufReportError
      Src: /src/libxml2/parser.c:810,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:812,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - buf
    - ctxt
    - errMsg
    argTypes:
    - xmlSBuf*
    - xmlParserCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 807
    functionDepth: 2
    functionLinenumber: 807
    functionLinenumberEnd: 813
    functionName: xmlSBufCleanup
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSBufReportError
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSBufCleanup(xmlSBuf *buf, xmlParserCtxtPtr ctxt, const char
      *errMsg)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:849,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parser.c:874,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 53
    argCount: 3
    argNames:
    - ctxt
    - str
    - errMsg
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 879
    functionName: xmlUTF8MultibyteLen
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrIO
    - xmlFatalErrMsg
    linkageType: ''
    returnType: int
    signature: "int xmlUTF8MultibyteLen(xmlParserCtxtPtr ctxt, const xmlChar *str,\n
      \                   const char *errMsg)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:928,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:929,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:930,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:933,1
    - Dst: xmlDictSetLimit
      Src: /src/libxml2/parser.c:936,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 895
    functionDepth: 2
    functionLinenumber: 895
    functionLinenumberEnd: 947
    functionName: xmlCtxtInitializeLate
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlDictSetLimit
    - xmlDictLookup
    - xmlErrMemory
    linkageType: ''
    returnType: void
    signature: void xmlCtxtInitializeLate(xmlParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - src
    - dst
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 986
    functionDepth: 0
    functionLinenumber: 986
    functionLinenumberEnd: 1006
    functionName: xmlAttrNormalizeSpace
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlAttrNormalizeSpace(const xmlChar *src, xmlChar *dst)'
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:1033,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/parser.c:1038,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/parser.c:1047,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1049,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1052,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1053,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:1063,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1082,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxml2/parser.c:1090,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1092,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/parser.c:1101,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1103,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1106,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1107,1
    - Dst: strlen
      Src: /src/libxml2/parser.c:1115,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:1116,1
    - Dst: strlen
      Src: /src/libxml2/parser.c:1120,1
    - Dst: strlen
      Src: /src/libxml2/parser.c:1122,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:1130,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1136,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 85
    argCount: 4
    argNames:
    - ctxt
    - fullname
    - fullattr
    - value
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1016
    functionDepth: 2
    functionLinenumber: 1016
    functionLinenumberEnd: 1137
    functionName: xmlAddDefAttrs
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xmlRealloc
    - xmlHashUpdateEntry2
    - xmlFree
    - strlen
    - xmlErrMemory
    - xmlDictLookupHashed
    - xmlHashCreateDict
    - PARSER_EXTERNAL
    - xmlSplitQName3
    linkageType: ''
    returnType: void
    signature: "void xmlAddDefAttrs(xmlParserCtxtPtr ctxt,\n               const xmlChar
      *fullname,\n               const xmlChar *fullattr,\n               const xmlChar
      *value)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/parser.c:1154,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:1159,1
    - Dst: xmlHashAdd2
      Src: /src/libxml2/parser.c:1162,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:1163,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1168,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - ctxt
    - fullname
    - fullattr
    - type
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1147
    functionDepth: 2
    functionLinenumber: 1147
    functionLinenumberEnd: 1169
    functionName: xmlAddSpecialAttr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlHashAdd2
    - xmlHashCreateDict
    - PARSER_EXTERNAL
    - XML_INT_TO_PTR
    linkageType: ''
    returnType: void
    signature: "void xmlAddSpecialAttr(xmlParserCtxtPtr ctxt,\n\t\t  const xmlChar
      *fullname,\n\t\t  const xmlChar *fullattr,\n\t\t  int type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:1180,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/parser.c:1181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - payload
    - data
    - fullname
    - fullattr
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1174
    functionDepth: 1
    functionLinenumber: 1174
    functionLinenumberEnd: 1183
    functionName: xmlCleanSpecialAttrCallback
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry2
    - XML_PTR_TO_INT
    linkageType: ''
    returnType: void
    signature: "void xmlCleanSpecialAttrCallback(void *payload, void *data,\n                            const
      xmlChar *fullname, const xmlChar *fullattr,\n                            const
      xmlChar *unused ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScanFull
      Src: /src/libxml2/parser.c:1198,1
    - Dst: xmlHashSize
      Src: /src/libxml2/parser.c:1200,1
    - Dst: xmlHashFree
      Src: /src/libxml2/parser.c:1201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1192
    functionDepth: 1
    functionLinenumber: 1192
    functionLinenumberEnd: 1204
    functionName: xmlCleanSpecialAttr
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlHashSize
    - xmlHashFree
    - xmlHashScanFull
    linkageType: ''
    returnType: void
    signature: void xmlCleanSpecialAttr(xmlParserCtxtPtr ctxt)
  - BBCount: 30
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 105
    argCount: 1
    argNames:
    - lang
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1265
    functionDepth: 0
    functionLinenumber: 1265
    functionLinenumberEnd: 1399
    functionName: xmlCheckLanguageID
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCheckLanguageID(const xmlChar * lang)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:1417,1
    - Dst: memset
      Src: /src/libxml2/parser.c:1421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1425
      start: 1415
    functionDepth: 0
    functionLinenumber: 1415
    functionLinenumberEnd: 1425
    functionName: xmlParserNsCreate
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlParserNsData
    signature: 'xmlParserNsData *

      xmlParserNsCreate(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1437,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1438,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - nsdb
    argTypes:
    - xmlParserNsData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1440
    functionName: xmlParserNsFree
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlParserNsFree(xmlParserNsData *nsdb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/parser.c:1457,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - nsdb
    argTypes:
    - xmlParserNsData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1458
    functionName: xmlParserNsReset
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlParserNsReset(xmlParserNsData *nsdb)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - nsdb
    argTypes:
    - xmlParserNsData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1466
    functionDepth: 0
    functionLinenumber: 1466
    functionLinenumberEnd: 1473
    functionName: xmlParserNsStartElement
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlParserNsStartElement(xmlParserNsData *nsdb)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - ctxt
    - prefix
    - bucketPtr
    argTypes:
    - xmlParserCtxtPtr
    - xmlHashedString*
    - xmlParserNsBucket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1526
      start: 1486
    functionDepth: 0
    functionLinenumber: 1486
    functionLinenumberEnd: 1526
    functionName: xmlParserNsLookup
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlParserNsLookup(xmlParserCtxtPtr ctxt, const xmlHashedString
      *prefix,\n                  xmlParserNsBucket **bucketPtr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:1547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlParserCtxtPtr
    - xmlHashedString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1555
      start: 1535
    functionDepth: 1
    functionLinenumber: 1535
    functionLinenumberEnd: 1555
    functionName: xmlParserNsLookupUri
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserNsLookup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParserNsLookupUri(xmlParserCtxtPtr ctxt, const xmlHashedString *prefix)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictComputeHash
      Src: /src/libxml2/parser.c:1575,1
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:1578,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1583
      start: 1565
    functionDepth: 1
    functionLinenumber: 1565
    functionLinenumberEnd: 1583
    functionName: xmlParserNsLookupSax
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlDictComputeHash
    - xmlParserNsLookup
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlParserNsLookupSax(xmlParserCtxt *ctxt, const xmlChar *prefix)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictComputeHash
      Src: /src/libxml2/parser.c:1606,1
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:1609,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - prefix
    - saxData
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1595
    functionDepth: 1
    functionLinenumber: 1595
    functionLinenumberEnd: 1615
    functionName: xmlParserNsUpdateSax
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlDictComputeHash
    - xmlParserNsLookup
    linkageType: ''
    returnType: int
    signature: "int xmlParserNsUpdateSax(xmlParserCtxt *ctxt, const xmlChar *prefix,\n
      \                    void *saxData)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:1629,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1635,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1640,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1649,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1623
    functionDepth: 2
    functionLinenumber: 1623
    functionLinenumberEnd: 1651
    functionName: xmlParserNsGrow
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlParserNsGrow(xmlParserCtxtPtr ctxt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserNsGrow
      Src: /src/libxml2/parser.c:1675,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1676,1
    - Dst: xmlErrAttributeDup
      Src: /src/libxml2/parser.c:1691,1
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:1707,1
    - Dst: xmlErrAttributeDup
      Src: /src/libxml2/parser.c:1716,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1742,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:1746,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1748,1
    - Dst: memset
      Src: /src/libxml2/parser.c:1751,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1770,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 90
    argCount: 5
    argNames:
    - ctxt
    - prefix
    - uri
    - saxData
    - defAttr
    argTypes:
    - xmlParserCtxtPtr
    - xmlHashedString*
    - xmlHashedString*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1664
    functionDepth: 3
    functionLinenumber: 1664
    functionLinenumberEnd: 1810
    functionName: xmlParserNsPush
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - xmlMalloc
    - xmlParserNsGrow
    - xmlParserNsLookup
    - xmlErrAttributeDup
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlParserNsPush(xmlParserCtxtPtr ctxt, const xmlHashedString *prefix,\n
      \               const xmlHashedString *uri, void *saxData, int defAttr)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:1838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - nr
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1819
    functionDepth: 1
    functionLinenumber: 1819
    functionLinenumberEnd: 1846
    functionName: xmlParserNsPop
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserNsLookup
    linkageType: ''
    returnType: int
    signature: int xmlParserNsPop(xmlParserCtxtPtr ctxt, int nr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:1854,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:1858,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1863,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1868,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1879,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1848
    functionDepth: 2
    functionLinenumber: 1848
    functionLinenumberEnd: 1881
    functionName: xmlCtxtGrowAttrs
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlFatalErr
    - xmlErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlCtxtGrowAttrs(xmlParserCtxtPtr ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:1905,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:1908,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:1912,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1914,1
    - Dst: xmlParserGetDirectory
      Src: /src/libxml2/parser.c:1922,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:1924,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:1930,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:1938,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1890
    functionDepth: 2
    functionLinenumber: 1890
    functionLinenumberEnd: 1950
    functionName: xmlCtxtPushInput
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlRealloc
    - xmlErrMemory
    - xmlFree
    - xmlFatalErrMsg
    - xmlParserGetDirectory
    - xmlGrowCapacity
    linkageType: ''
    returnType: int
    signature: int xmlCtxtPushInput(xmlParserCtxt *ctxt, xmlParserInput *value)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1975
      start: 1958
    functionDepth: 0
    functionLinenumber: 1958
    functionLinenumberEnd: 1975
    functionName: xmlCtxtPopInput
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlCtxtPopInput(xmlParserCtxt *ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:1997,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:2000,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:2007,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:2009,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlParserCtxt*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 1986
    functionDepth: 2
    functionLinenumber: 1986
    functionLinenumberEnd: 2019
    functionName: nodePush
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlFatalErrMsgInt
    - xmlGrowCapacity
    - xmlRealloc
    - xmlErrMemory
    linkageType: ''
    returnType: int
    signature: int nodePush(xmlParserCtxt *ctxt, xmlNode *value)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2045
      start: 2029
    functionDepth: 0
    functionLinenumber: 2029
    functionLinenumberEnd: 2045
    functionName: nodePop
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      nodePop(xmlParserCtxt *ctxt)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:2069,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:2075,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:2080,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:2087,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:2100,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 6
    argNames:
    - ctxt
    - value
    - prefix
    - URI
    - line
    - nsNr
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2102
      start: 2058
    functionDepth: 2
    functionLinenumber: 2058
    functionLinenumberEnd: 2102
    functionName: nameNsPush
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlGrowCapacity
    - xmlRealloc
    - xmlErrMemory
    linkageType: ''
    returnType: int
    signature: "int nameNsPush(xmlParserCtxtPtr ctxt, const xmlChar * value,\n           const
      xmlChar *prefix, const xmlChar *URI, int line, int nsNr)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2125
      start: 2110
    functionDepth: 0
    functionLinenumber: 2110
    functionLinenumberEnd: 2125
    functionName: nameNsPop
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      nameNsPop(xmlParserCtxtPtr ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2151
      start: 2136
    functionDepth: 0
    functionLinenumber: 2136
    functionLinenumberEnd: 2151
    functionName: namePop
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      namePop(xmlParserCtxtPtr ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:2158,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:2161,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:2165,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:2167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - val
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2177
      start: 2153
    functionDepth: 2
    functionLinenumber: 2153
    functionLinenumberEnd: 2177
    functionName: spacePush
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlGrowCapacity
    - xmlErrMemory
    linkageType: ''
    returnType: int
    signature: int spacePush(xmlParserCtxtPtr ctxt, int val)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2179
    functionDepth: 0
    functionLinenumber: 2179
    functionLinenumberEnd: 2190
    functionName: spacePop
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int spacePop(xmlParserCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2227
      start: 2226
    functionDepth: 0
    functionLinenumber: 2226
    functionLinenumberEnd: 2227
    functionName: NXT
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2230
    functionDepth: 0
    functionLinenumber: 2230
    functionLinenumberEnd: 2233
    functionName: CMP4
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP4( s, c1, c2, c3, c4 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2235
      start: 2233
    functionDepth: 0
    functionLinenumber: 2233
    functionLinenumberEnd: 2235
    functionName: CMP5
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP5( s, c1, c2, c3, c4, c5 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - ','
    - c6
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2237
      start: 2235
    functionDepth: 0
    functionLinenumber: 2235
    functionLinenumberEnd: 2237
    functionName: CMP6
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP6( s, c1, c2, c3, c4, c5, c6 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - ','
    - c6
    - ','
    - c7
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2239
      start: 2237
    functionDepth: 0
    functionLinenumber: 2237
    functionLinenumberEnd: 2239
    functionName: CMP7
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP7( s, c1, c2, c3, c4, c5, c6, c7 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 19
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - ','
    - c6
    - ','
    - c7
    - ','
    - c8
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2239
    functionDepth: 0
    functionLinenumber: 2239
    functionLinenumberEnd: 2241
    functionName: CMP8
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP8( s, c1, c2, c3, c4, c5, c6, c7, c8 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 21
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - ','
    - c6
    - ','
    - c7
    - ','
    - c8
    - ','
    - c9
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2244
      start: 2241
    functionDepth: 0
    functionLinenumber: 2241
    functionLinenumberEnd: 2244
    functionName: CMP9
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP9( s, c1, c2, c3, c4, c5, c6, c7, c8, c9 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 23
    argNames:
    - (
    - s
    - ','
    - c1
    - ','
    - c2
    - ','
    - c3
    - ','
    - c4
    - ','
    - c5
    - ','
    - c6
    - ','
    - c7
    - ','
    - c8
    - ','
    - c9
    - ','
    - c10
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2247
      start: 2244
    functionDepth: 0
    functionLinenumber: 2244
    functionLinenumberEnd: 2247
    functionName: CMP10
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CMP10( s, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2248
    functionDepth: 0
    functionLinenumber: 2248
    functionLinenumberEnd: 2253
    functionName: SKIP
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2265
      start: 2254
    functionDepth: 0
    functionLinenumber: 2254
    functionLinenumberEnd: 2265
    functionName: SKIPL
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIPL(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2294
      start: 2288
    functionDepth: 0
    functionLinenumber: 2288
    functionLinenumberEnd: 2294
    functionName: NEXTL
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEXTL(l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - b
    - ','
    - i
    - ','
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2295
    functionDepth: 0
    functionLinenumber: 2295
    functionLinenumberEnd: 2298
    functionName: COPY_BUF
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COPY_BUF(b, i, v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:2301,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - len
    argTypes:
    - xmlParserCtxtPtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2307
      start: 2299
    functionDepth: 1
    functionLinenumber: 2299
    functionLinenumberEnd: 2307
    functionName: xmlCurrentCharRecover
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCurrentChar
    linkageType: ''
    returnType: int
    signature: int xmlCurrentCharRecover(xmlParserCtxtPtr ctxt, int *len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:2323,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/parser.c:2334,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2317
    functionDepth: 1
    functionLinenumber: 2317
    functionLinenumberEnd: 2344
    functionName: xmlSkipBlankChars
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserGrow
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlSkipBlankChars(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserShrink
      Src: /src/libxml2/parser.c:2364,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/parser.c:2365,1
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parser.c:2369,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:2372,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:2379,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:2385,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:2385,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:2387,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2390
      start: 2346
    functionDepth: 2
    functionLinenumber: 2346
    functionLinenumberEnd: 2390
    functionName: xmlPopPE
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserEntityCheck
    - xmlSaturatedAddSizeT
    - xmlParserShrink
    - xmlSaturatedAdd
    - xmlParserGrow
    - xmlCtxtPopInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: void
    signature: void xmlPopPE(xmlParserCtxtPtr ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_IN_PE
      Src: /src/libxml2/parser.c:2405,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:2406,1
    - Dst: xmlSkipBlankChars
      Src: /src/libxml2/parser.c:2409,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:2415,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:2416,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:2420,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:2420,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:2420,1
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:2429,1
    - Dst: PARSER_IN_PE
      Src: /src/libxml2/parser.c:2431,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:2432,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:2445,1
    - Dst: PARSER_IN_PE
      Src: /src/libxml2/parser.c:2447,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:2448,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2465
      start: 2399
    functionDepth: 3
    functionLinenumber: 2399
    functionLinenumberEnd: 2465
    functionName: xmlSkipBlankCharsPE
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSkipBlankChars
    - IS_BLANK_CH
    - NXT
    - xmlPopPE
    - PARSER_IN_PE
    - PARSER_STOPPED
    - PARSER_EXTERNAL
    - xmlParsePERefInternal
    linkageType: ''
    returnType: int
    signature: int xmlSkipBlankCharsPE(xmlParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:2484,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:2485,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/parser.c:2487,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2489
      start: 2479
    functionDepth: 1
    functionLinenumber: 2479
    functionLinenumberEnd: 2489
    functionName: xmlPopInput
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParserGrow
    - xmlCtxtPopInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlChar
    signature: xmlChar xmlPopInput(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:2507,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - input
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2511
      start: 2500
    functionDepth: 3
    functionLinenumber: 2500
    functionLinenumberEnd: 2511
    functionName: xmlPushInput
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    linkageType: ''
    returnType: int
    signature: int xmlPushInput(xmlParserCtxt *ctxt, xmlParserInput *input)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:2536,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:2537,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:2538,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:2540,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2552,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:2567,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:2568,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2578,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:2595,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2596,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:2605,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:2609,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:2610,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 65
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2615
      start: 2528
    functionDepth: 2
    functionLinenumber: 2528
    functionLinenumberEnd: 2615
    functionName: xmlParseCharRef
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - IS_CHAR
    - NXT
    - PARSER_STOPPED
    - xmlFatalErr
    - xmlFatalErrMsgInt
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseCharRef(xmlParserCtxt *ctxt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2653,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2672,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:2685,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:2696,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:2699,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:2702,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 58
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2707
      start: 2633
    functionDepth: 2
    functionLinenumber: 2633
    functionLinenumberEnd: 2707
    functionName: xmlParseStringCharRef
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlFatalErrMsgInt
    - IS_CHAR
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: int xmlParseStringCharRef(xmlParserCtxtPtr ctxt, const xmlChar **str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:2743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2744
      start: 2741
    functionDepth: 1
    functionLinenumber: 2741
    functionLinenumberEnd: 2744
    functionName: xmlParserHandlePEReference
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParsePERefInternal
    linkageType: ''
    returnType: void
    signature: void xmlParserHandlePEReference(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/parser.c:2770,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 7
    argNames:
    - ctxt
    - str
    - len
    - ATTRIBUTE_UNUSED
    - end
    - end2
    - end3
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - int
    - int
    - xmlChar
    - xmlChar
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2759
    functionDepth: 1
    functionLinenumber: 2759
    functionLinenumberEnd: 2771
    functionName: xmlStringLenDecodeEntities
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlExpandEntitiesInAttValue
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlStringLenDecodeEntities(xmlParserCtxt *ctxt, const xmlChar
      *str, int len,\n                           int what ATTRIBUTE_UNUSED,\n                           xmlChar
      end, xmlChar end2, xmlChar end3)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/parser.c:2795,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 6
    argNames:
    - ctxt
    - str
    - ATTRIBUTE_UNUSED
    - end
    - end2
    - end3
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - int
    - xmlChar
    - xmlChar
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2785
    functionDepth: 1
    functionLinenumber: 2785
    functionLinenumberEnd: 2796
    functionName: xmlStringDecodeEntities
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlExpandEntitiesInAttValue
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlStringDecodeEntities(xmlParserCtxt *ctxt, const xmlChar
      *str,\n                        int what ATTRIBUTE_UNUSED,\n\t\t        xmlChar
      end, xmlChar  end2, xmlChar end3)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:2831,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:2846,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:2849,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:2869,1
    - Dst: xmlGetLastChild
      Src: /src/libxml2/parser.c:2871,1
    - Dst: xmlNodeIsText
      Src: /src/libxml2/parser.c:2875,1
    - Dst: xmlNodeIsText
      Src: /src/libxml2/parser.c:2878,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 38
    argCount: 4
    argNames:
    - ctxt
    - str
    - len
    - blank_chars
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2881
      start: 2814
    functionDepth: 1
    functionLinenumber: 2814
    functionLinenumberEnd: 2881
    functionName: areBlanks
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - IS_BLANK_CH
    - NXT
    - xmlGetLastChild
    - xmlNodeIsText
    linkageType: ''
    returnType: int
    signature: "int areBlanks(xmlParserCtxtPtr ctxt, const xmlChar *str, int len,\n
      \                    int blank_chars)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/parser.c:2907,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parser.c:2909,1
    - Dst: xmlStrdup
      Src: /src/libxml2/parser.c:2913,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parser.c:2915,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:2916,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - name
    - prefixOut
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2920
      start: 2902
    functionDepth: 1
    functionLinenumber: 2902
    functionLinenumberEnd: 2920
    functionName: xmlSplitQName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlStrdup
    - xmlCtxtErrMemory
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSplitQName(xmlParserCtxt *ctxt, const xmlChar *name, xmlChar **prefixOut)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2970
      start: 2946
    functionDepth: 0
    functionLinenumber: 2946
    functionLinenumberEnd: 2970
    functionName: xmlIsNameStartCharNew
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIsNameStartCharNew(int c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3000
      start: 2972
    functionDepth: 0
    functionLinenumber: 2972
    functionLinenumberEnd: 3000
    functionName: xmlIsNameCharNew
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIsNameCharNew(int c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IS_LETTER
      Src: /src/libxml2/parser.c:3005,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3008
      start: 3002
    functionDepth: 1
    functionLinenumber: 3002
    functionLinenumberEnd: 3008
    functionName: xmlIsNameStartCharOld
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - IS_LETTER
    linkageType: ''
    returnType: int
    signature: int xmlIsNameStartCharOld(int c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IS_LETTER
      Src: /src/libxml2/parser.c:3013,1
    - Dst: IS_DIGIT
      Src: /src/libxml2/parser.c:3013,1
    - Dst: IS_COMBINING
      Src: /src/libxml2/parser.c:3016,1
    - Dst: IS_EXTENDER
      Src: /src/libxml2/parser.c:3017,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3020
      start: 3010
    functionDepth: 1
    functionLinenumber: 3010
    functionLinenumberEnd: 3020
    functionName: xmlIsNameCharOld
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - IS_DIGIT
    - IS_EXTENDER
    - IS_LETTER
    - IS_COMBINING
    linkageType: ''
    returnType: int
    signature: int xmlIsNameCharOld(int c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsNameStartCharNew
      Src: /src/libxml2/parser.c:3025,1
    - Dst: xmlIsNameStartCharOld
      Src: /src/libxml2/parser.c:3027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - old10
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3028
      start: 3022
    functionDepth: 2
    functionLinenumber: 3022
    functionLinenumberEnd: 3028
    functionName: xmlIsNameStartChar
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlIsNameStartCharNew
    - xmlIsNameStartCharOld
    linkageType: ''
    returnType: int
    signature: int xmlIsNameStartChar(int c, int old10)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsNameCharNew
      Src: /src/libxml2/parser.c:3033,1
    - Dst: xmlIsNameCharOld
      Src: /src/libxml2/parser.c:3035,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - old10
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3036
      start: 3030
    functionDepth: 2
    functionLinenumber: 3030
    functionLinenumberEnd: 3036
    functionName: xmlIsNameChar
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlIsNameCharNew
    - xmlIsNameCharOld
    linkageType: ''
    returnType: int
    signature: int xmlIsNameChar(int c, int old10)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/parser.c:3065,1
    - Dst: xmlIsNameChar
      Src: /src/libxml2/parser.c:3071,1
    - Dst: xmlIsNameStartChar
      Src: /src/libxml2/parser.c:3072,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - ptr
    - maxSize
    - flags
    argTypes:
    - xmlChar*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3083
      start: 3050
    functionDepth: 3
    functionLinenumber: 3050
    functionLinenumberEnd: 3083
    functionName: xmlScanName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlIsNameChar
    - xmlGetUTF8Char
    - xmlIsNameStartChar
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlScanName(const xmlChar *ptr, size_t maxSize, int flags)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3098,1
    - Dst: xmlIsNameStartChar
      Src: /src/libxml2/parser.c:3099,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3102,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3103,1
    - Dst: xmlIsNameChar
      Src: /src/libxml2/parser.c:3104,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3107,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3108,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3111,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3120,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:3125,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:3127,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3131
      start: 3085
    functionDepth: 3
    functionLinenumber: 3085
    functionLinenumberEnd: 3131
    functionName: xmlParseNameComplex
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlIsNameChar
    - xmlErrMemory
    - xmlCurrentChar
    - xmlFatalErr
    - xmlIsNameStartChar
    - xmlDictLookup
    - NEXTL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseNameComplex(xmlParserCtxtPtr ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3177,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/parser.c:3180,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3184,1
    - Dst: xmlParseNameComplex
      Src: /src/libxml2/parser.c:3189,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 22
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3190
      start: 3149
    functionDepth: 4
    functionLinenumber: 3149
    functionLinenumberEnd: 3190
    functionName: xmlParseName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlErrMemory
    - xmlParseNameComplex
    - xmlFatalErr
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseName(xmlParserCtxt *ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3210,1
    - Dst: xmlIsNameStartChar
      Src: /src/libxml2/parser.c:3212,1
    - Dst: xmlIsNameChar
      Src: /src/libxml2/parser.c:3217,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3220,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3221,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3224,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:3227,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3229,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 22
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3231
      start: 3192
    functionDepth: 3
    functionLinenumber: 3192
    functionLinenumberEnd: 3231
    functionName: xmlParseNCNameComplex
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlIsNameChar
    - xmlErrMemory
    - xmlCurrentChar
    - xmlDictLookupHashed
    - xmlFatalErr
    - xmlIsNameStartChar
    - NEXTL
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString xmlParseNCNameComplex(xmlParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3276,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:3279,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3283,1
    - Dst: xmlParseNCNameComplex
      Src: /src/libxml2/parser.c:3289,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 29
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3290
      start: 3245
    functionDepth: 4
    functionLinenumber: 3245
    functionLinenumberEnd: 3290
    functionName: xmlParseNCName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseNCNameComplex
    - xmlDictLookupHashed
    - xmlFatalErr
    - xmlErrMemory
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString xmlParseNCName(xmlParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:3315,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:3322,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - other
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3328
      start: 3302
    functionDepth: 5
    functionLinenumber: 3302
    functionLinenumberEnd: 3328
    functionName: xmlParseNameAndCompare
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlParseName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseNameAndCompare(xmlParserCtxtPtr ctxt, xmlChar const *other)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/parser.c:3351,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3353,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:3359,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3339
    functionDepth: 4
    functionLinenumber: 3339
    functionLinenumberEnd: 3364
    functionName: xmlParseStringName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlStrndup
    - xmlErrMemory
    - xmlFatalErr
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseStringName(xmlParserCtxtPtr ctxt, const xmlChar** str)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3390,1
    - Dst: xmlIsNameChar
      Src: /src/libxml2/parser.c:3392,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:3393,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3394,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3395,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:3404,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3406,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:3409,1
    - Dst: xmlIsNameChar
      Src: /src/libxml2/parser.c:3410,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:3415,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3417,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3418,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:3421,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3423,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3424,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:3430,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3431,1
    - Dst: xmlCurrentChar
      Src: /src/libxml2/parser.c:3432,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3441,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:3444,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3446,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3448
      start: 3379
    functionDepth: 3
    functionLinenumber: 3379
    functionLinenumberEnd: 3448
    functionName: xmlParseNmtoken
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlIsNameChar
    - xmlErrMemory
    - xmlFree
    - xmlRealloc
    - xmlCurrentChar
    - xmlStrndup
    - COPY_BUF
    - xmlMalloc
    - xmlFatalErr
    - memcpy
    - xmlGrowCapacity
    - NEXTL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseNmtoken(xmlParserCtxt *ctxt)'
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3471,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:3479,1
    - Dst: xmlUTF8MultibyteLen
      Src: /src/libxml2/parser.c:3483,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3487,1
    - Dst: xmlSBufAddReplChar
      Src: /src/libxml2/parser.c:3488,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3497,1
    - Dst: xmlParseStringCharRef
      Src: /src/libxml2/parser.c:3499,1
    - Dst: xmlSBufAddChar
      Src: /src/libxml2/parser.c:3503,1
    - Dst: xmlParseStringName
      Src: /src/libxml2/parser.c:3514,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3517,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3520,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3524,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3530,1
    - Dst: xmlParseStringPEReference
      Src: /src/libxml2/parser.c:3532,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:3536,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3537,1
    - Dst: xmlLoadEntityContent
      Src: /src/libxml2/parser.c:3551,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:3553,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:3563,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3567,1
    - Dst: xmlExpandPEsInEntityValue
      Src: /src/libxml2/parser.c:3572,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:3579,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3580,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3583,1
    - Dst: xmlSBufAddReplChar
      Src: /src/libxml2/parser.c:3584,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3594,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 86
    argCount: 5
    argNames:
    - ctxt
    - buf
    - str
    - length
    - depth
    argTypes:
    - xmlParserCtxtPtr
    - xmlSBuf*
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3595
      start: 3459
    functionDepth: 5
    functionLinenumber: 3459
    functionLinenumberEnd: 3595
    functionName: xmlExpandPEsInEntityValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlWarningMsg
    - xmlParseStringName
    - xmlFree
    - xmlParserEntityCheck
    - xmlParseStringCharRef
    - xmlSBufAddChar
    - IS_BYTE_CHAR
    - xmlFatalErrMsg
    - xmlSBufAddReplChar
    - PARSER_STOPPED
    - xmlUTF8MultibyteLen
    - xmlParseStringPEReference
    - PARSER_EXTERNAL
    - xmlFatalErr
    - xmlLoadEntityContent
    - xmlExpandPEsInEntityValue
    - xmlSBufAddString
    linkageType: ''
    returnType: void
    signature: "void xmlExpandPEsInEntityValue(xmlParserCtxtPtr ctxt, xmlSBuf *buf,\n
      \                         const xmlChar *str, int length, int depth)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufInit
      Src: /src/libxml2/parser.c:3618,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3624,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:3637,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3641,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3648,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3654,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:3667,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:3669,1
    - Dst: xmlExpandPEsInEntityValue
      Src: /src/libxml2/parser.c:3672,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:3674,1
    - Dst: xmlSBufFinish
      Src: /src/libxml2/parser.c:3676,1
    - Dst: xmlSBufCleanup
      Src: /src/libxml2/parser.c:3679,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 2
    argNames:
    - ctxt
    - orig
    argTypes:
    - xmlParserCtxt*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3681
      start: 3609
    functionDepth: 6
    functionLinenumber: 3609
    functionLinenumberEnd: 3681
    functionName: xmlParseEntityValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlStrndup
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlSBufCleanup
    - xmlFatalErr
    - xmlSBufInit
    - xmlExpandPEsInEntityValue
    - xmlSBufFinish
    - NEXTL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseEntityValue(xmlParserCtxt *ctxt, xmlChar **orig)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3700,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3706,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:3730,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:3738,1
    - Dst: xmlParseStringCharRef
      Src: /src/libxml2/parser.c:3746,1
    - Dst: xmlParseStringEntityRef
      Src: /src/libxml2/parser.c:3755,1
    - Dst: xmlLookupGeneralEntity
      Src: /src/libxml2/parser.c:3761,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3762,1
    - Dst: xmlCheckEntityInAttValue
      Src: /src/libxml2/parser.c:3768,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:3772,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:3773,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 3
    argNames:
    - ctxt
    - pent
    - depth
    argTypes:
    - xmlParserCtxtPtr
    - xmlEntityPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3783
      start: 3691
    functionDepth: 3
    functionLinenumber: 3691
    functionLinenumberEnd: 3783
    functionName: xmlCheckEntityInAttValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlParseStringEntityRef
    - xmlParseStringCharRef
    - xmlFatalErrMsg
    - xmlCheckEntityInAttValue
    - PARSER_STOPPED
    - xmlSaturatedAdd
    - xmlFatalErr
    - xmlFatalErrMsgStr
    - xmlLookupGeneralEntity
    linkageType: ''
    returnType: void
    signature: void xmlCheckEntityInAttValue(xmlParserCtxtPtr ctxt, xmlEntityPtr pent,
      int depth)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3812,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:3819,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:3824,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:3835,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:3848,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3858,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3864,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:3868,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3884,1
    - Dst: xmlParseStringCharRef
      Src: /src/libxml2/parser.c:3888,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:3899,1
    - Dst: xmlSBufAddChar
      Src: /src/libxml2/parser.c:3902,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3910,1
    - Dst: xmlParseStringEntityRef
      Src: /src/libxml2/parser.c:3914,1
    - Dst: xmlLookupGeneralEntity
      Src: /src/libxml2/parser.c:3921,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:3922,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:3927,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3932,1
    - Dst: xmlExpandEntityInAttValue
      Src: /src/libxml2/parser.c:3938,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:3947,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 105
    argCount: 8
    argNames:
    - ctxt
    - buf
    - str
    - pent
    - normalize
    - inSpace
    - depth
    - check
    argTypes:
    - xmlParserCtxtPtr
    - xmlSBuf*
    - xmlChar*
    - xmlEntityPtr
    - int
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3950
      start: 3799
    functionDepth: 3
    functionLinenumber: 3799
    functionLinenumberEnd: 3950
    functionName: xmlExpandEntityInAttValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlExpandEntityInAttValue
    - xmlFree
    - xmlParserEntityCheck
    - xmlParseStringEntityRef
    - xmlParseStringCharRef
    - xmlSBufAddChar
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlFatalErr
    - xmlSBufAddCString
    - xmlFatalErrMsgStr
    - xmlLookupGeneralEntity
    - xmlSBufAddString
    linkageType: ''
    returnType: int
    signature: "int xmlExpandEntityInAttValue(xmlParserCtxtPtr ctxt, xmlSBuf *buf,\n
      \                         const xmlChar *str, xmlEntityPtr pent, int normalize,\n
      \                         int *inSpace, int depth, int check)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufInit
      Src: /src/libxml2/parser.c:3970,1
    - Dst: xmlExpandEntityInAttValue
      Src: /src/libxml2/parser.c:3972,1
    - Dst: xmlSBufFinish
      Src: /src/libxml2/parser.c:3978,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctxt
    - str
    - normalize
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3979
      start: 3961
    functionDepth: 4
    functionLinenumber: 3961
    functionLinenumberEnd: 3979
    functionName: xmlExpandEntitiesInAttValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlSBufInit
    - xmlExpandEntityInAttValue
    - xmlSBufFinish
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlExpandEntitiesInAttValue(xmlParserCtxt *ctxt, const
      xmlChar *str,\n                            int normalize)"
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: xmlSBufInit
      Src: /src/libxml2/parser.c:4034,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4040,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4043,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:4054,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:4058,1
    - Dst: xmlUTF8MultibyteLen
      Src: /src/libxml2/parser.c:4072,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4076,1
    - Dst: xmlSBufAddReplChar
      Src: /src/libxml2/parser.c:4079,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4080,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4083,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4093,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:4097,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:4098,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4101,1
    - Dst: xmlSBufAddReplChar
      Src: /src/libxml2/parser.c:4104,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4111,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4118,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4122,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:4129,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4133,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:4134,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4138,1
    - Dst: xmlParseCharRef
      Src: /src/libxml2/parser.c:4142,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4151,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4157,1
    - Dst: xmlSBufAddChar
      Src: /src/libxml2/parser.c:4160,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4168,1
    - Dst: xmlParseEntityRefInternal
      Src: /src/libxml2/parser.c:4172,1
    - Dst: xmlLookupGeneralEntity
      Src: /src/libxml2/parser.c:4181,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4187,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4189,1
    - Dst: xmlExpandEntityInAttValue
      Src: /src/libxml2/parser.c:4192,1
    - Dst: xmlCheckEntityInAttValue
      Src: /src/libxml2/parser.c:4198,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:4200,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4208,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4209,1
    - Dst: xmlStrlen
      Src: /src/libxml2/parser.c:4209,1
    - Dst: xmlSBufAddCString
      Src: /src/libxml2/parser.c:4210,1
    - Dst: xmlSBufCleanup
      Src: /src/libxml2/parser.c:4228,1
    - Dst: xmlSBufAddString
      Src: /src/libxml2/parser.c:4231,1
    - Dst: xmlSBufFinish
      Src: /src/libxml2/parser.c:4238,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4250,1
    - Dst: xmlSBufCleanup
      Src: /src/libxml2/parser.c:4255,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 171
    argCount: 5
    argNames:
    - ctxt
    - attlen
    - outFlags
    - special
    - isNamespace
    argTypes:
    - xmlParserCtxtPtr
    - int*
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4257
      start: 4017
    functionDepth: 4
    functionLinenumber: 4017
    functionLinenumberEnd: 4257
    functionName: xmlParseAttValueInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSBufAddReplChar
    - xmlParseCharRef
    - xmlLookupGeneralEntity
    - xmlSBufAddString
    - NEXTL
    - xmlExpandEntityInAttValue
    - xmlParserEntityCheck
    - xmlCheckEntityInAttValue
    - xmlUTF8MultibyteLen
    - xmlSBufCleanup
    - xmlParseEntityRefInternal
    - xmlStrlen
    - xmlSBufAddChar
    - NXT
    - xmlFatalErr
    - xmlSBufAddCString
    - xmlSBufFinish
    - IS_BYTE_CHAR
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlSBufInit
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlParseAttValueInternal(xmlParserCtxtPtr ctxt, int *attlen,
      int *outFlags,\n                         int special, int isNamespace)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseAttValueInternal
      Src: /src/libxml2/parser.c:4298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4299
      start: 4295
    functionDepth: 5
    functionLinenumber: 4295
    functionLinenumberEnd: 4299
    functionName: xmlParseAttValue
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseAttValueInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseAttValue(xmlParserCtxt *ctxt)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4330,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:4334,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4336,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4339,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4340,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:4345,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4347,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4348,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:4351,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4353,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4354,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:4360,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4361,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4362,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4365,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4366,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4371
      start: 4312
    functionDepth: 2
    functionLinenumber: 4312
    functionLinenumberEnd: 4371
    functionName: xmlParseSystemLiteral
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - IS_CHAR
    - xmlRealloc
    - xmlCurrentCharRecover
    - xmlMalloc
    - COPY_BUF
    - xmlFatalErr
    - xmlGrowCapacity
    - NEXTL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseSystemLiteral(xmlParserCtxt *ctxt)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4402,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:4405,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4407,1
    - Dst: IS_PUBIDCHAR_CH
      Src: /src/libxml2/parser.c:4411,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:4412,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:4417,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4419,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4420,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:4423,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4425,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4426,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4438,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4440,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 46
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4443
      start: 4384
    functionDepth: 2
    functionLinenumber: 4384
    functionLinenumberEnd: 4443
    functionName: xmlParsePubidLiteral
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - xmlRealloc
    - xmlMalloc
    - PARSER_STOPPED
    - xmlGrowCapacity
    - xmlFatalErr
    - IS_PUBIDCHAR_CH
    - NEXTL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParsePubidLiteral(xmlParserCtxt *ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: areBlanks
      Src: /src/libxml2/parser.c:4502,1
    - Dst: xmlParserCtxtPtr::sax::ignorableWhitespace
      Src: /src/libxml2/parser.c:4505,1
    - Dst: xmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/parser.c:4508,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 13
    argCount: 4
    argNames:
    - ctxt
    - buf
    - size
    - isBlank
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4517
      start: 4485
    functionDepth: 0
    functionLinenumber: 4485
    functionLinenumberEnd: 4517
    functionName: xmlCharacters
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxtPtr::sax::characters
    - areBlanks
    - xmlParserCtxtPtr::sax::ignorableWhitespace
    linkageType: ''
    returnType: void
    signature: "void xmlCharacters(xmlParserCtxtPtr ctxt, const xmlChar *buf, int
      size,\n              int isBlank)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharacters
      Src: /src/libxml2/parser.c:4565,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4597,1
    - Dst: xmlCharacters
      Src: /src/libxml2/parser.c:4614,1
    - Dst: xmlParseCharDataComplex
      Src: /src/libxml2/parser.c:4646,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 103
    argCount: 2
    argNames:
    - ctxt
    - partial
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4647
      start: 4532
    functionDepth: 1
    functionLinenumber: 4532
    functionLinenumberEnd: 4647
    functionName: xmlParseCharDataInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseCharDataComplex
    - xmlCharacters
    - xmlFatalErr
    linkageType: ''
    returnType: void
    signature: void xmlParseCharDataInternal(xmlParserCtxtPtr ctxt, int partial)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4665,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4668,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:4674,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:4677,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4678,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:4682,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4684,1
    - Dst: xmlCharacters
      Src: /src/libxml2/parser.c:4688,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4692,1
    - Dst: xmlCharacters
      Src: /src/libxml2/parser.c:4697,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:4709,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4711,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:4715,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4717,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 39
    argCount: 2
    argNames:
    - ctxt
    - partial
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4720
      start: 4659
    functionDepth: 2
    functionLinenumber: 4659
    functionLinenumberEnd: 4720
    functionName: xmlParseCharDataComplex
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - IS_CHAR
    - NXT
    - xmlCharacters
    - xmlCurrentCharRecover
    - COPY_BUF
    - xmlFatalErr
    - xmlFatalErrMsgInt
    - NEXTL
    linkageType: ''
    returnType: void
    signature: void xmlParseCharDataComplex(xmlParserCtxtPtr ctxt, int partial)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseCharDataInternal
      Src: /src/libxml2/parser.c:4729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - cdata
    argTypes:
    - xmlParserCtxt*
    - ATTRIBUTE_UNUSED
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4730
      start: 4727
    functionDepth: 2
    functionLinenumber: 4727
    functionLinenumberEnd: 4730
    functionName: xmlParseCharData
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseCharDataInternal
    linkageType: ''
    returnType: void
    signature: void xmlParseCharData(xmlParserCtxt *ctxt, ATTRIBUTE_UNUSED int cdata)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: CMP6
      Src: /src/libxml2/parser.c:4759,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:4760,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:4762,1
    - Dst: xmlParseSystemLiteral
      Src: /src/libxml2/parser.c:4765,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4767,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:4769,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:4770,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:4772,1
    - Dst: xmlParsePubidLiteral
      Src: /src/libxml2/parser.c:4775,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4777,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:4784,1
    - Dst: xmlParseSystemLiteral
      Src: /src/libxml2/parser.c:4797,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4799,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 3
    argNames:
    - ctxt
    - publicId
    - strict
    argTypes:
    - xmlParserCtxt*
    - xmlChar**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4803
      start: 4754
    functionDepth: 3
    functionLinenumber: 4754
    functionLinenumberEnd: 4803
    functionName: xmlParseExternalID
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP6
    - xmlParsePubidLiteral
    - xmlFatalErrMsg
    - xmlFatalErr
    - xmlParseSystemLiteral
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseExternalID(xmlParserCtxt *ctxt, xmlChar **publicId, int strict)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:4830,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4832,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4836,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4839,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:4840,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4843,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4846,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4847,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4850,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:4851,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4854,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4857,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4858,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4861,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:4865,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:4871,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:4873,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4875,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:4878,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:4880,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4881,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:4887,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:4894,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:4895,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:4900,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:4902,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:4903,1
    - Dst: xmlParserCtxtPtr::sax::comment
      Src: /src/libxml2/parser.c:4910,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4912,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:4915,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4917,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 79
    argCount: 4
    argNames:
    - ctxt
    - buf
    - len
    - size
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4918
      start: 4817
    functionDepth: 2
    functionLinenumber: 4817
    functionLinenumberEnd: 4918
    functionName: xmlParseCommentComplex
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - IS_CHAR
    - xmlRealloc
    - xmlCurrentCharRecover
    - xmlMalloc
    - COPY_BUF
    - xmlFatalErr
    - xmlFatalErrMsgInt
    - xmlFatalErrMsgStr
    - xmlGrowCapacity
    - NEXTL
    - xmlParserCtxtPtr::sax::comment
    linkageType: ''
    returnType: void
    signature: "void xmlParseCommentComplex(xmlParserCtxtPtr ctxt, xmlChar *buf,\n
      \                      size_t len, size_t size)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:4946,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:4948,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:4949,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:4951,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:4988,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:4990,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:4998,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5000,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:5007,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5009,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5010,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:5015,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5040,1
    - Dst: xmlParserCtxt*::sax::comment
      Src: /src/libxml2/parser.c:5044,1
    - Dst: xmlParserCtxt*::sax::comment
      Src: /src/libxml2/parser.c:5046,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5049,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5053,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5058,1
    - Dst: xmlParseCommentComplex
      Src: /src/libxml2/parser.c:5068,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 114
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5069
      start: 4931
    functionDepth: 3
    functionLinenumber: 4931
    functionLinenumberEnd: 5069
    functionName: xmlParseComment
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxt*::sax::comment
    - xmlErrMemory
    - xmlFree
    - xmlRealloc
    - xmlParseCommentComplex
    - NXT
    - memcpy
    - xmlMalloc
    - xmlFatalErrMsgStr
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseComment(xmlParserCtxt *ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5087,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5095,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5099,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5104,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:5107,1
    - Dst: xmlStrchr
      Src: /src/libxml2/parser.c:5111,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:5112,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 23
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5116
      start: 5083
    functionDepth: 5
    functionLinenumber: 5083
    functionLinenumberEnd: 5116
    functionName: xmlParsePITarget
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - xmlStrEqual
    - xmlNsErr
    - xmlFatalErrMsg
    - xmlFatalErr
    - xmlStrchr
    - xmlParseName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParsePITarget(xmlParserCtxt *ctxt)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:5140,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/parser.c:5141,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:5144,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:5149,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:5158,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:5160,1
    - Dst: xmlCatalogAddLocal
      Src: /src/libxml2/parser.c:5171,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5172,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:5177,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5181,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 2
    argNames:
    - ctxt
    - catalog
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5182
      start: 5133
    functionDepth: 2
    functionLinenumber: 5133
    functionLinenumberEnd: 5182
    functionName: xmlParseCatalogPI
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - IS_BLANK_CH
    - xmlFree
    - xmlCatalogAddLocal
    - xmlStrndup
    - xmlStrncmp
    linkageType: ''
    returnType: void
    signature: void xmlParseCatalogPI(xmlParserCtxtPtr ctxt, const xmlChar *catalog)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:5208,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5212,1
    - Dst: xmlParsePITarget
      Src: /src/libxml2/parser.c:5218,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:5220,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5221,1
    - Dst: xmlParserCtxt*::sax::processingInstruction
      Src: /src/libxml2/parser.c:5228,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:5232,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5234,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5238,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:5241,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:5242,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:5243,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:5248,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5250,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5252,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:5255,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5257,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5258,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:5264,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:5265,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:5266,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5270,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5273,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5277,1
    - Dst: xmlCatalogGetDefaults
      Src: /src/libxml2/parser.c:5278,1
    - Dst: xmlParseCatalogPI
      Src: /src/libxml2/parser.c:5283,1
    - Dst: xmlParserCtxt*::sax::processingInstruction
      Src: /src/libxml2/parser.c:5292,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5295,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5297,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 58
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5300
      start: 5197
    functionDepth: 6
    functionLinenumber: 5197
    functionLinenumberEnd: 5300
    functionName: xmlParsePI
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParsePITarget
    - xmlErrMemory
    - xmlFree
    - IS_CHAR
    - xmlRealloc
    - xmlStrEqual
    - NXT
    - xmlParserCtxt*::sax::processingInstruction
    - xmlCurrentCharRecover
    - xmlMalloc
    - COPY_BUF
    - xmlCatalogGetDefaults
    - xmlFatalErr
    - xmlFatalErrMsgStr
    - xmlParseCatalogPI
    - xmlGrowCapacity
    - NEXTL
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParsePI(xmlParserCtxt *ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:5327,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5329,1
    - Dst: CMP8
      Src: /src/libxml2/parser.c:5331,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5336,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5338,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5343,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5345,1
    - Dst: xmlStrchr
      Src: /src/libxml2/parser.c:5348,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:5349,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5354,1
    - Dst: xmlParseExternalID
      Src: /src/libxml2/parser.c:5362,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:5368,1
    - Dst: xmlParserCtxt*::sax::notationDecl
      Src: /src/libxml2/parser.c:5377,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5379,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5381,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5382,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5384
      start: 5321
    functionDepth: 5
    functionLinenumber: 5321
    functionLinenumberEnd: 5384
    functionName: xmlParseNotationDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP8
    - xmlParserCtxt*::sax::notationDecl
    - xmlNsErr
    - xmlFree
    - xmlValidityError
    - NXT
    - xmlFatalErrMsg
    - xmlFatalErr
    - xmlParseExternalID
    - xmlStrchr
    - SKIP
    - xmlParseName
    linkageType: ''
    returnType: void
    signature: void xmlParseNotationDecl(xmlParserCtxt *ctxt)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:5418,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5420,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:5423,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5428,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5430,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5437,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5443,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5445,1
    - Dst: xmlStrchr
      Src: /src/libxml2/parser.c:5449,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:5450,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5455,1
    - Dst: xmlParseEntityValue
      Src: /src/libxml2/parser.c:5464,1
    - Dst: xmlParserCtxt*::sax::entityDecl
      Src: /src/libxml2/parser.c:5468,1
    - Dst: xmlParseExternalID
      Src: /src/libxml2/parser.c:5473,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5475,1
    - Dst: xmlStrchr
      Src: /src/libxml2/parser.c:5478,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5479,1
    - Dst: xmlParserCtxt*::sax::entityDecl
      Src: /src/libxml2/parser.c:5484,1
    - Dst: xmlParseEntityValue
      Src: /src/libxml2/parser.c:5492,1
    - Dst: xmlParserCtxt*::sax::entityDecl
      Src: /src/libxml2/parser.c:5495,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5502,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/parser.c:5504,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5506,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/parser.c:5512,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5515,1
    - Dst: xmlSAX2EntityDecl
      Src: /src/libxml2/parser.c:5520,1
    - Dst: xmlParseExternalID
      Src: /src/libxml2/parser.c:5524,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5526,1
    - Dst: xmlStrchr
      Src: /src/libxml2/parser.c:5529,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5530,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5534,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:5537,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5538,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5540,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5543,1
    - Dst: xmlParserCtxt*::sax::unparsedEntityDecl
      Src: /src/libxml2/parser.c:5546,1
    - Dst: xmlParserCtxt*::sax::entityDecl
      Src: /src/libxml2/parser.c:5551,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5560,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/parser.c:5562,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5564,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/parser.c:5571,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5574,1
    - Dst: xmlSAX2EntityDecl
      Src: /src/libxml2/parser.c:5578,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:5587,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:5592,1
    - Dst: xmlParserCtxt*::sax::getParameterEntity
      Src: /src/libxml2/parser.c:5609,1
    - Dst: xmlParserCtxt*::sax::getEntity
      Src: /src/libxml2/parser.c:5613,1
    - Dst: xmlSAX2GetEntity
      Src: /src/libxml2/parser.c:5615,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5625,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5626,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5627,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5628,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 156
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5630
      start: 5409
    functionDepth: 7
    functionLinenumber: 5409
    functionLinenumberEnd: 5630
    functionName: xmlParseEntityDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlSAX2GetEntity
    - xmlValidityError
    - xmlParserCtxt*::sax::getParameterEntity
    - xmlParserCtxt*::sax::getEntity
    - xmlParserCtxt*::sax::entityDecl
    - xmlParseEntityValue
    - xmlFatalErrMsgStr
    - xmlSAX2EntityDecl
    - xmlFree
    - xmlStrEqual
    - xmlErrMemory
    - xmlNewDoc
    - NXT
    - xmlFatalErr
    - xmlStrchr
    - SKIP
    - CMP6
    - CMP5
    - xmlNsErr
    - xmlNewDtd
    - xmlFatalErrMsg
    - xmlParserCtxt*::sax::unparsedEntityDecl
    - xmlParseExternalID
    - xmlParseName
    linkageType: ''
    returnType: void
    signature: void xmlParseEntityDecl(xmlParserCtxt *ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: CMP9
      Src: /src/libxml2/parser.c:5667,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5668,1
    - Dst: CMP8
      Src: /src/libxml2/parser.c:5671,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5672,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:5676,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5677,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5680,1
    - Dst: xmlParseAttValue
      Src: /src/libxml2/parser.c:5684,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5686,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlParserCtxt*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5691
      start: 5661
    functionDepth: 6
    functionLinenumber: 5661
    functionLinenumberEnd: 5691
    functionName: xmlParseDefaultDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP6
    - CMP8
    - xmlFatalErrMsg
    - CMP9
    - xmlParseAttValue
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseDefaultDecl(xmlParserCtxt *ctxt, xmlChar **value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5716,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5722,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5724,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:5726,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5734,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:5735,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/parser.c:5738,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5739,1
    - Dst: xmlCreateEnumeration
      Src: /src/libxml2/parser.c:5747,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5749,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:5750,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5762,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:5763,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5768
      start: 5710
    functionDepth: 5
    functionLinenumber: 5710
    functionLinenumberEnd: 5768
    functionName: xmlParseNotationType
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlErrMemory
    - xmlValidityError
    - xmlFatalErrMsg
    - xmlFreeEnumeration
    - xmlFatalErr
    - xmlCreateEnumeration
    - xmlDictOwns
    - xmlParseName
    linkageType: ''
    returnType: xmlEnumeration
    signature: 'xmlEnumeration *

      xmlParseNotationType(xmlParserCtxt *ctxt)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5791,1
    - Dst: xmlParseNmtoken
      Src: /src/libxml2/parser.c:5797,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5799,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:5807,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:5808,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/parser.c:5811,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5812,1
    - Dst: xmlCreateEnumeration
      Src: /src/libxml2/parser.c:5820,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/parser.c:5821,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:5822,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:5824,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:5825,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:5837,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5785
    functionDepth: 4
    functionLinenumber: 5785
    functionLinenumberEnd: 5842
    functionName: xmlParseEnumerationType
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseNmtoken
    - xmlStrEqual
    - xmlFree
    - xmlErrMemory
    - xmlValidityError
    - xmlFreeEnumeration
    - xmlFatalErr
    - xmlCreateEnumeration
    - xmlDictOwns
    linkageType: ''
    returnType: xmlEnumeration
    signature: 'xmlEnumeration *

      xmlParseEnumerationType(xmlParserCtxt *ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: CMP8
      Src: /src/libxml2/parser.c:5860,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5861,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5863,1
    - Dst: xmlParseNotationType
      Src: /src/libxml2/parser.c:5867,1
    - Dst: xmlParseEnumerationType
      Src: /src/libxml2/parser.c:5871,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - tree
    argTypes:
    - xmlParserCtxt*
    - xmlEnumeration**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5874
      start: 5858
    functionDepth: 6
    functionLinenumber: 5858
    functionLinenumberEnd: 5874
    functionName: xmlParseEnumeratedType
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP8
    - xmlParseEnumerationType
    - xmlFatalErrMsg
    - xmlParseNotationType
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseEnumeratedType(xmlParserCtxt *ctxt, xmlEnumeration **tree)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: CMP5
      Src: /src/libxml2/parser.c:5923,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5924,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:5926,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5927,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:5929,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5930,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:5932,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5933,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:5935,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5936,1
    - Dst: CMP8
      Src: /src/libxml2/parser.c:5938,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5939,1
    - Dst: CMP8
      Src: /src/libxml2/parser.c:5941,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5942,1
    - Dst: CMP7
      Src: /src/libxml2/parser.c:5944,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5945,1
    - Dst: xmlParseEnumeratedType
      Src: /src/libxml2/parser.c:5948,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - ctxt
    - tree
    argTypes:
    - xmlParserCtxt*
    - xmlEnumeration**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5949
      start: 5921
    functionDepth: 7
    functionLinenumber: 5921
    functionLinenumberEnd: 5949
    functionName: xmlParseAttributeType
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP6
    - CMP5
    - CMP8
    - NXT
    - CMP7
    - xmlParseEnumeratedType
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseAttributeType(xmlParserCtxt *ctxt, xmlEnumeration **tree)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:5967,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5969,1
    - Dst: CMP7
      Src: /src/libxml2/parser.c:5971,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:5976,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5978,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5981,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5983,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:5989,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:5996,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:5998,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6004,1
    - Dst: xmlParseAttributeType
      Src: /src/libxml2/parser.c:6009,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6016,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:6019,1
    - Dst: xmlParseDefaultDecl
      Src: /src/libxml2/parser.c:6023,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:6026,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:6028,1
    - Dst: xmlAttrNormalizeSpace
      Src: /src/libxml2/parser.c:6032,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6037,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:6040,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:6042,1
    - Dst: xmlParserCtxt*::sax::attributeDecl
      Src: /src/libxml2/parser.c:6048,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/parser.c:6051,1
    - Dst: xmlAddDefAttrs
      Src: /src/libxml2/parser.c:6056,1
    - Dst: xmlAddSpecialAttr
      Src: /src/libxml2/parser.c:6059,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:6062,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6068,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 82
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6077
      start: 5961
    functionDepth: 8
    functionLinenumber: 5961
    functionLinenumberEnd: 6077
    functionName: xmlParseAttributeListDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxt*::sax::attributeDecl
    - xmlParseDefaultDecl
    - xmlFree
    - xmlAttrNormalizeSpace
    - CMP7
    - NXT
    - xmlFatalErrMsg
    - xmlFreeEnumeration
    - xmlAddSpecialAttr
    - xmlParseAttributeType
    - PARSER_STOPPED
    - xmlValidityError
    - xmlAddDefAttrs
    - SKIP
    - xmlParseName
    linkageType: ''
    returnType: void
    signature: void xmlParseAttributeListDecl(xmlParserCtxt *ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:6093,1
    - Dst: PARSER_IN_PE
      Src: /src/libxml2/parser.c:6093,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:6096,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6100,1
    - Dst: PARSER_IN_PE
      Src: /src/libxml2/parser.c:6106,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:6107,1
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:6111,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - openInputNr
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6119
      start: 6086
    functionDepth: 3
    functionLinenumber: 6086
    functionLinenumberEnd: 6119
    functionName: xmlSkipBlankCharsPEBalanced
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlValidityError
    - xmlPopPE
    - PARSER_IN_PE
    - PARSER_STOPPED
    - PARSER_EXTERNAL
    - xmlParsePERefInternal
    linkageType: ''
    returnType: void
    signature: void xmlSkipBlankCharsPEBalanced(xmlParserCtxt *ctxt, int openInputNr)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: CMP7
      Src: /src/libxml2/parser.c:6147,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6148,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6149,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6153,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6160,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6170,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:6174,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6176,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6187,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6193,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:6194,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6196,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6198,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6201,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6203,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6205,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6215,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6221,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6223,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6224,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6229,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6234,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6235,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 84
    argCount: 2
    argNames:
    - ctxt
    - openInputNr
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6237
      start: 6141
    functionDepth: 5
    functionLinenumber: 6141
    functionLinenumberEnd: 6237
    functionName: xmlParseElementMixedContentDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlValidityError
    - CMP7
    - xmlFreeDocElementContent
    - xmlFatalErrMsg
    - NXT
    - xmlNewDocElementContent
    - PARSER_STOPPED
    - xmlFatalErr
    - xmlParseName
    - xmlSkipBlankCharsPEBalanced
    - SKIP
    linkageType: ''
    returnType: xmlElementContent
    signature: 'xmlElementContent *

      xmlParseElementMixedContentDecl(xmlParserCtxt *ctxt, int openInputNr)'
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:6278,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6283,1
    - Dst: xmlParseElementChildrenContentDeclPriv
      Src: /src/libxml2/parser.c:6289,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:6294,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6296,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6299,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6301,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:6319,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6320,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:6333,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6337,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6339,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6344,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6346,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6348,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6349,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:6374,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6378,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6380,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6385,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6387,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6389,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6391,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6410,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6412,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6414,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6417,1
    - Dst: xmlParseElementChildrenContentDeclPriv
      Src: /src/libxml2/parser.c:6423,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6427,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:6431,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6433,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6435,1
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/parser.c:6438,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6440,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6442,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6466,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 216
    argCount: 3
    argNames:
    - ctxt
    - openInputNr
    - depth
    argTypes:
    - xmlParserCtxtPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6538
      start: 6269
    functionDepth: 5
    functionLinenumber: 6269
    functionLinenumberEnd: 6538
    functionName: xmlParseElementChildrenContentDeclPriv
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlErrMemory
    - xmlFreeDocElementContent
    - xmlValidityError
    - xmlNewDocElementContent
    - PARSER_STOPPED
    - xmlFatalErr
    - xmlFatalErrMsgInt
    - xmlSkipBlankCharsPEBalanced
    - xmlParseElementChildrenContentDeclPriv
    - xmlParseName
    linkageType: ''
    returnType: xmlElementContentPtr
    signature: "xmlElementContentPtr xmlParseElementChildrenContentDeclPriv(xmlParserCtxtPtr
      ctxt, int openInputNr,\n                                       int depth)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseElementChildrenContentDeclPriv
      Src: /src/libxml2/parser.c:6573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - inputchk
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6574
      start: 6570
    functionDepth: 6
    functionLinenumber: 6570
    functionLinenumberEnd: 6574
    functionName: xmlParseElementChildrenContentDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseElementChildrenContentDeclPriv
    linkageType: ''
    returnType: xmlElementContent
    signature: 'xmlElementContent *

      xmlParseElementChildrenContentDecl(xmlParserCtxt *ctxt, int inputchk)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:6601,1
    - Dst: xmlSkipBlankCharsPEBalanced
      Src: /src/libxml2/parser.c:6606,1
    - Dst: CMP7
      Src: /src/libxml2/parser.c:6607,1
    - Dst: xmlParseElementMixedContentDecl
      Src: /src/libxml2/parser.c:6608,1
    - Dst: xmlParseElementChildrenContentDeclPriv
      Src: /src/libxml2/parser.c:6611,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ctxt
    - name
    - result
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - xmlElementContent**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6619
      start: 6590
    functionDepth: 6
    functionLinenumber: 6590
    functionLinenumberEnd: 6619
    functionName: xmlParseElementContentDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP7
    - xmlParseElementMixedContentDecl
    - xmlFatalErrMsgStr
    - xmlSkipBlankCharsPEBalanced
    - xmlParseElementChildrenContentDeclPriv
    linkageType: ''
    returnType: int
    signature: "int xmlParseElementContentDecl(xmlParserCtxt *ctxt, const xmlChar
      *name,\n                           xmlElementContent **result)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:6640,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6642,1
    - Dst: CMP7
      Src: /src/libxml2/parser.c:6645,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6650,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6652,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:6656,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6658,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6663,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:6666,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6667,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6672,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6673,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6674,1
    - Dst: xmlParseElementContentDecl
      Src: /src/libxml2/parser.c:6680,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6687,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6695,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6697,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6702,1
    - Dst: xmlParserCtxt*::sax::elementDecl
      Src: /src/libxml2/parser.c:6714,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6723,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/parser.c:6726,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 59
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6731
      start: 6634
    functionDepth: 7
    functionLinenumber: 6634
    functionLinenumberEnd: 6731
    functionName: xmlParseElementDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP5
    - xmlFreeDocElementContent
    - CMP7
    - NXT
    - xmlFatalErrMsg
    - xmlValidityError
    - xmlParserCtxt*::sax::elementDecl
    - xmlFatalErr
    - xmlParseElementContentDecl
    - SKIP
    - xmlParseName
    linkageType: ''
    returnType: int
    signature: int xmlParseElementDecl(xmlParserCtxt *ctxt)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:6752,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6755,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:6759,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6761,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6761,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6762,1
    - Dst: CMP7
      Src: /src/libxml2/parser.c:6767,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6768,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6771,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6776,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:6785,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6788,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6791,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6796,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:6804,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6806,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6809,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6809,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6810,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6814,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6817,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6818,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6819,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6830,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6837,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6841,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6841,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6843,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:6852,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6858,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6859,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6859,1
    - Dst: xmlParseMarkupDecl
      Src: /src/libxml2/parser.c:6861,1
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:6863,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6869,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 99
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6880
      start: 6745
    functionDepth: 3
    functionLinenumber: 6745
    functionLinenumberEnd: 6880
    functionName: xmlParseConditionalSections
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - CMP6
    - xmlErrMemory
    - xmlValidityError
    - NXT
    - CMP7
    - xmlFatalErrMsg
    - xmlPopPE
    - xmlParsePERefInternal
    - PARSER_STOPPED
    - xmlFatalErr
    - xmlParseMarkupDecl
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseConditionalSections(xmlParserCtxtPtr ctxt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:6909,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6910,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6912,1
    - Dst: xmlParseElementDecl
      Src: /src/libxml2/parser.c:6913,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6914,1
    - Dst: xmlParseEntityDecl
      Src: /src/libxml2/parser.c:6915,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6917,1
    - Dst: xmlParseAttributeListDecl
      Src: /src/libxml2/parser.c:6920,1
    - Dst: xmlParseNotationDecl
      Src: /src/libxml2/parser.c:6923,1
    - Dst: xmlParseComment
      Src: /src/libxml2/parser.c:6926,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6929,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6934,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6937,1
    - Dst: xmlParsePI
      Src: /src/libxml2/parser.c:6938,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6941
      start: 6905
    functionDepth: 9
    functionLinenumber: 6905
    functionLinenumberEnd: 6941
    functionName: xmlParseMarkupDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseNotationDecl
    - xmlParsePI
    - xmlParseEntityDecl
    - xmlParseComment
    - NXT
    - xmlParseElementDecl
    - xmlFatalErr
    - xmlParseAttributeListDecl
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseMarkupDecl(xmlParserCtxt *ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: CMP5
      Src: /src/libxml2/parser.c:6959,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:6959,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6959,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6960,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6962,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6967,1
    - Dst: xmlParseVersionInfo
      Src: /src/libxml2/parser.c:6974,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/parser.c:6976,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:6978,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:6983,1
    - Dst: xmlParseEncodingDecl
      Src: /src/libxml2/parser.c:6992,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:6995,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:6996,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:6999,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7004,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:7005,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7011
      start: 6952
    functionDepth: 2
    functionLinenumber: 6952
    functionLinenumberEnd: 7011
    functionName: xmlParseTextDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    - IS_BLANK_CH
    - CMP5
    - xmlErrMemory
    - NXT
    - xmlParseVersionInfo
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlParseEncodingDecl
    - xmlFatalErr
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseTextDecl(xmlParserCtxt *ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:7031,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:7033,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:7035,1
    - Dst: xmlParseTextDecl
      Src: /src/libxml2/parser.c:7036,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/parser.c:7039,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7041,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/parser.c:7047,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7048,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:7055,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/parser.c:7058,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:7062,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7063,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7063,1
    - Dst: xmlParseConditionalSections
      Src: /src/libxml2/parser.c:7064,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7065,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7065,1
    - Dst: xmlParseMarkupDecl
      Src: /src/libxml2/parser.c:7066,1
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:7068,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7070,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:7073,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 3
    argNames:
    - ctxt
    - publicId
    - systemId
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7080
      start: 7026
    functionDepth: 10
    functionLinenumber: 7026
    functionLinenumberEnd: 7080
    functionName: xmlParseExternalSubset
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseTextDecl
    - CMP5
    - xmlErrMemory
    - xmlParserCheckEOF
    - xmlNewDoc
    - NXT
    - xmlParsePERefInternal
    - xmlPopPE
    - xmlCtxtInitializeLate
    - xmlDetectEncoding
    - PARSER_STOPPED
    - xmlParseConditionalSections
    - xmlFatalErr
    - xmlCreateIntSubset
    - xmlParseMarkupDecl
    linkageType: ''
    returnType: void
    signature: "void xmlParseExternalSubset(xmlParserCtxt *ctxt, const xmlChar *publicId,\n
      \                      const xmlChar *systemId)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:7107,1
    - Dst: xmlParseCharRef
      Src: /src/libxml2/parser.c:7110,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:7118,1
    - Dst: xmlParserCtxt*::sax::characters
      Src: /src/libxml2/parser.c:7122,1
    - Dst: xmlParseEntityRefInternal
      Src: /src/libxml2/parser.c:7129,1
    - Dst: xmlLookupGeneralEntity
      Src: /src/libxml2/parser.c:7132,1
    - Dst: xmlParserCtxt*::sax::reference
      Src: /src/libxml2/parser.c:7141,1
    - Dst: xmlParserCtxt*::sax::characters
      Src: /src/libxml2/parser.c:7158,1
    - Dst: xmlStrlen
      Src: /src/libxml2/parser.c:7158,1
    - Dst: xmlCtxtParseEntity
      Src: /src/libxml2/parser.c:7215,1
    - Dst: xmlCtxtParseEntity
      Src: /src/libxml2/parser.c:7226,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:7234,1
    - Dst: xmlParserCtxt*::sax::reference
      Src: /src/libxml2/parser.c:7245,1
    - Dst: xmlStrlen
      Src: /src/libxml2/parser.c:7259,1
    - Dst: xmlParserCtxt*::sax::characters
      Src: /src/libxml2/parser.c:7264,1
    - Dst: xmlParserCtxt*::sax::cdataBlock
      Src: /src/libxml2/parser.c:7267,1
    - Dst: xmlStrlen
      Src: /src/libxml2/parser.c:7282,1
    - Dst: xmlParserCtxt*::sax::characters
      Src: /src/libxml2/parser.c:7287,1
    - Dst: xmlParserCtxt*::sax::cdataBlock
      Src: /src/libxml2/parser.c:7290,1
    - Dst: xmlDocCopyNode
      Src: /src/libxml2/parser.c:7302,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7305,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 96
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7329
      start: 7095
    functionDepth: 3
    functionLinenumber: 7095
    functionLinenumberEnd: 7329
    functionName: xmlParseReference
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxt*::sax::cdataBlock
    - xmlCtxtParseEntity
    - xmlParseEntityRefInternal
    - xmlDocCopyNode
    - xmlErrMemory
    - xmlStrlen
    - xmlParserEntityCheck
    - NXT
    - COPY_BUF
    - xmlParseCharRef
    - xmlLookupGeneralEntity
    - xmlParserCtxt*::sax::characters
    - xmlParserCtxt*::sax::reference
    linkageType: ''
    returnType: void
    signature: void xmlParseReference(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:7357,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:7368,1
    - Dst: xmlErrMsgStr
      Src: /src/libxml2/parser.c:7382,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:7385,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7390
      start: 7331
    functionDepth: 2
    functionLinenumber: 7331
    functionLinenumberEnd: 7390
    functionName: xmlHandleUndeclaredEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - xmlFatalErrMsgStr
    - xmlValidityError
    - xmlErrMsgStr
    linkageType: ''
    returnType: void
    signature: void xmlHandleUndeclaredEntity(xmlParserCtxtPtr ctxt, const xmlChar
      *name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/parser.c:7400,1
    - Dst: xmlParserCtxtPtr::sax::getEntity
      Src: /src/libxml2/parser.c:7411,1
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/parser.c:7414,1
    - Dst: xmlSAX2GetEntity
      Src: /src/libxml2/parser.c:7417,1
    - Dst: xmlHandleUndeclaredEntity
      Src: /src/libxml2/parser.c:7422,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:7431,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:7443,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 3
    argNames:
    - ctxt
    - name
    - inAttr
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7450
      start: 7392
    functionDepth: 3
    functionLinenumber: 7392
    functionLinenumberEnd: 7450
    functionName: xmlLookupGeneralEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 4
    functionsReached:
    - xmlGetPredefinedEntity
    - xmlSAX2GetEntity
    - xmlParserCtxtPtr::sax::getEntity
    - xmlFatalErrMsgStr
    - xmlHandleUndeclaredEntity
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr xmlLookupGeneralEntity(xmlParserCtxtPtr ctxt, const xmlChar
      *name, int inAttr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:7469,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7471,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7476,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7482
      start: 7460
    functionDepth: 5
    functionLinenumber: 7460
    functionLinenumberEnd: 7482
    functionName: xmlParseEntityRefInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlFatalErr
    - xmlFatalErrMsg
    - xmlParseName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseEntityRefInternal(xmlParserCtxtPtr ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseEntityRefInternal
      Src: /src/libxml2/parser.c:7497,1
    - Dst: xmlLookupGeneralEntity
      Src: /src/libxml2/parser.c:7501,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7502
      start: 7490
    functionDepth: 6
    functionLinenumber: 7490
    functionLinenumberEnd: 7502
    functionName: xmlParseEntityRef
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseEntityRefInternal
    - xmlLookupGeneralEntity
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlParseEntityRef(xmlParserCtxt *ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseStringName
      Src: /src/libxml2/parser.c:7547,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7549,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7555,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7556,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7564
      start: 7533
    functionDepth: 5
    functionLinenumber: 7533
    functionLinenumberEnd: 7564
    functionName: xmlParseStringEntityRef
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlParseStringName
    - xmlFatalErr
    - xmlFatalErrMsg
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseStringEntityRef(xmlParserCtxtPtr ctxt, const xmlChar ** str)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:7605,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7607,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7611,1
    - Dst: xmlParserCtxt*::sax::getParameterEntity
      Src: /src/libxml2/parser.c:7625,1
    - Dst: xmlHandleUndeclaredEntity
      Src: /src/libxml2/parser.c:7628,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:7635,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7647,1
    - Dst: xmlNewEntityInputStream
      Src: /src/libxml2/parser.c:7651,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:7652,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:7653,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:7665,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:7667,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:7668,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7668,1
    - Dst: xmlParseTextDecl
      Src: /src/libxml2/parser.c:7669,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 46
    argCount: 2
    argNames:
    - ctxt
    - markupDecl
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7674
      start: 7596
    functionDepth: 5
    functionLinenumber: 7596
    functionLinenumberEnd: 7674
    functionName: xmlParsePERefInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 5
    functionsReached:
    - xmlWarningMsg
    - xmlCtxtPushInput
    - IS_BLANK_CH
    - CMP5
    - xmlParseTextDecl
    - xmlNewEntityInputStream
    - NXT
    - xmlFatalErrMsg
    - xmlDetectEncoding
    - xmlParserCtxt*::sax::getParameterEntity
    - xmlFatalErr
    - xmlHandleUndeclaredEntity
    - xmlFreeInputStream
    - xmlParseName
    linkageType: ''
    returnType: void
    signature: void xmlParsePERefInternal(xmlParserCtxt *ctxt, int markupDecl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:7685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7686
      start: 7683
    functionDepth: 6
    functionLinenumber: 7683
    functionLinenumberEnd: 7686
    functionName: xmlParsePEReference
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParsePERefInternal
    linkageType: ''
    returnType: void
    signature: void xmlParsePEReference(xmlParserCtxt *ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7711,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/parser.c:7721,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:7736,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7738,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:7739,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/parser.c:7743,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:7745,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:7746,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:7750,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:7755,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:7755,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:7755,1
    - Dst: xmlParseTextDecl
      Src: /src/libxml2/parser.c:7756,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:7760,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:7761,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7762,1
    - Dst: xmlBufShrink
      Src: /src/libxml2/parser.c:7768,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:7769,1
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxml2/parser.c:7771,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/parser.c:7774,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parser.c:7777,1
    - Dst: xmlBufUse
      Src: /src/libxml2/parser.c:7781,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7783,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:7787,1
    - Dst: xmlBufContent
      Src: /src/libxml2/parser.c:7787,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:7789,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/parser.c:7795,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:7797,1
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:7798,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:7806,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:7814,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:7814,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7815,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7816,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7824,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 89
    argCount: 2
    argNames:
    - ctxt
    - entity
    argTypes:
    - xmlParserCtxtPtr
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7827
      start: 7695
    functionDepth: 3
    functionLinenumber: 7695
    functionLinenumberEnd: 7827
    functionName: xmlLoadEntityContent
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtErrIO
    - xmlBufResetInput
    - xmlSaturatedAdd
    - xmlFatalErrMsgInt
    - xmlCtxtPushInput
    - xmlFree
    - IS_CHAR
    - xmlMalloc
    - xmlDetectEncoding
    - xmlParseTextDecl
    - xmlErrMemory
    - xmlStrEqual
    - xmlBufUse
    - NXT
    - xmlBufShrink
    - xmlParserInputBufferGrow
    - xmlFatalErr
    - xmlBufContent
    - xmlLoadResource
    - IS_BLANK_CH
    - CMP5
    - xmlStrndup
    - xmlFatalErrMsg
    - xmlGetUTF8Char
    - xmlCtxtPopInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: int xmlLoadEntityContent(xmlParserCtxtPtr ctxt, xmlEntityPtr entity)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseStringName
      Src: /src/libxml2/parser.c:7871,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7873,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7880,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7881,1
    - Dst: xmlParserCtxtPtr::sax::getParameterEntity
      Src: /src/libxml2/parser.c:7895,1
    - Dst: xmlHandleUndeclaredEntity
      Src: /src/libxml2/parser.c:7898,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:7905,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:7911,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7914
      start: 7858
    functionDepth: 5
    functionLinenumber: 7858
    functionLinenumberEnd: 7914
    functionName: xmlParseStringPEReference
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlWarningMsg
    - xmlParseStringName
    - xmlFree
    - xmlFatalErrMsg
    - xmlParserCtxtPtr::sax::getParameterEntity
    - xmlFatalErr
    - xmlHandleUndeclaredEntity
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr xmlParseStringPEReference(xmlParserCtxtPtr ctxt, const
      xmlChar **str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/parser.c:7940,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7943,1
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:7950,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:7952,1
    - Dst: xmlParseExternalID
      Src: /src/libxml2/parser.c:7962,1
    - Dst: xmlParserCtxt*::sax::internalSubset
      Src: /src/libxml2/parser.c:7977,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:7980,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7982
      start: 7931
    functionDepth: 5
    functionLinenumber: 7931
    functionLinenumberEnd: 7982
    functionName: xmlParseDocTypeDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlFatalErrMsg
    - xmlParserCtxt*::sax::internalSubset
    - xmlFatalErr
    - xmlParseExternalID
    - SKIP
    - xmlParseName
    linkageType: ''
    returnType: void
    signature: void xmlParseDocTypeDecl(xmlParserCtxt *ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:8007,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:8011,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:8014,1
    - Dst: PARSER_EXTERNAL
      Src: /src/libxml2/parser.c:8019,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8020,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8020,1
    - Dst: xmlParseConditionalSections
      Src: /src/libxml2/parser.c:8025,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8026,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8026,1
    - Dst: xmlParseMarkupDecl
      Src: /src/libxml2/parser.c:8027,1
    - Dst: xmlParsePERefInternal
      Src: /src/libxml2/parser.c:8029,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:8031,1
    - Dst: xmlPopPE
      Src: /src/libxml2/parser.c:8034,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:8047,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8051
      start: 7991
    functionDepth: 10
    functionLinenumber: 7991
    functionLinenumberEnd: 8051
    functionName: xmlParseInternalSubset
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - NXT
    - xmlParsePERefInternal
    - xmlPopPE
    - PARSER_STOPPED
    - xmlParseConditionalSections
    - PARSER_EXTERNAL
    - xmlFatalErr
    - xmlParseMarkupDecl
    linkageType: ''
    returnType: void
    signature: void xmlParseInternalSubset(xmlParserCtxtPtr ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:8094,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8096,1
    - Dst: xmlParseAttValue
      Src: /src/libxml2/parser.c:8108,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:8110,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8120,1
    - Dst: xmlCheckLanguageID
      Src: /src/libxml2/parser.c:8121,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:8122,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8131,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8132,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8134,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:8137,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlParserCtxt*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8145
      start: 8087
    functionDepth: 6
    functionLinenumber: 8087
    functionLinenumberEnd: 8145
    functionName: xmlParseAttribute
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - xmlStrEqual
    - xmlFatalErrMsg
    - xmlCheckLanguageID
    - xmlParseName
    - xmlFatalErrMsgStr
    - xmlParseAttValue
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseAttribute(xmlParserCtxt *ctxt, xmlChar **value)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseName
      Src: /src/libxml2/parser.c:8187,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8189,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8203,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:8204,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:8204,1
    - Dst: xmlParseAttribute
      Src: /src/libxml2/parser.c:8205,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8215,1
    - Dst: xmlErrAttributeDup
      Src: /src/libxml2/parser.c:8216,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:8227,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8230,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:8237,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8239,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:8259,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8262,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8265,1
    - Dst: xmlParserCtxt*::sax::startElement
      Src: /src/libxml2/parser.c:8278,1
    - Dst: xmlParserCtxt*::sax::startElement
      Src: /src/libxml2/parser.c:8280,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:8287,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 70
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8290
      start: 8174
    functionDepth: 7
    functionLinenumber: 8174
    functionLinenumberEnd: 8290
    functionName: xmlParseStartTag
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlErrMemory
    - xmlRealloc
    - xmlFree
    - xmlParserCtxt*::sax::startElement
    - IS_BYTE_CHAR
    - NXT
    - xmlFatalErrMsg
    - xmlParseAttribute
    - PARSER_STOPPED
    - xmlGrowCapacity
    - xmlErrAttributeDup
    - xmlParseName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseStartTag(xmlParserCtxt *ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:8309,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8310,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:8314,1
    - Dst: xmlParseNameAndCompare
      Src: /src/libxml2/parser.c:8316,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:8323,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:8324,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:8336,1
    - Dst: xmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/parser.c:8346,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:8348,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:8349,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - line
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8350
      start: 8304
    functionDepth: 6
    functionLinenumber: 8304
    functionLinenumberEnd: 8350
    functionName: xmlParseEndTag1
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - spacePop
    - IS_BYTE_CHAR
    - NXT
    - xmlFatalErrMsg
    - xmlParseNameAndCompare
    - xmlFatalErrMsgStrIntStr
    - namePop
    - xmlParserCtxtPtr::sax::endElement
    - xmlFatalErr
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseEndTag1(xmlParserCtxtPtr ctxt, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseEndTag1
      Src: /src/libxml2/parser.c:8367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8368
      start: 8365
    functionDepth: 7
    functionLinenumber: 8365
    functionLinenumberEnd: 8368
    functionName: xmlParseEndTag
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseEndTag1
    linkageType: ''
    returnType: void
    signature: void xmlParseEndTag(xmlParserCtxt *ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseNCName
      Src: /src/libxml2/parser.c:8400,1
    - Dst: xmlParseNCName
      Src: /src/libxml2/parser.c:8406,1
    - Dst: xmlParseNmtoken
      Src: /src/libxml2/parser.c:8416,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:8418,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:8419,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8422,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8425,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlParserCtxtPtr
    - xmlHashedString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8431
      start: 8389
    functionDepth: 5
    functionLinenumber: 8389
    functionLinenumberEnd: 8431
    functionName: xmlParseQNameHashed
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseNmtoken
    - xmlErrMemory
    - xmlFree
    - xmlNsErr
    - xmlParseNCName
    - xmlDictLookupHashed
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString xmlParseQNameHashed(xmlParserCtxtPtr ctxt, xmlHashedString
      *prefix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseQNameHashed
      Src: /src/libxml2/parser.c:8449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8454
      start: 8445
    functionDepth: 6
    functionLinenumber: 8445
    functionLinenumberEnd: 8454
    functionName: xmlParseQName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseQNameHashed
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseQName(xmlParserCtxtPtr ctxt, const xmlChar **prefix)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseNameAndCompare
      Src: /src/libxml2/parser.c:8475,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:8492,1
    - Dst: xmlParseQName
      Src: /src/libxml2/parser.c:8502,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 3
    argNames:
    - ctxt
    - name
    - prefix
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8508
      start: 8467
    functionDepth: 7
    functionLinenumber: 8467
    functionLinenumberEnd: 8508
    functionName: xmlParseQNameAndCompare
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseQName
    - IS_BLANK_CH
    - xmlParseNameAndCompare
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlParseQNameAndCompare(xmlParserCtxtPtr ctxt, xmlChar
      const *name,\n                        xmlChar const *prefix)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseQNameHashed
      Src: /src/libxml2/parser.c:8538,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8540,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:8551,1
    - Dst: xmlHashQLookup2
      Src: /src/libxml2/parser.c:8551,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:8560,1
    - Dst: xmlParseAttValueInternal
      Src: /src/libxml2/parser.c:8572,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:8584,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8597,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:8598,1
    - Dst: xmlCheckLanguageID
      Src: /src/libxml2/parser.c:8601,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:8602,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8611,1
    - Dst: xmlStrndup
      Src: /src/libxml2/parser.c:8612,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8615,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8617,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:8620,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:8626,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8634,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:8637,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 67
    argCount: 7
    argNames:
    - ctxt
    - pref
    - elem
    - hprefix
    - value
    - len
    - alloc
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlHashedString*
    - xmlChar**
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8639
      start: 8523
    functionDepth: 6
    functionLinenumber: 8523
    functionLinenumberEnd: 8639
    functionName: xmlParseAttribute2
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - xmlStrEqual
    - xmlFree
    - xmlErrMemory
    - xmlValidityError
    - xmlStrndup
    - xmlFatalErrMsg
    - xmlCheckLanguageID
    - xmlHashQLookup2
    - xmlParseAttValueInternal
    - XML_PTR_TO_INT
    - xmlParseQNameHashed
    - xmlFatalErrMsgStr
    linkageType: ''
    returnType: xmlHashedString
    signature: "xmlHashedString xmlParseAttribute2(xmlParserCtxtPtr ctxt,\n                   const
      xmlChar * pref, const xmlChar * elem,\n                   xmlHashedString *
      hprefix, xmlChar ** value,\n                   int *len, int *alloc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:8667,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 6
    argNames:
    - ctxt
    - size
    - name
    - uri
    - hashValue
    - aindex
    argTypes:
    - xmlParserCtxtPtr
    - unsigned
    - xmlChar*
    - xmlChar*
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8686
      start: 8653
    functionDepth: 1
    functionLinenumber: 8653
    functionLinenumberEnd: 8686
    functionName: xmlAttrHashInsert
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - XML_PTR_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlAttrHashInsert(xmlParserCtxtPtr ctxt, unsigned size, const
      xmlChar *name,\n                  const xmlChar *uri, unsigned hashValue, int
      aindex)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - size
    - name
    - prefix
    - hashValue
    - aindex
    argTypes:
    - xmlParserCtxtPtr
    - unsigned
    - xmlChar*
    - xmlChar*
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8716
      start: 8688
    functionDepth: 0
    functionLinenumber: 8688
    functionLinenumberEnd: 8716
    functionName: xmlAttrHashInsertQName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlAttrHashInsertQName(xmlParserCtxtPtr ctxt, unsigned size,\n
      \                      const xmlChar *name, const xmlChar *prefix,\n                       unsigned
      hashValue, int aindex)"
  - BBCount: 80
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserNsStartElement
      Src: /src/libxml2/parser.c:8779,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8780,1
    - Dst: xmlParseQNameHashed
      Src: /src/libxml2/parser.c:8784,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:8786,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:8826,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:8827,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:8827,1
    - Dst: xmlParseAttribute2
      Src: /src/libxml2/parser.c:8830,1
    - Dst: xmlStrlen
      Src: /src/libxml2/parser.c:8839,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:8845,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8848,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/parser.c:8852,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8853,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8857,1
    - Dst: xmlNsWarn
      Src: /src/libxml2/parser.c:8862,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/parser.c:8866,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8870,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8877,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8879,1
    - Dst: xmlParserNsPush
      Src: /src/libxml2/parser.c:8886,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:8892,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8895,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8901,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8912,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8919,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:8925,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8927,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8933,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/parser.c:8938,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:8939,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:8943,1
    - Dst: xmlNsWarn
      Src: /src/libxml2/parser.c:8948,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/parser.c:8952,1
    - Dst: xmlParserNsPush
      Src: /src/libxml2/parser.c:8956,1
    - Dst: xmlCtxtGrowAttrs
      Src: /src/libxml2/parser.c:8964,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:8976,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:8987,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:8989,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9000,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9005,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:9008,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:9021,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:9030,1
    - Dst: xmlParserNsPush
      Src: /src/libxml2/parser.c:9032,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:9035,1
    - Dst: xmlParserNsPush
      Src: /src/libxml2/parser.c:9037,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9042,1
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:9069,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:9072,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:9079,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:9098,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9100,1
    - Dst: memset
      Src: /src/libxml2/parser.c:9108,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:9117,1
    - Dst: xmlDictCombineHash
      Src: /src/libxml2/parser.c:9138,1
    - Dst: xmlAttrHashInsert
      Src: /src/libxml2/parser.c:9139,1
    - Dst: xmlErrAttributeDup
      Src: /src/libxml2/parser.c:9152,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:9155,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/parser.c:9170,1
    - Dst: xmlParserNsLookup
      Src: /src/libxml2/parser.c:9195,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:9198,1
    - Dst: xmlDictCombineHash
      Src: /src/libxml2/parser.c:9215,1
    - Dst: xmlAttrHashInsert
      Src: /src/libxml2/parser.c:9217,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:9224,1
    - Dst: xmlParserEntityCheck
      Src: /src/libxml2/parser.c:9230,1
    - Dst: xmlCtxtGrowAttrs
      Src: /src/libxml2/parser.c:9233,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/parser.c:9246,1
    - Dst: xmlValidityError
      Src: /src/libxml2/parser.c:9258,1
    - Dst: memset
      Src: /src/libxml2/parser.c:9282,1
    - Dst: xmlDictComputeHash
      Src: /src/libxml2/parser.c:9296,1
    - Dst: xmlDictCombineHash
      Src: /src/libxml2/parser.c:9298,1
    - Dst: xmlAttrHashInsertQName
      Src: /src/libxml2/parser.c:9299,1
    - Dst: xmlErrAttributeDup
      Src: /src/libxml2/parser.c:9302,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:9311,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:9320,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/parser.c:9321,1
    - Dst: xmlParserNsLookupUri
      Src: /src/libxml2/parser.c:9325,1
    - Dst: xmlNsErr
      Src: /src/libxml2/parser.c:9327,1
    - Dst: xmlParserCtxtPtr::sax::startElementNs
      Src: /src/libxml2/parser.c:9340,1
    - Dst: xmlParserCtxtPtr::sax::startElementNs
      Src: /src/libxml2/parser.c:9344,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9355,1
    CyclomaticComplexity: 138
    EdgeCount: 138
    ICount: 367
    argCount: 4
    argNames:
    - ctxt
    - pref
    - URI
    - nbNsPtr
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar**
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9360
      start: 8747
    functionDepth: 7
    functionLinenumber: 8747
    functionLinenumberEnd: 9360
    functionName: xmlParseStartTag2
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlDictCombineHash
    - xmlValidityError
    - xmlCtxtGrowAttrs
    - XML_PTR_TO_INT
    - xmlAttrHashInsert
    - xmlErrAttributeDup
    - xmlAttrHashInsertQName
    - xmlHashLookup2
    - xmlParserNsLookupUri
    - xmlRealloc
    - xmlFree
    - xmlParserEntityCheck
    - xmlFreeURI
    - xmlErrMemory
    - xmlStrEqual
    - xmlStrlen
    - NXT
    - xmlParserNsPush
    - xmlParserCtxtPtr::sax::startElementNs
    - xmlParseQNameHashed
    - xmlFatalErr
    - memset
    - xmlDictComputeHash
    - xmlNsErr
    - IS_BYTE_CHAR
    - xmlDictLookupHashed
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlNsWarn
    - xmlParserNsLookup
    - xmlParseURISafe
    - xmlParserNsStartElement
    - xmlParseAttribute2
    - XML_INT_TO_PTR
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlParseStartTag2(xmlParserCtxtPtr ctxt, const xmlChar
      **pref,\n                  const xmlChar **URI, int *nbNsPtr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:9379,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9380,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9383,1
    - Dst: xmlParseNameAndCompare
      Src: /src/libxml2/parser.c:9386,1
    - Dst: xmlParseQNameAndCompare
      Src: /src/libxml2/parser.c:9388,1
    - Dst: IS_BYTE_CHAR
      Src: /src/libxml2/parser.c:9395,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9396,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:9408,1
    - Dst: xmlParserCtxtPtr::sax::endElementNs
      Src: /src/libxml2/parser.c:9418,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:9421,1
    - Dst: xmlParserNsPop
      Src: /src/libxml2/parser.c:9423,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - tag
    argTypes:
    - xmlParserCtxtPtr
    - xmlStartTag*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9424
      start: 9374
    functionDepth: 8
    functionLinenumber: 9374
    functionLinenumberEnd: 9424
    functionName: xmlParseEndTag2
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseQNameAndCompare
    - spacePop
    - NXT
    - IS_BYTE_CHAR
    - xmlFatalErrMsgStrIntStr
    - xmlParseNameAndCompare
    - xmlParserCtxtPtr::sax::endElementNs
    - xmlFatalErr
    - xmlParserNsPop
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseEndTag2(xmlParserCtxtPtr ctxt, const xmlStartTag *tag)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:9452,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9452,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9454,1
    - Dst: CMP6
      Src: /src/libxml2/parser.c:9456,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9458,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:9460,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:9461,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9462,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:9465,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:9466,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:9467,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9468,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:9471,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:9472,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:9473,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9475,1
    - Dst: IS_CHAR
      Src: /src/libxml2/parser.c:9478,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:9484,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:9486,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:9490,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9492,1
    - Dst: COPY_BUF
      Src: /src/libxml2/parser.c:9498,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:9503,1
    - Dst: xmlCurrentCharRecover
      Src: /src/libxml2/parser.c:9504,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:9508,1
    - Dst: NEXTL
      Src: /src/libxml2/parser.c:9512,1
    - Dst: xmlParserCtxt*::sax::cdataBlock
      Src: /src/libxml2/parser.c:9520,1
    - Dst: xmlParserCtxt*::sax::characters
      Src: /src/libxml2/parser.c:9522,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9527,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 71
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9528
      start: 9440
    functionDepth: 2
    functionLinenumber: 9440
    functionLinenumberEnd: 9528
    functionName: xmlParseCDSect
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxt*::sax::cdataBlock
    - CMP6
    - xmlErrMemory
    - xmlRealloc
    - IS_CHAR
    - xmlParserCtxt*::sax::characters
    - xmlFree
    - NXT
    - xmlCurrentCharRecover
    - xmlFatalErrMsg
    - xmlMalloc
    - COPY_BUF
    - xmlFatalErr
    - xmlFatalErrMsgStr
    - xmlGrowCapacity
    - NEXTL
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseCDSect(xmlParserCtxt *ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:9545,1
    - Dst: xmlParsePI
      Src: /src/libxml2/parser.c:9552,1
    - Dst: CMP9
      Src: /src/libxml2/parser.c:9559,1
    - Dst: xmlParseCDSect
      Src: /src/libxml2/parser.c:9560,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9566,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9567,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9567,1
    - Dst: xmlParseComment
      Src: /src/libxml2/parser.c:9568,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9575,1
    - Dst: xmlParseElementEnd
      Src: /src/libxml2/parser.c:9578,1
    - Dst: xmlParseElementStart
      Src: /src/libxml2/parser.c:9580,1
    - Dst: xmlParseReference
      Src: /src/libxml2/parser.c:9590,1
    - Dst: xmlParseCharDataInternal
      Src: /src/libxml2/parser.c:9597,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:9609,1
    - Dst: nodePop
      Src: /src/libxml2/parser.c:9619,1
    - Dst: xmlParserNsPop
      Src: /src/libxml2/parser.c:9625,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:9627,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:9631,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 41
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9632
      start: 9537
    functionDepth: 7
    functionLinenumber: 9537
    functionLinenumberEnd: 9632
    functionName: xmlParseContentInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseCharDataInternal
    - spacePop
    - xmlParseComment
    - xmlParseElementStart
    - NXT
    - xmlFatalErrMsgStrIntStr
    - namePop
    - PARSER_STOPPED
    - xmlParseReference
    - CMP9
    - nodePop
    - xmlParserNsPop
    - xmlParseCDSect
    - xmlParseElementEnd
    - xmlParsePI
    linkageType: ''
    returnType: void
    signature: void xmlParseContentInternal(xmlParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:9646,1
    - Dst: xmlParseContentInternal
      Src: /src/libxml2/parser.c:9648,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/parser.c:9650,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9651
      start: 9641
    functionDepth: 8
    functionLinenumber: 9641
    functionLinenumberEnd: 9651
    functionName: xmlParseContent
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtInitializeLate
    - xmlParseContentInternal
    - xmlParserCheckEOF
    linkageType: ''
    returnType: void
    signature: void xmlParseContent(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseElementStart
      Src: /src/libxml2/parser.c:9669,1
    - Dst: xmlParseContentInternal
      Src: /src/libxml2/parser.c:9672,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:9678,1
    - Dst: xmlParseElementEnd
      Src: /src/libxml2/parser.c:9685,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9686
      start: 9667
    functionDepth: 8
    functionLinenumber: 9667
    functionLinenumberEnd: 9686
    functionName: xmlParseElement
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseElementStart
    - xmlParseContentInternal
    - xmlFatalErrMsgStrIntStr
    - xmlParseElementEnd
    linkageType: ''
    returnType: void
    signature: void xmlParseElement(xmlParserCtxt *ctxt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsgInt
      Src: /src/libxml2/parser.c:9708,1
    - Dst: spacePush
      Src: /src/libxml2/parser.c:9722,1
    - Dst: spacePush
      Src: /src/libxml2/parser.c:9724,1
    - Dst: spacePush
      Src: /src/libxml2/parser.c:9726,1
    - Dst: xmlParseStartTag2
      Src: /src/libxml2/parser.c:9732,1
    - Dst: xmlParseStartTag
      Src: /src/libxml2/parser.c:9735,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:9738,1
    - Dst: nameNsPush
      Src: /src/libxml2/parser.c:9741,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/parser.c:9752,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:9758,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9759,1
    - Dst: xmlParserCtxtPtr::sax::endElementNs
      Src: /src/libxml2/parser.c:9763,1
    - Dst: xmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/parser.c:9768,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:9771,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:9772,1
    - Dst: xmlParserNsPop
      Src: /src/libxml2/parser.c:9774,1
    - Dst: xmlParserAddNodeInfo
      Src: /src/libxml2/parser.c:9780,1
    - Dst: xmlParserAddNodeInfo
      Src: /src/libxml2/parser.c:9790,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:9793,1
    - Dst: nodePop
      Src: /src/libxml2/parser.c:9800,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:9801,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:9802,1
    - Dst: xmlParserNsPop
      Src: /src/libxml2/parser.c:9804,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 64
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9809
      start: 9696
    functionDepth: 8
    functionLinenumber: 9696
    functionLinenumberEnd: 9809
    functionName: xmlParseElementStart
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlParseStartTag
    - spacePop
    - xmlParseStartTag2
    - spacePush
    - NXT
    - xmlFatalErrMsgStrIntStr
    - namePop
    - xmlParserCtxtPtr::sax::endElementNs
    - xmlParserCtxtPtr::sax::endElement
    - xmlParserAddNodeInfo
    - xmlFatalErrMsgInt
    - xmlValidateRoot
    - nameNsPush
    - xmlParserNsPop
    - nodePop
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseElementStart(xmlParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/parser.c:9821,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9822,1
    - Dst: xmlParseEndTag2
      Src: /src/libxml2/parser.c:9830,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:9831,1
    - Dst: xmlParserFindNodeInfo
      Src: /src/libxml2/parser.c:9844,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9851
      start: 9816
    functionDepth: 9
    functionLinenumber: 9816
    functionLinenumberEnd: 9851
    functionName: xmlParseElementEnd
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - NXT
    - xmlParserFindNodeInfo
    - xmlParseEndTag2
    - namePop
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseElementEnd(xmlParserCtxtPtr ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:9875,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9877,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9882,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9889,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:9900,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9902,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9903,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:9906,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9908,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:9909,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9921
      start: 9865
    functionDepth: 2
    functionLinenumber: 9865
    functionLinenumberEnd: 9921
    functionName: xmlParseVersionNum
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - xmlRealloc
    - xmlMalloc
    - xmlFatalErr
    - xmlGrowCapacity
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseVersionNum(xmlParserCtxt *ctxt)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: CMP7
      Src: /src/libxml2/parser.c:9940,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:9941,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9944,1
    - Dst: xmlParseVersionNum
      Src: /src/libxml2/parser.c:9951,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9953,1
    - Dst: xmlParseVersionNum
      Src: /src/libxml2/parser.c:9958,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9960,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:9964,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9968
      start: 9936
    functionDepth: 3
    functionLinenumber: 9936
    functionLinenumberEnd: 9968
    functionName: xmlParseVersionInfo
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - CMP7
    - xmlParseVersionNum
    - xmlFatalErr
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseVersionInfo(xmlParserCtxt *ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parser.c:9993,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:9995,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parser.c:10011,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10013,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:10014,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parser.c:10017,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:10019,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:10020,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10032,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10035
      start: 9980
    functionDepth: 2
    functionLinenumber: 9980
    functionLinenumberEnd: 10035
    functionName: xmlParseEncName
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlErrMemory
    - xmlFree
    - xmlRealloc
    - xmlMalloc
    - xmlFatalErr
    - xmlGrowCapacity
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseEncName(xmlParserCtxt *ctxt)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: CMP8
      Src: /src/libxml2/parser.c:10056,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10059,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10062,1
    - Dst: xmlParseEncName
      Src: /src/libxml2/parser.c:10069,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10071,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:10072,1
    - Dst: xmlParseEncName
      Src: /src/libxml2/parser.c:10078,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10080,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:10081,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10086,1
    - Dst: xmlSetDeclaredEncoding
      Src: /src/libxml2/parser.c:10092,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10095
      start: 10051
    functionDepth: 3
    functionLinenumber: 10051
    functionLinenumberEnd: 10095
    functionName: xmlParseEncodingDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - CMP8
    - xmlFree
    - xmlParseEncName
    - xmlSetDeclaredEncoding
    - xmlFatalErr
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseEncodingDecl(xmlParserCtxt *ctxt)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: CMP10
      Src: /src/libxml2/parser.c:10133,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10134,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10137,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10144,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10146,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10147,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10148,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10150,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10152,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10155,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10160,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10162,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10163,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10164,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10166,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10168,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10171,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10175,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 49
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10179
      start: 10128
    functionDepth: 1
    functionLinenumber: 10128
    functionLinenumberEnd: 10179
    functionName: xmlParseSDDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - NXT
    - CMP10
    - xmlFatalErr
    - SKIP
    linkageType: ''
    returnType: int
    signature: int xmlParseSDDecl(xmlParserCtxt *ctxt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10205,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10207,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:10208,1
    - Dst: xmlParseVersionInfo
      Src: /src/libxml2/parser.c:10216,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10218,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:10220,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:10225,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parser.c:10230,1
    - Dst: xmlFatalErrMsgStr
      Src: /src/libxml2/parser.c:10234,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:10241,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10248,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10249,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10250,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:10253,1
    - Dst: xmlParseEncodingDecl
      Src: /src/libxml2/parser.c:10255,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10260,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10261,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10262,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:10265,1
    - Dst: xmlParseSDDecl
      Src: /src/libxml2/parser.c:10274,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10277,1
    - Dst: SKIP
      Src: /src/libxml2/parser.c:10278,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10281,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10286,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:10287,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10294
      start: 10190
    functionDepth: 4
    functionLinenumber: 10190
    functionLinenumberEnd: 10294
    functionName: xmlParseXMLDecl
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlFree
    - xmlParseSDDecl
    - NXT
    - xmlParseVersionInfo
    - xmlFatalErrMsg
    - PARSER_STOPPED
    - xmlParseEncodingDecl
    - xmlFatalErr
    - xmlFatalErrMsgStr
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlParseXMLDecl(xmlParserCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10308
      start: 10302
    functionDepth: 0
    functionLinenumber: 10302
    functionLinenumberEnd: 10308
    functionName: xmlCtxtGetVersion
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCtxtGetVersion(xmlParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10322
      start: 10316
    functionDepth: 0
    functionLinenumber: 10316
    functionLinenumberEnd: 10322
    functionName: xmlCtxtGetStandalone
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtGetStandalone(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parser.c:10335,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10338,1
    - Dst: xmlParsePI
      Src: /src/libxml2/parser.c:10339,1
    - Dst: CMP4
      Src: /src/libxml2/parser.c:10340,1
    - Dst: xmlParseComment
      Src: /src/libxml2/parser.c:10341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10346
      start: 10333
    functionDepth: 7
    functionLinenumber: 10333
    functionLinenumberEnd: 10346
    functionName: xmlParseMisc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParseComment
    - NXT
    - CMP4
    - PARSER_STOPPED
    - xmlParsePI
    linkageType: ''
    returnType: void
    signature: void xmlParseMisc(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserCtxtPtr::sax::endDocument
      Src: /src/libxml2/parser.c:10356,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:10363,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:10364,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10367
      start: 10348
    functionDepth: 1
    functionLinenumber: 10348
    functionLinenumberEnd: 10367
    functionName: xmlFinishDocument
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserCtxtPtr::sax::endDocument
    - xmlStrEqual
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlFinishDocument(xmlParserCtxtPtr ctxt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:10388,1
    - Dst: xmlParserCtxt*::sax::setDocumentLocator
      Src: /src/libxml2/parser.c:10391,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:10395,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10398,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:10403,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10403,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10403,1
    - Dst: xmlParseXMLDecl
      Src: /src/libxml2/parser.c:10408,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/parser.c:10411,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:10413,1
    - Dst: xmlParserCtxt*::sax::startDocument
      Src: /src/libxml2/parser.c:10418,1
    - Dst: xmlParseMisc
      Src: /src/libxml2/parser.c:10427,1
    - Dst: CMP9
      Src: /src/libxml2/parser.c:10434,1
    - Dst: xmlParseDocTypeDecl
      Src: /src/libxml2/parser.c:10437,1
    - Dst: xmlParseInternalSubset
      Src: /src/libxml2/parser.c:10439,1
    - Dst: xmlParserCtxt*::sax::externalSubset
      Src: /src/libxml2/parser.c:10450,1
    - Dst: xmlCleanSpecialAttr
      Src: /src/libxml2/parser.c:10454,1
    - Dst: xmlParseMisc
      Src: /src/libxml2/parser.c:10456,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:10465,1
    - Dst: xmlParseElement
      Src: /src/libxml2/parser.c:10468,1
    - Dst: xmlParseMisc
      Src: /src/libxml2/parser.c:10473,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/parser.c:10475,1
    - Dst: xmlFinishDocument
      Src: /src/libxml2/parser.c:10479,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 63
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10487
      start: 10378
    functionDepth: 11
    functionLinenumber: 10378
    functionLinenumberEnd: 10487
    functionName: xmlParseDocument
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlParseDocTypeDecl
    - xmlParserCheckEOF
    - xmlFinishDocument
    - xmlParseInternalSubset
    - xmlParseElement
    - xmlParseXMLDecl
    - xmlCtxtInitializeLate
    - xmlDetectEncoding
    - xmlCleanSpecialAttr
    - xmlCharStrdup
    - xmlErrMemory
    - xmlParserCtxt*::sax::startDocument
    - NXT
    - xmlParseMisc
    - CMP9
    - xmlFatalErr
    - IS_BLANK_CH
    - CMP5
    - xmlParserCtxt*::sax::setDocumentLocator
    - xmlFatalErrMsg
    - xmlParserCtxt*::sax::externalSubset
    linkageType: ''
    returnType: int
    signature: int xmlParseDocument(xmlParserCtxt *ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:10508,1
    - Dst: xmlParserCtxt*::sax::setDocumentLocator
      Src: /src/libxml2/parser.c:10511,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:10515,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10518,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:10525,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10525,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:10525,1
    - Dst: xmlParseXMLDecl
      Src: /src/libxml2/parser.c:10530,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/parser.c:10533,1
    - Dst: xmlParserCtxt*::sax::startDocument
      Src: /src/libxml2/parser.c:10536,1
    - Dst: xmlParseContentInternal
      Src: /src/libxml2/parser.c:10545,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:10548,1
    - Dst: xmlParserCtxt*::sax::endDocument
      Src: /src/libxml2/parser.c:10554,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10558
      start: 10503
    functionDepth: 8
    functionLinenumber: 10503
    functionLinenumberEnd: 10558
    functionName: xmlParseExtParsedEnt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCharStrdup
    - IS_BLANK_CH
    - CMP5
    - xmlParserCtxt*::sax::setDocumentLocator
    - xmlParserCtxt*::sax::startDocument
    - xmlParseContentInternal
    - NXT
    - xmlParserCtxt*::sax::endDocument
    - xmlParseXMLDecl
    - xmlCtxtInitializeLate
    - xmlDetectEncoding
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: int xmlParseExtParsedEnt(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/libxml2/parser.c:10583,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - c
    argTypes:
    - xmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10596
      start: 10573
    functionDepth: 0
    functionLinenumber: 10573
    functionLinenumberEnd: 10596
    functionName: xmlParseLookupChar
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - memchr
    linkageType: ''
    returnType: int
    signature: int xmlParseLookupChar(xmlParserCtxtPtr ctxt, int c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/libxml2/parser.c:10617,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - ctxt
    - startDelta
    - str
    - strLen
    argTypes:
    - xmlParserCtxtPtr
    - size_t
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10638
      start: 10606
    functionDepth: 0
    functionLinenumber: 10606
    functionLinenumberEnd: 10638
    functionName: xmlParseLookupString
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlParseLookupString(xmlParserCtxtPtr ctxt, size_t startDelta,\n
      \                    const char *str, size_t strLen)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10666
      start: 10645
    functionDepth: 0
    functionLinenumber: 10645
    functionLinenumberEnd: 10666
    functionName: xmlParseLookupCharData
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlParseLookupCharData(xmlParserCtxtPtr ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10709
      start: 10674
    functionDepth: 0
    functionLinenumber: 10674
    functionLinenumberEnd: 10709
    functionName: xmlParseLookupGt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlParseLookupGt(xmlParserCtxtPtr ctxt)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10755,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:10769,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 76
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10818
      start: 10717
    functionDepth: 1
    functionLinenumber: 10717
    functionLinenumberEnd: 10818
    functionName: xmlParseLookupInternalSubset
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlParseLookupInternalSubset(xmlParserCtxtPtr ctxt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:11254,1
    - Dst: xmlParserInputBufferPush
      Src: /src/libxml2/parser.c:11266,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parser.c:11267,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parser.c:11269,1
    - Dst: xmlParseTryOrFinish
      Src: /src/libxml2/parser.c:11273,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:11280,1
    - Dst: xmlParserInputBufferPush
      Src: /src/libxml2/parser.c:11289,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parser.c:11290,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parser.c:11292,1
    - Dst: xmlFatalErrMsgStrIntStr
      Src: /src/libxml2/parser.c:11305,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:11309,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:11311,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/parser.c:11315,1
    - Dst: xmlFinishDocument
      Src: /src/libxml2/parser.c:11319,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 61
    argCount: 4
    argNames:
    - ctxt
    - chunk
    - size
    - terminate
    argTypes:
    - xmlParserCtxt*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11326
      start: 11234
    functionDepth: 3
    functionLinenumber: 11234
    functionLinenumberEnd: 11326
    functionName: xmlParseChunk
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 10
    functionsReached:
    - xmlCtxtErrIO
    - xmlParserCheckEOF
    - xmlBufUpdateInput
    - xmlFinishDocument
    - xmlFatalErrMsgStrIntStr
    - xmlFatalErrMsg
    - xmlCtxtInitializeLate
    - xmlParseTryOrFinish
    - xmlParserInputBufferPush
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: "int xmlParseChunk(xmlParserCtxt *ctxt, const char *chunk, int size,\n
      \             int terminate)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:11361,1
    - Dst: xmlNewPushInput
      Src: /src/libxml2/parser.c:11368,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11370,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:11373,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11374,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11375,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 5
    argNames:
    - sax
    - user_data
    - chunk
    - size
    - filename
    argTypes:
    - xmlSAXHandler*
    - void*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11380
      start: 11355
    functionDepth: 3
    functionLinenumber: 11355
    functionLinenumberEnd: 11380
    functionName: xmlCreatePushParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 10
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewSAXParserCtxt
    - xmlFreeParserCtxt
    - xmlNewPushInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: "xmlParserCtxt *\nxmlCreatePushParserCtxt(xmlSAXHandler *sax, void
      *user_data,\n                        const char *chunk, int size, const char
      *filename)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11407
      start: 11388
    functionDepth: 0
    functionLinenumber: 11388
    functionLinenumberEnd: 11407
    functionName: xmlStopParser
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlStopParser(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:11430,1
    - Dst: xmlGetCharEncodingName
      Src: /src/libxml2/parser.c:11434,1
    - Dst: xmlCtxtNewInputFromIO
      Src: /src/libxml2/parser.c:11435,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11438,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:11441,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11442,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11443,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 6
    argNames:
    - sax
    - user_data
    - ioread
    - ioclose
    - ioctx
    - enc
    argTypes:
    - xmlSAXHandler*
    - void*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11448
      start: 11421
    functionDepth: 3
    functionLinenumber: 11421
    functionLinenumberEnd: 11448
    functionName: xmlCreateIOParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewSAXParserCtxt
    - xmlCtxtNewInputFromIO
    - xmlGetCharEncodingName
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: "xmlParserCtxt *\nxmlCreateIOParserCtxt(xmlSAXHandler *sax, void *user_data,\n
      \                     xmlInputReadCallback ioread,\n                      xmlInputCloseCallback
      ioclose,\n                      void *ioctx, xmlCharEncoding enc)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:11478,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11479,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:11483,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11484,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/parser.c:11493,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:11495,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/parser.c:11499,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:11502,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:11503,1
    - Dst: xmlParseExternalSubset
      Src: /src/libxml2/parser.c:11507,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:11525,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11529,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:11529,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 4
    argNames:
    - ctxt
    - input
    - publicId
    - systemId
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11532
      start: 11472
    functionDepth: 11
    functionLinenumber: 11472
    functionLinenumberEnd: 11532
    functionName: xmlCtxtParseDtd
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlErrMemory
    - xmlNewDtd
    - xmlNewDoc
    - xmlParseExternalSubset
    - xmlFatalErr
    - xmlCtxtPopInput
    - xmlFreeDoc
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlDtd
    signature: "xmlDtd *\nxmlCtxtParseDtd(xmlParserCtxt *ctxt, xmlParserInput *input,\n
      \               const xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:11556,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/parser.c:11558,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/parser.c:11561,1
    - Dst: xmlNewIOInputStream
      Src: /src/libxml2/parser.c:11567,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/parser.c:11569,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11570,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/parser.c:11575,1
    - Dst: xmlCtxtParseDtd
      Src: /src/libxml2/parser.c:11578,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11580,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - sax
    - input
    - enc
    argTypes:
    - xmlSAXHandler*
    - xmlParserInputBuffer*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11582
      start: 11546
    functionDepth: 12
    functionLinenumber: 11546
    functionLinenumberEnd: 11582
    functionName: xmlIOParseDTD
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlNewSAXParserCtxt
    - xmlCtxtSetOptions
    - xmlNewIOInputStream
    - xmlSwitchEncoding
    - xmlFreeParserInputBuffer
    - xmlFreeParserCtxt
    - xmlCtxtParseDtd
    linkageType: ''
    returnType: xmlDtd
    signature: "xmlDtd *\nxmlIOParseDTD(xmlSAXHandler *sax, xmlParserInputBuffer *input,\n\t
      \     xmlCharEncoding enc)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:11605,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/parser.c:11609,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/parser.c:11614,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11616,1
    - Dst: xmlParserCtxtPtr::sax::resolveEntity
      Src: /src/libxml2/parser.c:11625,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11628,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:11630,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:11637,1
    - Dst: xmlCtxtParseDtd
      Src: /src/libxml2/parser.c:11639,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11641,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - sax
    - publicId
    - systemId
    argTypes:
    - xmlSAXHandler*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11643
      start: 11595
    functionDepth: 12
    functionLinenumber: 11595
    functionLinenumberEnd: 11643
    functionName: xmlSAXParseDTD
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlNewSAXParserCtxt
    - xmlFree
    - xmlCtxtSetOptions
    - xmlParserCtxtPtr::sax::resolveEntity
    - xmlCanonicPath
    - xmlFreeParserCtxt
    - xmlCtxtParseDtd
    linkageType: ''
    returnType: xmlDtd
    signature: "xmlDtd *\nxmlSAXParseDTD(xmlSAXHandler *sax, const xmlChar *publicId,\n
      \              const xmlChar *systemId)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseDTD
      Src: /src/libxml2/parser.c:11656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - publicId
    - systemId
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11657
      start: 11654
    functionDepth: 13
    functionLinenumber: 11654
    functionLinenumberEnd: 11657
    functionName: xmlParseDTD
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlSAXParseDTD
    linkageType: ''
    returnType: xmlDtd
    signature: 'xmlDtd *

      xmlParseDTD(const xmlChar *publicId, const xmlChar *systemId)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/parser.c:11675,1
    - Dst: xmlErrMemory
      Src: /src/libxml2/parser.c:11677,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:11682,1
    - Dst: nameNsPush
      Src: /src/libxml2/parser.c:11685,1
    - Dst: spacePush
      Src: /src/libxml2/parser.c:11686,1
    - Dst: nodePush
      Src: /src/libxml2/parser.c:11689,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/parser.c:11692,1
    - Dst: CMP5
      Src: /src/libxml2/parser.c:11697,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parser.c:11698,1
    - Dst: NXT
      Src: /src/libxml2/parser.c:11698,1
    - Dst: xmlParseTextDecl
      Src: /src/libxml2/parser.c:11699,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:11703,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/parser.c:11704,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/parser.c:11705,1
    - Dst: xmlParseContentInternal
      Src: /src/libxml2/parser.c:11712,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:11715,1
    - Dst: xmlCtxtIsCatastrophicError
      Src: /src/libxml2/parser.c:11718,1
    - Dst: xmlParserShrink
      Src: /src/libxml2/parser.c:11739,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/parser.c:11740,1
    - Dst: nodePop
      Src: /src/libxml2/parser.c:11744,1
    - Dst: namePop
      Src: /src/libxml2/parser.c:11746,1
    - Dst: spacePop
      Src: /src/libxml2/parser.c:11747,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:11749,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/parser.c:11752,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 4
    argNames:
    - ctxt
    - input
    - hasTextDecl
    - buildTree
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserInputPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11755
      start: 11666
    functionDepth: 8
    functionLinenumber: 11666
    functionLinenumberEnd: 11755
    functionName: xmlCtxtParseContentInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached:
    - xmlParserGrow
    - xmlCtxtPushInput
    - xmlDetectEncoding
    - namePop
    - nameNsPush
    - nodePop
    - xmlFreeNode
    - xmlParseTextDecl
    - spacePop
    - xmlErrMemory
    - xmlStrEqual
    - NXT
    - nodePush
    - xmlParserShrink
    - xmlFatalErr
    - xmlNewDocNode
    - IS_BLANK_CH
    - CMP5
    - spacePush
    - xmlParseContentInternal
    - xmlFatalErrMsg
    - xmlCtxtPopInput
    - xmlCtxtIsCatastrophicError
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlCtxtParseContentInternal(xmlParserCtxtPtr ctxt, xmlParserInputPtr
      input,\n                            int hasTextDecl, int buildTree)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:11774,1
    - Dst: xmlNewEntityInputStream
      Src: /src/libxml2/parser.c:11781,1
    - Dst: xmlCtxtParseContentInternal
      Src: /src/libxml2/parser.c:11818,1
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parser.c:11830,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:11833,1
    - Dst: xmlSaturatedAdd
      Src: /src/libxml2/parser.c:11837,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/parser.c:11850,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/parser.c:11857,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11860,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 2
    argNames:
    - ctxt
    - ent
    argTypes:
    - xmlParserCtxtPtr
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11864
      start: 11757
    functionDepth: 9
    functionLinenumber: 11757
    functionLinenumberEnd: 11864
    functionName: xmlCtxtParseEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlFreeNodeList
    - xmlSetTreeDoc
    - xmlNewEntityInputStream
    - xmlSaturatedAddSizeT
    - xmlSaturatedAdd
    - xmlFatalErr
    - xmlFreeInputStream
    - xmlCtxtParseContentInternal
    linkageType: ''
    returnType: void
    signature: void xmlCtxtParseEntity(xmlParserCtxtPtr ctxt, xmlEntityPtr ent)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadResource
      Src: /src/libxml2/parser.c:11893,1
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:11898,1
    - Dst: xmlCtxtParseContentInternal
      Src: /src/libxml2/parser.c:11900,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/parser.c:11904,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:11906,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - ctxt
    - URL
    - ID
    - listOut
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - xmlChar*
    - xmlNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11908
      start: 11881
    functionDepth: 9
    functionLinenumber: 11881
    functionLinenumberEnd: 11908
    functionName: xmlParseCtxtExternalEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlFreeNodeList
    - xmlLoadResource
    - xmlCtxtInitializeLate
    - xmlFreeInputStream
    - xmlCtxtParseContentInternal
    linkageType: ''
    returnType: int
    signature: "int xmlParseCtxtExternalEntity(xmlParserCtxt *ctxt, const xmlChar
      *URL,\n                           const xmlChar *ID, xmlNode **listOut)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:11946,1
    - Dst: xmlParseCtxtExternalEntity
      Src: /src/libxml2/parser.c:11952,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:11954,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 7
    argNames:
    - doc
    - sax
    - user_data
    - depth
    - URL
    - ID
    - list
    argTypes:
    - xmlDoc*
    - xmlSAXHandler*
    - void*
    - int
    - xmlChar*
    - xmlChar*
    - xmlNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11956
      start: 11934
    functionDepth: 10
    functionLinenumber: 11934
    functionLinenumberEnd: 11956
    functionName: xmlParseExternalEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseCtxtExternalEntity
    - xmlFreeParserCtxt
    - xmlNewSAXParserCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlParseExternalEntity(xmlDoc *doc, xmlSAXHandler *sax, void *user_data,\n\t
      \ int depth, const xmlChar *URL, const xmlChar *ID, xmlNode **list)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseBalancedChunkMemoryRecover
      Src: /src/libxml2/parser.c:11983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - doc
    - sax
    - user_data
    - depth
    - string
    - lst
    argTypes:
    - xmlDoc*
    - xmlSAXHandler*
    - void*
    - int
    - xmlChar*
    - xmlNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11985
      start: 11980
    functionDepth: 1
    functionLinenumber: 11980
    functionLinenumberEnd: 11985
    functionName: xmlParseBalancedChunkMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseBalancedChunkMemoryRecover
    linkageType: ''
    returnType: int
    signature: "int xmlParseBalancedChunkMemory(xmlDoc *doc, xmlSAXHandler *sax,\n
      \    void *user_data, int depth, const xmlChar *string, xmlNode **lst)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:12014,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:12020,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:12047,1
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:12051,1
    - Dst: htmlCtxtParseContentInternal
      Src: /src/libxml2/parser.c:12084,1
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:12088,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:12099,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/parser.c:12100,1
    - Dst: xmlParserNsPush
      Src: /src/libxml2/parser.c:12101,1
    - Dst: xmlCtxtParseContentInternal
      Src: /src/libxml2/parser.c:12108,1
    - Dst: xmlParserNsPop
      Src: /src/libxml2/parser.c:12111,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12122,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 79
    argCount: 4
    argNames:
    - ctxt
    - input
    - node
    - hasTextDecl
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12124
      start: 12004
    functionDepth: 9
    functionLinenumber: 12004
    functionLinenumberEnd: 12124
    functionName: xmlCtxtParseContent
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - htmlCtxtParseContentInternal
    - xmlCtxtReset
    - xmlDictLookupHashed
    - xmlParserNsPush
    - xmlCtxtInitializeLate
    - xmlFatalErr
    - xmlParserNsPop
    - xmlFreeInputStream
    - xmlCtxtParseContentInternal
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlCtxtParseContent(xmlParserCtxt *ctxt, xmlParserInput
      *input,\n                    xmlNode *node, int hasTextDecl)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/parser.c:12170,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:12174,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/parser.c:12179,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12183,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:12187,1
    - Dst: xmlCtxtParseContent
      Src: /src/libxml2/parser.c:12189,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12200,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 5
    argNames:
    - node
    - data
    - datalen
    - options
    - listOut
    argTypes:
    - xmlNode*
    - char*
    - int
    - int
    - xmlNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12203
      start: 12148
    functionDepth: 10
    functionLinenumber: 12148
    functionLinenumberEnd: 12203
    functionName: xmlParseInNodeContext
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlCtxtParseContent
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromMemory
    - htmlNewParserCtxt
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlParseInNodeContext(xmlNode *node, const char *data,
      int datalen,\n                      int options, xmlNode **listOut)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:12247,1
    - Dst: xmlCtxtInitializeLate
      Src: /src/libxml2/parser.c:12251,1
    - Dst: xmlNewStringInputStream
      Src: /src/libxml2/parser.c:12260,1
    - Dst: xmlCtxtParseContentInternal
      Src: /src/libxml2/parser.c:12266,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/parser.c:12270,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12278,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12279,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 7
    argNames:
    - doc
    - sax
    - user_data
    - depth
    - string
    - listOut
    - recover
    argTypes:
    - xmlDoc*
    - xmlSAXHandler*
    - void*
    - int
    - xmlChar*
    - xmlNode**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12281
      start: 12232
    functionDepth: 9
    functionLinenumber: 12232
    functionLinenumberEnd: 12281
    functionName: xmlParseBalancedChunkMemoryRecover
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlFreeNodeList
    - xmlNewSAXParserCtxt
    - xmlCtxtInitializeLate
    - xmlNewStringInputStream
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    - xmlCtxtParseContentInternal
    linkageType: ''
    returnType: int
    signature: "int xmlParseBalancedChunkMemoryRecover(xmlDoc *doc, xmlSAXHandler
      *sax,\n     void *user_data, int depth, const xmlChar *string, xmlNode **listOut,\n
      \    int recover)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateFileParserCtxt
      Src: /src/libxml2/parser.c:12307,1
    - Dst: memset
      Src: /src/libxml2/parser.c:12315,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:12316,1
    - Dst: xmlParseExtParsedEnt
      Src: /src/libxml2/parser.c:12321,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:12327,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12330,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - sax
    - filename
    argTypes:
    - xmlSAXHandler*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12333
      start: 12302
    functionDepth: 9
    functionLinenumber: 12302
    functionLinenumberEnd: 12333
    functionName: xmlSAXParseEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlParseExtParsedEnt
    - xmlFreeParserCtxt
    - xmlCreateFileParserCtxt
    - memcpy
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlSAXParseEntity(xmlSAXHandler *sax, const char *filename)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseEntity
      Src: /src/libxml2/parser.c:12353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12354
      start: 12351
    functionDepth: 10
    functionLinenumber: 12351
    functionLinenumberEnd: 12354
    functionName: xmlParseEntity
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseEntity
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlParseEntity(const char *filename)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:12376,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/parser.c:12381,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/parser.c:12387,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:12392,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12393,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:12397,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:12401,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12402,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - URL
    - ID
    - base
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12404
      start: 12369
    functionDepth: 3
    functionLinenumber: 12369
    functionLinenumberEnd: 12404
    functionName: xmlCreateEntityParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlLoadResource
    - xmlFree
    - xmlNewParserCtxt
    - xmlBuildURISafe
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: "xmlParserCtxt *\nxmlCreateEntityParserCtxt(const xmlChar *URL, const
      xmlChar *ID,\n\t                  const xmlChar *base)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:12429,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:12433,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/parser.c:12435,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12437,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:12440,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12441,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - filename
    - options
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12447
      start: 12423
    functionDepth: 3
    functionLinenumber: 12423
    functionLinenumberEnd: 12447
    functionName: xmlCreateURLParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlLoadResource
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlCreateURLParserCtxt(const char *filename, int options)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURLParserCtxt
      Src: /src/libxml2/parser.c:12462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12463
      start: 12459
    functionDepth: 4
    functionLinenumber: 12459
    functionLinenumberEnd: 12463
    functionName: xmlCreateFileParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlCreateURLParserCtxt
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlCreateFileParserCtxt(const char *filename)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:12495,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/parser.c:12508,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/parser.c:12510,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:12513,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12515,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 4
    argNames:
    - sax
    - filename
    - recovery
    - data
    argTypes:
    - xmlSAXHandler*
    - char*
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12517
      start: 12488
    functionDepth: 1
    functionLinenumber: 12488
    functionLinenumberEnd: 12517
    functionName: xmlSAXParseFileWithData
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlNewSAXParserCtxt
    - xmlCtxtNewInputFromUrl
    - xmlCtxtParseDocument
    - xmlCtxtNewInputFromFd
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlSAXParseFileWithData(xmlSAXHandler *sax, const char *filename,\n
      \                       int recovery, void *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseFileWithData
      Src: /src/libxml2/parser.c:12540,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - sax
    - filename
    - recovery
    argTypes:
    - xmlSAXHandler*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12541
      start: 12537
    functionDepth: 2
    functionLinenumber: 12537
    functionLinenumberEnd: 12541
    functionName: xmlSAXParseFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseFileWithData
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlSAXParseFile(xmlSAXHandler *sax, const char *filename,\n
      \                         int recovery)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseDoc
      Src: /src/libxml2/parser.c:12559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12560
      start: 12557
    functionDepth: 1
    functionLinenumber: 12557
    functionLinenumberEnd: 12560
    functionName: xmlRecoverDoc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseDoc
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlRecoverDoc(const xmlChar *cur)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseFile
      Src: /src/libxml2/parser.c:12578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12579
      start: 12576
    functionDepth: 3
    functionLinenumber: 12576
    functionLinenumberEnd: 12579
    functionName: xmlParseFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 4
    functionsReached:
    - xmlSAXParseFile
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlParseFile(const char *filename)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseFile
      Src: /src/libxml2/parser.c:12598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12599
      start: 12596
    functionDepth: 3
    functionLinenumber: 12596
    functionLinenumberEnd: 12599
    functionName: xmlRecoverFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseFile
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlRecoverFile(const char *filename)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:12622,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parser.c:12624,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:12628,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ctxt
    - buffer
    - filename
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12630
      start: 12613
    functionDepth: 3
    functionLinenumber: 12613
    functionLinenumberEnd: 12630
    functionName: xmlSetupParserForBuffer
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtNewInputFromString
    - xmlCtxtReset
    - xmlFreeInputStream
    linkageType: ''
    returnType: void
    signature: "void xmlSetupParserForBuffer(xmlParserCtxt *ctxt, const xmlChar* buffer,\n
      \                            const char* filename)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateFileParserCtxt
      Src: /src/libxml2/parser.c:12652,1
    - Dst: memset
      Src: /src/libxml2/parser.c:12658,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:12659,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/parser.c:12664,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:12675,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12678,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - sax
    - user_data
    - filename
    argTypes:
    - xmlSAXHandler*
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12681
      start: 12646
    functionDepth: 12
    functionLinenumber: 12646
    functionLinenumberEnd: 12681
    functionName: xmlSAXUserParseFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlFreeParserCtxt
    - xmlCreateFileParserCtxt
    - memcpy
    - xmlParseDocument
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSAXUserParseFile(xmlSAXHandler *sax, void *user_data,\n                    const
      char *filename)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:12706,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/parser.c:12710,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12712,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:12715,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12716,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12717,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12722
      start: 12698
    functionDepth: 3
    functionLinenumber: 12698
    functionLinenumberEnd: 12722
    functionName: xmlCreateMemoryParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromMemory
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlCreateMemoryParserCtxt(const char *buffer, int size)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parser.c:12757,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/parser.c:12769,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:12773,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12775,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - sax
    - buffer
    - size
    - recovery
    - data
    argTypes:
    - xmlSAXHandler*
    - char*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12777
      start: 12747
    functionDepth: 1
    functionLinenumber: 12747
    functionLinenumberEnd: 12777
    functionName: xmlSAXParseMemoryWithData
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtParseDocument
    - xmlFreeParserCtxt
    - xmlCtxtNewInputFromMemory
    - xmlNewSAXParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlSAXParseMemoryWithData(xmlSAXHandler *sax, const char
      *buffer,\n                          int size, int recovery, void *data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseMemoryWithData
      Src: /src/libxml2/parser.c:12799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - sax
    - buffer
    - size
    - recovery
    argTypes:
    - xmlSAXHandler*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12800
      start: 12796
    functionDepth: 2
    functionLinenumber: 12796
    functionLinenumberEnd: 12800
    functionName: xmlSAXParseMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseMemoryWithData
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlSAXParseMemory(xmlSAXHandler *sax, const char *buffer,\n\t
      \         int size, int recovery)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseMemory
      Src: /src/libxml2/parser.c:12816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12817
      start: 12815
    functionDepth: 3
    functionLinenumber: 12815
    functionLinenumberEnd: 12817
    functionName: xmlParseMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseMemory
    linkageType: ''
    returnType: xmlDoc
    signature: xmlDoc *xmlParseMemory(const char *buffer, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseMemory
      Src: /src/libxml2/parser.c:12835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12836
      start: 12834
    functionDepth: 3
    functionLinenumber: 12834
    functionLinenumberEnd: 12836
    functionName: xmlRecoverMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseMemory
    linkageType: ''
    returnType: xmlDoc
    signature: xmlDoc *xmlRecoverMemory(const char *buffer, int size)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateMemoryParserCtxt
      Src: /src/libxml2/parser.c:12857,1
    - Dst: memset
      Src: /src/libxml2/parser.c:12863,1
    - Dst: memcpy
      Src: /src/libxml2/parser.c:12864,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/parser.c:12869,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:12880,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12883,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 4
    argNames:
    - sax
    - user_data
    - buffer
    - size
    argTypes:
    - xmlSAXHandler*
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12886
      start: 12852
    functionDepth: 12
    functionLinenumber: 12852
    functionLinenumberEnd: 12886
    functionName: xmlSAXUserParseMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlFreeParserCtxt
    - xmlCreateMemoryParserCtxt
    - memcpy
    - xmlParseDocument
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSAXUserParseMemory(xmlSAXHandler *sax, void *user_data,\n\t\t\t
      \ const char *buffer, int size)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:12900,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parser.c:12904,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12906,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:12909,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:12910,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12911,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12916
      start: 12895
    functionDepth: 3
    functionLinenumber: 12895
    functionLinenumberEnd: 12916
    functionName: xmlCreateDocParserCtxt
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromString
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlCreateDocParserCtxt(const xmlChar *str)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateDocParserCtxt
      Src: /src/libxml2/parser.c:12945,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/parser.c:12953,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:12957,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:12962,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - sax
    - cur
    - recovery
    argTypes:
    - xmlSAXHandler*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12965
      start: 12936
    functionDepth: 12
    functionLinenumber: 12936
    functionLinenumberEnd: 12965
    functionName: xmlSAXParseDoc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlFreeDoc
    - xmlFreeParserCtxt
    - xmlParseDocument
    - xmlCreateDocParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlSAXParseDoc(xmlSAXHandler *sax, const xmlChar *cur, int recovery)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXParseDoc
      Src: /src/libxml2/parser.c:12981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12982
      start: 12979
    functionDepth: 13
    functionLinenumber: 12979
    functionLinenumberEnd: 12982
    functionName: xmlParseDoc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlSAXParseDoc
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlParseDoc(const xmlChar *cur)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:13004,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13005,1
    - Dst: xmlParserNsReset
      Src: /src/libxml2/parser.c:13026,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:13029,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:13033,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:13037,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:13041,1
    - Dst: xmlFree
      Src: /src/libxml2/parser.c:13045,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parser.c:13050,1
    - Dst: xmlInitNodeInfoSeq
      Src: /src/libxml2/parser.c:13072,1
    - Dst: xmlHashFree
      Src: /src/libxml2/parser.c:13075,1
    - Dst: xmlHashFree
      Src: /src/libxml2/parser.c:13079,1
    - Dst: xmlCatalogFreeLocal
      Src: /src/libxml2/parser.c:13085,1
    - Dst: xmlResetError
      Src: /src/libxml2/parser.c:13090,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 77
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13091
      start: 12996
    functionDepth: 1
    functionLinenumber: 12996
    functionLinenumberEnd: 13091
    functionName: xmlCtxtReset
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 8
    functionsReached:
    - xmlFree
    - xmlParserNsReset
    - xmlHashFree
    - xmlResetError
    - xmlInitNodeInfoSeq
    - xmlCatalogFreeLocal
    - xmlCtxtPopInput
    - xmlFreeDoc
    - xmlFreeInputStream
    linkageType: ''
    returnType: void
    signature: void xmlCtxtReset(xmlParserCtxt *ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13112,1
    - Dst: xmlNewPushInput
      Src: /src/libxml2/parser.c:13114,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:13118,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13119,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/parser.c:13124,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ctxt
    - chunk
    - size
    - filename
    - encoding
    argTypes:
    - xmlParserCtxt*
    - char*
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13127
      start: 13103
    functionDepth: 3
    functionLinenumber: 13103
    functionLinenumberEnd: 13127
    functionName: xmlCtxtResetPush
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtReset
    - xmlSwitchEncodingName
    - xmlNewPushInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: "int xmlCtxtResetPush(xmlParserCtxt *ctxt, const char *chunk,\n                 int
      size, const char *filename, const char *encoding)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - ctxt
    - options
    - keepMask
    argTypes:
    - xmlParserCtxtPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13198
      start: 13129
    functionDepth: 0
    functionLinenumber: 13129
    functionLinenumberEnd: 13198
    functionName: xmlCtxtSetOptionsInternal
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtSetOptionsInternal(xmlParserCtxtPtr ctxt, int options, int
      keepMask)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtSetOptions
      Src: /src/libxml2/parser.c:13218,1
    - Dst: xmlCtxtSetOptionsInternal
      Src: /src/libxml2/parser.c:13221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13222
      start: 13213
    functionDepth: 1
    functionLinenumber: 13213
    functionLinenumberEnd: 13222
    functionName: xmlCtxtSetOptions
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - htmlCtxtSetOptions
    - xmlCtxtSetOptionsInternal
    linkageType: ''
    returnType: int
    signature: int xmlCtxtSetOptions(xmlParserCtxt *ctxt, int options)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13239
      start: 13232
    functionDepth: 0
    functionLinenumber: 13232
    functionLinenumberEnd: 13239
    functionName: xmlCtxtGetOptions
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtGetOptions(xmlParserCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13271,1
    - Dst: xmlCtxtSetOptionsInternal
      Src: /src/libxml2/parser.c:13289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13290
      start: 13264
    functionDepth: 1
    functionLinenumber: 13264
    functionLinenumberEnd: 13290
    functionName: xmlCtxtUseOptions
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 10
    functionsReached:
    - htmlCtxtUseOptions
    - xmlCtxtSetOptionsInternal
    linkageType: ''
    returnType: int
    signature: int xmlCtxtUseOptions(xmlParserCtxt *ctxt, int options)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - maxAmpl
    argTypes:
    - xmlParserCtxt*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13310
      start: 13304
    functionDepth: 0
    functionLinenumber: 13304
    functionLinenumberEnd: 13310
    functionName: xmlCtxtSetMaxAmplification
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCtxtSetMaxAmplification(xmlParserCtxt *ctxt, unsigned maxAmpl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parser.c:13328,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13329,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13335,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:13335,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/parser.c:13337,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13338,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/parser.c:13342,1
    - Dst: xmlCtxtGetDocument
      Src: /src/libxml2/parser.c:13344,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parser.c:13348,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parser.c:13348,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - input
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13351
      start: 13322
    functionDepth: 12
    functionLinenumber: 13322
    functionLinenumberEnd: 13351
    functionName: xmlCtxtParseDocument
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 5
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtGetDocument
    - xmlFatalErr
    - xmlCtxtPopInput
    - xmlParseDocument
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlCtxtParseDocument(xmlParserCtxt *ctxt, xmlParserInput *input)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:13373,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13377,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parser.c:13379,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13383,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:13385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - cur
    - URL
    - encoding
    - options
    argTypes:
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13387
      start: 13365
    functionDepth: 13
    functionLinenumber: 13365
    functionLinenumberEnd: 13387
    functionName: xmlReadDoc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtParseDocument
    - xmlCtxtNewInputFromString
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlReadDoc(const xmlChar *cur, const char *URL, const char
      *encoding,\n           int options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:13411,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13415,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/parser.c:13423,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/parser.c:13426,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13429,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:13431,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - filename
    - encoding
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13433
      start: 13404
    functionDepth: 13
    functionLinenumber: 13404
    functionLinenumberEnd: 13433
    functionName: xmlReadFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 19
    functionsReached:
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromUrl
    - xmlCtxtParseDocument
    - xmlCtxtNewInputFromFd
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlReadFile(const char *filename, const char *encoding, int options)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:13459,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13463,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/parser.c:13465,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13469,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:13471,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - buffer
    - size
    - url
    - encoding
    - options
    argTypes:
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13473
      start: 13448
    functionDepth: 13
    functionLinenumber: 13448
    functionLinenumberEnd: 13473
    functionName: xmlReadMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 9
    functionsReached:
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromMemory
    - xmlCtxtParseDocument
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlReadMemory(const char *buffer, int size, const char *url,\n
      \             const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:13496,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13500,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/parser.c:13502,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13505,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:13507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - fd
    - URL
    - encoding
    - options
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13509
      start: 13489
    functionDepth: 13
    functionLinenumber: 13489
    functionLinenumberEnd: 13509
    functionName: xmlReadFd
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtParseDocument
    - xmlCtxtNewInputFromFd
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlReadFd(int fd, const char *URL, const char *encoding, int options)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/parser.c:13532,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13536,1
    - Dst: xmlCtxtNewInputFromIO
      Src: /src/libxml2/parser.c:13538,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13542,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parser.c:13544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 6
    argNames:
    - ioread
    - ioclose
    - ioctx
    - URL
    - encoding
    - options
    argTypes:
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13546
      start: 13524
    functionDepth: 13
    functionLinenumber: 13524
    functionLinenumberEnd: 13546
    functionName: xmlReadIO
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlCtxtNewInputFromIO
    - xmlCtxtParseDocument
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlReadIO(xmlInputReadCallback ioread, xmlInputCloseCallback
      ioclose,\n          void *ioctx, const char *URL, const char *encoding, int
      options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13570,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13571,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parser.c:13573,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ctxt
    - str
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13579
      start: 13561
    functionDepth: 13
    functionLinenumber: 13561
    functionLinenumberEnd: 13579
    functionName: xmlCtxtReadDoc
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtParseDocument
    - xmlCtxtUseOptions
    - xmlCtxtNewInputFromString
    - xmlCtxtReset
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlCtxtReadDoc(xmlParserCtxt *ctxt, const xmlChar *str,\n
      \              const char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13600,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13601,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/parser.c:13603,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctxt
    - filename
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13608
      start: 13591
    functionDepth: 13
    functionLinenumber: 13591
    functionLinenumberEnd: 13608
    functionName: xmlCtxtReadFile
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 5
    functionsReached:
    - xmlCtxtParseDocument
    - xmlCtxtNewInputFromUrl
    - xmlCtxtUseOptions
    - xmlCtxtReset
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlCtxtReadFile(xmlParserCtxt *ctxt, const char *filename,\n
      \               const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13634,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13635,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/parser.c:13637,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13642,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - ctxt
    - buffer
    - size
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13643
      start: 13625
    functionDepth: 13
    functionLinenumber: 13625
    functionLinenumberEnd: 13643
    functionName: xmlCtxtReadMemory
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 2
    functionsReached:
    - xmlCtxtParseDocument
    - xmlCtxtUseOptions
    - xmlCtxtNewInputFromMemory
    - xmlCtxtReset
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlCtxtReadMemory(xmlParserCtxt *ctxt, const char *buffer,
      int size,\n                  const char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13670,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13671,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/parser.c:13673,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13677,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ctxt
    - fd
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13678
      start: 13661
    functionDepth: 13
    functionLinenumber: 13661
    functionLinenumberEnd: 13678
    functionName: xmlCtxtReadFd
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 3
    functionsReached:
    - xmlCtxtParseDocument
    - xmlCtxtUseOptions
    - xmlCtxtReset
    - xmlCtxtNewInputFromFd
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlCtxtReadFd(xmlParserCtxt *ctxt, int fd,\n              const
      char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parser.c:13707,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/parser.c:13708,1
    - Dst: xmlCtxtNewInputFromIO
      Src: /src/libxml2/parser.c:13710,1
    - Dst: xmlCtxtParseDocument
      Src: /src/libxml2/parser.c:13715,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - ctxt
    - ioread
    - ioclose
    - ioctx
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13716
      start: 13696
    functionDepth: 13
    functionLinenumber: 13696
    functionLinenumberEnd: 13716
    functionName: xmlCtxtReadIO
    functionSourceFile: /src/libxml2/parser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtParseDocument
    - xmlCtxtUseOptions
    - xmlCtxtReset
    - xmlCtxtNewInputFromIO
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nxmlCtxtReadIO(xmlParserCtxt *ctxt, xmlInputReadCallback
      ioread,\n              xmlInputCloseCallback ioclose, void *ioctx,\n\t      const
      char *URL,\n              const char *encoding, int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmllintMain
      Src: /src/libxml2/lintmain.c:13,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 11
    functionDepth: 5
    functionLinenumber: 11
    functionLinenumberEnd: 14
    functionName: main
    functionSourceFile: /src/libxml2/lintmain.c
    functionUses: 0
    functionsReached:
    - xmllintMain
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: CLIENT_2_HDR
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CLIENT_2_HDR(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: HDR_2_CLIENT
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HDR_2_CLIENT(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemMalloc
      Src: /src/libxml2/xmlmemory.c:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - size
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionName: xmlMallocLoc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached:
    - xmlMemMalloc
    linkageType: ''
    returnType: void
    signature: "void *\nxmlMallocLoc(size_t size, const char *file ATTRIBUTE_UNUSED,\n
      \            int line ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemMalloc
      Src: /src/libxml2/xmlmemory.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - size
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionName: xmlMallocAtomicLoc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached:
    - xmlMemMalloc
    linkageType: ''
    returnType: void
    signature: "void *\nxmlMallocAtomicLoc(size_t size, const char *file ATTRIBUTE_UNUSED,\n
      \                  int line ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlmemory.c:99,1
    - Dst: malloc
      Src: /src/libxml2/xmlmemory.c:104,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlmemory.c:110,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlmemory.c:113,1
    - Dst: HDR_2_CLIENT
      Src: /src/libxml2/xmlmemory.c:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 94
    functionDepth: 4
    functionLinenumber: 94
    functionLinenumberEnd: 116
    functionName: xmlMemMalloc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 4
    functionsReached:
    - xmlMutexUnlock
    - xmlInitParser
    - xmlMutexLock
    - malloc
    - HDR_2_CLIENT
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlMemMalloc(size_t size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemRealloc
      Src: /src/libxml2/xmlmemory.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ptr
    - size
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 132
    functionName: xmlReallocLoc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached:
    - xmlMemRealloc
    linkageType: ''
    returnType: void
    signature: "void *\nxmlReallocLoc(void *ptr, size_t size, const char *file ATTRIBUTE_UNUSED,\n
      \             int line ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemMalloc
      Src: /src/libxml2/xmlmemory.c:147,1
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlmemory.c:149,1
    - Dst: CLIENT_2_HDR
      Src: /src/libxml2/xmlmemory.c:154,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/xmlmemory.c:156,1
    - Dst: realloc
      Src: /src/libxml2/xmlmemory.c:162,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlmemory.c:171,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlmemory.c:174,1
    - Dst: HDR_2_CLIENT
      Src: /src/libxml2/xmlmemory.c:176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 141
    functionDepth: 5
    functionLinenumber: 141
    functionLinenumberEnd: 177
    functionName: xmlMemRealloc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 2
    functionsReached:
    - xmlMutexUnlock
    - xmlPrintErrorMessage
    - xmlInitParser
    - xmlMutexLock
    - HDR_2_CLIENT
    - realloc
    - CLIENT_2_HDR
    - xmlMemMalloc
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlMemRealloc(void *ptr, size_t size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/xmlmemory.c:193,1
    - Dst: CLIENT_2_HDR
      Src: /src/libxml2/xmlmemory.c:197,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/xmlmemory.c:199,1
    - Dst: memset
      Src: /src/libxml2/xmlmemory.c:203,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlmemory.c:205,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlmemory.c:208,1
    - Dst: free
      Src: /src/libxml2/xmlmemory.c:210,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 211
    functionName: xmlMemFree
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 2
    functionsReached:
    - free
    - xmlMutexUnlock
    - xmlPrintErrorMessage
    - xmlMutexLock
    - CLIENT_2_HDR
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlMemFree(void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemoryStrdup
      Src: /src/libxml2/xmlmemory.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - str
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 226
    functionName: xmlMemStrdupLoc
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 0
    functionsReached:
    - xmlMemoryStrdup
    linkageType: ''
    returnType: char
    signature: "char *\nxmlMemStrdupLoc(const char *str, const char *file ATTRIBUTE_UNUSED,\n
      \               int line ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmlmemory.c:237,1
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlmemory.c:240,1
    - Dst: malloc
      Src: /src/libxml2/xmlmemory.c:245,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlmemory.c:251,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlmemory.c:254,1
    - Dst: HDR_2_CLIENT
      Src: /src/libxml2/xmlmemory.c:256,1
    - Dst: memcpy
      Src: /src/libxml2/xmlmemory.c:258,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 234
    functionDepth: 4
    functionLinenumber: 234
    functionLinenumberEnd: 261
    functionName: xmlMemoryStrdup
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached:
    - xmlMutexUnlock
    - strlen
    - HDR_2_CLIENT
    - xmlMutexLock
    - malloc
    - xmlInitParser
    - memcpy
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlMemoryStrdup(const char *str)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CLIENT_2_HDR
      Src: /src/libxml2/xmlmemory.c:275,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 280
    functionName: xmlMemSize
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 2
    functionsReached:
    - CLIENT_2_HDR
    linkageType: ''
    returnType: size_t
    signature: size_t xmlMemSize(void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: xmlMemUsed
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlMemUsed(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlmemory.c:303,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlmemory.c:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 307
    functionName: xmlMemBlocks
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlMemBlocks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 344
    functionName: xmlMemoryDump
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlMemoryDump(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlmemory.c:360,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 358
    functionDepth: 4
    functionLinenumber: 358
    functionLinenumberEnd: 362
    functionName: xmlInitMemory
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int xmlInitMemory(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/xmlmemory.c:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: xmlInitMemoryInternal
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached:
    - xmlInitMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitMemoryInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: xmlCleanupMemory
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCleanupMemory(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/xmlmemory.c:396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 398
    functionName: xmlCleanupMemoryInternal
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached:
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupMemoryInternal(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - freeFunc
    - mallocFunc
    - reallocFunc
    - strdupFunc
    argTypes:
    - xmlFreeFunc
    - xmlMallocFunc
    - xmlReallocFunc
    - xmlStrdupFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 430
    functionName: xmlMemSetup
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlMemSetup(xmlFreeFunc freeFunc, xmlMallocFunc mallocFunc,\n
      \           xmlReallocFunc reallocFunc, xmlStrdupFunc strdupFunc)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - freeFunc
    - mallocFunc
    - reallocFunc
    - strdupFunc
    argTypes:
    - xmlFreeFunc*
    - xmlMallocFunc*
    - xmlReallocFunc*
    - xmlStrdupFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 449
    functionName: xmlMemGet
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlMemGet(xmlFreeFunc *freeFunc, xmlMallocFunc *mallocFunc,\n\t
      \ xmlReallocFunc *reallocFunc, xmlStrdupFunc *strdupFunc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - freeFunc
    - mallocFunc
    - mallocAtomicFunc
    - reallocFunc
    - strdupFunc
    argTypes:
    - xmlFreeFunc
    - xmlMallocFunc
    - xmlMallocFunc
    - xmlReallocFunc
    - xmlStrdupFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 489
    functionName: xmlGcMemSetup
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlGcMemSetup(xmlFreeFunc freeFunc, xmlMallocFunc mallocFunc,\n
      \             xmlMallocFunc mallocAtomicFunc, xmlReallocFunc reallocFunc,\n\t
      \     xmlStrdupFunc strdupFunc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 5
    argNames:
    - freeFunc
    - mallocFunc
    - mallocAtomicFunc
    - reallocFunc
    - strdupFunc
    argTypes:
    - xmlFreeFunc*
    - xmlMallocFunc*
    - xmlMallocFunc*
    - xmlReallocFunc*
    - xmlStrdupFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 515
    functionName: xmlGcMemGet
    functionSourceFile: /src/libxml2/xmlmemory.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlGcMemGet(xmlFreeFunc *freeFunc, xmlMallocFunc *mallocFunc,\n
      \           xmlMallocFunc *mallocAtomicFunc, xmlReallocFunc *reallocFunc,\n\t
      \   xmlStrdupFunc *strdupFunc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetError
      Src: /src/libxml2/xpointer.c:85,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpointer.c:90,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpointer.c:92,1
    - Dst: xmlRaiseError
      Src: /src/libxml2/xpointer.c:103,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpointer.c:109,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ctxt
    - code
    - msg
    - extra
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 65
    functionDepth: 5
    functionLinenumber: 65
    functionLinenumberEnd: 110
    functionName: xmlXPtrErr
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlStrdup
    - xmlRaiseError
    - xmlResetError
    linkageType: ''
    returnType: void
    signature: "void xmlXPtrErr(xmlXPathParserContextPtr ctxt, int code,\n           const
      char * msg, const xmlChar *extra)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 2
    argNames:
    - cur
    - 'no'
    argTypes:
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 141
    functionName: xmlXPtrGetNthChild
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlXPtrGetNthChild(xmlNodePtr cur, int no)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: SKIP
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 176
    functionName: NXT
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 39
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpointer.c:196,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpointer.c:197,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpointer.c:200,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpointer.c:201,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpointer.c:201,1
    - Dst: xmlXPtrGetNthChild
      Src: /src/libxml2/xpointer.c:204,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpointer.c:206,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpointer.c:207,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpointer.c:207,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpointer.c:211,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - indx
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 212
    functionName: xmlXPtrGetChildNo
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached:
    - xmlXPtrGetNthChild
    - xmlXPathValuePop
    - xmlXPathNewNodeSet
    - xmlXPathValuePush
    - xmlXPathFreeObject
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPtrGetChildNo(xmlXPathParserContextPtr ctxt, int indx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseName
      Src: /src/libxml2/xpointer.c:254,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:256,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:259,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:260,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpointer.c:265,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpointer.c:267,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpointer.c:269,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:270,1
    - Dst: NXT
      Src: /src/libxml2/xpointer.c:285,1
    - Dst: NXT
      Src: /src/libxml2/xpointer.c:285,1
    - Dst: NXT
      Src: /src/libxml2/xpointer.c:285,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:295,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:296,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:297,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpointer.c:300,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpointer.c:301,1
    - Dst: xmlXPathEvalExpr
      Src: /src/libxml2/xpointer.c:315,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpointer.c:318,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/xpointer.c:325,1
    - Dst: xmlXPtrEvalChildSeq
      Src: /src/libxml2/xpointer.c:326,1
    - Dst: xmlXPathParseName
      Src: /src/libxml2/xpointer.c:328,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:332,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:333,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:334,1
    - Dst: xmlXPtrEvalChildSeq
      Src: /src/libxml2/xpointer.c:336,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpointer.c:341,1
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpointer.c:347,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:351,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:352,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:353,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:359,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:360,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:361,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:362,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/xpointer.c:367,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpointer.c:368,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:371,1
    - Dst: xmlXPtrErr
      Src: /src/libxml2/xpointer.c:374,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:377,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:378,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 104
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 247
    functionDepth: 6
    functionLinenumber: 247
    functionLinenumberEnd: 379
    functionName: xmlXPtrEvalXPtrPart
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlXPathParseName
    - xmlStrlen
    - xmlXPathRegisterNs
    - NXT
    - xmlMalloc
    - xmlXPathPErrMemory
    - xmlXPathRoot
    - xmlXPathEvalExpr
    - xmlXPathParseNCName
    - xmlXPtrEvalChildSeq
    - xmlXPtrErr
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseName
      Src: /src/libxml2/xpointer.c:410,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:412,1
    - Dst: xmlXPtrEvalXPtrPart
      Src: /src/libxml2/xpointer.c:415,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpointer.c:445,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpointer.c:447,1
    - Dst: xmlXPathParseName
      Src: /src/libxml2/xpointer.c:456,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 407
    functionDepth: 7
    functionLinenumber: 407
    functionLinenumberEnd: 458
    functionName: xmlXPtrEvalFullXPtr
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached:
    - xmlXPathParseName
    - xmlXPathValuePop
    - xmlXPtrEvalXPtrPart
    - xmlXPathFreeObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPtrEvalFullXPtr(xmlXPathParserContextPtr ctxt, xmlChar *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/xpointer.c:476,1
    - Dst: xmlXPtrErr
      Src: /src/libxml2/xpointer.c:477,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpointer.c:482,1
    - Dst: xmlXPathNewString
      Src: /src/libxml2/xpointer.c:482,1
    - Dst: xmlFree
      Src: /src/libxml2/xpointer.c:483,1
    - Dst: xmlXPathIdFunction
      Src: /src/libxml2/xpointer.c:484,1
    - Dst: xmlXPtrGetChildNo
      Src: /src/libxml2/xpointer.c:506,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 470
    functionDepth: 6
    functionLinenumber: 470
    functionLinenumberEnd: 508
    functionName: xmlXPtrEvalChildSeq
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlXPathNewString
    - xmlXPathIdFunction
    - NXT
    - xmlXPtrGetChildNo
    - xmlXPathValuePush
    - xmlXPtrErr
    linkageType: ''
    returnType: void
    signature: void xmlXPtrEvalChildSeq(xmlXPathParserContextPtr ctxt, xmlChar *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpointer.c:525,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpointer.c:527,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/xpointer.c:536,1
    - Dst: xmlXPtrEvalChildSeq
      Src: /src/libxml2/xpointer.c:537,1
    - Dst: xmlXPathParseName
      Src: /src/libxml2/xpointer.c:541,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:543,1
    - Dst: xmlXPtrEvalFullXPtr
      Src: /src/libxml2/xpointer.c:545,1
    - Dst: xmlXPtrEvalChildSeq
      Src: /src/libxml2/xpointer.c:550,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpointer.c:555,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 520
    functionDepth: 8
    functionLinenumber: 520
    functionLinenumberEnd: 556
    functionName: xmlXPtrEvalXPointer
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 0
    functionsReached:
    - xmlXPathParseName
    - xmlMalloc
    - xmlXPathPErrMemory
    - xmlXPathRoot
    - xmlXPtrEvalFullXPtr
    - xmlXPtrEvalChildSeq
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPtrEvalXPointer(xmlXPathParserContextPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/xpointer.c:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - doc
    - here
    - origin
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 586
    functionName: xmlXPtrNewContext
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewContext
    linkageType: ''
    returnType: xmlXPathContext
    signature: 'xmlXPathContext *

      xmlXPtrNewContext(xmlDoc *doc, xmlNode *here, xmlNode *origin)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xpointer.c:606,1
    - Dst: xmlResetError
      Src: /src/libxml2/xpointer.c:611,1
    - Dst: xmlXPathNewParserContext
      Src: /src/libxml2/xpointer.c:613,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpointer.c:615,1
    - Dst: xmlXPtrEvalXPointer
      Src: /src/libxml2/xpointer.c:618,1
    - Dst: xmlXPtrErr
      Src: /src/libxml2/xpointer.c:624,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpointer.c:628,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpointer.c:632,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpointer.c:647,1
    - Dst: xmlXPtrErr
      Src: /src/libxml2/xpointer.c:651,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpointer.c:656,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/xpointer.c:661,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 2
    argNames:
    - str
    - ctx
    argTypes:
    - xmlChar*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 599
    functionDepth: 9
    functionLinenumber: 599
    functionLinenumberEnd: 663
    functionName: xmlXPtrEval
    functionSourceFile: /src/libxml2/xpointer.c
    functionUses: 2
    functionsReached:
    - xmlXPathFreeParserContext
    - xmlXPathValuePop
    - xmlInitParser
    - xmlResetError
    - xmlXPathErrMemory
    - xmlXPtrEvalXPointer
    - xmlXPathFreeObject
    - xmlXPtrErr
    - xmlXPathNewParserContext
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPtrEval(const xmlChar *str, xmlXPathContext *ctx)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrPrintf
      Src: /src/libxml2/testModule.c:52,1
    - Dst: xmlModuleOpen
      Src: /src/libxml2/testModule.c:57,1
    - Dst: fprintf
      Src: /src/libxml2/testModule.c:59,1
    - Dst: xmlModuleSymbol
      Src: /src/libxml2/testModule.c:63,1
    - Dst: fprintf
      Src: /src/libxml2/testModule.c:64,1
    - Dst: fprintf
      Src: /src/libxml2/testModule.c:68,1
    - Dst: xmlModuleClose
      Src: /src/libxml2/testModule.c:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 77
    functionName: main
    functionSourceFile: /src/libxml2/testModule.c
    functionUses: 0
    functionsReached:
    - xmlModuleClose
    - xmlStrPrintf
    - xmlModuleSymbol
    - fprintf
    - xmlModuleOpen
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testModule.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: main
    functionSourceFile: /src/libxml2/testModule.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: HASH_INIT
      Src: /src/libxml2/hash.c:66,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:69,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:74,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:78,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:84,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:88,1
    - Dst: HASH_FINISH
      Src: /src/libxml2/hash.c:94,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 5
    argNames:
    - seed
    - key
    - key2
    - key3
    - lengths
    argTypes:
    - unsigned
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 97
    functionName: xmlHashValue
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - HASH_FINISH
    - HASH_UPDATE
    - HASH_INIT
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlHashValue(unsigned seed, const xmlChar
      *key, const xmlChar *key2,\n             const xmlChar *key3, size_t *lengths)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: HASH_INIT
      Src: /src/libxml2/hash.c:107,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:111,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:113,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:117,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:120,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:123,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:125,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:129,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:132,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:135,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:137,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/hash.c:141,1
    - Dst: HASH_FINISH
      Src: /src/libxml2/hash.c:145,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 7
    argNames:
    - seed
    - prefix
    - name
    - prefix2
    - name2
    - prefix3
    - name3
    argTypes:
    - unsigned
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 148
    functionName: xmlHashQNameValue
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - HASH_FINISH
    - HASH_UPDATE
    - HASH_INIT
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlHashQNameValue(unsigned seed,\n                  const
      xmlChar *prefix, const xmlChar *name,\n                  const xmlChar *prefix2,
      const xmlChar *name2,\n                  const xmlChar *prefix3, const xmlChar
      *name3)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/hash.c:161,1
    - Dst: xmlMalloc
      Src: /src/libxml2/hash.c:163,1
    - Dst: xmlRandom
      Src: /src/libxml2/hash.c:170,1
    - Dst: xmlHashGrow
      Src: /src/libxml2/hash.c:186,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - size
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 157
    functionDepth: 4
    functionLinenumber: 157
    functionLinenumberEnd: 193
    functionName: xmlHashCreate
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 29
    functionsReached:
    - xmlFree
    - xmlRandom
    - xmlMalloc
    - xmlHashGrow
    - xmlInitParser
    linkageType: ''
    returnType: xmlHashTable
    signature: 'xmlHashTable *

      xmlHashCreate(int size)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/hash.c:208,1
    - Dst: xmlDictReference
      Src: /src/libxml2/hash.c:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - size
    - dict
    argTypes:
    - int
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 5
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: xmlHashCreateDict
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 3
    functionsReached:
    - xmlHashCreate
    - xmlDictReference
    linkageType: ''
    returnType: xmlHashTable
    signature: 'xmlHashTable *

      xmlHashCreateDict(int size, xmlDict *dict)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: dealloc
      Src: /src/libxml2/hash.c:236,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:239,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:241,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:243,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:247,1
    - Dst: xmlDictFree
      Src: /src/libxml2/hash.c:251,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:253,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 23
    argCount: 2
    argNames:
    - hash
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 254
    functionName: xmlHashFree
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 23
    functionsReached:
    - xmlDictFree
    - dealloc
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlHashFree(xmlHashTable *hash, xmlHashDeallocator dealloc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/hash.c:268,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - s1
    - s2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 269
    functionName: xmlFastStrEqual
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlFastStrEqual(const xmlChar *s1, const xmlChar *s2)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/hash.c:315,1
    - Dst: xmlFastStrEqual
      Src: /src/libxml2/hash.c:317,1
    - Dst: xmlFastStrEqual
      Src: /src/libxml2/hash.c:318,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 335
    functionName: "xmlHashEntry *\nxmlHashFindEntry(const xmlHashTable *hash, const
      xmlChar *key,\n                 const xmlChar *key2, const xmlChar *key3,\n
      \                unsigned hashValue, int *pfound)"
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - xmlFastStrEqual
    - strcmp
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlHashEntry *\nxmlHashFindEntry(const
      xmlHashTable *hash, const xmlChar *key,\n                 const xmlChar *key2,
      const xmlChar *key3,\n                 unsigned hashValue, int *pfound)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/hash.c:353,1
    - Dst: memset
      Src: /src/libxml2/hash.c:356,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:393,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - hash
    - size
    argTypes:
    - xmlHashTablePtr
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 400
    functionName: xmlHashGrow
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlHashGrow(xmlHashTablePtr hash, unsigned size)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashValue
      Src: /src/libxml2/hash.c:426,1
    - Dst: xmlHashFindEntry
      Src: /src/libxml2/hash.c:436,1
    - Dst: dealloc
      Src: /src/libxml2/hash.c:441,1
    - Dst: xmlHashGrow
      Src: /src/libxml2/hash.c:464,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/hash.c:491,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/hash.c:494,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/hash.c:499,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/hash.c:502,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/hash.c:506,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/hash.c:509,1
    - Dst: xmlMalloc
      Src: /src/libxml2/hash.c:514,1
    - Dst: memcpy
      Src: /src/libxml2/hash.c:517,1
    - Dst: xmlMalloc
      Src: /src/libxml2/hash.c:520,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:522,1
    - Dst: memcpy
      Src: /src/libxml2/hash.c:525,1
    - Dst: xmlMalloc
      Src: /src/libxml2/hash.c:531,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:533,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:534,1
    - Dst: memcpy
      Src: /src/libxml2/hash.c:537,1
    - Dst: memmove
      Src: /src/libxml2/hash.c:561,1
    - Dst: memmove
      Src: /src/libxml2/hash.c:567,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 110
    argCount: 7
    argNames:
    - hash
    - key
    - key2
    - key3
    - payload
    - dealloc
    - update
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - void*
    - xmlHashDeallocator
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 413
    functionDepth: 2
    functionLinenumber: 413
    functionLinenumberEnd: 583
    functionName: xmlHashUpdateInternal
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - xmlHashValue
    - dealloc
    - xmlFree
    - xmlHashFindEntry
    - xmlMalloc
    - xmlHashGrow
    - memmove
    - xmlDictOwns
    - memcpy
    - xmlDictLookup
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlHashUpdateInternal(xmlHashTable *hash,
      const xmlChar *key,\n                      const xmlChar *key2, const xmlChar
      *key3,\n                      void *payload, xmlHashDeallocator dealloc, int
      update)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - entry
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 591
    functionDepth: 0
    functionLinenumber: 591
    functionLinenumberEnd: 594
    functionName: xmlHashDefaultDeallocator
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlHashDefaultDeallocator(void *entry, const xmlChar *key ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hash
    - key
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 3
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: xmlHashAdd
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: int xmlHashAdd(xmlHashTable *hash, const xmlChar *key, void *payload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - hash
    - key
    - key2
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 627
    functionDepth: 3
    functionLinenumber: 627
    functionLinenumberEnd: 631
    functionName: xmlHashAdd2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashAdd2(xmlHashTable *hash, const xmlChar *key,\n                 const
      xmlChar *key2, void *payload)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - hash
    - key
    - key2
    - key3
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 647
    functionDepth: 3
    functionLinenumber: 647
    functionLinenumberEnd: 652
    functionName: xmlHashAdd3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashAdd3(xmlHashTable *hash, const xmlChar *key,\n                 const
      xmlChar *key2, const xmlChar *key3,\n                 void *payload)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:670,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - hash
    - key
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 668
    functionDepth: 3
    functionLinenumber: 668
    functionLinenumberEnd: 678
    functionName: xmlHashAddEntry
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 12
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: int xmlHashAddEntry(xmlHashTable *hash, const xmlChar *key, void *payload)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:694,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - hash
    - key
    - key2
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 691
    functionDepth: 3
    functionLinenumber: 691
    functionLinenumberEnd: 702
    functionName: xmlHashAddEntry2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 14
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashAddEntry2(xmlHashTable *hash, const xmlChar *key,\n                 const
      xmlChar *key2, void *payload)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:720,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - hash
    - key
    - key2
    - key3
    - payload
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 716
    functionDepth: 3
    functionLinenumber: 716
    functionLinenumberEnd: 728
    functionName: xmlHashAddEntry3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashAddEntry3(xmlHashTable *hash, const xmlChar *key,\n                 const
      xmlChar *key2, const xmlChar *key3,\n                 void *payload)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - hash
    - key
    - payload
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - void*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 740
    functionDepth: 3
    functionLinenumber: 740
    functionLinenumberEnd: 750
    functionName: xmlHashUpdateEntry
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashUpdateEntry(xmlHashTable *hash, const xmlChar *key,\n                   void
      *payload, xmlHashDeallocator dealloc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:768,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - hash
    - key
    - key2
    - payload
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - void*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 764
    functionDepth: 3
    functionLinenumber: 764
    functionLinenumberEnd: 775
    functionName: xmlHashUpdateEntry2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 5
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashUpdateEntry2(xmlHashTable *hash, const xmlChar *key,\n
      \                  const xmlChar *key2, void *payload,\n                   xmlHashDeallocator
      dealloc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashUpdateInternal
      Src: /src/libxml2/hash.c:794,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - hash
    - key
    - key2
    - key3
    - payload
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - void*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 790
    functionDepth: 3
    functionLinenumber: 790
    functionLinenumberEnd: 801
    functionName: xmlHashUpdateEntry3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - xmlHashUpdateInternal
    linkageType: ''
    returnType: int
    signature: "int xmlHashUpdateEntry3(xmlHashTable *hash, const xmlChar *key,\n
      \                  const xmlChar *key2, const xmlChar *key3,\n                   void
      *payload, xmlHashDeallocator dealloc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup3
      Src: /src/libxml2/hash.c:812,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - hash
    - key
    argTypes:
    - xmlHashTable*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 813
    functionName: xmlHashLookup
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 24
    functionsReached:
    - xmlHashLookup3
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlHashLookup(xmlHashTable *hash, const xmlChar *key)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup3
      Src: /src/libxml2/hash.c:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hash
    - key
    - key2
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 823
    functionDepth: 1
    functionLinenumber: 823
    functionLinenumberEnd: 827
    functionName: xmlHashLookup2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 28
    functionsReached:
    - xmlHashLookup3
    linkageType: ''
    returnType: void
    signature: "void *\nxmlHashLookup2(xmlHashTable *hash, const xmlChar *key,\n              const
      xmlChar *key2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashQLookup3
      Src: /src/libxml2/hash.c:840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hash
    - prefix
    - name
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 841
    functionName: xmlHashQLookup
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlHashQLookup3
    linkageType: ''
    returnType: void
    signature: "void *\nxmlHashQLookup(xmlHashTable *hash, const xmlChar *prefix,\n
      \              const xmlChar *name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashQLookup3
      Src: /src/libxml2/hash.c:857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - hash
    - prefix
    - name
    - prefix2
    - name2
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 853
    functionDepth: 1
    functionLinenumber: 853
    functionLinenumberEnd: 858
    functionName: xmlHashQLookup2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - xmlHashQLookup3
    linkageType: ''
    returnType: void
    signature: "void *\nxmlHashQLookup2(xmlHashTable *hash, const xmlChar *prefix,\n
      \               const xmlChar *name, const xmlChar *prefix2,\n                const
      xmlChar *name2)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashValue
      Src: /src/libxml2/hash.c:878,1
    - Dst: xmlHashFindEntry
      Src: /src/libxml2/hash.c:879,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 4
    argNames:
    - hash
    - key
    - key2
    - key3
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 869
    functionDepth: 2
    functionLinenumber: 869
    functionLinenumberEnd: 883
    functionName: xmlHashLookup3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 5
    functionsReached:
    - xmlHashFindEntry
    - xmlHashValue
    linkageType: ''
    returnType: void
    signature: "void *\nxmlHashLookup3(xmlHashTable *hash, const xmlChar *key,\n               const
      xmlChar *key2, const xmlChar *key3)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashQNameValue
      Src: /src/libxml2/hash.c:909,1
    - Dst: xmlStrQEqual
      Src: /src/libxml2/hash.c:921,1
    - Dst: xmlStrQEqual
      Src: /src/libxml2/hash.c:922,1
    - Dst: xmlStrQEqual
      Src: /src/libxml2/hash.c:923,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 7
    argNames:
    - hash
    - prefix
    - name
    - prefix2
    - name2
    - prefix3
    - name3
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 897
    functionDepth: 2
    functionLinenumber: 897
    functionLinenumberEnd: 936
    functionName: xmlHashQLookup3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 3
    functionsReached:
    - xmlHashQNameValue
    - xmlStrQEqual
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER *\nxmlHashQLookup3(xmlHashTable *hash,\n
      \               const xmlChar *prefix, const xmlChar *name,\n                const
      xmlChar *prefix2, const xmlChar *name2,\n                const xmlChar *prefix3,
      const xmlChar *name3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stubData*::scan
      Src: /src/libxml2/hash.c:948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - payload
    - data
    - key
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 949
    functionName: stubHashScannerFull
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 0
    functionsReached:
    - stubData*::scan
    linkageType: ''
    returnType: void
    signature: "void stubHashScannerFull(void *payload, void *data, const xmlChar
      *key,\n                    const xmlChar *key2 ATTRIBUTE_UNUSED,\n                    const
      xmlChar *key3 ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScanFull
      Src: /src/libxml2/hash.c:963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - hash
    - scan
    - data
    argTypes:
    - xmlHashTable*
    - xmlHashScanner
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 958
    functionDepth: 1
    functionLinenumber: 958
    functionLinenumberEnd: 964
    functionName: xmlHashScan
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 6
    functionsReached:
    - xmlHashScanFull
    linkageType: ''
    returnType: void
    signature: void xmlHashScan(xmlHashTable *hash, xmlHashScanner scan, void *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: scan
      Src: /src/libxml2/hash.c:1003,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 19
    argCount: 3
    argNames:
    - hash
    - scan
    - data
    argTypes:
    - xmlHashTable*
    - xmlHashScannerFull
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 973
    functionDepth: 0
    functionLinenumber: 973
    functionLinenumberEnd: 1013
    functionName: xmlHashScanFull
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 6
    functionsReached:
    - scan
    linkageType: ''
    returnType: void
    signature: void xmlHashScanFull(xmlHashTable *hash, xmlHashScannerFull scan, void
      *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScanFull3
      Src: /src/libxml2/hash.c:1034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - hash
    - key
    - key2
    - key3
    - scan
    - data
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlHashScanner
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 1027
    functionDepth: 1
    functionLinenumber: 1027
    functionLinenumberEnd: 1035
    functionName: xmlHashScan3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlHashScanFull3
    linkageType: ''
    returnType: void
    signature: "void xmlHashScan3(xmlHashTable *hash, const xmlChar *key,\n             const
      xmlChar *key2, const xmlChar *key3,\n             xmlHashScanner scan, void
      *data)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/hash.c:1080,1
    - Dst: xmlFastStrEqual
      Src: /src/libxml2/hash.c:1082,1
    - Dst: xmlFastStrEqual
      Src: /src/libxml2/hash.c:1083,1
    - Dst: scan
      Src: /src/libxml2/hash.c:1086,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 21
    argCount: 6
    argNames:
    - hash
    - key
    - key2
    - key3
    - scan
    - data
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlHashScannerFull
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1096
    functionName: xmlHashScanFull3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached:
    - scan
    - xmlFastStrEqual
    - strcmp
    linkageType: ''
    returnType: void
    signature: "void xmlHashScanFull3(xmlHashTable *hash, const xmlChar *key,\n                 const
      xmlChar *key2, const xmlChar *key3,\n                 xmlHashScannerFull scan,
      void *data)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/hash.c:1118,1
    - Dst: copyFunc
      Src: /src/libxml2/hash.c:1131,1
    - Dst: xmlHashAdd3
      Src: /src/libxml2/hash.c:1134,1
    - Dst: deallocFunc
      Src: /src/libxml2/hash.c:1137,1
    - Dst: xmlHashFree
      Src: /src/libxml2/hash.c:1146,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - hash
    - copyFunc
    - deallocFunc
    argTypes:
    - xmlHashTable*
    - xmlHashCopier
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1109
    functionDepth: 5
    functionLinenumber: 1109
    functionLinenumberEnd: 1148
    functionName: xmlHashCopySafe
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - deallocFunc
    - xmlHashFree
    - xmlHashAdd3
    - xmlHashCreate
    - copyFunc
    linkageType: ''
    returnType: xmlHashTable
    signature: "xmlHashTable *\nxmlHashCopySafe(xmlHashTable *hash, xmlHashCopier
      copyFunc,\n                xmlHashDeallocator deallocFunc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/hash.c:1162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - hash
    - copy
    argTypes:
    - xmlHashTable*
    - xmlHashCopier
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1160
    functionDepth: 6
    functionLinenumber: 1160
    functionLinenumberEnd: 1163
    functionName: xmlHashCopy
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 1
    functionsReached:
    - xmlHashCopySafe
    linkageType: ''
    returnType: xmlHashTable
    signature: 'xmlHashTable *

      xmlHashCopy(xmlHashTable *hash, xmlHashCopier copy)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - hash
    argTypes:
    - xmlHashTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1172
    functionDepth: 0
    functionLinenumber: 1172
    functionLinenumberEnd: 1177
    functionName: xmlHashSize
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlHashSize(xmlHashTable *hash)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry3
      Src: /src/libxml2/hash.c:1190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - hash
    - key
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1191
    functionName: xmlHashRemoveEntry
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 3
    functionsReached:
    - xmlHashRemoveEntry3
    linkageType: ''
    returnType: int
    signature: "int xmlHashRemoveEntry(xmlHashTable *hash, const xmlChar *key,\n                       xmlHashDeallocator
      dealloc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry3
      Src: /src/libxml2/hash.c:1207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - hash
    - key
    - key2
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1204
    functionDepth: 1
    functionLinenumber: 1204
    functionLinenumberEnd: 1208
    functionName: xmlHashRemoveEntry2
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 6
    functionsReached:
    - xmlHashRemoveEntry3
    linkageType: ''
    returnType: int
    signature: "int xmlHashRemoveEntry2(xmlHashTable *hash, const xmlChar *key,\n
      \                   const xmlChar *key2, xmlHashDeallocator dealloc)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashValue
      Src: /src/libxml2/hash.c:1234,1
    - Dst: xmlHashFindEntry
      Src: /src/libxml2/hash.c:1235,1
    - Dst: dealloc
      Src: /src/libxml2/hash.c:1240,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:1243,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:1245,1
    - Dst: xmlFree
      Src: /src/libxml2/hash.c:1247,1
    - Dst: memmove
      Src: /src/libxml2/hash.c:1280,1
    - Dst: memmove
      Src: /src/libxml2/hash.c:1286,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 5
    argNames:
    - hash
    - key
    - key2
    - key3
    - dealloc
    argTypes:
    - xmlHashTable*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlHashDeallocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1222
    functionDepth: 2
    functionLinenumber: 1222
    functionLinenumberEnd: 1296
    functionName: xmlHashRemoveEntry3
    functionSourceFile: /src/libxml2/hash.c
    functionUses: 3
    functionsReached:
    - xmlHashValue
    - dealloc
    - xmlFree
    - xmlHashFindEntry
    - memmove
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlHashRemoveEntry3(xmlHashTable *hash,
      const xmlChar *key,\n                    const xmlChar *key2, const xmlChar
      *key3,\n                    xmlHashDeallocator dealloc)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strncpy
      Src: /src/libxml2/testrecurse.c:83,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:84,1
    - Dst: memset
      Src: /src/libxml2/testrecurse.c:96,1
    - Dst: FindFirstFileA
      Src: /src/libxml2/testrecurse.c:98,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testrecurse.c:102,1
    - Dst: FindClose
      Src: /src/libxml2/testrecurse.c:104,1
    - Dst: strncpy
      Src: /src/libxml2/testrecurse.c:107,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/testrecurse.c:108,1
    - Dst: FindNextFileA
      Src: /src/libxml2/testrecurse.c:112,1
    - Dst: xmlRealloc
      Src: /src/libxml2/testrecurse.c:116,1
    - Dst: strncpy
      Src: /src/libxml2/testrecurse.c:122,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/testrecurse.c:123,1
    - Dst: FindClose
      Src: /src/libxml2/testrecurse.c:131,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 4
    argNames:
    - pattern
    - flags
    - errfunc
    - pglob
    argTypes:
    - char*
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 133
    functionName: glob
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 9
    functionsReached:
    - strncpy
    - FindFirstFileA
    - strlen
    - FindClose
    - xmlRealloc
    - xmlMalloc
    - FindNextFileA
    - xmlMemStrdup
    - memset
    linkageType: ''
    returnType: int
    signature: "int glob(const char *pattern, ATTRIBUTE_UNUSED int flags,\n                ATTRIBUTE_UNUSED
      int errfunc(const char *epath, int eerrno),\n                glob_t *pglob)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testrecurse.c:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - pglob
    argTypes:
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 146
    functionName: globfree
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 9
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void globfree(glob_t *pglob)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - errfunc
    - pglob
    argTypes:
    - char*
    - int
    - int
    - glob_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 170
    functionName: glob
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int glob(const char *pattern ATTRIBUTE_UNUSED, int flags ATTRIBUTE_UNUSED,\n
      \    int errfunc(const char *epath, int eerrno) ATTRIBUTE_UNUSED,\n     glob_t
      *pglob)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/testrecurse.c:260,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 265
    functionName: hugeMatch
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int hugeMatch(const char * URI)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/testrecurse.c:282,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 292
    functionName: hugeOpen
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - strlen
    - strcmp
    linkageType: ''
    returnType: void
    signature: 'void *

      hugeOpen(const char * URI)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionName: hugeClose
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int hugeClose(void * context)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/testrecurse.c:329,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:336,1
    - Dst: memcpy
      Src: /src/libxml2/testrecurse.c:338,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 343
    functionName: hugeRead
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - memcpy
    - strlen
    linkageType: ''
    returnType: int
    signature: int hugeRead(void *context, char *buffer, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:357,1
    - Dst: exit
      Src: /src/libxml2/testrecurse.c:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 359
    functionName: fatalError
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 13
    functionsReached:
    - fprintf
    - exit
    linkageType: ''
    returnType: int
    signature: int fatalError(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxml2/testrecurse.c:363,1
    - Dst: xmlInitParser
      Src: /src/libxml2/testrecurse.c:364,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/testrecurse.c:366,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/testrecurse.c:367,1
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/testrecurse.c:372,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:374,1
    - Dst: exit
      Src: /src/libxml2/testrecurse.c:375,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 361
    functionDepth: 5
    functionLinenumber: 361
    functionLinenumberEnd: 377
    functionName: initializeLibxml2
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 3
    functionsReached:
    - xmlCatalogSetDefaults
    - xmlMemSetup
    - xmlInitializeCatalog
    - fprintf
    - exit
    - xmlInitParser
    - xmlRegisterInputCallbacks
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 390
    functionName: initSAX
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void initSAX(xmlParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:402,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 408
    functionName: baseFilename
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 9
    functionsReached:
    - strlen
    linkageType: ''
    returnType: char
    signature: char *baseFilename(const char *filename)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: baseFilename
      Src: /src/libxml2/testrecurse.c:423,1
    - Dst: strncpy
      Src: /src/libxml2/testrecurse.c:429,1
    - Dst: snprintf
      Src: /src/libxml2/testrecurse.c:431,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/testrecurse.c:433,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - filename
    - out
    - suffix
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 434
    functionName: resultFilename
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 12
    functionsReached:
    - strncpy
    - baseFilename
    - snprintf
    - xmlMemStrdup
    linkageType: ''
    returnType: char
    signature: "char *resultFilename(const char *filename, const char *out,\n                            const
      char *suffix)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/testrecurse.c:439,1
    - Dst: S_ISREG
      Src: /src/libxml2/testrecurse.c:446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 436
    functionDepth: 1
    functionLinenumber: 436
    functionLinenumberEnd: 451
    functionName: checkTestFile
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 4
    functionsReached:
    - stat
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int checkTestFile(const char *filename)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testrecurse.c:486,1
    - Dst: initSAX
      Src: /src/libxml2/testrecurse.c:488,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testrecurse.c:494,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:496,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:497,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testrecurse.c:498,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:501,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 469
    functionDepth: 14
    functionLinenumber: 469
    functionLinenumberEnd: 504
    functionName: recursiveDetectTest
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - xmlNewParserCtxt
    - initSAX
    - xmlCtxtReadFile
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int recursiveDetectTest(const char *filename,\n             const
      char *result ATTRIBUTE_UNUSED,\n             const char *err ATTRIBUTE_UNUSED,\n\t
      \    int options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testrecurse.c:527,1
    - Dst: initSAX
      Src: /src/libxml2/testrecurse.c:529,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testrecurse.c:535,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:537,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:538,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testrecurse.c:541,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:542,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - filename
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 515
    functionDepth: 14
    functionLinenumber: 515
    functionLinenumberEnd: 545
    functionName: notRecursiveDetectTest
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - xmlNewParserCtxt
    - initSAX
    - xmlCtxtReadFile
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: "int notRecursiveDetectTest(const char *filename,\n             const
      char *result ATTRIBUTE_UNUSED,\n             const char *err ATTRIBUTE_UNUSED,\n\t
      \    int options)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testrecurse.c:568,1
    - Dst: initSAX
      Src: /src/libxml2/testrecurse.c:570,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testrecurse.c:573,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:575,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testrecurse.c:581,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testrecurse.c:586,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testrecurse.c:588,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:591,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testrecurse.c:596,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:598,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testrecurse.c:603,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testrecurse.c:605,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:608,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testrecurse.c:613,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:615,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:621,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:629,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:635,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testrecurse.c:641,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:642,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 556
    functionDepth: 14
    functionLinenumber: 556
    functionLinenumberEnd: 645
    functionName: notRecursiveHugeTest
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - xmlStrlen
    - xmlNewParserCtxt
    - initSAX
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - xmlGetDocEntity
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int notRecursiveHugeTest(const char *filename ATTRIBUTE_UNUSED,\n
      \            const char *result ATTRIBUTE_UNUSED,\n             const char *err
      ATTRIBUTE_UNUSED,\n\t     int options)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testrecurse.c:668,1
    - Dst: initSAX
      Src: /src/libxml2/testrecurse.c:670,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/testrecurse.c:673,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:676,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testrecurse.c:681,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:689,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:694,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:695,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:710,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:712,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:717,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:718,1
    - Dst: strlen
      Src: /src/libxml2/testrecurse.c:719,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:727,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testrecurse.c:733,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testrecurse.c:734,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - options
    argTypes:
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 656
    functionDepth: 14
    functionLinenumber: 656
    functionLinenumberEnd: 737
    functionName: hugeDtdTest
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlStrlen
    - xmlNewParserCtxt
    - initSAX
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int hugeDtdTest(const char *filename ATTRIBUTE_UNUSED,\n            const
      char *result ATTRIBUTE_UNUSED,\n            const char *err ATTRIBUTE_UNUSED,\n
      \           int options)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: glob
      Src: /src/libxml2/testrecurse.c:802,1
    - Dst: checkTestFile
      Src: /src/libxml2/testrecurse.c:804,1
    - Dst: resultFilename
      Src: /src/libxml2/testrecurse.c:807,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:810,1
    - Dst: fatalError
      Src: /src/libxml2/testrecurse.c:811,1
    - Dst: resultFilename
      Src: /src/libxml2/testrecurse.c:817,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:820,1
    - Dst: fatalError
      Src: /src/libxml2/testrecurse.c:821,1
    - Dst: checkTestFile
      Src: /src/libxml2/testrecurse.c:826,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:827,1
    - Dst: checkTestFile
      Src: /src/libxml2/testrecurse.c:828,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:829,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/testrecurse.c:831,1
    - Dst: testDescPtr::func
      Src: /src/libxml2/testrecurse.c:832,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/testrecurse.c:834,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:836,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/testrecurse.c:841,1
    - Dst: fprintf
      Src: /src/libxml2/testrecurse.c:842,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/testrecurse.c:843,1
    - Dst: xmlFree
      Src: /src/libxml2/testrecurse.c:849,1
    - Dst: xmlFree
      Src: /src/libxml2/testrecurse.c:851,1
    - Dst: globfree
      Src: /src/libxml2/testrecurse.c:853,1
    - Dst: testDescPtr::func
      Src: /src/libxml2/testrecurse.c:855,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 1
    argNames:
    - tst
    argTypes:
    - testDescPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 789
    functionDepth: 2
    functionLinenumber: 789
    functionLinenumberEnd: 862
    functionName: launchTests
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 3
    functionsReached:
    - resultFilename
    - fatalError
    - xmlFree
    - testDescPtr::func
    - xmlResetLastError
    - checkTestFile
    - glob
    - globfree
    - fprintf
    - xmlMemUsed
    linkageType: ''
    returnType: int
    signature: int launchTests(testDescPtr tst)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testrecurse.c:876,1
    - Dst: launchTests
      Src: /src/libxml2/testrecurse.c:877,1
    - Dst: printf
      Src: /src/libxml2/testrecurse.c:882,1
    - Dst: printf
      Src: /src/libxml2/testrecurse.c:884,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 890
    functionName: runtest
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 3
    functionsReached:
    - launchTests
    - printf
    linkageType: ''
    returnType: int
    signature: int runtest(int i)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: initializeLibxml2
      Src: /src/libxml2/testrecurse.c:897,1
    - Dst: strcmp
      Src: /src/libxml2/testrecurse.c:900,1
    - Dst: strcmp
      Src: /src/libxml2/testrecurse.c:902,1
    - Dst: strstr
      Src: /src/libxml2/testrecurse.c:906,1
    - Dst: runtest
      Src: /src/libxml2/testrecurse.c:907,1
    - Dst: runtest
      Src: /src/libxml2/testrecurse.c:915,1
    - Dst: printf
      Src: /src/libxml2/testrecurse.c:920,1
    - Dst: printf
      Src: /src/libxml2/testrecurse.c:924,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/testrecurse.c:927,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 892
    functionDepth: 3
    functionLinenumber: 892
    functionLinenumberEnd: 930
    functionName: main
    functionSourceFile: /src/libxml2/testrecurse.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - initializeLibxml2
    - strcmp
    - printf
    - runtest
    - strstr
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/dict.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 4
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: xmlInitializeDict
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int xmlInitializeDict(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/dict.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: xmlInitDictInternal
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - xmlInitMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitDictInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: xmlDictCleanup
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlDictCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/dict.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: xmlCleanupDictInternal
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupDictInternal(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/dict.c:166,1
    - Dst: memcpy
      Src: /src/libxml2/dict.c:178,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 3
    argNames:
    - dict
    - name
    - namelen
    argTypes:
    - xmlDictPtr
    - xmlChar*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 183
    functionName: xmlDictAddString
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlDictAddString(xmlDictPtr dict, const xmlChar *name, unsigned int namelen)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/dict.c:225,1
    - Dst: memcpy
      Src: /src/libxml2/dict.c:237,1
    - Dst: memcpy
      Src: /src/libxml2/dict.c:240,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 5
    argNames:
    - dict
    - prefix
    - plen
    - name
    - namelen
    argTypes:
    - xmlDictPtr
    - xmlChar*
    - unsigned int
    - xmlChar*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 245
    functionName: xmlDictAddQString
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlDictAddQString(xmlDictPtr dict, const xmlChar *prefix,
      unsigned int plen,\n                 const xmlChar *name, unsigned int namelen)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/dict.c:256,1
    - Dst: xmlMalloc
      Src: /src/libxml2/dict.c:258,1
    - Dst: xmlRandom
      Src: /src/libxml2/dict.c:269,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 252
    functionDepth: 4
    functionLinenumber: 252
    functionLinenumberEnd: 274
    functionName: xmlDictCreate
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 5
    functionsReached:
    - xmlMalloc
    - xmlRandom
    - xmlInitParser
    linkageType: ''
    returnType: xmlDict
    signature: 'xmlDict *

      xmlDictCreate(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictCreate
      Src: /src/libxml2/dict.c:287,1
    - Dst: xmlDictReference
      Src: /src/libxml2/dict.c:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sub
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 285
    functionDepth: 5
    functionLinenumber: 285
    functionLinenumberEnd: 295
    functionName: xmlDictCreateSub
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 2
    functionsReached:
    - xmlDictReference
    - xmlDictCreate
    linkageType: ''
    returnType: xmlDict
    signature: 'xmlDict *

      xmlDictCreateSub(xmlDict *sub)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/dict.c:306,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/dict.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 310
    functionName: xmlDictReference
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 12
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlDictReference(xmlDict *dict)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/dict.c:326,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/dict.c:329,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/dict.c:333,1
    - Dst: xmlDictFree
      Src: /src/libxml2/dict.c:336,1
    - Dst: xmlFree
      Src: /src/libxml2/dict.c:340,1
    - Dst: xmlFree
      Src: /src/libxml2/dict.c:345,1
    - Dst: xmlFree
      Src: /src/libxml2/dict.c:348,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 349
    functionName: xmlDictFree
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 13
    functionsReached:
    - xmlDictFree
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlDictFree(xmlDict *dict)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictOwns
      Src: /src/libxml2/dict.c:372,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - dict
    - str
    argTypes:
    - xmlDict*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 374
    functionName: xmlDictOwns
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 11
    functionsReached:
    - xmlDictOwns
    linkageType: ''
    returnType: int
    signature: int xmlDictOwns(xmlDict *dict, const xmlChar *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 390
    functionName: xmlDictSize
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlDictSize(xmlDict *dict)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dict
    - limit
    argTypes:
    - xmlDict*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 409
    functionName: xmlDictSetLimit
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t xmlDictSetLimit(xmlDict *dict, size_t limit)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 431
    functionName: xmlDictGetUsage
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t xmlDictGetUsage(xmlDict *dict)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HASH_INIT
      Src: /src/libxml2/dict.c:447,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/dict.c:450,1
    - Dst: HASH_FINISH
      Src: /src/libxml2/dict.c:453,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - seed
    - data
    - maxLen
    - plen
    argTypes:
    - unsigned
    - xmlChar*
    - size_t
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 457
    functionName: xmlDictHashName
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - HASH_FINISH
    - HASH_UPDATE
    - HASH_INIT
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlDictHashName(unsigned seed, const
      xmlChar* data, size_t maxLen,\n                size_t *plen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HASH_INIT
      Src: /src/libxml2/dict.c:466,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/dict.c:469,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/dict.c:473,1
    - Dst: HASH_UPDATE
      Src: /src/libxml2/dict.c:476,1
    - Dst: HASH_FINISH
      Src: /src/libxml2/dict.c:480,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - seed
    - prefix
    - name
    - pplen
    - plen
    argTypes:
    - unsigned
    - xmlChar*
    - xmlChar*
    - size_t*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 487
    functionName: xmlDictHashQName
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - HASH_FINISH
    - HASH_UPDATE
    - HASH_INIT
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlDictHashQName(unsigned seed, const
      xmlChar *prefix, const xmlChar *name,\n                 size_t *pplen, size_t
      *plen)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictHashName
      Src: /src/libxml2/dict.c:499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dict
    - string
    argTypes:
    - xmlDict*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 496
    functionDepth: 2
    functionLinenumber: 496
    functionLinenumberEnd: 500
    functionName: xmlDictComputeHash
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 3
    functionsReached:
    - xmlDictHashName
    linkageType: ''
    returnType: unsigned
    signature: unsigned xmlDictComputeHash(const xmlDict *dict, const xmlChar *string)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 503
    functionName: HASH_ROL31
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_ROL31(x,n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HASH_ROL31
      Src: /src/libxml2/dict.c:519,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - v1
    - v2
    argTypes:
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 522
    functionName: xmlDictCombineHash
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - HASH_ROL31
    linkageType: ''
    returnType: 'ATTRIBUTE_NO_SANITIZE_INTEGER

      unsigned'
    signature: 'ATTRIBUTE_NO_SANITIZE_INTEGER

      unsigned xmlDictCombineHash(unsigned v1, unsigned v2)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/dict.c:563,1
    - Dst: xmlStrQEqual
      Src: /src/libxml2/dict.c:570,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 588
    functionName: "xmlDictEntry *\nxmlDictFindEntry(const xmlDict *dict, const xmlChar
      *prefix,\n                 const xmlChar *name, int len, unsigned hashValue,\n
      \                int *pfound)"
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlStrQEqual
    - strncmp
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlDictEntry *\nxmlDictFindEntry(const
      xmlDict *dict, const xmlChar *prefix,\n                 const xmlChar *name,
      int len, unsigned hashValue,\n                 int *pfound)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/dict.c:606,1
    - Dst: memset
      Src: /src/libxml2/dict.c:609,1
    - Dst: xmlFree
      Src: /src/libxml2/dict.c:646,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - dict
    - size
    argTypes:
    - xmlDictPtr
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 653
    functionName: xmlDictGrow
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlDictGrow(xmlDictPtr dict, unsigned size)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictHashName
      Src: /src/libxml2/dict.c:680,1
    - Dst: xmlDictHashQName
      Src: /src/libxml2/dict.c:685,1
    - Dst: xmlDictFindEntry
      Src: /src/libxml2/dict.c:700,1
    - Dst: xmlDictHashName
      Src: /src/libxml2/dict.c:718,1
    - Dst: xmlDictHashQName
      Src: /src/libxml2/dict.c:721,1
    - Dst: xmlDictFindEntry
      Src: /src/libxml2/dict.c:723,1
    - Dst: xmlDictGrow
      Src: /src/libxml2/dict.c:738,1
    - Dst: xmlDictAddString
      Src: /src/libxml2/dict.c:760,1
    - Dst: xmlDictAddQString
      Src: /src/libxml2/dict.c:762,1
    - Dst: memmove
      Src: /src/libxml2/dict.c:784,1
    - Dst: memmove
      Src: /src/libxml2/dict.c:790,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 78
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 664
    functionDepth: 2
    functionLinenumber: 664
    functionLinenumberEnd: 802
    functionName: "xmlDictEntry *\nxmlDictLookupInternal(xmlDict *dict, const xmlChar
      *prefix,\n                      const xmlChar *name, int maybeLen, int update)"
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlDictHashName
    - xmlDictAddString
    - xmlDictFindEntry
    - xmlDictAddQString
    - memmove
    - xmlDictGrow
    - xmlDictHashQName
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: "ATTRIBUTE_NO_SANITIZE_INTEGER xmlDictEntry *\nxmlDictLookupInternal(xmlDict
      *dict, const xmlChar *prefix,\n                      const xmlChar *name, int
      maybeLen, int update)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookupInternal
      Src: /src/libxml2/dict.c:817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dict
    - name
    - len
    argTypes:
    - xmlDict*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 821
    functionName: xmlDictLookup
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 38
    functionsReached:
    - xmlDictLookupInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlDictLookup(xmlDict *dict, const xmlChar *name, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookupInternal
      Src: /src/libxml2/dict.c:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - dict
    - name
    - len
    argTypes:
    - xmlDict*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 847
    functionName: xmlDictLookupHashed
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 6
    functionsReached:
    - xmlDictLookupInternal
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString xmlDictLookupHashed(xmlDict *dict, const xmlChar *name,
      int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookupInternal
      Src: /src/libxml2/dict.c:861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dict
    - name
    - len
    argTypes:
    - xmlDict*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 857
    functionDepth: 0
    functionLinenumber: 857
    functionLinenumberEnd: 865
    functionName: xmlDictExists
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - xmlDictLookupInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlDictExists(xmlDict *dict, const xmlChar *name, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookupInternal
      Src: /src/libxml2/dict.c:881,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dict
    - prefix
    - name
    argTypes:
    - xmlDict*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 877
    functionDepth: 0
    functionLinenumber: 877
    functionLinenumberEnd: 885
    functionName: xmlDictQLookup
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 4
    functionsReached:
    - xmlDictLookupInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlDictQLookup(xmlDict *dict, const xmlChar *prefix, const xmlChar *name)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/dict.c:916,1
    - Dst: BCryptGenRandom
      Src: /src/libxml2/dict.c:929,1
    - Dst: BCRYPT_SUCCESS
      Src: /src/libxml2/dict.c:932,1
    - Dst: xmlAbort
      Src: /src/libxml2/dict.c:933,1
    - Dst: GetLastError
      Src: /src/libxml2/dict.c:934,1
    - Dst: getentropy
      Src: /src/libxml2/dict.c:940,1
    - Dst: xmlAbort
      Src: /src/libxml2/dict.c:958,1
    - Dst: time
      Src: /src/libxml2/dict.c:967,1
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:968,1
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:970,1
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:971,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 913
    functionDepth: 2
    functionLinenumber: 913
    functionLinenumberEnd: 974
    functionName: xmlInitRandom
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - BCRYPT_SUCCESS
    - GetLastError
    - getentropy
    - time
    - xmlAbort
    - BCryptGenRandom
    - xmlInitMutex
    - HASH_ROL
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: ATTRIBUTE_NO_SANITIZE_INTEGER xmlInitRandom(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/dict.c:982,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 980
    functionDepth: 1
    functionLinenumber: 980
    functionLinenumberEnd: 983
    functionName: xmlCleanupRandom
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 1
    functionsReached:
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupRandom(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:990,1
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:993,1
    - Dst: HASH_ROL
      Src: /src/libxml2/dict.c:994,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 997
    functionName: xoroshiro64ss
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - HASH_ROL
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: ATTRIBUTE_NO_SANITIZE_INTEGER xoroshiro64ss(unsigned *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/dict.c:1009,1
    - Dst: xoroshiro64ss
      Src: /src/libxml2/dict.c:1010,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/dict.c:1011,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1005
    functionDepth: 1
    functionLinenumber: 1005
    functionLinenumberEnd: 1014
    functionName: xmlGlobalRandom
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 0
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xoroshiro64ss
    linkageType: ''
    returnType: unsigned
    signature: unsigned xmlGlobalRandom(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xoroshiro64ss
      Src: /src/libxml2/dict.c:1024,1
    - Dst: xmlGetLocalRngState
      Src: /src/libxml2/dict.c:1024,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1025
    functionName: xmlRandom
    functionSourceFile: /src/libxml2/dict.c
    functionUses: 2
    functionsReached:
    - xmlGetLocalRngState
    - xoroshiro64ss
    linkageType: ''
    returnType: unsigned
    signature: unsigned xmlRandom(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - parent
    - name
    argTypes:
    - htmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: htmlFindFirstChild
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlStrcasecmp
    linkageType: ''
    returnType: htmlNodePtr
    signature: htmlNodePtr htmlFindFirstChild(htmlNodePtr parent, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlFindFirstChild
      Src: /src/libxml2/HTMLtree.c:66,1
    - Dst: htmlFindFirstChild
      Src: /src/libxml2/HTMLtree.c:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - doc
    argTypes:
    - htmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 71
    functionName: htmlFindHead
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - htmlFindFirstChild
    linkageType: ''
    returnType: htmlNodePtr
    signature: htmlNodePtr htmlFindHead(htmlDocPtr doc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/HTMLtree.c:87,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:91,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:97,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:106,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:114,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:121,1
    - Dst: strlen
      Src: /src/libxml2/HTMLtree.c:129,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 2
    argNames:
    - val
    - 'off'
    argTypes:
    - xmlChar*
    - htmlMetaEncodingOffsets*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 135
    functionName: htmlParseContentType
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlStrncasecmp
    - strlen
    - IS_WS_HTML
    linkageType: ''
    returnType: int
    signature: int htmlParseContentType(const xmlChar *val, htmlMetaEncodingOffsets
      *off)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:142,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:148,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:152,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:154,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:158,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 20
    argCount: 2
    argNames:
    - elem
    - outIsContentType
    argTypes:
    - htmlNodePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 169
    functionName: htmlFindMetaEncodingAttr
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlStrcasecmp
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr htmlFindMetaEncodingAttr(htmlNodePtr elem, int *outIsContentType)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:178,1
    - Dst: htmlFindMetaEncodingAttr
      Src: /src/libxml2/HTMLtree.c:181,1
    - Dst: strlen
      Src: /src/libxml2/HTMLtree.c:195,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:199,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:202,1
    - Dst: htmlParseContentType
      Src: /src/libxml2/HTMLtree.c:213,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 2
    argNames:
    - elem
    - menc
    argTypes:
    - htmlNodePtr
    - htmlMetaEncoding*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 222
    functionName: htmlParseMetaEncoding
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - strlen
    - IS_WS_HTML
    - htmlParseContentType
    - htmlFindMetaEncodingAttr
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: int htmlParseMetaEncoding(htmlNodePtr elem, htmlMetaEncoding *menc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:232,1
    - Dst: strlen
      Src: /src/libxml2/HTMLtree.c:236,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLtree.c:238,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLtree.c:243,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLtree.c:245,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLtree.c:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - menc
    - encoding
    argTypes:
    - htmlMetaEncoding*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 251
    functionName: htmlUpdateMetaEncoding
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memcpy
    - strlen
    - xmlStrcasecmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlUpdateMetaEncoding(htmlMetaEncoding *menc, const char *encoding)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlFindHead
      Src: /src/libxml2/HTMLtree.c:267,1
    - Dst: htmlParseMetaEncoding
      Src: /src/libxml2/HTMLtree.c:274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 286
    functionName: htmlGetMetaEncoding
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlParseMetaEncoding
    - htmlFindHead
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlGetMetaEncoding(xmlDoc *doc)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: htmlFindHead
      Src: /src/libxml2/HTMLtree.c:306,1
    - Dst: htmlParseMetaEncoding
      Src: /src/libxml2/HTMLtree.c:313,1
    - Dst: htmlUpdateMetaEncoding
      Src: /src/libxml2/HTMLtree.c:319,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/HTMLtree.c:322,1
    - Dst: xmlNodeAddContent
      Src: /src/libxml2/HTMLtree.c:323,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLtree.c:324,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/HTMLtree.c:334,1
    - Dst: xmlNewProp
      Src: /src/libxml2/HTMLtree.c:338,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/HTMLtree.c:339,1
    - Dst: xmlAddChild
      Src: /src/libxml2/HTMLtree.c:344,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/HTMLtree.c:346,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 2
    argNames:
    - doc
    - encoding
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 298
    functionDepth: 3
    functionLinenumber: 298
    functionLinenumberEnd: 349
    functionName: htmlSetMetaEncoding
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 2
    functionsReached:
    - xmlNewDocNode
    - xmlFree
    - xmlNewProp
    - xmlNodeAddContent
    - htmlUpdateMetaEncoding
    - htmlFindHead
    - xmlNodeSetContent
    - xmlAddChild
    - xmlAddPrevSibling
    - htmlParseMetaEncoding
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int htmlSetMetaEncoding(xmlDoc *doc, const xmlChar *encoding)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:438,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 439
    functionName: htmlIsBooleanAttr
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - xmlStrcasecmp
    linkageType: ''
    returnType: int
    signature: int htmlIsBooleanAttr(const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOpenCharEncodingHandler
      Src: /src/libxml2/HTMLtree.c:456,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - encoding
    - out
    argTypes:
    - char*
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 448
    functionDepth: 4
    functionLinenumber: 448
    functionLinenumberEnd: 457
    functionName: htmlFindOutputEncoder
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlOpenCharEncodingHandler
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors htmlFindOutputEncoder(const char *encoding, xmlCharEncodingHandler
      **out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLtree.c:481,1
    - Dst: memset
      Src: /src/libxml2/HTMLtree.c:484,1
    - Dst: xmlBufUse
      Src: /src/libxml2/HTMLtree.c:492,1
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:493,1
    - Dst: xmlBufUse
      Src: /src/libxml2/HTMLtree.c:497,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLtree.c:498,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 4
    argNames:
    - buf
    - ATTRIBUTE_UNUSED
    - cur
    - format
    argTypes:
    - xmlBufPtr
    - xmlDocPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 500
    functionName: htmlBufNodeDumpFormat
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlBufUse
    - htmlNodeDumpInternal
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: size_t
    signature: "size_t htmlBufNodeDumpFormat(xmlBufPtr buf, xmlDocPtr doc ATTRIBUTE_UNUSED,\n
      \                     xmlNodePtr cur, int format)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:519,1
    - Dst: xmlBufFromBuffer
      Src: /src/libxml2/HTMLtree.c:520,1
    - Dst: htmlBufNodeDumpFormat
      Src: /src/libxml2/HTMLtree.c:524,1
    - Dst: xmlBufBackToBuffer
      Src: /src/libxml2/HTMLtree.c:526,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - buf
    - doc
    - cur
    argTypes:
    - xmlBuffer*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 510
    functionDepth: 4
    functionLinenumber: 510
    functionLinenumberEnd: 531
    functionName: htmlNodeDump
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - xmlBufBackToBuffer
    - htmlBufNodeDumpFormat
    - xmlBufFromBuffer
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int htmlNodeDump(xmlBuffer *buf, xmlDoc *doc, xmlNode *cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:554,1
    - Dst: htmlFindOutputEncoder
      Src: /src/libxml2/HTMLtree.c:559,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/HTMLtree.c:561,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/HTMLtree.c:563,1
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:567,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/HTMLtree.c:569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 5
    argNames:
    - out
    - ATTRIBUTE_UNUSED
    - cur
    - encoding
    - format
    argTypes:
    - FILE*
    - xmlDoc*
    - xmlNode*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 547
    functionDepth: 5
    functionLinenumber: 547
    functionLinenumberEnd: 571
    functionName: htmlNodeDumpFileFormat
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlFindOutputEncoder
    - htmlNodeDumpInternal
    - xmlInitParser
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: int
    signature: "int htmlNodeDumpFileFormat(FILE *out, xmlDoc *doc ATTRIBUTE_UNUSED,\n\t
      \              xmlNode *cur, const char *encoding, int format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNodeDumpFileFormat
      Src: /src/libxml2/HTMLtree.c:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - out
    - doc
    - cur
    argTypes:
    - FILE*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 582
    functionDepth: 6
    functionLinenumber: 582
    functionLinenumberEnd: 585
    functionName: htmlNodeDumpFile
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 2
    functionsReached:
    - htmlNodeDumpFileFormat
    linkageType: ''
    returnType: void
    signature: void htmlNodeDumpFile(FILE *out, xmlDoc *doc, xmlNode *cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:606,1
    - Dst: htmlFindOutputEncoder
      Src: /src/libxml2/HTMLtree.c:615,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/HTMLtree.c:617,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/HTMLtree.c:619,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxml2/HTMLtree.c:623,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/HTMLtree.c:625,1
    - Dst: xmlBufUse
      Src: /src/libxml2/HTMLtree.c:629,1
    - Dst: xmlStrndup
      Src: /src/libxml2/HTMLtree.c:630,1
    - Dst: xmlBufContent
      Src: /src/libxml2/HTMLtree.c:630,1
    - Dst: xmlBufUse
      Src: /src/libxml2/HTMLtree.c:632,1
    - Dst: xmlStrndup
      Src: /src/libxml2/HTMLtree.c:633,1
    - Dst: xmlBufContent
      Src: /src/libxml2/HTMLtree.c:633,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/HTMLtree.c:637,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - cur
    - mem
    - size
    - format
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 601
    functionDepth: 5
    functionLinenumber: 601
    functionLinenumberEnd: 638
    functionName: htmlDocDumpMemoryFormat
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlDocContentDumpFormatOutput
    - xmlBufContent
    - htmlFindOutputEncoder
    - xmlOutputBufferFlush
    - xmlBufUse
    - xmlStrndup
    - xmlAllocOutputBuffer
    - xmlInitParser
    - xmlOutputBufferClose
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: void
    signature: void htmlDocDumpMemoryFormat(xmlDoc *cur, xmlChar**mem, int *size,
      int format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlDocDumpMemoryFormat
      Src: /src/libxml2/HTMLtree.c:652,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cur
    - mem
    - size
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 650
    functionDepth: 6
    functionLinenumber: 650
    functionLinenumberEnd: 653
    functionName: htmlDocDumpMemory
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 5
    functionsReached:
    - htmlDocDumpMemoryFormat
    linkageType: ''
    returnType: void
    signature: void htmlDocDumpMemory(xmlDoc *cur, xmlChar**mem, int *size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:678,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:679,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:681,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/HTMLtree.c:682,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:684,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/HTMLtree.c:685,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/HTMLtree.c:688,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:689,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/HTMLtree.c:690,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:692,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - buf
    - doc
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlOutputBufferPtr
    - xmlDocPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 671
    functionDepth: 5
    functionLinenumber: 671
    functionLinenumberEnd: 693
    functionName: htmlDtdDumpOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlStrcmp
    - xmlOutputBufferWriteQuotedString
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: "void htmlDtdDumpOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,\n\t
      \         const char *encoding ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLtree.c:708,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:710,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:726,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:750,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - buf
    - content
    argTypes:
    - xmlOutputBufferPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 695
    functionDepth: 3
    functionLinenumber: 695
    functionLinenumberEnd: 754
    functionName: htmlSerializeUri
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - IS_WS_HTML
    linkageType: ''
    returnType: void
    signature: void htmlSerializeUri(xmlOutputBufferPtr buf, const xmlChar *content)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:764,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:767,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:768,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:770,1
    - Dst: htmlIsBooleanAttr
      Src: /src/libxml2/HTMLtree.c:777,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:781,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:789,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:790,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:791,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:792,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:793,1
    - Dst: htmlSerializeUri
      Src: /src/libxml2/HTMLtree.c:803,1
    - Dst: xmlSerializeText
      Src: /src/libxml2/HTMLtree.c:805,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:810,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:811,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:812,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:816,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 28
    argCount: 2
    argNames:
    - buf
    - cur
    argTypes:
    - xmlOutputBufferPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 762
    functionDepth: 4
    functionLinenumber: 762
    functionLinenumberEnd: 818
    functionName: htmlAttrDumpOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 0
    functionsReached:
    - htmlSerializeUri
    - xmlOutputBufferWrite
    - htmlIsBooleanAttr
    - xmlStrcasecmp
    - xmlSerializeText
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void htmlAttrDumpOutput(xmlOutputBufferPtr buf, xmlAttrPtr cur)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:839,1
    - Dst: htmlDtdDumpOutput
      Src: /src/libxml2/HTMLtree.c:852,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:862,1
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:877,1
    - Dst: htmlTagLookup
      Src: /src/libxml2/HTMLtree.c:885,1
    - Dst: htmlParseMetaEncoding
      Src: /src/libxml2/HTMLtree.c:890,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:897,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLtree.c:899,1
    - Dst: htmlFindMetaEncodingAttr
      Src: /src/libxml2/HTMLtree.c:911,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:920,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:922,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:923,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:925,1
    - Dst: xmlNsListDumpOutput
      Src: /src/libxml2/HTMLtree.c:927,1
    - Dst: htmlAttrDumpOutput
      Src: /src/libxml2/HTMLtree.c:931,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:933,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:934,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:936,1
    - Dst: xmlSerializeText
      Src: /src/libxml2/HTMLtree.c:937,1
    - Dst: xmlSerializeText
      Src: /src/libxml2/HTMLtree.c:941,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:944,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:950,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:953,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:956,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:958,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:961,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:963,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:965,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:966,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:968,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:977,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:979,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:982,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:986,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1004,1
    - Dst: htmlAttrDumpOutput
      Src: /src/libxml2/HTMLtree.c:1011,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1019,1
    - Dst: xmlSerializeText
      Src: /src/libxml2/HTMLtree.c:1021,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1027,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1028,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1029,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1035,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1036,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1038,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1039,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1042,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1047,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1048,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1049,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1054,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1078,1
    - Dst: htmlTagLookup
      Src: /src/libxml2/HTMLtree.c:1081,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1091,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1093,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1095,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1096,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/HTMLtree.c:1098,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1099,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/HTMLtree.c:1108,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 186
    argCount: 4
    argNames:
    - buf
    - cur
    - encoding
    - format
    argTypes:
    - xmlOutputBuffer*
    - xmlNode*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 831
    functionDepth: 6
    functionLinenumber: 831
    functionLinenumberEnd: 1115
    functionName: htmlNodeDumpInternal
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 3
    functionsReached:
    - htmlTagLookup
    - htmlAttrDumpOutput
    - xmlOutputBufferWrite
    - xmlSerializeText
    - htmlNodeDumpInternal
    - xmlNsListDumpOutput
    - htmlFindMetaEncodingAttr
    - xmlStrcasecmp
    - xmlInitParser
    - htmlParseMetaEncoding
    - xmlOutputBufferWriteString
    - htmlDtdDumpOutput
    linkageType: ''
    returnType: void
    signature: "void htmlNodeDumpInternal(xmlOutputBuffer *buf, xmlNode *cur,\n                     const
      char *encoding, int format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:1131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - buf
    - ATTRIBUTE_UNUSED
    - cur
    - ATTRIBUTE_UNUSED
    - format
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - xmlNode*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1127
    functionDepth: 7
    functionLinenumber: 1127
    functionLinenumberEnd: 1132
    functionName: htmlNodeDumpFormatOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlNodeDumpInternal
    linkageType: ''
    returnType: void
    signature: "void htmlNodeDumpFormatOutput(xmlOutputBuffer *buf,\n                         xmlDoc
      *doc ATTRIBUTE_UNUSED, xmlNode *cur,\n                         const char *encoding
      ATTRIBUTE_UNUSED, int format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:1147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buf
    - ATTRIBUTE_UNUSED
    - cur
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - xmlNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1144
    functionDepth: 7
    functionLinenumber: 1144
    functionLinenumberEnd: 1148
    functionName: htmlNodeDumpOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlNodeDumpInternal
    linkageType: ''
    returnType: void
    signature: "void htmlNodeDumpOutput(xmlOutputBuffer *buf, xmlDoc *doc ATTRIBUTE_UNUSED,\n
      \                  xmlNode *cur, const char *encoding ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:1162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buf
    - cur
    - ATTRIBUTE_UNUSED
    - format
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1158
    functionDepth: 7
    functionLinenumber: 1158
    functionLinenumberEnd: 1163
    functionName: htmlDocContentDumpFormatOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 3
    functionsReached:
    - htmlNodeDumpInternal
    linkageType: ''
    returnType: void
    signature: "void htmlDocContentDumpFormatOutput(xmlOutputBuffer *buf, xmlDoc *cur,\n\t
      \                      const char *encoding ATTRIBUTE_UNUSED,\n                               int
      format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/HTMLtree.c:1177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buf
    - cur
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1174
    functionDepth: 7
    functionLinenumber: 1174
    functionLinenumberEnd: 1178
    functionName: htmlDocContentDumpOutput
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 2
    functionsReached:
    - htmlNodeDumpInternal
    linkageType: ''
    returnType: void
    signature: "void htmlDocContentDumpOutput(xmlOutputBuffer *buf, xmlDoc *cur,\n\t
      \                const char *encoding ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:1210,1
    - Dst: htmlFindOutputEncoder
      Src: /src/libxml2/HTMLtree.c:1216,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/HTMLtree.c:1218,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/HTMLtree.c:1220,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxml2/HTMLtree.c:1223,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/HTMLtree.c:1225,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - f
    - cur
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1204
    functionDepth: 8
    functionLinenumber: 1204
    functionLinenumberEnd: 1227
    functionName: htmlDocDump
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 2
    functionsReached:
    - htmlDocContentDumpOutput
    - htmlFindOutputEncoder
    - xmlInitParser
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: int
    signature: int htmlDocDump(FILE *f, xmlDoc *cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlSaveFileFormat
      Src: /src/libxml2/HTMLtree.c:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filename
    - cur
    argTypes:
    - char*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1242
    functionDepth: 1
    functionLinenumber: 1242
    functionLinenumberEnd: 1245
    functionName: htmlSaveFile
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 3
    functionsReached:
    - htmlSaveFileFormat
    linkageType: ''
    returnType: int
    signature: int htmlSaveFile(const char *filename, xmlDoc *cur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLtree.c:1275,1
    - Dst: htmlFindOutputEncoder
      Src: /src/libxml2/HTMLtree.c:1277,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/HTMLtree.c:1283,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/HTMLtree.c:1285,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxml2/HTMLtree.c:1289,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/HTMLtree.c:1291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - filename
    - cur
    - encoding
    - format
    argTypes:
    - char*
    - xmlDoc*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1265
    functionDepth: 8
    functionLinenumber: 1265
    functionLinenumberEnd: 1293
    functionName: htmlSaveFileFormat
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 2
    functionsReached:
    - htmlDocContentDumpFormatOutput
    - htmlFindOutputEncoder
    - xmlInitParser
    - xmlOutputBufferClose
    - xmlCharEncCloseFunc
    - xmlOutputBufferCreateFilename
    linkageType: ''
    returnType: int
    signature: "int htmlSaveFileFormat(const char *filename, xmlDoc *cur,\n\t           const
      char *encoding, int format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlSaveFileFormat
      Src: /src/libxml2/HTMLtree.c:1309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filename
    - cur
    - encoding
    argTypes:
    - char*
    - xmlDoc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1307
    functionDepth: 9
    functionLinenumber: 1307
    functionLinenumberEnd: 1310
    functionName: htmlSaveFileEnc
    functionSourceFile: /src/libxml2/HTMLtree.c
    functionUses: 1
    functionsReached:
    - htmlSaveFileFormat
    linkageType: ''
    returnType: int
    signature: int htmlSaveFileEnc(const char *filename, xmlDoc *cur, const char *encoding)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - node
    - ','
    - typ
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: IS_RELAXNG
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_RELAXNG(node, typ)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/relaxng.c:411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 395
    functionDepth: 2
    functionLinenumber: 395
    functionLinenumberEnd: 412
    functionName: xmlRngPErrMemory
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlRngPErrMemory(xmlRelaxNGParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/relaxng.c:435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 436
    functionName: xmlRngVErrMemory
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlRngVErrMemory(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/relaxng.c:471,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:476,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 449
    functionDepth: 5
    functionLinenumber: 449
    functionLinenumberEnd: 477
    functionName: xmlRngPErr
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlRngPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlRngPErr(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr node, int
      error,\n           const char *msg, const xmlChar * str1, const xmlChar * str2)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/relaxng.c:512,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:517,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 490
    functionDepth: 5
    functionLinenumber: 490
    functionLinenumberEnd: 518
    functionName: xmlRngVErr
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlRngVErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlRngVErr(xmlRelaxNGValidCtxtPtr ctxt, xmlNodePtr node, int
      error,\n           const char *msg, const xmlChar * str1, const xmlChar * str2)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:628,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:630,1
    - Dst: xmlRelaxNGFreeInnerSchema
      Src: /src/libxml2/relaxng.c:632,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:633,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - docu
    argTypes:
    - xmlRelaxNGDocumentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 634
    functionName: xmlRelaxNGFreeDocument
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFreeDoc
    - xmlRelaxNGFreeInnerSchema
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeDocument(xmlRelaxNGDocumentPtr docu)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeDocument
      Src: /src/libxml2/relaxng.c:648,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - docu
    argTypes:
    - xmlRelaxNGDocumentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 641
    functionDepth: 2
    functionLinenumber: 641
    functionLinenumberEnd: 651
    functionName: xmlRelaxNGFreeDocumentList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeDocument
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeDocumentList(xmlRelaxNGDocumentPtr docu)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:665,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:667,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/relaxng.c:669,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:670,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - incl
    argTypes:
    - xmlRelaxNGIncludePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 671
    functionName: xmlRelaxNGFreeInclude
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFreeDoc
    - xmlRelaxNGFree
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeInclude(xmlRelaxNGIncludePtr incl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeInclude
      Src: /src/libxml2/relaxng.c:685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - incl
    argTypes:
    - xmlRelaxNGIncludePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 678
    functionDepth: 2
    functionLinenumber: 678
    functionLinenumberEnd: 688
    functionName: xmlRelaxNGFreeIncludeList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeInclude
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeIncludeList(xmlRelaxNGIncludePtr incl)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:701,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:703,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 696
    functionDepth: 3
    functionLinenumber: 696
    functionLinenumberEnd: 709
    functionName: xmlRelaxNGNewRelaxNG
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGPtr
    signature: xmlRelaxNGPtr xmlRelaxNGNewRelaxNG(xmlRelaxNGParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:723,1
    - Dst: xmlRelaxNGFreeDefine
      Src: /src/libxml2/relaxng.c:728,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:729,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:732,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlRelaxNGPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 733
    functionName: xmlRelaxNGFreeInnerSchema
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGFreeDefine
    - xmlFreeDoc
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeInnerSchema(xmlRelaxNGPtr schema)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeGrammar
      Src: /src/libxml2/relaxng.c:747,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:749,1
    - Dst: xmlRelaxNGFreeDocumentList
      Src: /src/libxml2/relaxng.c:751,1
    - Dst: xmlRelaxNGFreeIncludeList
      Src: /src/libxml2/relaxng.c:753,1
    - Dst: xmlRelaxNGFreeDefine
      Src: /src/libxml2/relaxng.c:758,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:759,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:762,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlRelaxNG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 740
    functionDepth: 3
    functionLinenumber: 740
    functionLinenumberEnd: 763
    functionName: xmlRelaxNGFree
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 8
    functionsReached:
    - xmlRelaxNGFreeIncludeList
    - xmlRelaxNGFreeGrammar
    - xmlFree
    - xmlRelaxNGFreeDocumentList
    - xmlRelaxNGFreeDefine
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFree(xmlRelaxNG *schema)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:776,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:778,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 771
    functionDepth: 3
    functionLinenumber: 771
    functionLinenumberEnd: 784
    functionName: xmlRelaxNGNewGrammar
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGGrammarPtr
    signature: xmlRelaxNGGrammarPtr xmlRelaxNGNewGrammar(xmlRelaxNGParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeGrammar
      Src: /src/libxml2/relaxng.c:798,1
    - Dst: xmlRelaxNGFreeGrammar
      Src: /src/libxml2/relaxng.c:801,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:804,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:807,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:810,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - grammar
    argTypes:
    - xmlRelaxNGGrammarPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 811
      start: 791
    functionDepth: 2
    functionLinenumber: 791
    functionLinenumberEnd: 811
    functionName: xmlRelaxNGFreeGrammar
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    - xmlFree
    - xmlRelaxNGFreeGrammar
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeGrammar(xmlRelaxNGGrammarPtr grammar)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:829,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:831,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:838,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:843,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:848,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:850,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:853,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 820
    functionDepth: 3
    functionLinenumber: 820
    functionLinenumberEnd: 858
    functionName: xmlRelaxNGNewDefine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRealloc
    - memset
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGNewDefine(xmlRelaxNGParserCtxtPtr ctxt,
      xmlNodePtr node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:877,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:879,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:880,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:883,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:886,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:888,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - partitions
    argTypes:
    - xmlRelaxNGPartitionPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 865
    functionDepth: 2
    functionLinenumber: 865
    functionLinenumberEnd: 890
    functionName: xmlRelaxNGFreePartition
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreePartition(xmlRelaxNGPartitionPtr partitions)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGTypeLibraryPtr::freef
      Src: /src/libxml2/relaxng.c:908,1
    - Dst: xmlRelaxNGFreePartition
      Src: /src/libxml2/relaxng.c:911,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:913,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:915,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:917,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:919,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/relaxng.c:921,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:922,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 21
    argCount: 1
    argNames:
    - define
    argTypes:
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 897
    functionDepth: 3
    functionLinenumber: 897
    functionLinenumberEnd: 923
    functionName: xmlRelaxNGFreeDefine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRelaxNGFreePartition
    - xmlFree
    - xmlRelaxNGTypeLibraryPtr::freef
    - xmlHashFree
    - xmlRegFreeRegexp
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeDefine(xmlRelaxNGDefinePtr define)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:947,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:952,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:957,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:961,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:962,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - size
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 932
    functionDepth: 3
    functionLinenumber: 932
    functionLinenumberEnd: 966
    functionName: xmlRelaxNGNewStates
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngVErrMemory
    - xmlFree
    linkageType: ''
    returnType: xmlRelaxNGStatesPtr
    signature: xmlRelaxNGStatesPtr xmlRelaxNGNewStates(xmlRelaxNGValidCtxtPtr ctxt,
      int size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:990,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - states
    - state
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGStatesPtr
    - xmlRelaxNGValidStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 977
    functionDepth: 3
    functionLinenumber: 977
    functionLinenumberEnd: 1003
    functionName: xmlRelaxNGAddStatesUniq
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRngVErrMemory
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGAddStatesUniq(xmlRelaxNGValidCtxtPtr ctxt,\n                        xmlRelaxNGStatesPtr
      states,\n                        xmlRelaxNGValidStatePtr state)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1028,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1033,1
    - Dst: xmlRelaxNGEqualValidState
      Src: /src/libxml2/relaxng.c:1040,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:1041,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - ctxt
    - states
    - state
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGStatesPtr
    - xmlRelaxNGValidStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1013
    functionDepth: 3
    functionLinenumber: 1013
    functionLinenumberEnd: 1047
    functionName: xmlRelaxNGAddStates
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRngVErrMemory
    - xmlRealloc
    - xmlRelaxNGEqualValidState
    - xmlRelaxNGFreeValidState
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGAddStates(xmlRelaxNGValidCtxtPtr ctxt,\n                    xmlRelaxNGStatesPtr
      states,\n                    xmlRelaxNGValidStatePtr state)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1065,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1067,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1073,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1078,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1079,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1080,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1087,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1088,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - states
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGStatesPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1055
    functionDepth: 3
    functionLinenumber: 1055
    functionLinenumberEnd: 1092
    functionName: xmlRelaxNGFreeStates
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xmlRngVErrMemory
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGFreeStates(xmlRelaxNGValidCtxtPtr ctxt,\n                     xmlRelaxNGStatesPtr
      states)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:1111,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1130,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1132,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:1135,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1153,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1156,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1162,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1165,1
    - Dst: memcpy
      Src: /src/libxml2/relaxng.c:1173,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 69
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1101
    functionDepth: 3
    functionLinenumber: 1101
    functionLinenumberEnd: 1185
    functionName: xmlRelaxNGNewValidState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlMalloc
    - memcpy
    - xmlDocGetRootElement
    - xmlRngVErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGValidStatePtr
    signature: xmlRelaxNGValidStatePtr xmlRelaxNGNewValidState(xmlRelaxNGValidCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1210,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1212,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:1215,1
    - Dst: memcpy
      Src: /src/libxml2/relaxng.c:1219,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1225,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1228,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1235,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1238,1
    - Dst: memcpy
      Src: /src/libxml2/relaxng.c:1245,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - state
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1194
    functionDepth: 3
    functionLinenumber: 1194
    functionLinenumberEnd: 1249
    functionName: xmlRelaxNGCopyValidState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlMalloc
    - memcpy
    - xmlRngVErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGValidStatePtr
    signature: "xmlRelaxNGValidStatePtr xmlRelaxNGCopyValidState(xmlRelaxNGValidCtxtPtr
      ctxt,\n                         xmlRelaxNGValidStatePtr state)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:1281,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 22
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - state1
    - state2
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidStatePtr
    - xmlRelaxNGValidStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1259
    functionDepth: 1
    functionLinenumber: 1259
    functionLinenumberEnd: 1288
    functionName: xmlRelaxNGEqualValidState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGEqualValidState(xmlRelaxNGValidCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \                         xmlRelaxNGValidStatePtr state1,\n                          xmlRelaxNGValidStatePtr
      state2)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewStates
      Src: /src/libxml2/relaxng.c:1304,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1308,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1309,1
    - Dst: xmlRelaxNGAddStatesUniq
      Src: /src/libxml2/relaxng.c:1311,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - state
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 1296
    functionDepth: 4
    functionLinenumber: 1296
    functionLinenumberEnd: 1313
    functionName: xmlRelaxNGFreeValidState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGAddStatesUniq
    - xmlFree
    - xmlRelaxNGNewStates
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGFreeValidState(xmlRelaxNGValidCtxtPtr ctxt,\n                         xmlRelaxNGValidStatePtr
      state)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ctxt
    - flags
    argTypes:
    - xmlRelaxNGParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1329
    functionDepth: 0
    functionLinenumber: 1329
    functionLinenumberEnd: 1343
    functionName: xmlRelaxParserSetFlag
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlRelaxParserSetFlag(xmlRelaxNGParserCtxt *ctxt, int flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/relaxng.c:1358,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1360,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/relaxng.c:1364,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/relaxng.c:1366,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/relaxng.c:1368,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/relaxng.c:1369,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - filename
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1353
    functionDepth: 14
    functionLinenumber: 1353
    functionLinenumberEnd: 1372
    functionName: xmlRelaxReadFile
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlCtxtSetResourceLoader
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - xmlRngPErrMemory
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlRelaxReadFile(xmlRelaxNGParserCtxtPtr ctxt, const char *filename)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/relaxng.c:1379,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1381,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/relaxng.c:1385,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/relaxng.c:1387,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/relaxng.c:1389,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/relaxng.c:1390,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - buf
    - size
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1374
    functionDepth: 14
    functionLinenumber: 1374
    functionLinenumberEnd: 1393
    functionName: xmlRelaxReadMemory
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlCtxtSetResourceLoader
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlRngPErrMemory
    - xmlCtxtReadMemory
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlRelaxReadMemory(xmlRelaxNGParserCtxtPtr ctxt, const char *buf, int size)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1410,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1413,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1420,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1424,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGIncludePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1402
    functionDepth: 3
    functionLinenumber: 1402
    functionLinenumberEnd: 1431
    functionName: xmlRelaxNGIncludePush
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGIncludePush(xmlRelaxNGParserCtxtPtr ctxt,\n                      xmlRelaxNGIncludePtr
      value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1439
    functionDepth: 0
    functionLinenumber: 1439
    functionLinenumberEnd: 1454
    functionName: xmlRelaxNGIncludePop
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRelaxNGIncludePtr
    signature: xmlRelaxNGIncludePtr xmlRelaxNGIncludePop(xmlRelaxNGParserCtxtPtr ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1477,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/relaxng.c:1479,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/relaxng.c:1480,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1481,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:1482,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:1483,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:1485,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/relaxng.c:1487,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/relaxng.c:1488,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1490,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1492,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:1499,1
    - Dst: xmlRelaxNGRemoveRedefine
      Src: /src/libxml2/relaxng.c:1501,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:1502,1
    - Dst: xmlRelaxNGRemoveRedefine
      Src: /src/libxml2/relaxng.c:1508,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - target
    - name
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlChar*
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1515
      start: 1465
    functionDepth: 1
    functionLinenumber: 1465
    functionLinenumberEnd: 1515
    functionName: xmlRelaxNGRemoveRedefine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - IS_RELAXNG
    - xmlUnlinkNode
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlFreeNode
    - xmlRelaxNGRemoveRedefine
    - xmlDocGetRootElement
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGRemoveRedefine(xmlRelaxNGParserCtxtPtr ctxt,\n                         const
      xmlChar * URL ATTRIBUTE_UNUSED,\n                         xmlNodePtr target,
      const xmlChar * name)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:1541,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1542,1
    - Dst: xmlRelaxReadFile
      Src: /src/libxml2/relaxng.c:1552,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1554,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1562,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1564,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:1565,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:1568,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:1570,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:1578,1
    - Dst: xmlHasProp
      Src: /src/libxml2/relaxng.c:1580,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:1581,1
    - Dst: xmlRelaxNGIncludePush
      Src: /src/libxml2/relaxng.c:1589,1
    - Dst: xmlRelaxNGCleanupDoc
      Src: /src/libxml2/relaxng.c:1596,1
    - Dst: xmlRelaxNGIncludePop
      Src: /src/libxml2/relaxng.c:1605,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:1610,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1612,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1617,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1618,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1629,1
    - Dst: xmlRelaxNGRemoveRedefine
      Src: /src/libxml2/relaxng.c:1633,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1635,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1639,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:1642,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1644,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:1650,1
    - Dst: xmlRelaxNGRemoveRedefine
      Src: /src/libxml2/relaxng.c:1651,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1654,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1658,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:1661,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 82
    argCount: 4
    argNames:
    - ctxt
    - URL
    - node
    - ns
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlChar*
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1528
    functionDepth: 15
    functionLinenumber: 1528
    functionLinenumberEnd: 1677
    functionName: xmlRelaxNGLoadInclude
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_RELAXNG
    - xmlStrdup
    - xmlGetProp
    - xmlRngPErrMemory
    - xmlHasProp
    - xmlRelaxReadFile
    - xmlFree
    - xmlMalloc
    - xmlRelaxNGCleanupDoc
    - xmlDocGetRootElement
    - xmlSetProp
    - xmlStrEqual
    - xmlRelaxNGNormExtSpace
    - xmlRelaxNGIncludePush
    - memset
    - xmlRngPErr
    - xmlRelaxNGIncludePop
    - xmlRelaxNGRemoveRedefine
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlRelaxNGIncludePtr
    signature: "xmlRelaxNGIncludePtr xmlRelaxNGLoadInclude(xmlRelaxNGParserCtxtPtr
      ctxt, const xmlChar * URL,\n                      xmlNodePtr node, const xmlChar
      * ns)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1700,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1704,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1712,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:1717,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:1728,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:1729,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 5
    argNames:
    - ctxt
    - err
    - arg1
    - arg2
    - dup
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidErr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1689
    functionDepth: 3
    functionLinenumber: 1689
    functionLinenumberEnd: 1745
    functionName: xmlRelaxNGValidErrorPush
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlRealloc
    - xmlRngVErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidErrorPush(xmlRelaxNGValidCtxtPtr ctxt,\n                         xmlRelaxNGValidErr
      err, const xmlChar * arg1,\n                         const xmlChar * arg2, int
      dup)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1769,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:1772,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1776
      start: 1752
    functionDepth: 0
    functionLinenumber: 1752
    functionLinenumberEnd: 1776
    functionName: xmlRelaxNGValidErrorPop
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGValidErrorPop(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1793,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1796,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:1803,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1807,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDocumentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1785
    functionDepth: 3
    functionLinenumber: 1785
    functionLinenumberEnd: 1814
    functionName: xmlRelaxNGDocumentPush
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGDocumentPush(xmlRelaxNGParserCtxtPtr ctxt,\n                       xmlRelaxNGDocumentPtr
      value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1822
    functionDepth: 0
    functionLinenumber: 1822
    functionLinenumberEnd: 1837
    functionName: xmlRelaxNGDocumentPop
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRelaxNGDocumentPtr
    signature: xmlRelaxNGDocumentPtr xmlRelaxNGDocumentPop(xmlRelaxNGParserCtxtPtr
      ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:1862,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1863,1
    - Dst: xmlRelaxReadFile
      Src: /src/libxml2/relaxng.c:1873,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:1875,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:1883,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:1885,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:1886,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:1889,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:1891,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:1900,1
    - Dst: xmlHasProp
      Src: /src/libxml2/relaxng.c:1902,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:1903,1
    - Dst: xmlRelaxNGDocumentPush
      Src: /src/libxml2/relaxng.c:1911,1
    - Dst: xmlRelaxNGCleanupDoc
      Src: /src/libxml2/relaxng.c:1916,1
    - Dst: xmlRelaxNGDocumentPop
      Src: /src/libxml2/relaxng.c:1922,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - ctxt
    - URL
    - ns
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1849
    functionDepth: 15
    functionLinenumber: 1849
    functionLinenumberEnd: 1925
    functionName: xmlRelaxNGLoadExternalRef
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRelaxReadFile
    - xmlStrEqual
    - xmlRelaxNGDocumentPush
    - xmlMalloc
    - xmlSetProp
    - xmlRngPErrMemory
    - xmlHasProp
    - xmlRelaxNGDocumentPop
    - xmlRelaxNGCleanupDoc
    - xmlRngPErr
    - xmlDocGetRootElement
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: xmlRelaxNGDocumentPtr
    signature: "xmlRelaxNGDocumentPtr xmlRelaxNGLoadExternalRef(xmlRelaxNGParserCtxtPtr
      ctxt,\n                          const xmlChar * URL, const xmlChar * ns)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1934
      start: 1933
    functionDepth: 0
    functionLinenumber: 1933
    functionLinenumberEnd: 1934
    functionName: VALID_ERR
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ERR(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1935
      start: 1934
    functionDepth: 0
    functionLinenumber: 1934
    functionLinenumberEnd: 1935
    functionName: VALID_ERR2
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ERR2(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1936
      start: 1935
    functionDepth: 0
    functionLinenumber: 1935
    functionLinenumberEnd: 1936
    functionName: VALID_ERR3
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ERR3(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1936
    functionDepth: 0
    functionLinenumber: 1936
    functionLinenumberEnd: 1937
    functionName: VALID_ERR2P
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ERR2P(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1938
      start: 1937
    functionDepth: 0
    functionLinenumber: 1937
    functionLinenumberEnd: 1938
    functionName: VALID_ERR3P
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_ERR3P(a, b, c)
  - BBCount: 24
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 50
    argCount: 1
    argNames:
    - def
    argTypes:
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1991
      start: 1939
    functionDepth: 0
    functionLinenumber: 1939
    functionLinenumberEnd: 1991
    functionName: xmlRelaxNGDefName
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlRelaxNGDefName(xmlRelaxNGDefinePtr def)'
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2018,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2020,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2023,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2027,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2030,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2033,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2035,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2037,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2040,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2043,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2046,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2048,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2051,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2055,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2059,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2064,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2067,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2071,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2075,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2078,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2082,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2084,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2088,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2092,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2096,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2100,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2104,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2108,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2112,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2116,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2119,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2122,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2124,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2126,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2128,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:2131,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/relaxng.c:2134,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/relaxng.c:2135,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 111
    argCount: 3
    argNames:
    - err
    - arg1
    - arg2
    argTypes:
    - xmlRelaxNGValidErr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2001
    functionDepth: 1
    functionLinenumber: 2001
    functionLinenumberEnd: 2136
    functionName: xmlRelaxNGGetErrorString
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    - xmlEscapeFormatString
    - snprintf
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlRelaxNGGetErrorString(xmlRelaxNGValidErr err, const
      xmlChar * arg1,\n                         const xmlChar * arg2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGGetErrorString
      Src: /src/libxml2/relaxng.c:2159,1
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:2165,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 6
    argNames:
    - ctxt
    - err
    - node
    - child
    - arg1
    - arg2
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidErr
    - xmlNodePtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2148
    functionDepth: 6
    functionLinenumber: 2148
    functionLinenumberEnd: 2168
    functionName: xmlRelaxNGShowValidError
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGGetErrorString
    - xmlFree
    - xmlRngVErr
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGShowValidError(xmlRelaxNGValidCtxtPtr ctxt,\n                         xmlRelaxNGValidErr
      err, xmlNodePtr node,\n                         xmlNodePtr child, const xmlChar
      * arg1,\n                         const xmlChar * arg2)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2186,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2189,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctxt
    - level
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2197
      start: 2176
    functionDepth: 0
    functionLinenumber: 2176
    functionLinenumberEnd: 2197
    functionName: xmlRelaxNGPopErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGPopErrors(xmlRelaxNGValidCtxtPtr ctxt, int level)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2216,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2217,1
    - Dst: xmlRelaxNGShowValidError
      Src: /src/libxml2/relaxng.c:2221,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2228,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2231,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2237
      start: 2204
    functionDepth: 7
    functionLinenumber: 2204
    functionLinenumberEnd: 2237
    functionName: xmlRelaxNGDumpValidError
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlRelaxNGShowValidError
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDumpValidError(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:2271,1
    - Dst: xmlRelaxNGShowValidError
      Src: /src/libxml2/relaxng.c:2281,1
    - Dst: xmlRelaxNGValidErrorPush
      Src: /src/libxml2/relaxng.c:2287,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 5
    argNames:
    - ctxt
    - err
    - arg1
    - arg2
    - dup
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGValidErr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2289
      start: 2249
    functionDepth: 8
    functionLinenumber: 2249
    functionLinenumberEnd: 2289
    functionName: xmlRelaxNGAddValidError
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidErrorPush
    - xmlRelaxNGDumpValidError
    - xmlRelaxNGShowValidError
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGAddValidError(xmlRelaxNGValidCtxtPtr ctxt,\n                        xmlRelaxNGValidErr
      err, const xmlChar * arg1,\n                        const xmlChar * arg2, int
      dup)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/relaxng.c:2315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2321
      start: 2308
    functionDepth: 1
    functionLinenumber: 2308
    functionLinenumberEnd: 2321
    functionName: xmlRelaxNGSchemaTypeHave
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPredefinedType
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGSchemaTypeHave(void *data ATTRIBUTE_UNUSED, const xmlChar
      * type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/relaxng.c:2345,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/relaxng.c:2350,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    - value
    - result
    - node
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - void**
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2334
    functionDepth: 1
    functionLinenumber: 2334
    functionLinenumberEnd: 2359
    functionName: xmlRelaxNGSchemaTypeCheck
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPredefinedType
    - xmlSchemaValPredefTypeNode
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGSchemaTypeCheck(void *data ATTRIBUTE_UNUSED,\n                          const
      xmlChar * type,\n                          const xmlChar * value,\n                          void
      **result, xmlNodePtr node)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/relaxng.c:2384,1
    - Dst: xmlSchemaNewFacet
      Src: /src/libxml2/relaxng.c:2390,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2394,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2396,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2398,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2400,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2402,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2404,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2406,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2408,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2410,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2412,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2414,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2416,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/relaxng.c:2419,1
    - Dst: xmlSchemaCheckFacet
      Src: /src/libxml2/relaxng.c:2423,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/relaxng.c:2425,1
    - Dst: xmlSchemaValidateFacet
      Src: /src/libxml2/relaxng.c:2428,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/relaxng.c:2429,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 59
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    - facetname
    - val
    - strval
    - value
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2433
      start: 2372
    functionDepth: 1
    functionLinenumber: 2372
    functionLinenumberEnd: 2433
    functionName: xmlRelaxNGSchemaFacetCheck
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckFacet
    - xmlSchemaFreeFacet
    - xmlStrEqual
    - xmlSchemaGetPredefinedType
    - xmlSchemaValidateFacet
    - xmlSchemaNewFacet
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGSchemaFacetCheck(void *data ATTRIBUTE_UNUSED,\n                           const
      xmlChar * type, const xmlChar * facetname,\n                           const
      xmlChar * val, const xmlChar * strval,\n                           void *value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/relaxng.c:2445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - value
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2442
    functionDepth: 1
    functionLinenumber: 2442
    functionLinenumberEnd: 2446
    functionName: xmlRelaxNGSchemaFreeValue
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeValue
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGSchemaFreeValue(void *data ATTRIBUTE_UNUSED, void *value)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/relaxng.c:2475,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/relaxng.c:2481,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/relaxng.c:2489,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/relaxng.c:2492,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/relaxng.c:2495,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/relaxng.c:2497,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/relaxng.c:2498,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 7
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    - value1
    - ctxt1
    - comp1
    - value2
    - ctxt2
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - void*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2504
      start: 2461
    functionDepth: 1
    functionLinenumber: 2461
    functionLinenumberEnd: 2504
    functionName: xmlRelaxNGSchemaTypeCompare
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPredefinedType
    - xmlSchemaValPredefTypeNode
    - xmlSchemaCompareValues
    - xmlSchemaFreeValue
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGSchemaTypeCompare(void *data ATTRIBUTE_UNUSED,\n                            const
      xmlChar * type,\n                            const xmlChar * value1,\n                            xmlNodePtr
      ctxt1,\n                            void *comp1,\n                            const
      xmlChar * value2, xmlNodePtr ctxt2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2520,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2522,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2525
      start: 2514
    functionDepth: 1
    functionLinenumber: 2514
    functionLinenumberEnd: 2525
    functionName: xmlRelaxNGDefaultTypeHave
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGDefaultTypeHave(void *data ATTRIBUTE_UNUSED,\n                          const
      xmlChar * type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2547,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2549,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - void**
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2554
      start: 2538
    functionDepth: 1
    functionLinenumber: 2538
    functionLinenumberEnd: 2554
    functionName: xmlRelaxNGDefaultTypeCheck
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGDefaultTypeCheck(void *data ATTRIBUTE_UNUSED,\n                           const
      xmlChar * type ATTRIBUTE_UNUSED,\n                           const xmlChar *
      value ATTRIBUTE_UNUSED,\n                           void **result ATTRIBUTE_UNUSED,\n
      \                          xmlNodePtr node ATTRIBUTE_UNUSED)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2580,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2581,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2582,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2583,1
    - Dst: xmlRelaxNGNormalize
      Src: /src/libxml2/relaxng.c:2590,1
    - Dst: xmlRelaxNGNormalize
      Src: /src/libxml2/relaxng.c:2591,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:2595,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2600,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2602,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 7
    argNames:
    - ATTRIBUTE_UNUSED
    - type
    - value1
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - value2
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - void*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2607
      start: 2569
    functionDepth: 1
    functionLinenumber: 2569
    functionLinenumberEnd: 2607
    functionName: xmlRelaxNGDefaultTypeCompare
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGNormalize
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGDefaultTypeCompare(void *data ATTRIBUTE_UNUSED,\n                             const
      xmlChar * type,\n                             const xmlChar * value1,\n                             xmlNodePtr
      ctxt1 ATTRIBUTE_UNUSED,\n                             void *comp1 ATTRIBUTE_UNUSED,\n
      \                            const xmlChar * value2,\n                             xmlNodePtr
      ctxt2 ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2626,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:2627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2628
      start: 2618
    functionDepth: 0
    functionLinenumber: 2618
    functionLinenumberEnd: 2628
    functionName: xmlRelaxNGFreeTypeLibrary
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGFreeTypeLibrary(void *payload,\n                          const
      xmlChar * namespace ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:2656,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:2660,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:2662,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:2665,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:2666,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:2673,1
    - Dst: xmlRelaxNGFreeTypeLibrary
      Src: /src/libxml2/relaxng.c:2675,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 7
    argNames:
    - namespace
    - data
    - have
    - check
    - comp
    - facet
    - freef
    argTypes:
    - xmlChar*
    - void*
    - xmlRelaxNGTypeHave
    - xmlRelaxNGTypeCheck
    - xmlRelaxNGTypeCompare
    - xmlRelaxNGFacetCheck
    - xmlRelaxNGTypeFree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2679
      start: 2642
    functionDepth: 4
    functionLinenumber: 2642
    functionLinenumberEnd: 2679
    functionName: xmlRelaxNGRegisterTypeLibrary
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlRelaxNGFreeTypeLibrary
    - xmlMalloc
    - xmlRngVErrMemory
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGRegisterTypeLibrary(const xmlChar * namespace, void
      *data,\n                              xmlRelaxNGTypeHave have,\n                              xmlRelaxNGTypeCheck
      check,\n                              xmlRelaxNGTypeCompare comp,\n                              xmlRelaxNGFacetCheck
      facet,\n                              xmlRelaxNGTypeFree freef)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/relaxng.c:2686,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2687
      start: 2683
    functionDepth: 1
    functionLinenumber: 2683
    functionLinenumberEnd: 2687
    functionName: xmlInitRelaxNGInternal
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlInitMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitRelaxNGInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/relaxng.c:2692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2689
    functionDepth: 1
    functionLinenumber: 2689
    functionLinenumberEnd: 2693
    functionName: xmlCleanupRelaxNGInternal
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupRelaxNGInternal(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/relaxng.c:2703,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/relaxng.c:2705,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/relaxng.c:2707,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:2711,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/relaxng.c:2713,1
    - Dst: xmlRelaxNGRegisterTypeLibrary
      Src: /src/libxml2/relaxng.c:2716,1
    - Dst: xmlRelaxNGRegisterTypeLibrary
      Src: /src/libxml2/relaxng.c:2723,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/relaxng.c:2729,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2731
      start: 2700
    functionDepth: 5
    functionLinenumber: 2700
    functionLinenumberEnd: 2731
    functionName: xmlRelaxNGInitTypes
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlMutexUnlock
    - xmlHashCreate
    - xmlMutexLock
    - xmlInitParser
    - xmlRelaxNGRegisterTypeLibrary
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGInitTypes(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCleanupTypes
      Src: /src/libxml2/relaxng.c:2745,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/relaxng.c:2746,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/relaxng.c:2748,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:2751,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/relaxng.c:2753,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2754
      start: 2742
    functionDepth: 2
    functionLinenumber: 2742
    functionLinenumberEnd: 2754
    functionName: xmlRelaxNGCleanupTypes
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlSchemaCleanupTypes
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCleanupTypes(void)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:2790,1
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:2806,1
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:2842,1
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:2860,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 84
    argCount: 1
    argNames:
    - def
    argTypes:
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2883
      start: 2774
    functionDepth: 1
    functionLinenumber: 2774
    functionLinenumberEnd: 2883
    functionName: xmlRelaxNGIsCompilable
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGIsCompilable
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGIsCompilable(xmlRelaxNGDefinePtr def)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:2904,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/relaxng.c:2911,1
    - Dst: xmlAutomataSetFlags
      Src: /src/libxml2/relaxng.c:2923,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/relaxng.c:2925,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:2927,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/relaxng.c:2930,1
    - Dst: xmlAutomataIsDeterminist
      Src: /src/libxml2/relaxng.c:2931,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/relaxng.c:2932,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/relaxng.c:2934,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/relaxng.c:2941,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/relaxng.c:2953,1
    - Dst: xmlAutomataSetFlags
      Src: /src/libxml2/relaxng.c:2956,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/relaxng.c:2957,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:2959,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/relaxng.c:2962,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/relaxng.c:2963,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/relaxng.c:2964,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/relaxng.c:2968,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/relaxng.c:2971,1
    - Dst: xmlRelaxNGTryCompile
      Src: /src/libxml2/relaxng.c:2982,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:2987,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:2994,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:2997,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3004,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3008,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3011,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3013,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3021,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3027,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3030,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3032,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3042,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3048,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3064,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3074,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3076,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/relaxng.c:3077,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3081,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/relaxng.c:3086,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3096,1
    - Dst: xmlRelaxNGDefName
      Src: /src/libxml2/relaxng.c:3098,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 147
    argCount: 2
    argNames:
    - ctxt
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3102
      start: 2893
    functionDepth: 6
    functionLinenumber: 2893
    functionLinenumberEnd: 3102
    functionName: xmlRelaxNGCompile
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlFreeAutomata
    - xmlRegexpIsDeterminist
    - xmlAutomataGetInitState
    - xmlAutomataNewEpsilon
    - xmlAutomataNewTransition2
    - xmlAutomataSetFinalState
    - xmlAutomataCompile
    - xmlRelaxNGTryCompile
    - xmlRelaxNGIsCompilable
    - xmlNewAutomata
    - xmlRelaxNGDefName
    - xmlRegFreeRegexp
    - xmlAutomataNewTransition
    - xmlAutomataSetFlags
    - xmlRngPErr
    - xmlRelaxNGCompile
    - xmlAutomataIsDeterminist
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGCompile(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGDefinePtr
      def)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGIsCompilable
      Src: /src/libxml2/relaxng.c:3123,1
    - Dst: xmlRelaxNGCompile
      Src: /src/libxml2/relaxng.c:3126,1
    - Dst: xmlRelaxNGTryCompile
      Src: /src/libxml2/relaxng.c:3132,1
    - Dst: xmlRelaxNGTryCompile
      Src: /src/libxml2/relaxng.c:3155,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - ctxt
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3169
      start: 3112
    functionDepth: 7
    functionLinenumber: 3112
    functionLinenumberEnd: 3169
    functionName: xmlRelaxNGTryCompile
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRelaxNGTryCompile
    - xmlRelaxNGCompile
    - xmlRelaxNGIsCompilable
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGTryCompile(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGDefinePtr
      def)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3202
      start: 3201
    functionDepth: 0
    functionLinenumber: 3201
    functionLinenumberEnd: 3202
    functionName: IS_BLANK_NODE
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_NODE(n)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGIsNullable
      Src: /src/libxml2/relaxng.c:3232,1
    - Dst: xmlRelaxNGIsNullable
      Src: /src/libxml2/relaxng.c:3248,1
    - Dst: xmlRelaxNGIsNullable
      Src: /src/libxml2/relaxng.c:3262,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 63
    argCount: 1
    argNames:
    - define
    argTypes:
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3278
      start: 3209
    functionDepth: 1
    functionLinenumber: 3209
    functionLinenumberEnd: 3278
    functionName: xmlRelaxNGIsNullable
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGIsNullable
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGIsNullable(xmlRelaxNGDefinePtr define)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:3292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3297
      start: 3286
    functionDepth: 1
    functionLinenumber: 3286
    functionLinenumberEnd: 3297
    functionName: xmlRelaxNGIsBlank
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGIsBlank(xmlChar * str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:3315,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:3315,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:3316,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3319,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/relaxng.c:3322,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3326,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:3332,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3335,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/relaxng.c:3338,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3342,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3348
      start: 3306
    functionDepth: 1
    functionLinenumber: 3306
    functionLinenumberEnd: 3348
    functionName: xmlRelaxNGGetDataTypeLibrary
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_RELAXNG
    - xmlGetProp
    - xmlURIEscapeStr
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlRelaxNGGetDataTypeLibrary(xmlRelaxNGParserCtxtPtr ctxt
      ATTRIBUTE_UNUSED,\n                             xmlNodePtr node)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:3366,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:3371,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:3373,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:3374,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3375,1
    - Dst: xmlRelaxNGGetDataTypeLibrary
      Src: /src/libxml2/relaxng.c:3378,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:3381,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:3387,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3389,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3396,1
    - Dst: xmlRelaxNGTypeLibraryPtr::have
      Src: /src/libxml2/relaxng.c:3400,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3402,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:3410,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3414,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/relaxng.c:3418,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3420,1
    - Dst: xmlRelaxNGTypeLibraryPtr::check
      Src: /src/libxml2/relaxng.c:3426,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3428,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3438
      start: 3357
    functionDepth: 6
    functionLinenumber: 3357
    functionLinenumberEnd: 3438
    functionName: xmlRelaxNGParseValue
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xmlStrdup
    - xmlGetProp
    - xmlRelaxNGTypeLibraryPtr::check
    - xmlHashLookup
    - xmlNodeGetContent
    - xmlRelaxNGTypeLibraryPtr::have
    - xmlRelaxNGNewDefine
    - xmlRelaxNGGetDataTypeLibrary
    - xmlRngPErr
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParseValue(xmlRelaxNGParserCtxtPtr ctxt,
      xmlNodePtr node)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:3458,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3460,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:3464,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:3465,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3466,1
    - Dst: xmlRelaxNGGetDataTypeLibrary
      Src: /src/libxml2/relaxng.c:3469,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:3472,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:3474,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3476,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3477,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:3485,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3487,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3494,1
    - Dst: xmlRelaxNGTypeLibraryPtr::have
      Src: /src/libxml2/relaxng.c:3498,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3500,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3504,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3508,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3509,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3520,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3522,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3524,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3529,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:3532,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:3535,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3537,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/relaxng.c:3540,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:3557,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:3561,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3569,1
    - Dst: xmlRelaxNGParsePattern
      Src: /src/libxml2/relaxng.c:3573,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:3590,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 99
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3596
      start: 3447
    functionDepth: 6
    functionLinenumber: 3447
    functionLinenumberEnd: 3596
    functionName: xmlRelaxNGParseData
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xmlStrdup
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlHashLookup
    - xmlNodeGetContent
    - xmlRelaxNGTypeLibraryPtr::have
    - xmlRelaxNGNewDefine
    - xmlRelaxNGGetDataTypeLibrary
    - xmlRelaxNGParsePattern
    - xmlRngPErr
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParseData(xmlRelaxNGParserCtxtPtr ctxt,
      xmlNodePtr node)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/relaxng.c:3618,1
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:3641,1
    - Dst: xmlRelaxNGCompareNameClasses
      Src: /src/libxml2/relaxng.c:3643,1
    - Dst: xmlRelaxNGCompareNameClasses
      Src: /src/libxml2/relaxng.c:3655,1
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:3683,1
    - Dst: xmlRelaxNGCompareNameClasses
      Src: /src/libxml2/relaxng.c:3685,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 76
    argCount: 2
    argNames:
    - def1
    - def2
    argTypes:
    - xmlRelaxNGDefinePtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3698
      start: 3609
    functionDepth: 1
    functionLinenumber: 3609
    functionLinenumberEnd: 3698
    functionName: xmlRelaxNGCompareNameClasses
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGCompareNameClasses
    - xmlRelaxNGElementMatch
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGCompareNameClasses(xmlRelaxNGDefinePtr def1,\n                             xmlRelaxNGDefinePtr
      def2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGCompareNameClasses
      Src: /src/libxml2/relaxng.c:3723,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - def1
    - def2
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr*
    - xmlRelaxNGDefinePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3731
      start: 3710
    functionDepth: 2
    functionLinenumber: 3710
    functionLinenumberEnd: 3731
    functionName: xmlRelaxNGCompareElemDefLists
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGCompareNameClasses
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGCompareElemDefLists(xmlRelaxNGParserCtxtPtr ctxt\n                              ATTRIBUTE_UNUSED,
      xmlRelaxNGDefinePtr * def1,\n                              xmlRelaxNGDefinePtr
      * def2)"
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 39
    argCount: 2
    argNames:
    - ctxt
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3804
      start: 3740
    functionDepth: 0
    functionLinenumber: 3740
    functionLinenumberEnd: 3804
    functionName: xmlRelaxNGGenerateAttributes
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGGenerateAttributes(xmlRelaxNGParserCtxtPtr ctxt,\n                             xmlRelaxNGDefinePtr
      def)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:3843,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:3845,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:3852,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:3855,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:3856,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 59
    argCount: 3
    argNames:
    - ctxt
    - def
    - eora
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3907
      start: 3814
    functionDepth: 3
    functionLinenumber: 3814
    functionLinenumberEnd: 3907
    functionName: xmlRelaxNGGetElements
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRealloc
    - xmlFree
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: "xmlRelaxNGDefinePtr *\nxmlRelaxNGGetElements(xmlRelaxNGParserCtxtPtr
      ctxt,\n                      xmlRelaxNGDefinePtr def, int eora)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGIsNullable
      Src: /src/libxml2/relaxng.c:3940,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:3948,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:3952,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:3960,1
    - Dst: xmlRelaxNGGetElements
      Src: /src/libxml2/relaxng.c:3966,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:3976,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:3984,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:3988,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:3995,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:3999,1
    - Dst: xmlRelaxNGCompareElemDefLists
      Src: /src/libxml2/relaxng.c:4020,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4028,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4031,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:4039,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 88
    argCount: 2
    argNames:
    - ctxt
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4042
      start: 3915
    functionDepth: 5
    functionLinenumber: 3915
    functionLinenumberEnd: 4042
    functionName: xmlRelaxNGCheckChoiceDeterminism
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlHashFree
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRelaxNGIsNullable
    - xmlHashCreate
    - xmlRelaxNGGetElements
    - xmlHashAddEntry2
    - xmlRelaxNGCompareElemDefLists
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGCheckChoiceDeterminism(xmlRelaxNGParserCtxtPtr ctxt,\n
      \                                xmlRelaxNGDefinePtr def)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:4084,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:4088,1
    - Dst: xmlRelaxNGGetElements
      Src: /src/libxml2/relaxng.c:4094,1
    - Dst: xmlRelaxNGGetElements
      Src: /src/libxml2/relaxng.c:4100,1
    - Dst: xmlRelaxNGCompareElemDefLists
      Src: /src/libxml2/relaxng.c:4111,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4113,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4120,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4123,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 2
    argNames:
    - ctxt
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4125
      start: 4050
    functionDepth: 6
    functionLinenumber: 4050
    functionLinenumberEnd: 4125
    functionName: xmlRelaxNGCheckGroupAttrs
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRngPErr
    - xmlFree
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlRelaxNGGetElements
    - xmlRelaxNGCompareElemDefLists
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGCheckGroupAttrs(xmlRelaxNGParserCtxtPtr ctxt,\n                          xmlRelaxNGDefinePtr
      def)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:4172,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:4178,1
    - Dst: xmlRelaxNGGetElements
      Src: /src/libxml2/relaxng.c:4184,1
    - Dst: xmlRelaxNGGetElements
      Src: /src/libxml2/relaxng.c:4185,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:4194,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:4197,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4199,1
    - Dst: xmlRelaxNGCompareElemDefLists
      Src: /src/libxml2/relaxng.c:4206,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4209,1
    - Dst: xmlRelaxNGCompareElemDefLists
      Src: /src/libxml2/relaxng.c:4213,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4216,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:4225,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/relaxng.c:4227,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:4233,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/relaxng.c:4235,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:4237,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/relaxng.c:4239,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:4244,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/relaxng.c:4246,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/relaxng.c:4248,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/relaxng.c:4250,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:4279,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4284,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4285,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4287,1
    - Dst: xmlRelaxNGFreePartition
      Src: /src/libxml2/relaxng.c:4289,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 101
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4290
      start: 4141
    functionDepth: 6
    functionLinenumber: 4141
    functionLinenumberEnd: 4290
    functionName: xmlRelaxNGComputeInterleaves
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRngPErr
    - xmlRelaxNGFreePartition
    - xmlFree
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlHashCreate
    - xmlRelaxNGGetElements
    - XML_INT_TO_PTR
    - xmlHashAddEntry2
    - xmlRelaxNGCompareElemDefLists
    - memset
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGComputeInterleaves(void *payload, void *data,\n                             const
      xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4306,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4313,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:4315,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:4319,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:4320,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4321,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4328,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4332,1
    - Dst: xmlRelaxNGParseElement
      Src: /src/libxml2/relaxng.c:4333,1
    - Dst: xmlRelaxNGParsePattern
      Src: /src/libxml2/relaxng.c:4335,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4350
      start: 4299
    functionDepth: 6
    functionLinenumber: 4299
    functionLinenumberEnd: 4350
    functionName: xmlRelaxNGParseInterleave
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGParseElement
    - xmlHashAddEntry
    - xmlRelaxNGNewDefine
    - xmlRngPErrMemory
    - xmlRelaxNGParsePattern
    - snprintf
    - xmlHashCreate
    - xmlRngPErr
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParseInterleave(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4368,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:4372,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4374,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:4378,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4379,1
    - Dst: xmlRelaxNGParseGrammarContent
      Src: /src/libxml2/relaxng.c:4388,1
    - Dst: xmlRelaxNGParseGrammarContent
      Src: /src/libxml2/relaxng.c:4393,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4398
      start: 4359
    functionDepth: 6
    functionLinenumber: 4359
    functionLinenumberEnd: 4398
    functionName: xmlRelaxNGParseInclude
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGParseGrammarContent
    - xmlRngPErr
    - xmlDocGetRootElement
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGParseInclude(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr
      node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:4415,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4417,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:4420,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:4421,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4422,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4425,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4427,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4433,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4439,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4443,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4445,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:4449,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:4453,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4455,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4468
      start: 4407
    functionDepth: 6
    functionLinenumber: 4407
    functionLinenumberEnd: 4468
    functionName: xmlRelaxNGParseDefine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xmlGetProp
    - xmlFree
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlRelaxNGNewDefine
    - xmlRelaxNGParsePatterns
    - xmlHashCreate
    - xmlRngPErr
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGParseDefine(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr
      node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:4485,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:4490,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4493,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4497,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - payload
    - data
    - name
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4506
      start: 4477
    functionDepth: 6
    functionLinenumber: 4477
    functionLinenumberEnd: 4506
    functionName: xmlRelaxNGParseImportRef
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlRngPErr
    - xmlHashAddEntry
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGParseImportRef(void *payload, void *data, const xmlChar
      *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4523,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4525,1
    - Dst: xmlHashScan
      Src: /src/libxml2/relaxng.c:4529,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - grammar
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGGrammarPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4531
      start: 4515
    functionDepth: 6
    functionLinenumber: 4515
    functionLinenumberEnd: 4531
    functionName: xmlRelaxNGParseImportRefs
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlHashCreate
    - xmlRngPErr
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGParseImportRefs(xmlRelaxNGParserCtxtPtr ctxt,\n                          xmlRelaxNGGrammarPtr
      grammar)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4551,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:4560,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4562,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:4570,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:4574,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:4581,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4583,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:4586,1
    - Dst: xmlRelaxNGParseDocument
      Src: /src/libxml2/relaxng.c:4594,1
    - Dst: xmlRelaxNGParseImportRefs
      Src: /src/libxml2/relaxng.c:4600,1
    - Dst: xmlUnsetProp
      Src: /src/libxml2/relaxng.c:4607,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4615
      start: 4540
    functionDepth: 7
    functionLinenumber: 4540
    functionLinenumberEnd: 4615
    functionName: xmlRelaxNGProcessExternalRef
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlFree
    - xmlRelaxNGNewDefine
    - xmlRelaxNGParseImportRefs
    - xmlUnsetProp
    - xmlRelaxNGParseDocument
    - xmlRngPErr
    - xmlDocGetRootElement
    - xmlSetProp
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGProcessExternalRef(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 66
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4633,1
    - Dst: xmlRelaxNGParseElement
      Src: /src/libxml2/relaxng.c:4634,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4635,1
    - Dst: xmlRelaxNGParseAttribute
      Src: /src/libxml2/relaxng.c:4636,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4637,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4638,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4643,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4646,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4647,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4652,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4655,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4656,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4661,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4665,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4667,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4668,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4673,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4677,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4679,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4680,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4685,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4689,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4691,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4692,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4697,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4702,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4704,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4705,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4710,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4714,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4716,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4717,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:4721,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4723,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:4726,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:4727,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4728,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4734,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4738,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4740,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:4746,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:4751,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4754,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4758,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4769,1
    - Dst: xmlRelaxNGParseData
      Src: /src/libxml2/relaxng.c:4770,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4771,1
    - Dst: xmlRelaxNGParseValue
      Src: /src/libxml2/relaxng.c:4772,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4773,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4774,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4779,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:4783,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4785,1
    - Dst: xmlRelaxNGParseInterleave
      Src: /src/libxml2/relaxng.c:4786,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4787,1
    - Dst: xmlRelaxNGProcessExternalRef
      Src: /src/libxml2/relaxng.c:4788,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4789,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4790,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4795,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4799,1
    - Dst: xmlRelaxNGParseGrammar
      Src: /src/libxml2/relaxng.c:4806,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4821,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4823,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4828,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:4832,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4834,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:4837,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:4838,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4839,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4845,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:4849,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4851,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:4858,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:4863,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4865,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:4875,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4877,1
    - Dst: xmlRelaxNGParseInterleave
      Src: /src/libxml2/relaxng.c:4881,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4886,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4894,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4903,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 242
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4909
      start: 4625
    functionDepth: 8
    functionLinenumber: 4625
    functionLinenumberEnd: 4909
    functionName: xmlRelaxNGParsePattern
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - IS_RELAXNG
    - xmlValidateNCName
    - xmlRelaxNGParseElement
    - xmlGetProp
    - xmlRelaxNGParseData
    - xmlRelaxNGParseAttribute
    - xmlRelaxNGParseInterleave
    - xmlRelaxNGProcessExternalRef
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlRelaxNGNewDefine
    - xmlRelaxNGParseGrammar
    - xmlRelaxNGParsePatterns
    - xmlHashCreate
    - xmlRngPErr
    - xmlRelaxNGParseValue
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParsePattern(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:4925,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4932,1
    - Dst: xmlRelaxNGParseNameClass
      Src: /src/libxml2/relaxng.c:4939,1
    - Dst: xmlRelaxNGParsePattern
      Src: /src/libxml2/relaxng.c:4944,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4971,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4976,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:4985,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 58
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4990
      start: 4918
    functionDepth: 9
    functionLinenumber: 4918
    functionLinenumberEnd: 4990
    functionName: xmlRelaxNGParseAttribute
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGParseNameClass
    - xmlRngPErr
    - xmlRelaxNGParsePattern
    - xmlRelaxNGNewDefine
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParseAttribute(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5007,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5008,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5013,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5018,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5023,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5029,1
    - Dst: xmlRelaxNGParseNameClass
      Src: /src/libxml2/relaxng.c:5037,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 3
    argNames:
    - ctxt
    - node
    - attr
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5049
      start: 5000
    functionDepth: 6
    functionLinenumber: 5000
    functionLinenumberEnd: 5049
    functionName: xmlRelaxNGParseExceptNameClass
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGParseNameClass
    - xmlRngPErr
    - xmlRelaxNGNewDefine
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: "xmlRelaxNGDefinePtr xmlRelaxNGParseExceptNameClass(xmlRelaxNGParserCtxtPtr
      ctxt,\n                               xmlNodePtr node, int attr)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5067,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5067,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5068,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5071,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5081,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/relaxng.c:5082,1
    - Dst: xmlRelaxNGNormExtSpace
      Src: /src/libxml2/relaxng.c:5083,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/relaxng.c:5084,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5086,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5090,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:5095,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5099,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5100,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5106,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5107,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5111,1
    - Dst: xmlRelaxNGParseExceptNameClass
      Src: /src/libxml2/relaxng.c:5116,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5120,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:5122,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5124,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5129,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5131,1
    - Dst: xmlRelaxNGParseExceptNameClass
      Src: /src/libxml2/relaxng.c:5137,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5141,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5148,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5156,1
    - Dst: xmlRelaxNGParseNameClass
      Src: /src/libxml2/relaxng.c:5162,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5175,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 95
    argCount: 3
    argNames:
    - ctxt
    - node
    - def
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5193
      start: 5059
    functionDepth: 7
    functionLinenumber: 5059
    functionLinenumberEnd: 5193
    functionName: xmlRelaxNGParseNameClass
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 3
    functionsReached:
    - IS_RELAXNG
    - xmlValidateNCName
    - xmlGetProp
    - xmlRelaxNGParseNameClass
    - xmlStrEqual
    - xmlNodeGetContent
    - xmlRelaxNGParseExceptNameClass
    - xmlRelaxNGNewDefine
    - xmlRngPErr
    - xmlRelaxNGNormExtSpace
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: "xmlRelaxNGDefinePtr xmlRelaxNGParseNameClass(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node,\n                         xmlRelaxNGDefinePtr def)"
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5209,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5216,1
    - Dst: xmlRelaxNGParseNameClass
      Src: /src/libxml2/relaxng.c:5221,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5226,1
    - Dst: xmlRelaxNGParsePattern
      Src: /src/libxml2/relaxng.c:5235,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5261,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5278,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5283,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5288,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5293,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 81
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5303
      start: 5202
    functionDepth: 9
    functionLinenumber: 5202
    functionLinenumberEnd: 5303
    functionName: xmlRelaxNGParseElement
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRelaxNGParseNameClass
    - xmlRngPErr
    - xmlRelaxNGParsePattern
    - xmlRelaxNGNewDefine
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: xmlRelaxNGDefinePtr xmlRelaxNGParseElement(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5321,1
    - Dst: xmlRelaxNGParseElement
      Src: /src/libxml2/relaxng.c:5322,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5330,1
    - Dst: xmlRelaxNGParsePattern
      Src: /src/libxml2/relaxng.c:5341,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 3
    argNames:
    - ctxt
    - nodes
    - group
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5355
      start: 5313
    functionDepth: 10
    functionLinenumber: 5313
    functionLinenumberEnd: 5355
    functionName: xmlRelaxNGParsePatterns
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGParseElement
    - xmlRelaxNGParsePattern
    - xmlRelaxNGNewDefine
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: "xmlRelaxNGDefinePtr xmlRelaxNGParsePatterns(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr nodes,\n                        int group)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5371,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5375,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5376,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5381,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5384,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5385,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5390,1
    - Dst: xmlRelaxNGParsePatterns
      Src: /src/libxml2/relaxng.c:5394,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5406,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ctxt
    - nodes
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5411
      start: 5364
    functionDepth: 11
    functionLinenumber: 5364
    functionLinenumberEnd: 5411
    functionName: xmlRelaxNGParseStart
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGParsePatterns
    - xmlRngPErr
    - xmlRelaxNGNewDefine
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGParseStart(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr nodes)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5427,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5432,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5434,1
    - Dst: xmlRelaxNGParseStart
      Src: /src/libxml2/relaxng.c:5437,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5441,1
    - Dst: xmlRelaxNGParseDefine
      Src: /src/libxml2/relaxng.c:5442,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:5445,1
    - Dst: xmlRelaxNGParseInclude
      Src: /src/libxml2/relaxng.c:5446,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5450,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - nodes
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5458
      start: 5420
    functionDepth: 12
    functionLinenumber: 5420
    functionLinenumberEnd: 5458
    functionName: xmlRelaxNGParseGrammarContent
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGParseStart
    - xmlRelaxNGParseInclude
    - xmlRngPErr
    - xmlRelaxNGParseDefine
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGParseGrammarContent(xmlRelaxNGParserCtxtPtr ctxt,\n
      \                             xmlNodePtr nodes)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5484,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5490,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/relaxng.c:5496,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5504,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5509,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - payload
    - data
    - name
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5513
      start: 5468
    functionDepth: 6
    functionLinenumber: 5468
    functionLinenumberEnd: 5513
    functionName: xmlRelaxNGCheckReference
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlRngPErr
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCheckReference(void *payload, void *data, const xmlChar
      * name)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:5537,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5539,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5543,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5547,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5551,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5556,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:5560,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5565,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5575,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5590,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:5611,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5613,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:5619,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:5620,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5622,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 76
    argCount: 3
    argNames:
    - payload
    - data
    - name
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5628
      start: 5523
    functionDepth: 6
    functionLinenumber: 5523
    functionLinenumberEnd: 5628
    functionName: xmlRelaxNGCheckCombine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlHashAddEntry
    - xmlRelaxNGNewDefine
    - snprintf
    - xmlHashCreate
    - xmlRngPErr
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCheckCombine(void *payload, void *data, const xmlChar
      * name)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5653,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5655,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:5659,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5663,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5667,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:5671,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5675,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5680,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:5684,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5689,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:5699,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/relaxng.c:5710,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5712,1
    - Dst: snprintf
      Src: /src/libxml2/relaxng.c:5718,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/relaxng.c:5719,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5721,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 60
    argCount: 2
    argNames:
    - ctxt
    - grammar
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGGrammarPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5727
      start: 5637
    functionDepth: 6
    functionLinenumber: 5637
    functionLinenumberEnd: 5727
    functionName: xmlRelaxNGCombineStart
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlHashAddEntry
    - xmlRelaxNGNewDefine
    - snprintf
    - xmlHashCreate
    - xmlRngPErr
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGCombineStart(xmlRelaxNGParserCtxtPtr ctxt,\n                       xmlRelaxNGGrammarPtr
      grammar)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGCheckCycles
      Src: /src/libxml2/relaxng.c:5748,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:5751,1
    - Dst: xmlRelaxNGCheckCycles
      Src: /src/libxml2/relaxng.c:5757,1
    - Dst: xmlRelaxNGCheckCycles
      Src: /src/libxml2/relaxng.c:5759,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - ctxt
    - cur
    - depth
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5764
      start: 5737
    functionDepth: 6
    functionLinenumber: 5737
    functionLinenumberEnd: 5764
    functionName: xmlRelaxNGCheckCycles
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGCheckCycles
    - xmlRngPErr
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGCheckCycles(xmlRelaxNGParserCtxtPtr ctxt,\n                      xmlRelaxNGDefinePtr
      cur, int depth)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - cur
    - parent
    - prev
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    - xmlRelaxNGDefinePtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5810
      start: 5775
    functionDepth: 0
    functionLinenumber: 5775
    functionLinenumberEnd: 5810
    functionName: xmlRelaxNGTryUnlink
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRelaxNGDefinePtr
    signature: "xmlRelaxNGDefinePtr xmlRelaxNGTryUnlink(xmlRelaxNGParserCtxtPtr ctxt
      ATTRIBUTE_UNUSED,\n                    xmlRelaxNGDefinePtr cur,\n                    xmlRelaxNGDefinePtr
      parent, xmlRelaxNGDefinePtr prev)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGSimplify
      Src: /src/libxml2/relaxng.c:5831,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5850,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5852,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5872,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5874,1
    - Dst: xmlRelaxNGSimplify
      Src: /src/libxml2/relaxng.c:5880,1
    - Dst: xmlRelaxNGSimplify
      Src: /src/libxml2/relaxng.c:5882,1
    - Dst: xmlRelaxNGSimplify
      Src: /src/libxml2/relaxng.c:5884,1
    - Dst: xmlRelaxNGGenerateAttributes
      Src: /src/libxml2/relaxng.c:5895,1
    - Dst: xmlRelaxNGGenerateAttributes
      Src: /src/libxml2/relaxng.c:5914,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5961,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5975,1
    - Dst: xmlRelaxNGTryUnlink
      Src: /src/libxml2/relaxng.c:5989,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 119
    argCount: 3
    argNames:
    - ctxt
    - cur
    - parent
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5998
      start: 5819
    functionDepth: 1
    functionLinenumber: 5819
    functionLinenumberEnd: 5998
    functionName: xmlRelaxNGSimplify
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGGenerateAttributes
    - xmlRelaxNGTryUnlink
    - xmlRelaxNGSimplify
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSimplify(xmlRelaxNGParserCtxtPtr ctxt,\n                   xmlRelaxNGDefinePtr
      cur, xmlRelaxNGDefinePtr parent)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - ct1
    - ct2
    argTypes:
    - xmlRelaxNGContentType
    - xmlRelaxNGContentType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6022
      start: 6007
    functionDepth: 0
    functionLinenumber: 6007
    functionLinenumberEnd: 6022
    functionName: xmlRelaxNGGroupContentType
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRelaxNGContentType
    signature: "xmlRelaxNGContentType xmlRelaxNGGroupContentType(xmlRelaxNGContentType
      ct1,\n                           xmlRelaxNGContentType ct2)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 2
    argNames:
    - ct1
    - ct2
    argTypes:
    - xmlRelaxNGContentType
    - xmlRelaxNGContentType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6045
      start: 6031
    functionDepth: 0
    functionLinenumber: 6031
    functionLinenumberEnd: 6045
    functionName: xmlRelaxNGMaxContentType
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRelaxNGContentType
    signature: "xmlRelaxNGContentType xmlRelaxNGMaxContentType(xmlRelaxNGContentType
      ct1,\n                         xmlRelaxNGContentType ct2)"
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6075,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6081,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6087,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6091,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6097,1
    - Dst: xmlRelaxNGCheckGroupAttrs
      Src: /src/libxml2/relaxng.c:6109,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6111,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6116,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6121,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6126,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6136,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6138,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6143,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6146,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6154,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6159,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6164,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6169,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6174,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6179,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6189,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6193,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6199,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6204,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6209,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6215,1
    - Dst: xmlRelaxNGGroupContentType
      Src: /src/libxml2/relaxng.c:6217,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6220,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6225,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6230,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6236,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6240,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6245,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6254,1
    - Dst: xmlRelaxNGCheckGroupAttrs
      Src: /src/libxml2/relaxng.c:6259,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6262,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6267,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6272,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6281,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6290,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6294,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6298,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6302,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6306,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6310,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6315,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6320,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6327,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6332,1
    - Dst: xmlRelaxNGCheckChoiceDeterminism
      Src: /src/libxml2/relaxng.c:6338,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6340,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6343,1
    - Dst: xmlRelaxNGGroupContentType
      Src: /src/libxml2/relaxng.c:6347,1
    - Dst: xmlRelaxNGGroupContentType
      Src: /src/libxml2/relaxng.c:6353,1
    - Dst: xmlRelaxNGMaxContentType
      Src: /src/libxml2/relaxng.c:6355,1
    - Dst: xmlRelaxNGMaxContentType
      Src: /src/libxml2/relaxng.c:6357,1
    - Dst: xmlRelaxNGGroupContentType
      Src: /src/libxml2/relaxng.c:6366,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 205
    argCount: 4
    argNames:
    - ctxt
    - cur
    - flags
    - ptype
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlRelaxNGDefinePtr
    - int
    - xmlRelaxNGType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6371
      start: 6056
    functionDepth: 7
    functionLinenumber: 6056
    functionLinenumberEnd: 6371
    functionName: xmlRelaxNGCheckRules
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGCheckChoiceDeterminism
    - xmlRelaxNGCheckRules
    - xmlRelaxNGMaxContentType
    - xmlRelaxNGCheckGroupAttrs
    - xmlRngPErr
    - xmlRelaxNGGroupContentType
    linkageType: ''
    returnType: xmlRelaxNGContentType
    signature: "xmlRelaxNGContentType xmlRelaxNGCheckRules(xmlRelaxNGParserCtxtPtr
      ctxt,\n                     xmlRelaxNGDefinePtr cur, int flags,\n                     xmlRelaxNGType
      ptype)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewGrammar
      Src: /src/libxml2/relaxng.c:6386,1
    - Dst: xmlRelaxNGParseGrammarContent
      Src: /src/libxml2/relaxng.c:6407,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6410,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6413,1
    - Dst: xmlRelaxNGCombineStart
      Src: /src/libxml2/relaxng.c:6420,1
    - Dst: xmlHashScan
      Src: /src/libxml2/relaxng.c:6422,1
    - Dst: xmlHashScan
      Src: /src/libxml2/relaxng.c:6429,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - ctxt
    - nodes
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6437
      start: 6381
    functionDepth: 13
    functionLinenumber: 6381
    functionLinenumberEnd: 6437
    functionName: xmlRelaxNGParseGrammar
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGNewGrammar
    - xmlRelaxNGParseGrammarContent
    - xmlRelaxNGCombineStart
    - xmlRngPErr
    - xmlHashScan
    linkageType: ''
    returnType: xmlRelaxNGGrammarPtr
    signature: xmlRelaxNGGrammarPtr xmlRelaxNGParseGrammar(xmlRelaxNGParserCtxtPtr
      ctxt, xmlNodePtr nodes)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewRelaxNG
      Src: /src/libxml2/relaxng.c:6458,1
    - Dst: IS_RELAXNG
      Src: /src/libxml2/relaxng.c:6464,1
    - Dst: xmlRelaxNGParseGrammar
      Src: /src/libxml2/relaxng.c:6465,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/relaxng.c:6467,1
    - Dst: xmlRelaxNGNewGrammar
      Src: /src/libxml2/relaxng.c:6473,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/relaxng.c:6475,1
    - Dst: xmlRelaxNGParseStart
      Src: /src/libxml2/relaxng.c:6494,1
    - Dst: xmlRelaxNGCheckCycles
      Src: /src/libxml2/relaxng.c:6500,1
    - Dst: xmlRelaxNGSimplify
      Src: /src/libxml2/relaxng.c:6502,1
    - Dst: xmlRelaxNGCheckRules
      Src: /src/libxml2/relaxng.c:6508,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6514
      start: 6448
    functionDepth: 14
    functionLinenumber: 6448
    functionLinenumberEnd: 6514
    functionName: xmlRelaxNGParseDocument
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - IS_RELAXNG
    - xmlRelaxNGCheckCycles
    - xmlRelaxNGNewRelaxNG
    - xmlRelaxNGCheckRules
    - xmlRelaxNGFree
    - xmlRelaxNGParseStart
    - xmlRelaxNGNewGrammar
    - xmlRelaxNGSimplify
    - xmlRelaxNGParseGrammar
    linkageType: ''
    returnType: xmlRelaxNGPtr
    signature: xmlRelaxNGPtr xmlRelaxNGParseDocument(xmlRelaxNGParserCtxtPtr ctxt,
      xmlNodePtr node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:6538,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:6540,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:6543,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:6544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - URL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6546
      start: 6529
    functionDepth: 3
    functionLinenumber: 6529
    functionLinenumberEnd: 6546
    functionName: xmlRelaxNGNewParserCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 5
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlRngPErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGParserCtxt
    signature: 'xmlRelaxNGParserCtxt *

      xmlRelaxNGNewParserCtxt(const char *URL)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:6565,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:6567,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:6570,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6574
      start: 6556
    functionDepth: 3
    functionLinenumber: 6556
    functionLinenumberEnd: 6574
    functionName: xmlRelaxNGNewMemParserCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGParserCtxt
    signature: 'xmlRelaxNGParserCtxt *

      xmlRelaxNGNewMemParserCtxt(const char *buffer, int size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyDoc
      Src: /src/libxml2/relaxng.c:6592,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:6597,1
    - Dst: xmlRngPErrMemory
      Src: /src/libxml2/relaxng.c:6599,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:6600,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:6603,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6608
      start: 6584
    functionDepth: 3
    functionLinenumber: 6584
    functionLinenumberEnd: 6608
    functionName: xmlRelaxNGNewDocParserCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlRngPErrMemory
    - xmlCopyDoc
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: xmlRelaxNGParserCtxt
    signature: 'xmlRelaxNGParserCtxt *

      xmlRelaxNGNewDocParserCtxt(xmlDoc *doc)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6621,1
    - Dst: xmlRelaxNGFreeDocument
      Src: /src/libxml2/relaxng.c:6623,1
    - Dst: xmlHashFree
      Src: /src/libxml2/relaxng.c:6625,1
    - Dst: xmlRelaxNGFreeDocumentList
      Src: /src/libxml2/relaxng.c:6627,1
    - Dst: xmlRelaxNGFreeIncludeList
      Src: /src/libxml2/relaxng.c:6629,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6631,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6633,1
    - Dst: xmlRelaxNGFreeDefine
      Src: /src/libxml2/relaxng.c:6638,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6639,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:6642,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6643,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6644
      start: 6615
    functionDepth: 4
    functionLinenumber: 6615
    functionLinenumberEnd: 6644
    functionName: xmlRelaxNGFreeParserCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 5
    functionsReached:
    - xmlRelaxNGFreeIncludeList
    - xmlFree
    - xmlHashFree
    - xmlRelaxNGFreeDocument
    - xmlRelaxNGFreeDocumentList
    - xmlRelaxNGFreeDefine
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeParserCtxt(xmlRelaxNGParserCtxt *ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:6661,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:6665,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:6670,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:6679,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:6686,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 36
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6695
      start: 6652
    functionDepth: 1
    functionLinenumber: 6652
    functionLinenumberEnd: 6695
    functionName: xmlRelaxNGNormExtSpace
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 7
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGNormExtSpace(xmlChar * value)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6712,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6713,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6714,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6715,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6716,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6717,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6718,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6719,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6720,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6724,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6725,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6726,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6727,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6731,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6732,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6733,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6734,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6738,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6739,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6740,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6741,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6745,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/relaxng.c:6749,1
    - Dst: xmlParseURI
      Src: /src/libxml2/relaxng.c:6752,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6754,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6759,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6764,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/relaxng.c:6768,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6771,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6773,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6774,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 51
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6781
      start: 6703
    functionDepth: 6
    functionLinenumber: 6703
    functionLinenumberEnd: 6781
    functionName: xmlRelaxNGCleanupAttributes
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlNodeListGetString
    - xmlFreeURI
    - xmlRngPErr
    - xmlParseURI
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCleanupAttributes(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr
      node)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6808,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6811,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6812,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6813,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6814,1
    - Dst: xmlRelaxNGCleanupAttributes
      Src: /src/libxml2/relaxng.c:6821,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6822,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6828,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6833,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6839,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6841,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6845,1
    - Dst: xmlParseURI
      Src: /src/libxml2/relaxng.c:6849,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6851,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6855,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6857,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6862,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6866,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/relaxng.c:6867,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6869,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/relaxng.c:6873,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/relaxng.c:6874,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/relaxng.c:6875,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6877,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6881,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6883,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6885,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6890,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6892,1
    - Dst: xmlRelaxNGLoadExternalRef
      Src: /src/libxml2/relaxng.c:6893,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6895,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6899,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6900,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6905,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6906,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6908,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6913,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6915,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/relaxng.c:6921,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/relaxng.c:6922,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6924,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6928,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6930,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6935,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6937,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6938,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6943,1
    - Dst: xmlRelaxNGLoadInclude
      Src: /src/libxml2/relaxng.c:6949,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6951,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6953,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6956,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6960,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6962,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:6963,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6972,1
    - Dst: xmlNewChild
      Src: /src/libxml2/relaxng.c:6976,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/relaxng.c:6981,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/relaxng.c:6984,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/relaxng.c:6985,1
    - Dst: xmlAddChild
      Src: /src/libxml2/relaxng.c:6986,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:6991,1
    - Dst: xmlUnsetProp
      Src: /src/libxml2/relaxng.c:6995,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:6996,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:6997,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7000,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7003,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7004,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7006,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7009,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7010,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7011,1
    - Dst: xmlHasProp
      Src: /src/libxml2/relaxng.c:7016,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:7023,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7030,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7032,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7033,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7036,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/relaxng.c:7042,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/relaxng.c:7044,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/relaxng.c:7048,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7050,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7055,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/relaxng.c:7057,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7059,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7060,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7062,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7068,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7070,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7076,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7084,1
    - Dst: xmlRelaxNGCleanupTree
      Src: /src/libxml2/relaxng.c:7087,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7091,1
    - Dst: xmlRelaxNGCleanupTree
      Src: /src/libxml2/relaxng.c:7094,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7098,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7103,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7108,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7118,1
    - Dst: xmlGetProp
      Src: /src/libxml2/relaxng.c:7126,1
    - Dst: xmlHasProp
      Src: /src/libxml2/relaxng.c:7132,1
    - Dst: xmlSetProp
      Src: /src/libxml2/relaxng.c:7133,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/relaxng.c:7137,1
    - Dst: xmlAddNextSibling
      Src: /src/libxml2/relaxng.c:7138,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:7142,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxml2/relaxng.c:7167,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7170,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:7172,1
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 310
    argCount: 2
    argNames:
    - ctxt
    - root
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7221
      start: 6790
    functionDepth: 16
    functionLinenumber: 6790
    functionLinenumberEnd: 7221
    functionName: xmlRelaxNGCleanupTree
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName2
    - xmlGetProp
    - xmlRelaxNGLoadInclude
    - xmlUnlinkNode
    - xmlNodeGetContent
    - xmlHasProp
    - xmlRelaxNGLoadExternalRef
    - xmlAddNextSibling
    - xmlNodeGetBase
    - xmlFree
    - xmlAddPrevSibling
    - xmlAddChild
    - xmlRelaxNGCleanupTree
    - xmlFreeURI
    - xmlSetProp
    - IS_BLANK_NODE
    - xmlStrEqual
    - xmlBuildURI
    - xmlNewDocText
    - xmlParseURI
    - xmlNewDocNode
    - xmlNewChild
    - xmlSearchNs
    - xmlRelaxNGCleanupAttributes
    - xmlNodeSetContent
    - xmlUnsetProp
    - xmlRngPErr
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCleanupTree(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr
      root)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:7239,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7241,1
    - Dst: xmlRelaxNGCleanupTree
      Src: /src/libxml2/relaxng.c:7245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7247
      start: 7231
    functionDepth: 17
    functionLinenumber: 7231
    functionLinenumberEnd: 7247
    functionName: xmlRelaxNGCleanupDoc
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRngPErr
    - xmlDocGetRootElement
    - xmlRelaxNGCleanupTree
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlRelaxNGCleanupDoc(xmlRelaxNGParserCtxtPtr ctxt, xmlDocPtr
      doc)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGInitTypes
      Src: /src/libxml2/relaxng.c:7264,1
    - Dst: xmlRelaxReadFile
      Src: /src/libxml2/relaxng.c:7273,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7275,1
    - Dst: xmlRelaxReadMemory
      Src: /src/libxml2/relaxng.c:7281,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7283,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:7288,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:7289,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7293,1
    - Dst: xmlRelaxNGCleanupDoc
      Src: /src/libxml2/relaxng.c:7302,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:7304,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/relaxng.c:7312,1
    - Dst: xmlRngPErr
      Src: /src/libxml2/relaxng.c:7314,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:7318,1
    - Dst: xmlRelaxNGParseDocument
      Src: /src/libxml2/relaxng.c:7322,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:7324,1
    - Dst: xmlHashScan
      Src: /src/libxml2/relaxng.c:7336,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/relaxng.c:7343,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/relaxng.c:7345,1
    - Dst: xmlRelaxNGNewDefine
      Src: /src/libxml2/relaxng.c:7356,1
    - Dst: xmlRelaxNGTryCompile
      Src: /src/libxml2/relaxng.c:7363,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 78
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7383
      start: 7257
    functionDepth: 18
    functionLinenumber: 7257
    functionLinenumberEnd: 7383
    functionName: xmlRelaxNGParse
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 5
    functionsReached:
    - xmlStrdup
    - xmlRelaxReadFile
    - xmlRelaxReadMemory
    - xmlRelaxNGFree
    - xmlRelaxNGTryCompile
    - xmlRelaxNGNewDefine
    - xmlDocGetRootElement
    - xmlHashScan
    - xmlRelaxNGInitTypes
    - xmlRelaxNGParseDocument
    - xmlRngPErr
    - xmlRelaxNGCleanupDoc
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlRelaxNG
    signature: 'xmlRelaxNG *

      xmlRelaxNGParse(xmlRelaxNGParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlRelaxNGParserCtxt*
    - xmlRelaxNGValidityErrorFunc
    - xmlRelaxNGValidityWarningFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7406
      start: 7395
    functionDepth: 0
    functionLinenumber: 7395
    functionLinenumberEnd: 7406
    functionName: xmlRelaxNGSetParserErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSetParserErrors(xmlRelaxNGParserCtxt *ctxt,\n                          xmlRelaxNGValidityErrorFunc
      err,\n                          xmlRelaxNGValidityWarningFunc warn, void *ctx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlRelaxNGParserCtxt*
    - xmlRelaxNGValidityErrorFunc*
    - xmlRelaxNGValidityWarningFunc*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7431
      start: 7417
    functionDepth: 0
    functionLinenumber: 7417
    functionLinenumberEnd: 7431
    functionName: xmlRelaxNGGetParserErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGGetParserErrors(xmlRelaxNGParserCtxt *ctxt,\n                          xmlRelaxNGValidityErrorFunc
      * err,\n                          xmlRelaxNGValidityWarningFunc * warn, void
      **ctx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - serror
    - ctx
    argTypes:
    - xmlRelaxNGParserCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7451
      start: 7440
    functionDepth: 0
    functionLinenumber: 7440
    functionLinenumberEnd: 7451
    functionName: xmlRelaxNGSetParserStructuredErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSetParserStructuredErrors(xmlRelaxNGParserCtxt *ctxt,\n\t\t\t\t
      \   xmlStructuredErrorFunc serror,\n\t\t\t\t    void *ctx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - loader
    - vctxt
    argTypes:
    - xmlRelaxNGParserCtxt*
    - xmlResourceLoader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7467
      start: 7460
    functionDepth: 0
    functionLinenumber: 7460
    functionLinenumberEnd: 7467
    functionName: xmlRelaxNGSetResourceLoader
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSetResourceLoader(xmlRelaxNGParserCtxt *ctxt,\n                            xmlResourceLoader
      loader, void *vctxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGDumpDefine
      Src: /src/libxml2/relaxng.c:7489,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - output
    - defines
    argTypes:
    - FILE*
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7492
      start: 7485
    functionDepth: 1
    functionLinenumber: 7485
    functionLinenumberEnd: 7492
    functionName: xmlRelaxNGDumpDefines
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGDumpDefine
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDumpDefines(FILE * output, xmlRelaxNGDefinePtr defines)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7507,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7510,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7513,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7516,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7518,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7520,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7521,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7523,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7524,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7525,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7528,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7529,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7530,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7533,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7534,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7535,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7538,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7539,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7540,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7543,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7544,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7545,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7548,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7549,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7550,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7553,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7554,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7555,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7558,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7559,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7560,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7563,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7564,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7565,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7568,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7570,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7571,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7572,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7573,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7576,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7578,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7579,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7580,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7581,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7584,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7586,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7587,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7588,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7589,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7592,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7593,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7594,1
    - Dst: xmlRelaxNGDumpDefines
      Src: /src/libxml2/relaxng.c:7606,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 105
    argCount: 2
    argNames:
    - output
    - define
    argTypes:
    - FILE*
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7609
      start: 7500
    functionDepth: 2
    functionLinenumber: 7500
    functionLinenumberEnd: 7609
    functionName: xmlRelaxNGDumpDefine
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlRelaxNGDumpDefines
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDumpDefine(FILE * output, xmlRelaxNGDefinePtr define)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7624,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7626,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7631,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7634,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7637,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7639,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7641,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7643,1
    - Dst: xmlRelaxNGDumpDefine
      Src: /src/libxml2/relaxng.c:7644,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7645,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7648,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - output
    - grammar
    - top
    argTypes:
    - FILE*
    - xmlRelaxNGGrammarPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7649
      start: 7618
    functionDepth: 3
    functionLinenumber: 7618
    functionLinenumberEnd: 7649
    functionName: xmlRelaxNGDumpGrammar
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRelaxNGDumpDefine
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDumpGrammar(FILE * output, xmlRelaxNGGrammarPtr grammar,
      int top)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7663,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7666,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7668,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7670,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7672,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7675,1
    - Dst: xmlRelaxNGDumpGrammar
      Src: /src/libxml2/relaxng.c:7678,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - output
    - schema
    argTypes:
    - FILE*
    - xmlRelaxNG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7679
      start: 7657
    functionDepth: 4
    functionLinenumber: 7657
    functionLinenumberEnd: 7679
    functionName: xmlRelaxNGDump
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlRelaxNGDumpGrammar
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDump(FILE * output, xmlRelaxNG *schema)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7695,1
    - Dst: fprintf
      Src: /src/libxml2/relaxng.c:7699,1
    - Dst: xmlDocDump
      Src: /src/libxml2/relaxng.c:7701,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - output
    - schema
    argTypes:
    - FILE*
    - xmlRelaxNG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7703
      start: 7689
    functionDepth: 1
    functionLinenumber: 7689
    functionLinenumberEnd: 7703
    functionName: xmlRelaxNGDumpTree
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlDocDump
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGDumpTree(FILE * output, xmlRelaxNG *schema)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7732,1
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7739,1
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7746,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:7752,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - token
    - transdata
    - inputdata
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7755
      start: 7722
    functionDepth: 6
    functionLinenumber: 7722
    functionLinenumberEnd: 7755
    functionName: xmlRelaxNGValidateCompiledCallback
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateDefinition
    - xmlRngVErr
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGValidateCompiledCallback(xmlRegExecCtxtPtr exec ATTRIBUTE_UNUSED,\n
      \                                  const xmlChar * token,\n                                   void
      *transdata, void *inputdata)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/relaxng.c:7777,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/relaxng.c:7786,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:7788,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:7790,1
    - Dst: xmlRegExecPushString2
      Src: /src/libxml2/relaxng.c:7796,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:7799,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:7802,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:7815,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:7823,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:7826,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/relaxng.c:7830,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 3
    argNames:
    - ctxt
    - regexp
    - content
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRegexpPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7840
      start: 7765
    functionDepth: 8
    functionLinenumber: 7765
    functionLinenumberEnd: 7840
    functionName: xmlRelaxNGValidateCompiledContent
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRegExecPushString2
    - xmlIsBlankNode
    - xmlRelaxNGDumpValidError
    - xmlRegExecPushString
    - VALID_ERR2
    - xmlRegNewExecCtxt
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateCompiledContent(xmlRelaxNGValidCtxtPtr ctxt,\n
      \                                 xmlRegexpPtr regexp, xmlNodePtr content)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:7865,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:7869,1
    - Dst: xmlRealloc
      Src: /src/libxml2/relaxng.c:7875,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:7880,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - exec
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRegExecCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7887
      start: 7860
    functionDepth: 3
    functionLinenumber: 7860
    functionLinenumberEnd: 7887
    functionName: xmlRelaxNGElemPush
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xmlRngVErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGElemPush(xmlRelaxNGValidCtxtPtr ctxt, xmlRegExecCtxtPtr
      exec)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7910
      start: 7895
    functionDepth: 0
    functionLinenumber: 7895
    functionLinenumberEnd: 7910
    functionName: xmlRelaxNGElemPop
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlRegExecCtxtPtr
    signature: xmlRegExecCtxtPtr xmlRelaxNGElemPop(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7934,1
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7943,1
    - Dst: xmlRngVErr
      Src: /src/libxml2/relaxng.c:7951,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:7959,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:7961,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/relaxng.c:7973,1
    - Dst: xmlRelaxNGElemPush
      Src: /src/libxml2/relaxng.c:7979,1
    - Dst: xmlRelaxNGNewValidState
      Src: /src/libxml2/relaxng.c:7984,1
    - Dst: xmlRelaxNGValidateAttributeList
      Src: /src/libxml2/relaxng.c:7992,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:7995,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:8000,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:8004,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:8015,1
    - Dst: xmlRelaxNGLogBestError
      Src: /src/libxml2/relaxng.c:8025,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:8028,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:8030,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:8038,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 93
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - token
    - transdata
    - inputdata
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8042
      start: 7921
    functionDepth: 8
    functionLinenumber: 7921
    functionLinenumberEnd: 8042
    functionName: xmlRelaxNGValidateProgressiveCallback
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateAttributeList
    - xmlRelaxNGFreeValidState
    - xmlRelaxNGElemPush
    - xmlRelaxNGDumpValidError
    - xmlRelaxNGFreeStates
    - VALID_ERR
    - xmlRelaxNGLogBestError
    - VALID_ERR2
    - xmlRelaxNGValidateElementEnd
    - xmlRegNewExecCtxt
    - xmlRelaxNGNewValidState
    - xmlRngVErr
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGValidateProgressiveCallback(xmlRegExecCtxtPtr exec\n
      \                                     ATTRIBUTE_UNUSED,\n                                      const
      xmlChar * token,\n                                      void *transdata, void
      *inputdata)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:8073,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:8078,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/relaxng.c:8086,1
    - Dst: xmlRelaxNGElemPush
      Src: /src/libxml2/relaxng.c:8092,1
    - Dst: xmlRegExecPushString2
      Src: /src/libxml2/relaxng.c:8101,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:8104,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8107,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 3
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - elem
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8125
      start: 8053
    functionDepth: 4
    functionLinenumber: 8053
    functionLinenumberEnd: 8125
    functionName: xmlRelaxNGValidatePushElement
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRegExecPushString2
    - xmlRelaxNGElemPush
    - VALID_ERR
    - xmlRegExecPushString
    - VALID_ERR2
    - xmlRegNewExecCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidatePushElement(xmlRelaxNGValidCtxt *ctxt,\n                              xmlDoc
      *doc ATTRIBUTE_UNUSED,\n                              xmlNode *elem)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8145,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:8152,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8154,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8159
      start: 8135
    functionDepth: 1
    functionLinenumber: 8135
    functionLinenumberEnd: 8159
    functionName: xmlRelaxNGValidatePushCData
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - IS_BLANK_CH
    - xmlRegExecPushString
    - VALID_ERR2
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidatePushCData(xmlRelaxNGValidCtxt *ctxt,\n                            const
      xmlChar * data, int len ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGElemPop
      Src: /src/libxml2/relaxng.c:8182,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/relaxng.c:8183,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8188,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/relaxng.c:8195,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - elem
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8197
      start: 8169
    functionDepth: 1
    functionLinenumber: 8169
    functionLinenumberEnd: 8197
    functionName: xmlRelaxNGValidatePopElement
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - VALID_ERR2
    - xmlRegExecPushString
    - xmlRelaxNGElemPop
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidatePopElement(xmlRelaxNGValidCtxt *ctxt,\n                             xmlDoc
      *doc ATTRIBUTE_UNUSED,\n                             xmlNode *elem)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGNewValidState
      Src: /src/libxml2/relaxng.c:8218,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:8225,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:8230,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - elem
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8233
      start: 8208
    functionDepth: 5
    functionLinenumber: 8208
    functionLinenumberEnd: 8233
    functionName: xmlRelaxNGValidateFullElement
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - xmlRelaxNGValidateDefinition
    - xmlRelaxNGFreeValidState
    - xmlRelaxNGNewValidState
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateFullElement(xmlRelaxNGValidCtxt *ctxt,\n                              xmlDoc
      *doc ATTRIBUTE_UNUSED,\n                              xmlNode *elem)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecClearErrors
      Src: /src/libxml2/relaxng.c:8245,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:8246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8250
      start: 8242
    functionDepth: 1
    functionLinenumber: 8242
    functionLinenumberEnd: 8250
    functionName: xmlRelaxNGValidCtxtClearErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGPopErrors
    - xmlRegExecClearErrors
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGValidCtxtClearErrors(xmlRelaxNGValidCtxt* ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_NODE
      Src: /src/libxml2/relaxng.c:8282,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - node
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8286
      start: 8267
    functionDepth: 0
    functionLinenumber: 8267
    functionLinenumberEnd: 8286
    functionName: xmlRelaxNGSkipIgnored
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_NODE
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlRelaxNGSkipIgnored(xmlRelaxNGValidCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \                     xmlNodePtr node)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:8310,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:8312,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8316,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8319,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8320,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8330
      start: 8296
    functionDepth: 3
    functionLinenumber: 8296
    functionLinenumberEnd: 8330
    functionName: xmlRelaxNGNormalize
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - IS_BLANK_CH
    - xmlRngVErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlRelaxNGNormalize(xmlRelaxNGValidCtxtPtr ctxt, const xmlChar * str)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGTypeLibraryPtr::check
      Src: /src/libxml2/relaxng.c:8359,1
    - Dst: xmlRelaxNGTypeLibraryPtr::check
      Src: /src/libxml2/relaxng.c:8361,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8366,1
    - Dst: xmlRelaxNGTypeLibraryPtr::freef
      Src: /src/libxml2/relaxng.c:8368,1
    - Dst: VALID_ERR2P
      Src: /src/libxml2/relaxng.c:8373,1
    - Dst: VALID_ERR3P
      Src: /src/libxml2/relaxng.c:8375,1
    - Dst: xmlRelaxNGTypeLibraryPtr::facet
      Src: /src/libxml2/relaxng.c:8381,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8395,1
    - Dst: xmlRelaxNGTypeLibraryPtr::freef
      Src: /src/libxml2/relaxng.c:8400,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 4
    argNames:
    - ctxt
    - value
    - define
    - node
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlChar*
    - xmlRelaxNGDefinePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8402
      start: 8341
    functionDepth: 1
    functionLinenumber: 8341
    functionLinenumberEnd: 8402
    functionName: xmlRelaxNGValidateDatatype
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGTypeLibraryPtr::check
    - xmlRelaxNGTypeLibraryPtr::facet
    - VALID_ERR3P
    - xmlRelaxNGTypeLibraryPtr::freef
    - xmlRelaxNGValidateValue
    - VALID_ERR2
    - VALID_ERR2P
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateDatatype(xmlRelaxNGValidCtxtPtr ctxt,\n                           const
      xmlChar * value,\n                           xmlRelaxNGDefinePtr define, xmlNodePtr
      node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8430
      start: 8410
    functionDepth: 0
    functionLinenumber: 8410
    functionLinenumberEnd: 8430
    functionName: xmlRelaxNGNextValue
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGNextValue(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - defines
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8452
      start: 8439
    functionDepth: 1
    functionLinenumber: 8439
    functionLinenumberEnd: 8452
    functionName: xmlRelaxNGValidateValueList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateValue
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateValueList(xmlRelaxNGValidCtxtPtr ctxt,\n                            xmlRelaxNGDefinePtr
      defines)"
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8474,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8484,1
    - Dst: xmlRelaxNGTypeLibraryPtr::comp
      Src: /src/libxml2/relaxng.c:8490,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8497,1
    - Dst: xmlRelaxNGNormalize
      Src: /src/libxml2/relaxng.c:8512,1
    - Dst: xmlRelaxNGNormalize
      Src: /src/libxml2/relaxng.c:8513,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8516,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:8519,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:8521,1
    - Dst: xmlRelaxNGNextValue
      Src: /src/libxml2/relaxng.c:8525,1
    - Dst: xmlRelaxNGValidateDatatype
      Src: /src/libxml2/relaxng.c:8529,1
    - Dst: xmlRelaxNGNextValue
      Src: /src/libxml2/relaxng.c:8532,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8545,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:8555,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:8558,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:8569,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:8571,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:8574,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8579,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/relaxng.c:8582,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8597,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:8606,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:8610,1
    - Dst: xmlRelaxNGValidateValueList
      Src: /src/libxml2/relaxng.c:8616,1
    - Dst: xmlRelaxNGValidateValueList
      Src: /src/libxml2/relaxng.c:8637,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:8647,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8661,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:8666,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:8671,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8679,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8695,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:8708,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8711,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 208
    argCount: 2
    argNames:
    - ctxt
    - define
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8719
      start: 8461
    functionDepth: 8
    functionLinenumber: 8461
    functionLinenumberEnd: 8719
    functionName: xmlRelaxNGValidateValue
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlFree
    - xmlRelaxNGValidateValueList
    - xmlRelaxNGDumpValidError
    - VALID_ERR
    - xmlRelaxNGValidateValue
    - xmlRelaxNGTypeLibraryPtr::comp
    - xmlRelaxNGNormalize
    - VALID_ERR2
    - xmlRelaxNGNextValue
    - xmlRelaxNGValidateDatatype
    - xmlRelaxNGPopErrors
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateValue(xmlRelaxNGValidCtxtPtr ctxt,\n                        xmlRelaxNGDefinePtr
      define)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:8735,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - defines
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8741
      start: 8728
    functionDepth: 9
    functionLinenumber: 8728
    functionLinenumberEnd: 8741
    functionName: xmlRelaxNGValidateValueContent
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateValue
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateValueContent(xmlRelaxNGValidCtxtPtr ctxt,\n
      \                              xmlRelaxNGDefinePtr defines)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8758,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8767,1
    - Dst: xmlRelaxNGAttributeMatch
      Src: /src/libxml2/relaxng.c:8779,1
    - Dst: xmlRelaxNGAttributeMatch
      Src: /src/libxml2/relaxng.c:8791,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 3
    argNames:
    - ctxt
    - define
    - prop
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8804
      start: 8751
    functionDepth: 1
    functionLinenumber: 8751
    functionLinenumberEnd: 8804
    functionName: xmlRelaxNGAttributeMatch
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlRelaxNGAttributeMatch
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGAttributeMatch(xmlRelaxNGValidCtxtPtr ctxt,\n                         xmlRelaxNGDefinePtr
      define, xmlAttrPtr prop)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8827,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:8831,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/relaxng.c:8838,1
    - Dst: xmlRelaxNGValidateValueContent
      Src: /src/libxml2/relaxng.c:8844,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:8848,1
    - Dst: xmlRelaxNGAttributeMatch
      Src: /src/libxml2/relaxng.c:8865,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/relaxng.c:8871,1
    - Dst: xmlRelaxNGValidateValueContent
      Src: /src/libxml2/relaxng.c:8876,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:8880,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 64
    argCount: 2
    argNames:
    - ctxt
    - define
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8896
      start: 8813
    functionDepth: 10
    functionLinenumber: 8813
    functionLinenumberEnd: 8896
    functionName: xmlRelaxNGValidateAttribute
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlRelaxNGValidateValueContent
    - xmlRelaxNGAttributeMatch
    - xmlNodeListGetString
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateAttribute(xmlRelaxNGValidCtxtPtr ctxt,\n                            xmlRelaxNGDefinePtr
      define)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGValidateAttribute
      Src: /src/libxml2/relaxng.c:8916,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:8928,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:8932,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 2
    argNames:
    - ctxt
    - defines
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8942
      start: 8905
    functionDepth: 11
    functionLinenumber: 8905
    functionLinenumberEnd: 8942
    functionName: xmlRelaxNGValidateAttributeList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGValidateAttribute
    - xmlRelaxNGValidateDefinition
    - VALID_ERR
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateAttributeList(xmlRelaxNGValidCtxtPtr ctxt,\n
      \                               xmlRelaxNGDefinePtr defines)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:8964,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 16
    argCount: 2
    argNames:
    - node
    - list
    argTypes:
    - xmlNodePtr
    - xmlRelaxNGDefinePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8978
      start: 8951
    functionDepth: 1
    functionLinenumber: 8951
    functionLinenumberEnd: 8978
    functionName: xmlRelaxNGNodeMatchesList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGElementMatch
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGNodeMatchesList(xmlNodePtr node, xmlRelaxNGDefinePtr
      * list)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9005,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9019,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:9022,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:9026,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9031,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:9044,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:9046,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:9049,1
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:9050,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:9052,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:9055,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9062,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:9072,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:9076,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:9079,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:9084,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:9088,1
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/relaxng.c:9095,1
    - Dst: xmlRelaxNGNodeMatchesList
      Src: /src/libxml2/relaxng.c:9098,1
    - Dst: xmlRelaxNGNodeMatchesList
      Src: /src/libxml2/relaxng.c:9107,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9128,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9131,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9138,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:9149,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9154,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9155,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9167,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9169,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9186,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9216,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9228,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9230,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9234,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9237,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9252,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9256,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9275,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:9278,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:9279,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 217
    argCount: 2
    argNames:
    - ctxt
    - define
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9281
      start: 8987
    functionDepth: 5
    functionLinenumber: 8987
    functionLinenumberEnd: 9281
    functionName: xmlRelaxNGValidateInterleave
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - xmlRelaxNGValidateDefinition
    - xmlRelaxNGFreeValidState
    - xmlStrEqual
    - xmlFree
    - xmlRelaxNGFreeStates
    - VALID_ERR
    - xmlMalloc
    - xmlRelaxNGNodeMatchesList
    - XML_PTR_TO_INT
    - xmlRelaxNGSkipIgnored
    - xmlRelaxNGCopyValidState
    - VALID_ERR2
    - xmlRelaxNGPopErrors
    - xmlRngVErrMemory
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateInterleave(xmlRelaxNGValidCtxtPtr ctxt,\n                             xmlRelaxNGDefinePtr
      define)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9298,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:9304,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9308,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - defines
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9317
      start: 9290
    functionDepth: 1
    functionLinenumber: 9290
    functionLinenumberEnd: 9317
    functionName: xmlRelaxNGValidateDefinitionList
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateDefinition
    - VALID_ERR2
    - VALID_ERR
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateDefinitionList(xmlRelaxNGValidCtxtPtr ctxt,\n
      \                                xmlRelaxNGDefinePtr defines)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9334,1
    - Dst: VALID_ERR3
      Src: /src/libxml2/relaxng.c:9335,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9341,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9343,1
    - Dst: VALID_ERR3
      Src: /src/libxml2/relaxng.c:9344,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9350,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9353,1
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:9371,1
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:9398,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9414,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9417,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 90
    argCount: 3
    argNames:
    - ctxt
    - define
    - elem
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9429
      start: 9327
    functionDepth: 8
    functionLinenumber: 9327
    functionLinenumberEnd: 9429
    functionName: xmlRelaxNGElementMatch
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 3
    functionsReached:
    - VALID_ERR3
    - xmlStrEqual
    - xmlRelaxNGDumpValidError
    - xmlRelaxNGElementMatch
    - VALID_ERR2
    - xmlRelaxNGPopErrors
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGElementMatch(xmlRelaxNGValidCtxtPtr ctxt,\n                       xmlRelaxNGDefinePtr
      define, xmlNodePtr elem)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9470
      start: 9440
    functionDepth: 0
    functionLinenumber: 9440
    functionLinenumberEnd: 9470
    functionName: xmlRelaxNGBestState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGBestState(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGBestState
      Src: /src/libxml2/relaxng.c:9487,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:9491,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9493
      start: 9478
    functionDepth: 1
    functionLinenumber: 9478
    functionLinenumberEnd: 9493
    functionName: xmlRelaxNGLogBestError
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached:
    - xmlRelaxNGValidateElementEnd
    - xmlRelaxNGBestState
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGLogBestError(xmlRelaxNGValidCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9512,1
    - Dst: VALID_ERR3
      Src: /src/libxml2/relaxng.c:9515,1
    - Dst: VALID_ERR3
      Src: /src/libxml2/relaxng.c:9524,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - dolog
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9531
      start: 9504
    functionDepth: 1
    functionLinenumber: 9504
    functionLinenumberEnd: 9531
    functionName: xmlRelaxNGValidateElementEnd
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached:
    - VALID_ERR3
    - xmlRelaxNGSkipIgnored
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGValidateElementEnd(xmlRelaxNGValidCtxtPtr ctxt, int dolog)
  - BBCount: 135
    BranchProfiles: []
    Callsites:
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9549,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9577,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9579,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9582,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:9586,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9589,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9597,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9599,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9603,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9607,1
    - Dst: xmlRelaxNGValidErrorPop
      Src: /src/libxml2/relaxng.c:9611,1
    - Dst: xmlRelaxNGElementMatch
      Src: /src/libxml2/relaxng.c:9616,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9620,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9629,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/relaxng.c:9631,1
    - Dst: xmlRelaxNGValidErrorPop
      Src: /src/libxml2/relaxng.c:9634,1
    - Dst: xmlRelaxNGNewValidState
      Src: /src/libxml2/relaxng.c:9642,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9646,1
    - Dst: xmlRelaxNGValidateAttributeList
      Src: /src/libxml2/relaxng.c:9653,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9656,1
    - Dst: xmlRelaxNGNewValidState
      Src: /src/libxml2/relaxng.c:9664,1
    - Dst: xmlRelaxNGValidateCompiledContent
      Src: /src/libxml2/relaxng.c:9668,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9674,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:9687,1
    - Dst: xmlRelaxNGLogBestError
      Src: /src/libxml2/relaxng.c:9697,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9700,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9704,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:9714,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9715,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:9719,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9726,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:9730,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:9743,1
    - Dst: xmlRelaxNGLogBestError
      Src: /src/libxml2/relaxng.c:9753,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9756,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9760,1
    - Dst: xmlRelaxNGValidateElementEnd
      Src: /src/libxml2/relaxng.c:9768,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9769,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9778,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:9781,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9790,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9798,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:9800,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9804,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9809,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9813,1
    - Dst: xmlRelaxNGNewStates
      Src: /src/libxml2/relaxng.c:9815,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9817,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9821,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9824,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9825,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9831,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:9836,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9841,1
    - Dst: xmlRelaxNGNewStates
      Src: /src/libxml2/relaxng.c:9849,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9858,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9859,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9864,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9865,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:9880,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9885,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9894,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9899,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9905,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:9912,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:9916,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9921,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9928,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9936,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9949,1
    - Dst: xmlRelaxNGNewStates
      Src: /src/libxml2/relaxng.c:9955,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:9965,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:9966,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:9973,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:9982,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:9991,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:10011,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:10014,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:10018,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:10022,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/relaxng.c:10025,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10030,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:10033,1
    - Dst: xmlRelaxNGCopyValidState
      Src: /src/libxml2/relaxng.c:10044,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:10045,1
    - Dst: xmlRelaxNGNewStates
      Src: /src/libxml2/relaxng.c:10048,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:10051,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:10054,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10058,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10062,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10068,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:10078,1
    - Dst: xmlRelaxNGPopErrors
      Src: /src/libxml2/relaxng.c:10082,1
    - Dst: xmlRelaxNGValidateDefinitionList
      Src: /src/libxml2/relaxng.c:10088,1
    - Dst: xmlRelaxNGValidateInterleave
      Src: /src/libxml2/relaxng.c:10091,1
    - Dst: xmlRelaxNGValidateAttribute
      Src: /src/libxml2/relaxng.c:10094,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:10101,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10110,1
    - Dst: xmlStrcat
      Src: /src/libxml2/relaxng.c:10116,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10123,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:10127,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:10129,1
    - Dst: xmlRelaxNGValidateDatatype
      Src: /src/libxml2/relaxng.c:10134,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10137,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10142,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10153,1
    - Dst: xmlStrcat
      Src: /src/libxml2/relaxng.c:10159,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10166,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:10170,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:10172,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:10179,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10182,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10187,1
    - Dst: VALID_ERR2
      Src: /src/libxml2/relaxng.c:10204,1
    - Dst: xmlStrcat
      Src: /src/libxml2/relaxng.c:10210,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10217,1
    - Dst: xmlStrdup
      Src: /src/libxml2/relaxng.c:10221,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:10223,1
    - Dst: xmlStrlen
      Src: /src/libxml2/relaxng.c:10228,1
    - Dst: xmlRelaxNGValidateValue
      Src: /src/libxml2/relaxng.c:10233,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:10237,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10242,1
    CyclomaticComplexity: 194
    EdgeCount: 194
    ICount: 559
    argCount: 2
    argNames:
    - ctxt
    - define
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10253
      start: 9540
    functionDepth: 12
    functionLinenumber: 9540
    functionLinenumberEnd: 10253
    functionName: xmlRelaxNGValidateState
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRelaxNGValidateAttributeList
    - xmlRelaxNGFreeValidState
    - xmlRelaxNGDumpValidError
    - xmlRelaxNGLogBestError
    - xmlRelaxNGCopyValidState
    - xmlRelaxNGValidateDatatype
    - xmlHashLookup2
    - xmlRelaxNGValidateDefinition
    - xmlFree
    - xmlRelaxNGFreeStates
    - xmlRelaxNGValidateDefinitionList
    - VALID_ERR
    - xmlRelaxNGValidateValue
    - VALID_ERR2
    - xmlStrcat
    - xmlRelaxNGValidateAttribute
    - xmlRngVErrMemory
    - xmlStrEqual
    - xmlStrlen
    - xmlRelaxNGValidateInterleave
    - xmlRelaxNGValidErrorPop
    - xmlRelaxNGAddStates
    - xmlRelaxNGSkipIgnored
    - xmlRelaxNGPopErrors
    - xmlRelaxNGValidateCompiledContent
    - xmlRelaxNGElementMatch
    - xmlRelaxNGNewStates
    - xmlRelaxNGValidateElementEnd
    - xmlRelaxNGNewValidState
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateState(xmlRelaxNGValidCtxtPtr ctxt,\n                        xmlRelaxNGDefinePtr
      define)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10274,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10281,1
    - Dst: xmlRelaxNGValidateState
      Src: /src/libxml2/relaxng.c:10284,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10287,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10292,1
    - Dst: xmlRelaxNGValidateState
      Src: /src/libxml2/relaxng.c:10307,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10313,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:10320,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:10333,1
    - Dst: xmlRelaxNGAddStates
      Src: /src/libxml2/relaxng.c:10338,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10340,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10346,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10350,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10352,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10359,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10368,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10372,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10374,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10380,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 100
    argCount: 2
    argNames:
    - ctxt
    - define
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlRelaxNGDefinePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10384
      start: 10262
    functionDepth: 13
    functionLinenumber: 10262
    functionLinenumberEnd: 10384
    functionName: xmlRelaxNGValidateDefinition
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 6
    functionsReached:
    - xmlRelaxNGAddStates
    - xmlRelaxNGValidateState
    - xmlRelaxNGFreeStates
    - xmlRelaxNGFreeValidState
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGValidateDefinition(xmlRelaxNGValidCtxtPtr ctxt,\n                             xmlRelaxNGDefinePtr
      define)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:10409,1
    - Dst: xmlRelaxNGNewValidState
      Src: /src/libxml2/relaxng.c:10412,1
    - Dst: xmlRelaxNGValidateDefinition
      Src: /src/libxml2/relaxng.c:10414,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:10418,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:10421,1
    - Dst: xmlRelaxNGSkipIgnored
      Src: /src/libxml2/relaxng.c:10432,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10435,1
    - Dst: VALID_ERR
      Src: /src/libxml2/relaxng.c:10439,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10445,1
    - Dst: xmlRelaxNGDumpValidError
      Src: /src/libxml2/relaxng.c:10449,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:10454,1
    - Dst: xmlValidateDocumentFinal
      Src: /src/libxml2/relaxng.c:10467,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 64
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10475
      start: 10393
    functionDepth: 14
    functionLinenumber: 10393
    functionLinenumberEnd: 10475
    functionName: xmlRelaxNGValidateDocument
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGValidateDefinition
    - xmlRelaxNGFreeValidState
    - xmlRelaxNGDumpValidError
    - VALID_ERR
    - xmlRelaxNGSkipIgnored
    - xmlValidateDocumentFinal
    - xmlRelaxNGNewValidState
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGValidateDocument(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr
      doc)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 32
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10527
      start: 10488
    functionDepth: 0
    functionLinenumber: 10488
    functionLinenumberEnd: 10527
    functionName: xmlRelaxNGCleanPSVI
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGCleanPSVI(xmlNodePtr node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/relaxng.c:10545,1
    - Dst: xmlRngVErrMemory
      Src: /src/libxml2/relaxng.c:10547,1
    - Dst: memset
      Src: /src/libxml2/relaxng.c:10550,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlRelaxNG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10563
      start: 10540
    functionDepth: 3
    functionLinenumber: 10540
    functionLinenumberEnd: 10563
    functionName: xmlRelaxNGNewValidCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 6
    functionsReached:
    - xmlMalloc
    - xmlRngVErrMemory
    - memset
    linkageType: ''
    returnType: xmlRelaxNGValidCtxt
    signature: 'xmlRelaxNGValidCtxt *

      xmlRelaxNGNewValidCtxt(xmlRelaxNG *schema)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10578,1
    - Dst: xmlRelaxNGFreeValidState
      Src: /src/libxml2/relaxng.c:10581,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10583,1
    - Dst: xmlRelaxNGFreeStates
      Src: /src/libxml2/relaxng.c:10587,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10589,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10592,1
    - Dst: xmlRelaxNGElemPop
      Src: /src/libxml2/relaxng.c:10596,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/relaxng.c:10598,1
    - Dst: xmlRelaxNGElemPop
      Src: /src/libxml2/relaxng.c:10599,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10601,1
    - Dst: xmlFree
      Src: /src/libxml2/relaxng.c:10603,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10604
      start: 10570
    functionDepth: 5
    functionLinenumber: 10570
    functionLinenumberEnd: 10604
    functionName: xmlRelaxNGFreeValidCtxt
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 7
    functionsReached:
    - xmlRelaxNGFreeValidState
    - xmlFree
    - xmlRelaxNGFreeStates
    - xmlRelaxNGElemPop
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: void
    signature: void xmlRelaxNGFreeValidCtxt(xmlRelaxNGValidCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlRelaxNGValidityErrorFunc
    - xmlRelaxNGValidityWarningFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10627
      start: 10616
    functionDepth: 0
    functionLinenumber: 10616
    functionLinenumberEnd: 10627
    functionName: xmlRelaxNGSetValidErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSetValidErrors(xmlRelaxNGValidCtxt *ctxt,\n                         xmlRelaxNGValidityErrorFunc
      err,\n                         xmlRelaxNGValidityWarningFunc warn, void *ctx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - serror
    - ctx
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10646
      start: 10636
    functionDepth: 0
    functionLinenumber: 10636
    functionLinenumberEnd: 10646
    functionName: xmlRelaxNGSetValidStructuredErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlRelaxNGSetValidStructuredErrors(xmlRelaxNGValidCtxt *ctxt,\n
      \                                  xmlStructuredErrorFunc serror, void *ctx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlRelaxNGValidityErrorFunc*
    - xmlRelaxNGValidityWarningFunc*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10671
      start: 10657
    functionDepth: 0
    functionLinenumber: 10657
    functionLinenumberEnd: 10671
    functionName: xmlRelaxNGGetValidErrors
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlRelaxNGGetValidErrors(xmlRelaxNGValidCtxt *ctxt,\n                         xmlRelaxNGValidityErrorFunc
      * err,\n                         xmlRelaxNGValidityWarningFunc * warn, void
      **ctx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGValidateDocument
      Src: /src/libxml2/relaxng.c:10691,1
    - Dst: xmlRelaxNGCleanPSVI
      Src: /src/libxml2/relaxng.c:10695,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlRelaxNGValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10703
      start: 10681
    functionDepth: 15
    functionLinenumber: 10681
    functionLinenumberEnd: 10703
    functionName: xmlRelaxNGValidateDoc
    functionSourceFile: /src/libxml2/relaxng.c
    functionUses: 4
    functionsReached:
    - xmlRelaxNGValidateDocument
    - xmlRelaxNGCleanPSVI
    linkageType: ''
    returnType: int
    signature: int xmlRelaxNGValidateDoc(xmlRelaxNGValidCtxt *ctxt, xmlDoc *doc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buf
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: BUF_ERROR
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BUF_ERROR(buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - buf
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: BUF_STATIC
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BUF_STATIC(buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBufPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionName: xmlBufMemoryError
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlBufMemoryError(xmlBufPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBufPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: xmlBufOverflowError
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlBufOverflowError(xmlBufPtr buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:91,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:100,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:102,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 109
    functionName: xmlBufCreate
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 10
    functionsReached:
    - xmlMalloc
    - xmlFree
    linkageType: ''
    returnType: xmlBuf
    signature: 'xmlBuf *

      xmlBufCreate(size_t size)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:131,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:138,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:145,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:147,1
    - Dst: memcpy
      Src: /src/libxml2/buf.c:150,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - mem
    - size
    - isStatic
    argTypes:
    - xmlChar*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 160
    functionName: xmlBufCreateMem
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - memcpy
    - xmlFree
    linkageType: ''
    returnType: xmlBuf
    signature: 'xmlBuf *

      xmlBufCreateMem(const xmlChar *mem, size_t size, int isStatic)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:177,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:177,1
    - Dst: xmlStrndup
      Src: /src/libxml2/buf.c:181,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 193
    functionName: xmlBufDetach
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - BUF_STATIC
    - xmlStrndup
    - BUF_ERROR
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBufDetach(xmlBuf *buf)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:205,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:206,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 208
    functionName: xmlBufFree
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 7
    functionsReached:
    - BUF_STATIC
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlBufFree(xmlBuf *buf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:217,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:217,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 226
    functionName: xmlBufEmpty
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - BUF_STATIC
    - BUF_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlBufEmpty(xmlBuf *buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:243,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBuf*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 256
    functionName: xmlBufShrink
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 7
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: size_t
    signature: size_t xmlBufShrink(xmlBuf *buf, size_t len)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/libxml2/buf.c:282,1
    - Dst: xmlBufOverflowError
      Src: /src/libxml2/buf.c:289,1
    - Dst: xmlRealloc
      Src: /src/libxml2/buf.c:305,1
    - Dst: xmlBufMemoryError
      Src: /src/libxml2/buf.c:307,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:311,1
    - Dst: xmlBufMemoryError
      Src: /src/libxml2/buf.c:313,1
    - Dst: memcpy
      Src: /src/libxml2/buf.c:317,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:318,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 41
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBufPtr
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 326
    functionName: xmlBufGrowInternal
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlFree
    - xmlMalloc
    - xmlBufOverflowError
    - memmove
    - memcpy
    - xmlBufMemoryError
    linkageType: ''
    returnType: int
    signature: int xmlBufGrowInternal(xmlBufPtr buf, size_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:340,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:340,1
    - Dst: xmlBufGrowInternal
      Src: /src/libxml2/buf.c:346,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBuf*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 338
    functionDepth: 3
    functionLinenumber: 338
    functionLinenumberEnd: 350
    functionName: xmlBufGrow
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - BUF_STATIC
    - xmlBufGrowInternal
    - BUF_ERROR
    linkageType: ''
    returnType: int
    signature: int xmlBufGrow(xmlBuf *buf, size_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 358
    functionDepth: 1
    functionLinenumber: 358
    functionLinenumberEnd: 365
    functionName: xmlBufContent
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 15
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBufContent(const xmlBuf *buf)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 380
    functionName: xmlBufEnd
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 4
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBufEnd(xmlBuf *buf)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:394,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:394,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBuf*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 401
    functionName: xmlBufAddLen
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - BUF_STATIC
    - BUF_ERROR
    linkageType: ''
    returnType: int
    signature: int xmlBufAddLen(xmlBuf *buf, size_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 416
    functionName: xmlBufUse
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 13
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: size_t
    signature: size_t xmlBufUse(xmlBuf *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:427,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 431
    functionName: xmlBufAvail
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: size_t
    signature: size_t xmlBufAvail(xmlBuf *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:442,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 446
    functionName: xmlBufIsEmpty
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 0
    functionsReached:
    - BUF_ERROR
    linkageType: ''
    returnType: int
    signature: int xmlBufIsEmpty(xmlBuf *buf)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:460,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:460,1
    - Dst: xmlBufGrowInternal
      Src: /src/libxml2/buf.c:468,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:472,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - buf
    - str
    - len
    argTypes:
    - xmlBuf*
    - xmlChar*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 458
    functionDepth: 3
    functionLinenumber: 458
    functionLinenumberEnd: 477
    functionName: xmlBufAdd
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached:
    - BUF_STATIC
    - xmlBufGrowInternal
    - memmove
    - BUF_ERROR
    linkageType: ''
    returnType: int
    signature: int xmlBufAdd(xmlBuf *buf, const xmlChar *str, size_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufAdd
      Src: /src/libxml2/buf.c:490,1
    - Dst: strlen
      Src: /src/libxml2/buf.c:490,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - buf
    - str
    argTypes:
    - xmlBuf*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 486
    functionDepth: 4
    functionLinenumber: 486
    functionLinenumberEnd: 491
    functionName: xmlBufCat
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufAdd
    - strlen
    linkageType: ''
    returnType: int
    signature: int xmlBufCat(xmlBuf *buf, const xmlChar *str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:509,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:519,1
    - Dst: xmlBufMemoryError
      Src: /src/libxml2/buf.c:522,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 502
    functionDepth: 2
    functionLinenumber: 502
    functionLinenumberEnd: 535
    functionName: xmlBufFromBuffer
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlBufMemoryError
    linkageType: ''
    returnType: xmlBuf
    signature: 'xmlBuf *

      xmlBufFromBuffer(xmlBuffer *buffer)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BUF_ERROR
      Src: /src/libxml2/buf.c:553,1
    - Dst: BUF_STATIC
      Src: /src/libxml2/buf.c:553,1
    - Dst: xmlBufFree
      Src: /src/libxml2/buf.c:555,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:573,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - buf
    - ret
    argTypes:
    - xmlBuf*
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 548
    functionDepth: 2
    functionLinenumber: 548
    functionLinenumberEnd: 575
    functionName: xmlBufBackToBuffer
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - BUF_STATIC
    - BUF_ERROR
    - xmlBufFree
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlBufBackToBuffer(xmlBuf *buf, xmlBuffer *ret)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/buf.c:589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - input
    argTypes:
    - xmlBuf*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 590
    functionName: xmlBufResetInput
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached:
    - xmlBufUpdateInput
    linkageType: ''
    returnType: int
    signature: int xmlBufResetInput(xmlBuf *buf, xmlParserInput *input)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - buf
    - input
    - pos
    argTypes:
    - xmlBuf*
    - xmlParserInput*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 612
    functionName: xmlBufUpdateInput
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlBufUpdateInput(xmlBuf *buf, xmlParserInput *input, size_t pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlBufferAllocationScheme
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 629
    functionName: xmlSetBufferAllocationScheme
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme
      ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 641
    functionName: xmlGetBufferAllocationScheme
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlBufferAllocationScheme
    signature: xmlBufferAllocationScheme xmlGetBufferAllocationScheme(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:654,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:661,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:663,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 670
    functionName: xmlBufferCreate
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 9
    functionsReached:
    - xmlMalloc
    - xmlFree
    linkageType: ''
    returnType: xmlBuffer
    signature: 'xmlBuffer *

      xmlBufferCreate(void)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:685,1
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:694,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:696,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 707
    functionName: xmlBufferCreateSize
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlFree
    linkageType: ''
    returnType: xmlBuffer
    signature: 'xmlBuffer *

      xmlBufferCreateSize(size_t size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/buf.c:729,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:730,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 741
    functionName: xmlBufferDetach
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 5
    functionsReached:
    - xmlStrndup
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBufferDetach(xmlBuffer *buf)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreateSize
      Src: /src/libxml2/buf.c:756,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:758,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - mem
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 754
    functionDepth: 1
    functionLinenumber: 754
    functionLinenumberEnd: 760
    functionName: xmlBufferCreateStatic
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferAdd
    - xmlBufferCreateSize
    linkageType: ''
    returnType: xmlBuffer
    signature: 'xmlBuffer *

      xmlBufferCreateStatic(void *mem, size_t size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:787,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:789,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:791,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 792
    functionName: xmlBufferFree
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 11
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlBufferFree(xmlBuffer *buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 799
    functionDepth: 0
    functionLinenumber: 799
    functionLinenumberEnd: 815
    functionName: xmlBufferEmpty
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlBufferEmpty(xmlBuffer *buf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/libxml2/buf.c:841,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBuffer*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 826
    functionDepth: 0
    functionLinenumber: 826
    functionLinenumberEnd: 845
    functionName: xmlBufferShrink
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - memmove
    linkageType: ''
    returnType: int
    signature: int xmlBufferShrink(xmlBuffer *buf, unsigned int len)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/buf.c:882,1
    - Dst: memcpy
      Src: /src/libxml2/buf.c:886,1
    - Dst: xmlFree
      Src: /src/libxml2/buf.c:887,1
    - Dst: xmlRealloc
      Src: /src/libxml2/buf.c:889,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - xmlBuffer*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 900
    functionName: xmlBufferGrow
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - memcpy
    - xmlRealloc
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlBufferGrow(xmlBuffer *buf, unsigned int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/libxml2/buf.c:919,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - file
    - buf
    argTypes:
    - FILE*
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 921
    functionName: xmlBufferDump
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - fwrite
    linkageType: ''
    returnType: int
    signature: int xmlBufferDump(FILE *file, xmlBuffer *buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 936
    functionName: xmlBufferContent
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBufferContent(const xmlBuffer *buf)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 951
    functionName: xmlBufferLength
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlBufferLength(const xmlBuffer *buf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferGrow
      Src: /src/libxml2/buf.c:971,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlBuffer*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 962
    functionDepth: 1
    functionLinenumber: 962
    functionLinenumberEnd: 974
    functionName: xmlBufferResize
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferGrow
    linkageType: ''
    returnType: int
    signature: int xmlBufferResize(xmlBuffer *buf, unsigned int size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/buf.c:991,1
    - Dst: xmlBufferGrow
      Src: /src/libxml2/buf.c:997,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1001,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - buf
    - str
    - len
    argTypes:
    - xmlBuffer*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 986
    functionDepth: 1
    functionLinenumber: 986
    functionLinenumberEnd: 1005
    functionName: xmlBufferAdd
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 7
    functionsReached:
    - xmlBufferGrow
    - memmove
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlBufferAdd(xmlBuffer *buf, const xmlChar *str, int len)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/buf.c:1024,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1036,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1042,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1043,1
    - Dst: xmlBufferGrow
      Src: /src/libxml2/buf.c:1052,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1056,1
    - Dst: memmove
      Src: /src/libxml2/buf.c:1057,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - buf
    - str
    - len
    argTypes:
    - xmlBuffer*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1017
    functionDepth: 1
    functionLinenumber: 1017
    functionLinenumberEnd: 1060
    functionName: xmlBufferAddHead
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferGrow
    - memmove
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlBufferAddHead(xmlBuffer *buf, const xmlChar *str, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1071,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - str
    argTypes:
    - xmlBuffer*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1069
    functionDepth: 2
    functionLinenumber: 1069
    functionLinenumberEnd: 1072
    functionName: xmlBufferCat
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 5
    functionsReached:
    - xmlBufferAdd
    linkageType: ''
    returnType: int
    signature: int xmlBufferCat(xmlBuffer *buf, const xmlChar *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - str
    argTypes:
    - xmlBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1081
    functionDepth: 2
    functionLinenumber: 1081
    functionLinenumberEnd: 1084
    functionName: xmlBufferCCat
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 6
    functionsReached:
    - xmlBufferAdd
    linkageType: ''
    returnType: int
    signature: int xmlBufferCCat(xmlBuffer *buf, const char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - string
    argTypes:
    - xmlBuffer*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1095
      start: 1092
    functionDepth: 2
    functionLinenumber: 1092
    functionLinenumberEnd: 1095
    functionName: xmlBufferWriteCHAR
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferAdd
    linkageType: ''
    returnType: void
    signature: void xmlBufferWriteCHAR(xmlBuffer *buf, const xmlChar *string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - string
    argTypes:
    - xmlBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1105
    functionDepth: 2
    functionLinenumber: 1105
    functionLinenumberEnd: 1108
    functionName: xmlBufferWriteChar
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferAdd
    linkageType: ''
    returnType: void
    signature: void xmlBufferWriteChar(xmlBuffer *buf, const char *string)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrchr
      Src: /src/libxml2/buf.c:1125,1
    - Dst: xmlStrchr
      Src: /src/libxml2/buf.c:1126,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1127,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1132,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1133,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/buf.c:1142,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1143,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1146,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/buf.c:1147,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1148,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1151,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/buf.c:1152,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/buf.c:1153,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - buf
    - string
    argTypes:
    - xmlBuffer*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1120
    functionDepth: 3
    functionLinenumber: 1120
    functionLinenumberEnd: 1155
    functionName: xmlBufferWriteQuotedString
    functionSourceFile: /src/libxml2/buf.c
    functionUses: 1
    functionsReached:
    - xmlBufferAdd
    - xmlStrchr
    - xmlBufferCat
    - xmlBufferCCat
    linkageType: ''
    returnType: void
    signature: void xmlBufferWriteQuotedString(xmlBuffer *buf, const xmlChar *string)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: IS_ALPHA
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_ALPHA(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: IS_LOWALPHA
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_LOWALPHA(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: IS_UPALPHA
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_UPALPHA(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 69
    functionName: IS_DIGIT
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_DIGIT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: IS_ALPHANUM
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_ALPHANUM(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: IS_MARK
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_MARK(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: IS_UNWISE
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_UNWISE(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionName: IS_RESERVED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_RESERVED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: IS_UNRESERVED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_UNRESERVED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: NEXT
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEXT(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - s
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 120
    functionName: STRNDUP
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: STRNDUP(s, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: ISA_DIGIT
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_DIGIT(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: ISA_ALPHA
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_ALPHA(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: ISA_HEXDIG
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_HEXDIG(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: ISA_SUB_DELIM
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_SUB_DELIM(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 151
    functionName: ISA_GEN_DELIM
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_GEN_DELIM(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: ISA_RESERVED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_RESERVED(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: ISA_STRICTLY_UNRESERVED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_STRICTLY_UNRESERVED(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionName: ISA_PCT_ENCODED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_PCT_ENCODED(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - u
    - ','
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: ISA_PCHAR
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_PCHAR(u, p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 188
    functionName: ISA_UCSCHAR
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_UCSCHAR(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - u
    - ','
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: ISA_UNRESERVED
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ISA_UNRESERVED(u, p)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISA_STRICTLY_UNRESERVED
      Src: /src/libxml2/uri.c:200,1
    - Dst: IS_UNWISE
      Src: /src/libxml2/uri.c:204,1
    - Dst: ISA_UCSCHAR
      Src: /src/libxml2/uri.c:207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - uri
    - cur
    argTypes:
    - xmlURIPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 212
    functionName: xmlIsUnreserved
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - IS_UNWISE
    - ISA_UCSCHAR
    - ISA_STRICTLY_UNRESERVED
    linkageType: ''
    returnType: int
    signature: int xmlIsUnreserved(xmlURIPtr uri, const char *cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISA_ALPHA
      Src: /src/libxml2/uri.c:228,1
    - Dst: ISA_ALPHA
      Src: /src/libxml2/uri.c:240,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:240,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:243,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:244,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 250
    functionName: xmlParse3986Scheme
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - ISA_DIGIT
    - STRNDUP
    - xmlFree
    - ISA_ALPHA
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Scheme(xmlURIPtr uri, const char **str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:272,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:274,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:277,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:279,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:281,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 287
    functionName: xmlParse3986Fragment
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlURIUnescapeString
    - ISA_PCHAR
    - STRNDUP
    - NEXT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Fragment(xmlURIPtr uri, const char **str)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:305,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:306,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:309,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:311,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:313,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:321,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:322,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 328
    functionName: xmlParse3986Query
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlURIUnescapeString
    - ISA_PCHAR
    - STRNDUP
    - NEXT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Query(xmlURIPtr uri, const char **str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:346,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:347,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 365
    functionName: xmlParse3986Port
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - ISA_DIGIT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Port(xmlURIPtr uri, const char **str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISA_UNRESERVED
      Src: /src/libxml2/uri.c:383,1
    - Dst: ISA_PCT_ENCODED
      Src: /src/libxml2/uri.c:383,1
    - Dst: ISA_SUB_DELIM
      Src: /src/libxml2/uri.c:384,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:385,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:388,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:390,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:392,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 400
    functionName: xmlParse3986Userinfo
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlURIUnescapeString
    - ISA_SUB_DELIM
    - ISA_PCT_ENCODED
    - STRNDUP
    - ISA_UNRESERVED
    - NEXT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Userinfo(xmlURIPtr uri, const char **str)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:418,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:420,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:422,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:422,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:424,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:424,1
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:427,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 16
    argCount: 1
    argNames:
    - str
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 414
    functionDepth: 1
    functionLinenumber: 414
    functionLinenumberEnd: 436
    functionName: xmlParse3986DecOctet
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - ISA_DIGIT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986DecOctet(const char **str)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: ISA_DIGIT
      Src: /src/libxml2/uri.c:472,1
    - Dst: xmlParse3986DecOctet
      Src: /src/libxml2/uri.c:473,1
    - Dst: xmlParse3986DecOctet
      Src: /src/libxml2/uri.c:478,1
    - Dst: xmlParse3986DecOctet
      Src: /src/libxml2/uri.c:482,1
    - Dst: xmlParse3986DecOctet
      Src: /src/libxml2/uri.c:486,1
    - Dst: ISA_UNRESERVED
      Src: /src/libxml2/uri.c:495,1
    - Dst: ISA_PCT_ENCODED
      Src: /src/libxml2/uri.c:496,1
    - Dst: ISA_SUB_DELIM
      Src: /src/libxml2/uri.c:496,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:497,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:500,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:502,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:505,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:507,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 62
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 515
    functionName: xmlParse3986Host
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlParse3986DecOctet
    - xmlURIUnescapeString
    - ISA_SUB_DELIM
    - ISA_PCT_ENCODED
    - STRNDUP
    - ISA_UNRESERVED
    - ISA_DIGIT
    - NEXT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Host(xmlURIPtr uri, const char **str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Userinfo
      Src: /src/libxml2/uri.c:537,1
    - Dst: xmlParse3986Host
      Src: /src/libxml2/uri.c:544,1
    - Dst: xmlParse3986Port
      Src: /src/libxml2/uri.c:548,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 527
    functionDepth: 3
    functionLinenumber: 527
    functionLinenumberEnd: 553
    functionName: xmlParse3986Authority
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParse3986Host
    - xmlParse3986Port
    - xmlParse3986Userinfo
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Authority(xmlURIPtr uri, const char **str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:576,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:581,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:588,1
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:591,1
    - Dst: NEXT
      Src: /src/libxml2/uri.c:592,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 4
    argNames:
    - uri
    - str
    - forbid
    - empty
    argTypes:
    - xmlURIPtr
    - char**
    - char
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 595
    functionName: xmlParse3986Segment
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - ISA_PCHAR
    - NEXT
    linkageType: ''
    returnType: int
    signature: int xmlParse3986Segment(xmlURIPtr uri, const char **str, char forbid,
      int empty)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:617,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:621,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:624,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:626,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 607
    functionDepth: 2
    functionLinenumber: 607
    functionLinenumberEnd: 635
    functionName: xmlParse3986PathAbEmpty
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - STRNDUP
    - xmlFree
    - xmlParse3986Segment
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlParse3986PathAbEmpty(xmlURIPtr uri, const char **str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:658,1
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:662,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:667,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:670,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:672,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 647
    functionDepth: 2
    functionLinenumber: 647
    functionLinenumberEnd: 681
    functionName: xmlParse3986PathAbsolute
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - STRNDUP
    - xmlFree
    - xmlParse3986Segment
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlParse3986PathAbsolute(xmlURIPtr uri, const char **str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:701,1
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:705,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:709,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:712,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:714,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 693
    functionDepth: 2
    functionLinenumber: 693
    functionLinenumberEnd: 723
    functionName: xmlParse3986PathRootless
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - STRNDUP
    - xmlFree
    - xmlParse3986Segment
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlParse3986PathRootless(xmlURIPtr uri, const char **str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:743,1
    - Dst: xmlParse3986Segment
      Src: /src/libxml2/uri.c:747,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:751,1
    - Dst: STRNDUP
      Src: /src/libxml2/uri.c:754,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:756,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 735
    functionDepth: 2
    functionLinenumber: 735
    functionLinenumberEnd: 765
    functionName: xmlParse3986PathNoScheme
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - STRNDUP
    - xmlFree
    - xmlParse3986Segment
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlParse3986PathNoScheme(xmlURIPtr uri, const char **str)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Authority
      Src: /src/libxml2/uri.c:790,1
    - Dst: xmlParse3986PathAbEmpty
      Src: /src/libxml2/uri.c:797,1
    - Dst: xmlParse3986PathAbsolute
      Src: /src/libxml2/uri.c:802,1
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:804,1
    - Dst: xmlParse3986PathRootless
      Src: /src/libxml2/uri.c:805,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:810,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 780
    functionDepth: 4
    functionLinenumber: 780
    functionLinenumberEnd: 816
    functionName: xmlParse3986HierPart
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParse3986PathRootless
    - xmlFree
    - ISA_PCHAR
    - xmlParse3986PathAbEmpty
    - xmlParse3986Authority
    - xmlParse3986PathAbsolute
    linkageType: ''
    returnType: int
    signature: int xmlParse3986HierPart(xmlURIPtr uri, const char **str)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Authority
      Src: /src/libxml2/uri.c:838,1
    - Dst: xmlParse3986PathAbEmpty
      Src: /src/libxml2/uri.c:840,1
    - Dst: xmlParse3986PathAbsolute
      Src: /src/libxml2/uri.c:843,1
    - Dst: ISA_PCHAR
      Src: /src/libxml2/uri.c:845,1
    - Dst: xmlParse3986PathNoScheme
      Src: /src/libxml2/uri.c:846,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:851,1
    - Dst: xmlParse3986Query
      Src: /src/libxml2/uri.c:858,1
    - Dst: xmlParse3986Fragment
      Src: /src/libxml2/uri.c:863,1
    - Dst: xmlCleanURI
      Src: /src/libxml2/uri.c:867,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 832
    functionDepth: 4
    functionLinenumber: 832
    functionLinenumberEnd: 871
    functionName: xmlParse3986RelativeRef
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParse3986Query
    - xmlParse3986PathNoScheme
    - xmlFree
    - xmlCleanURI
    - ISA_PCHAR
    - xmlParse3986PathAbEmpty
    - xmlParse3986Authority
    - xmlParse3986PathAbsolute
    - xmlParse3986Fragment
    linkageType: ''
    returnType: int
    signature: int xmlParse3986RelativeRef(xmlURIPtr uri, const char *str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986Scheme
      Src: /src/libxml2/uri.c:888,1
    - Dst: xmlParse3986HierPart
      Src: /src/libxml2/uri.c:894,1
    - Dst: xmlParse3986Query
      Src: /src/libxml2/uri.c:898,1
    - Dst: xmlParse3986Fragment
      Src: /src/libxml2/uri.c:903,1
    - Dst: xmlCleanURI
      Src: /src/libxml2/uri.c:907,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 884
    functionDepth: 5
    functionLinenumber: 884
    functionLinenumberEnd: 911
    functionName: xmlParse3986URI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParse3986Query
    - xmlCleanURI
    - xmlParse3986Scheme
    - xmlParse3986HierPart
    - xmlParse3986Fragment
    linkageType: ''
    returnType: int
    signature: int xmlParse3986URI(xmlURIPtr uri, const char *str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanURI
      Src: /src/libxml2/uri.c:929,1
    - Dst: xmlParse3986URI
      Src: /src/libxml2/uri.c:935,1
    - Dst: xmlCleanURI
      Src: /src/libxml2/uri.c:939,1
    - Dst: xmlParse3986RelativeRef
      Src: /src/libxml2/uri.c:940,1
    - Dst: xmlCleanURI
      Src: /src/libxml2/uri.c:942,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURIPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 923
    functionDepth: 6
    functionLinenumber: 923
    functionLinenumberEnd: 947
    functionName: xmlParse3986URIReference
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParse3986RelativeRef
    - xmlParse3986URI
    - xmlCleanURI
    linkageType: ''
    returnType: int
    signature: int xmlParse3986URIReference(xmlURIPtr uri, const char *str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURI
      Src: /src/libxml2/uri.c:972,1
    - Dst: xmlParse3986URIReference
      Src: /src/libxml2/uri.c:976,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:978,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - str
    - uriOut
    argTypes:
    - char*
    - xmlURI**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 961
    functionDepth: 7
    functionLinenumber: 961
    functionLinenumberEnd: 984
    functionName: xmlParseURISafe
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - xmlParse3986URIReference
    - xmlCreateURI
    - xmlFreeURI
    linkageType: ''
    returnType: int
    signature: int xmlParseURISafe(const char *str, xmlURI **uriOut)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseURISafe
      Src: /src/libxml2/uri.c:997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 994
    functionDepth: 8
    functionLinenumber: 994
    functionLinenumberEnd: 999
    functionName: xmlParseURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 8
    functionsReached:
    - xmlParseURISafe
    linkageType: ''
    returnType: xmlURI
    signature: 'xmlURI *

      xmlParseURI(const char *str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlParse3986URIReference
      Src: /src/libxml2/uri.c:1013,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - uri
    - str
    argTypes:
    - xmlURI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1011
    functionDepth: 7
    functionLinenumber: 1011
    functionLinenumberEnd: 1014
    functionName: xmlParseURIReference
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - xmlParse3986URIReference
    linkageType: ''
    returnType: int
    signature: int xmlParseURIReference(xmlURI *uri, const char *str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURI
      Src: /src/libxml2/uri.c:1032,1
    - Dst: xmlParseURIReference
      Src: /src/libxml2/uri.c:1037,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:1039,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - str
    - raw
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1025
    functionDepth: 8
    functionLinenumber: 1025
    functionLinenumberEnd: 1044
    functionName: xmlParseURIRaw
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached:
    - xmlCreateURI
    - xmlParseURIReference
    - xmlFreeURI
    linkageType: ''
    returnType: xmlURI
    signature: 'xmlURI *

      xmlParseURIRaw(const char *str, int raw)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:1061,1
    - Dst: memset
      Src: /src/libxml2/uri.c:1064,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1067
    functionName: xmlCreateURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 5
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlURI
    signature: 'xmlURI *

      xmlCreateURI(void)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/uri.c:1078,1
    - Dst: xmlRealloc
      Src: /src/libxml2/uri.c:1081,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ret
    - max
    argTypes:
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1086
      start: 1073
    functionDepth: 1
    functionLinenumber: 1073
    functionLinenumberEnd: 1086
    functionName: xmlSaveUriRealloc
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSaveUriRealloc(xmlChar *ret, int *max)'
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:1106,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1115,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1122,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1132,1
    - Dst: IS_RESERVED
      Src: /src/libxml2/uri.c:1136,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1136,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1149,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1159,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1163,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1178,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1188,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1198,1
    - Dst: snprintf
      Src: /src/libxml2/uri.c:1202,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1206,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1215,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1219,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1234,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1252,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1262,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1266,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1282,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1290,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1298,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1306,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1310,1
    - Dst: IS_RESERVED
      Src: /src/libxml2/uri.c:1310,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1324,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1332,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1336,1
    - Dst: IS_RESERVED
      Src: /src/libxml2/uri.c:1336,1
    - Dst: xmlSaveUriRealloc
      Src: /src/libxml2/uri.c:1348,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1356,1
    CyclomaticComplexity: 124
    EdgeCount: 124
    ICount: 260
    argCount: 1
    argNames:
    - uri
    argTypes:
    - xmlURI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1094
    functionDepth: 2
    functionLinenumber: 1094
    functionLinenumberEnd: 1358
    functionName: xmlSaveUri
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - IS_RESERVED
    - xmlFree
    - xmlMalloc
    - xmlSaveUriRealloc
    - snprintf
    - IS_UNRESERVED
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSaveUri(xmlURI *uri)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:1370,1
    - Dst: fprintf
      Src: /src/libxml2/uri.c:1372,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1373,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - stream
    - uri
    argTypes:
    - FILE*
    - xmlURI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1366
    functionDepth: 3
    functionLinenumber: 1366
    functionLinenumberEnd: 1375
    functionName: xmlPrintURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - xmlSaveUri
    - fprintf
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlPrintURI(FILE *stream, xmlURI *uri)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1386,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1388,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1390,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1392,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1394,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1396,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1398,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1400,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1402,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - uri
    argTypes:
    - xmlURIPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1404
      start: 1382
    functionDepth: 0
    functionLinenumber: 1382
    functionLinenumberEnd: 1404
    functionName: xmlCleanURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 3
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlCleanURI(xmlURIPtr uri)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1415,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1416,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1417,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1418,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1419,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1420,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1421,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1422,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1423,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1424,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - uri
    argTypes:
    - xmlURI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1425
      start: 1411
    functionDepth: 0
    functionLinenumber: 1411
    functionLinenumberEnd: 1425
    functionName: xmlFreeURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 12
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeURI(xmlURI *uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - c
    - isFile
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1446
    functionName: xmlIsPathSeparator
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIsPathSeparator(int c, int isFile)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1469,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1479,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1492,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1497,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1503,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1524,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 59
    argCount: 2
    argNames:
    - path
    - isFile
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1455
    functionDepth: 1
    functionLinenumber: 1455
    functionLinenumberEnd: 1543
    functionName: xmlNormalizePath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlIsPathSeparator
    linkageType: ''
    returnType: int
    signature: int xmlNormalizePath(char *path, int isFile)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNormalizePath
      Src: /src/libxml2/uri.c:1556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1554
    functionDepth: 2
    functionLinenumber: 1554
    functionLinenumberEnd: 1557
    functionName: xmlNormalizeURIPath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - xmlNormalizePath
    linkageType: ''
    returnType: int
    signature: int xmlNormalizeURIPath(char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1559
    functionDepth: 0
    functionLinenumber: 1559
    functionLinenumberEnd: 1565
    functionName: is_hex
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int is_hex(char c)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/uri.c:1586,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:1590,1
    - Dst: is_hex
      Src: /src/libxml2/uri.c:1598,1
    - Dst: is_hex
      Src: /src/libxml2/uri.c:1598,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 41
    argCount: 3
    argNames:
    - str
    - len
    - target
    argTypes:
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1625
      start: 1579
    functionDepth: 1
    functionLinenumber: 1579
    functionLinenumberEnd: 1625
    functionName: xmlURIUnescapeString
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 12
    functionsReached:
    - xmlMalloc
    - strlen
    - is_hex
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlURIUnescapeString(const char *str, int len, char *target)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:1645,1
    - Dst: xmlStrlen
      Src: /src/libxml2/uri.c:1646,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:1649,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/uri.c:1659,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1661,1
    - Dst: xmlRealloc
      Src: /src/libxml2/uri.c:1664,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1666,1
    - Dst: IS_UNRESERVED
      Src: /src/libxml2/uri.c:1675,1
    - Dst: xmlStrchr
      Src: /src/libxml2/uri.c:1675,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 2
    argNames:
    - str
    - list
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1696
      start: 1636
    functionDepth: 1
    functionLinenumber: 1636
    functionLinenumberEnd: 1696
    functionName: xmlURIEscapeStr
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 4
    functionsReached:
    - xmlStrdup
    - xmlRealloc
    - xmlFree
    - xmlStrlen
    - xmlMalloc
    - IS_UNRESERVED
    - xmlGrowCapacity
    - xmlStrchr
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlURIEscapeStr(const xmlChar *str, const xmlChar *list)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURI
      Src: /src/libxml2/uri.c:1720,1
    - Dst: xmlParseURIReference
      Src: /src/libxml2/uri.c:1726,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:1728,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1744,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1745,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1746,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1747,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1748,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1753,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1754,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1755,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1756,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1757,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1761,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1762,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1763,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1764,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1765,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1766,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1770,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1771,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1773,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1774,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1775,1
    - Dst: snprintf
      Src: /src/libxml2/uri.c:1781,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1782,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1783,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1788,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1789,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1790,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1791,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1795,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1796,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1800,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1801,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1802,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1803,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1804,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1808,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1809,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1810,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1811,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:1815,1
    - Dst: NULLCHK
      Src: /src/libxml2/uri.c:1816,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1817,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1818,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1819,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:1822,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 82
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1710
    functionDepth: 8
    functionLinenumber: 1710
    functionLinenumberEnd: 1826
    functionName: xmlURIEscape
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached:
    - NULLCHK
    - xmlParseURIReference
    - xmlFree
    - xmlURIEscapeStr
    - xmlFreeURI
    - snprintf
    - xmlStrcat
    - xmlCreateURI
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlURIEscape(const xmlChar * str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1738
    functionDepth: 0
    functionLinenumber: 1738
    functionLinenumberEnd: 1743
    functionName: NULLCHK
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NULLCHK(p)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1838,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 6
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1834
    functionDepth: 1
    functionLinenumber: 1834
    functionLinenumberEnd: 1849
    functionName: xmlIsAbsolutePath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlIsPathSeparator
    linkageType: ''
    returnType: int
    signature: int xmlIsAbsolutePath(const xmlChar *path)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:1876,1
    - Dst: xmlStrchr
      Src: /src/libxml2/uri.c:1888,1
    - Dst: xmlStrndup
      Src: /src/libxml2/uri.c:1890,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/uri.c:1896,1
    - Dst: xmlIsAbsolutePath
      Src: /src/libxml2/uri.c:1903,1
    - Dst: xmlStrlen
      Src: /src/libxml2/uri.c:1909,1
    - Dst: xmlIsPathSeparator
      Src: /src/libxml2/uri.c:1910,1
    - Dst: xmlStrlen
      Src: /src/libxml2/uri.c:1917,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:1919,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:1923,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:1924,1
    - Dst: xmlNormalizePath
      Src: /src/libxml2/uri.c:1930,1
    - Dst: xmlStrcat
      Src: /src/libxml2/uri.c:1939,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1948,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:1949,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 63
    argCount: 3
    argNames:
    - escRef
    - base
    - out
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1951
      start: 1860
    functionDepth: 2
    functionLinenumber: 1860
    functionLinenumberEnd: 1951
    functionName: xmlResolvePath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlStrlen
    - xmlURIUnescapeString
    - xmlIsPathSeparator
    - xmlStrndup
    - xmlStrchr
    - xmlMalloc
    - memcpy
    - xmlStrcat
    - xmlIsAbsolutePath
    - xmlNormalizePath
    linkageType: ''
    returnType: int
    signature: int xmlResolvePath(const xmlChar *escRef, const xmlChar *base, xmlChar
      **out)
  - BBCount: 80
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:1985,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/uri.c:2001,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2010,1
    - Dst: xmlStrstr
      Src: /src/libxml2/uri.c:2020,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2021,1
    - Dst: xmlResolvePath
      Src: /src/libxml2/uri.c:2022,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2036,1
    - Dst: xmlResolvePath
      Src: /src/libxml2/uri.c:2037,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/uri.c:2042,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:2048,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:2059,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:2062,1
    - Dst: xmlCreateURI
      Src: /src/libxml2/uri.c:2081,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2088,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2093,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2098,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2103,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2110,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2115,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2119,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2123,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2127,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2132,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:2146,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2152,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2158,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2162,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2167,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2182,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2187,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2192,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2199,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2206,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2211,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2216,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2228,1
    - Dst: strlen
      Src: /src/libxml2/uri.c:2245,1
    - Dst: strlen
      Src: /src/libxml2/uri.c:2247,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:2248,1
    - Dst: xmlNormalizeURIPath
      Src: /src/libxml2/uri.c:2296,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:2305,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2311,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2313,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2315,1
    CyclomaticComplexity: 136
    EdgeCount: 136
    ICount: 273
    argCount: 3
    argNames:
    - URI
    - base
    - valPtr
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2318
      start: 1969
    functionDepth: 8
    functionLinenumber: 1969
    functionLinenumberEnd: 2318
    functionName: xmlBuildURISafe
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlSaveUri
    - xmlFree
    - strlen
    - xmlResolvePath
    - xmlNormalizeURIPath
    - xmlMalloc
    - xmlFreeURI
    - xmlStrstr
    - xmlMemStrdup
    - xmlCreateURI
    - xmlParseURISafe
    linkageType: ''
    returnType: int
    signature: int xmlBuildURISafe(const xmlChar *URI, const xmlChar *base, xmlChar
      **valPtr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/uri.c:2337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - URI
    - base
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2333
    functionDepth: 9
    functionLinenumber: 2333
    functionLinenumberEnd: 2339
    functionName: xmlBuildURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 9
    functionsReached:
    - xmlBuildURISafe
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBuildURI(const xmlChar *URI, const xmlChar *base)'
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURI
      Src: /src/libxml2/uri.c:2350,1
    - Dst: xmlStrstr
      Src: /src/libxml2/uri.c:2356,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2361,1
    - Dst: xmlNormalizePath
      Src: /src/libxml2/uri.c:2366,1
    - Dst: xmlIsAbsolutePath
      Src: /src/libxml2/uri.c:2370,1
    - Dst: strncmp
      Src: /src/libxml2/uri.c:2377,1
    - Dst: strncmp
      Src: /src/libxml2/uri.c:2380,1
    - Dst: strncmp
      Src: /src/libxml2/uri.c:2383,1
    - Dst: strchr
      Src: /src/libxml2/uri.c:2389,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2392,1
    - Dst: xmlStrndup
      Src: /src/libxml2/uri.c:2395,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/uri.c:2413,1
    - Dst: strlen
      Src: /src/libxml2/uri.c:2425,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:2426,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:2433,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:2435,1
    - Dst: xmlParseURIReference
      Src: /src/libxml2/uri.c:2438,1
    - Dst: xmlNormalizePath
      Src: /src/libxml2/uri.c:2442,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2458,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:2459,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 90
    argCount: 3
    argNames:
    - str
    - out
    - drive
    argTypes:
    - char*
    - xmlURIPtr*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2341
    functionDepth: 8
    functionLinenumber: 2341
    functionLinenumberEnd: 2462
    functionName: xmlParseUriOrPath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 0
    functionsReached:
    - xmlParseURIReference
    - strlen
    - xmlFree
    - xmlStrndup
    - xmlMalloc
    - strchr
    - xmlFreeURI
    - xmlStrstr
    - xmlMemStrdup
    - memcpy
    - xmlCreateURI
    - strncmp
    - xmlIsAbsolutePath
    - xmlNormalizePath
    linkageType: ''
    returnType: int
    signature: int xmlParseUriOrPath(const char *str, xmlURIPtr *out, int *drive)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseUriOrPath
      Src: /src/libxml2/uri.c:2510,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2516,1
    - Dst: xmlParseUriOrPath
      Src: /src/libxml2/uri.c:2526,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/uri.c:2539,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/uri.c:2540,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/uri.c:2545,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2546,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2552,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2586,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2615,1
    - Dst: xmlStrlen
      Src: /src/libxml2/uri.c:2621,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:2627,1
    - Dst: xmlMalloc
      Src: /src/libxml2/uri.c:2639,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:2659,1
    - Dst: memcpy
      Src: /src/libxml2/uri.c:2662,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:2673,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:2678,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/uri.c:2682,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2693,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/uri.c:2695,1
    - Dst: xmlFree
      Src: /src/libxml2/uri.c:2697,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 147
    argCount: 3
    argNames:
    - URI
    - base
    - valPtr
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2703
      start: 2488
    functionDepth: 9
    functionLinenumber: 2488
    functionLinenumberEnd: 2703
    functionName: xmlBuildRelativeURISafe
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached:
    - xmlParseUriOrPath
    - xmlStrdup
    - xmlSaveUri
    - xmlStrEqual
    - xmlFree
    - xmlStrlen
    - xmlURIEscapeStr
    - xmlMalloc
    - xmlStrcmp
    - xmlFreeURI
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlBuildRelativeURISafe(const xmlChar * URI, const xmlChar * base,\n
      \                       xmlChar **valPtr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildRelativeURISafe
      Src: /src/libxml2/uri.c:2718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - URI
    - base
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2720
      start: 2713
    functionDepth: 10
    functionLinenumber: 2713
    functionLinenumberEnd: 2720
    functionName: xmlBuildRelativeURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached:
    - xmlBuildRelativeURISafe
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlBuildRelativeURI(const xmlChar * URI, const xmlChar * base)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrstr
      Src: /src/libxml2/uri.c:2748,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/uri.c:2756,1
    - Dst: xmlStrdup
      Src: /src/libxml2/uri.c:2758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2762
      start: 2739
    functionDepth: 2
    functionLinenumber: 2739
    functionLinenumberEnd: 2762
    functionName: xmlCanonicPath
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 6
    functionsReached:
    - xmlStrdup
    - xmlURIEscapeStr
    - xmlStrstr
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCanonicPath(const xmlChar *path)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCanonicPath
      Src: /src/libxml2/uri.c:2776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2773
    functionDepth: 3
    functionLinenumber: 2773
    functionLinenumberEnd: 2777
    functionName: xmlPathToURI
    functionSourceFile: /src/libxml2/uri.c
    functionUses: 1
    functionsReached:
    - xmlCanonicPath
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlPathToURI(const xmlChar *path)'
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - val
    - rptr
    argTypes:
    - unsigned int
    - xmlChRangeGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 77
    functionName: xmlCharInRange
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCharInRange (unsigned int val, const xmlChRangeGroup *rptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBaseCharQ
      Src: /src/libxml2/chvalid.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionName: xmlIsBaseChar
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsBaseCharQ
    linkageType: ''
    returnType: int
    signature: int xmlIsBaseChar(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBlankQ
      Src: /src/libxml2/chvalid.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: xmlIsBlank
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsBlankQ
    linkageType: ''
    returnType: int
    signature: int xmlIsBlank(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsCharQ
      Src: /src/libxml2/chvalid.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: xmlIsChar
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsCharQ
    linkageType: ''
    returnType: int
    signature: int xmlIsChar(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsCombiningQ
      Src: /src/libxml2/chvalid.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: xmlIsCombining
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsCombiningQ
    linkageType: ''
    returnType: int
    signature: int xmlIsCombining(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsDigitQ
      Src: /src/libxml2/chvalid.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: xmlIsDigit
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsDigitQ
    linkageType: ''
    returnType: int
    signature: int xmlIsDigit(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsExtenderQ
      Src: /src/libxml2/chvalid.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionName: xmlIsExtender
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsExtenderQ
    linkageType: ''
    returnType: int
    signature: int xmlIsExtender(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsIdeographicQ
      Src: /src/libxml2/chvalid.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: xmlIsIdeographic
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsIdeographicQ
    linkageType: ''
    returnType: int
    signature: int xmlIsIdeographic(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsPubidCharQ
      Src: /src/libxml2/chvalid.c:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: xmlIsPubidChar
    functionSourceFile: /src/libxml2/chvalid.c
    functionUses: 1
    functionsReached:
    - xmlIsPubidCharQ
    linkageType: ''
    returnType: int
    signature: int xmlIsPubidChar(unsigned int ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: CUR
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CUR(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: END
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: END(ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/parserInternals.c:75,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/parserInternals.c:78,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/parserInternals.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - version
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 71
    functionDepth: 4
    functionLinenumber: 71
    functionLinenumberEnd: 86
    functionName: xmlCheckVersion
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlPrintErrorMessage
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlCheckVersion(int version)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - handler
    - data
    argTypes:
    - xmlParserCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 127
    functionName: xmlCtxtSetErrorHandler
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtSetErrorHandler(xmlParserCtxt *ctxt, xmlStructuredErrorFunc
      handler,\n                       void *data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: xmlCtxtGetLastError
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlError
    signature: 'xmlError *

      xmlCtxtGetLastError(void *ctx)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetError
      Src: /src/libxml2/parserInternals.c:168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 169
    functionName: xmlCtxtResetLastError
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlResetError
    linkageType: ''
    returnType: void
    signature: void xmlCtxtResetLastError(void *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/parserInternals.c:185,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/parserInternals.c:206,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 208
    functionName: xmlCtxtErrMemory
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlCtxtErrMemory(xmlParserCtxt *ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrString
      Src: /src/libxml2/parserInternals.c:246,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parserInternals.c:258,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - code
    - uri
    argTypes:
    - xmlParserCtxt*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 261
    functionName: xmlCtxtErrIO
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached:
    - xmlCtxtErr
    - xmlErrString
    linkageType: ''
    returnType: void
    signature: void xmlCtxtErrIO(xmlParserCtxt *ctxt, int code, const char *uri)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/parserInternals.c:272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 274
    functionName: xmlCtxtIsCatastrophicError
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlIsCatastrophicError
    linkageType: ''
    returnType: int
    signature: int xmlCtxtIsCatastrophicError(xmlParserCtxt *ctxt)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:306,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/parserInternals.c:311,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/parserInternals.c:316,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/parserInternals.c:321,1
    - Dst: xmlCtxtIsCatastrophicError
      Src: /src/libxml2/parserInternals.c:325,1
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/parserInternals.c:341,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/parserInternals.c:398,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:404,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 67
    argCount: 11
    argNames:
    - ctxt
    - node
    - domain
    - code
    - level
    - str1
    - str2
    - str3
    - int1
    - msg
    - ap
    argTypes:
    - xmlParserCtxt*
    - xmlNode*
    - xmlErrorDomain
    - xmlParserErrors
    - xmlErrorLevel
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 291
    functionDepth: 4
    functionLinenumber: 291
    functionLinenumberEnd: 407
    functionName: xmlCtxtVErr
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    - xmlIsCatastrophicError
    - PARSER_STOPPED
    - xmlVRaiseError
    - xmlRaiseMemoryError
    - xmlCtxtIsCatastrophicError
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtVErr(xmlParserCtxt *ctxt, xmlNode *node, xmlErrorDomain
      domain,\n            xmlParserErrors code, xmlErrorLevel level,\n            const
      xmlChar *str1, const xmlChar *str2, const xmlChar *str3,\n            int int1,
      const char *msg, va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/parserInternals.c:432,1
    - Dst: xmlCtxtVErr
      Src: /src/libxml2/parserInternals.c:433,1
    - Dst: va_end
      Src: /src/libxml2/parserInternals.c:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 10
    argNames:
    - ctxt
    - node
    - domain
    - code
    - level
    - str1
    - str2
    - str3
    - int1
    - msg
    argTypes:
    - xmlParserCtxt*
    - xmlNode*
    - xmlErrorDomain
    - xmlParserErrors
    - xmlErrorLevel
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 424
    functionDepth: 5
    functionLinenumber: 424
    functionLinenumberEnd: 436
    functionName: xmlCtxtErr
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 11
    functionsReached:
    - va_end
    - xmlCtxtVErr
    - va_start
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtErr(xmlParserCtxt *ctxt, xmlNode *node, xmlErrorDomain
      domain,\n           xmlParserErrors code, xmlErrorLevel level,\n           const
      xmlChar *str1, const xmlChar *str2, const xmlChar *str3,\n           int int1,
      const char *msg, ...)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtIsCatastrophicError
      Src: /src/libxml2/parserInternals.c:452,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 448
    functionDepth: 2
    functionLinenumber: 448
    functionLinenumberEnd: 470
    functionName: xmlCtxtGetStatus
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlCtxtIsCatastrophicError
    linkageType: ''
    returnType: xmlParserStatus
    signature: xmlParserStatus xmlCtxtGetStatus(xmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrString
      Src: /src/libxml2/parserInternals.c:486,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parserInternals.c:497,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parserInternals.c:500,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - code
    - info
    argTypes:
    - xmlParserCtxt*
    - xmlParserErrors
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 479
    functionDepth: 6
    functionLinenumber: 479
    functionLinenumberEnd: 504
    functionName: xmlFatalErr
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 60
    functionsReached:
    - xmlCtxtErr
    - xmlErrString
    linkageType: ''
    returnType: void
    signature: void xmlFatalErr(xmlParserCtxt *ctxt, xmlParserErrors code, const char
      *info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/parserInternals.c:551,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 31
    argCount: 4
    argNames:
    - input
    - startOut
    - sizeInOut
    - offsetOut
    argTypes:
    - xmlParserInput*
    - xmlChar**
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 569
    functionName: xmlParserInputGetWindow
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlGetUTF8Char
    linkageType: ''
    returnType: void
    signature: "void xmlParserInputGetWindow(xmlParserInput *input, const xmlChar
      **startOut,\n                        int *sizeInOut, int *offsetOut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IS_BASECHAR
      Src: /src/libxml2/parserInternals.c:585,1
    - Dst: IS_IDEOGRAPHIC
      Src: /src/libxml2/parserInternals.c:585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: xmlIsLetter
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - IS_IDEOGRAPHIC
    - IS_BASECHAR
    linkageType: ''
    returnType: int
    signature: int xmlIsLetter(int c)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/parserInternals.c:629,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:638,1
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxml2/parserInternals.c:646,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parserInternals.c:647,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:650,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 615
    functionDepth: 7
    functionLinenumber: 615
    functionLinenumberEnd: 654
    functionName: xmlParserGrow
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached:
    - xmlCtxtErrIO
    - xmlBufUpdateInput
    - PARSER_PROGRESSIVE
    - xmlParserInputBufferGrow
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: int xmlParserGrow(xmlParserCtxt *ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:672,1
    - Dst: xmlCharEncInput
      Src: /src/libxml2/parserInternals.c:685,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parserInternals.c:686,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:688,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:694,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - code
    argTypes:
    - xmlParserCtxt*
    - xmlParserErrors
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 663
    functionDepth: 7
    functionLinenumber: 663
    functionLinenumberEnd: 696
    functionName: xmlParserCheckEOF
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached:
    - xmlBufUpdateInput
    - xmlCharEncInput
    - xmlCtxtErrIO
    - xmlFatalErr
    linkageType: ''
    returnType: void
    signature: void xmlParserCheckEOF(xmlParserCtxt *ctxt, xmlParserErrors code)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufUse
      Src: /src/libxml2/parserInternals.c:725,1
    - Dst: xmlParserInputBufferGrow
      Src: /src/libxml2/parserInternals.c:728,1
    - Dst: xmlBufContent
      Src: /src/libxml2/parserInternals.c:730,1
    - Dst: xmlBufEnd
      Src: /src/libxml2/parserInternals.c:738,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - in
    - len
    argTypes:
    - xmlParserInput*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 709
    functionDepth: 3
    functionLinenumber: 709
    functionLinenumberEnd: 741
    functionName: xmlParserInputGrow
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlBufUse
    - xmlBufContent
    - xmlBufEnd
    - xmlParserInputBufferGrow
    linkageType: ''
    returnType: int
    signature: int xmlParserInputGrow(xmlParserInput *in, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufShrink
      Src: /src/libxml2/parserInternals.c:760,1
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parserInternals.c:764,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parserInternals.c:767,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 748
    functionDepth: 2
    functionLinenumber: 748
    functionLinenumberEnd: 769
    functionName: xmlParserShrink
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlBufUpdateInput
    - xmlSaturatedAddSizeT
    - xmlBufShrink
    linkageType: ''
    returnType: void
    signature: void xmlParserShrink(xmlParserCtxt *ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufShrink
      Src: /src/libxml2/parserInternals.c:792,1
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parserInternals.c:795,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/parserInternals.c:798,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - in
    argTypes:
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 778
    functionDepth: 2
    functionLinenumber: 778
    functionLinenumberEnd: 800
    functionName: xmlParserInputShrink
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlBufUpdateInput
    - xmlSaturatedAddSizeT
    - xmlBufShrink
    linkageType: ''
    returnType: void
    signature: void xmlParserInputShrink(xmlParserInput *in)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserGrow
      Src: /src/libxml2/parserInternals.c:829,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:897,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 65
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 816
    functionDepth: 8
    functionLinenumber: 816
    functionLinenumberEnd: 901
    functionName: xmlNextChar
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlParserGrow
    - xmlCtxtErrIO
    linkageType: ''
    returnType: void
    signature: void xmlNextChar(xmlParserCtxt *ctxt)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserGrow
      Src: /src/libxml2/parserInternals.c:934,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:969,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:1032,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 92
    argCount: 2
    argNames:
    - ctxt
    - len
    argTypes:
    - xmlParserCtxt*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 923
    functionDepth: 8
    functionLinenumber: 923
    functionLinenumberEnd: 1047
    functionName: xmlCurrentChar
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached:
    - xmlParserGrow
    - xmlCtxtErrIO
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: int xmlCurrentChar(xmlParserCtxt *ctxt, int *len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlAbort
      Src: /src/libxml2/parserInternals.c:1105,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - out
    - val
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1085
    functionDepth: 2
    functionLinenumber: 1085
    functionLinenumberEnd: 1115
    functionName: xmlCopyCharMultiByte
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlAbort
    linkageType: ''
    returnType: int
    signature: int xmlCopyCharMultiByte(xmlChar *out, int val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyCharMultiByte
      Src: /src/libxml2/parserInternals.c:1133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - out
    - val
    argTypes:
    - int
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1128
    functionDepth: 3
    functionLinenumber: 1128
    functionLinenumberEnd: 1137
    functionName: xmlCopyChar
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlCopyCharMultiByte
    linkageType: ''
    returnType: int
    signature: int xmlCopyChar(int len ATTRIBUTE_UNUSED, xmlChar *out, int val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - impl
    - vctxt
    argTypes:
    - xmlParserCtxt*
    - xmlCharEncConvImpl
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1157
    functionDepth: 0
    functionLinenumber: 1157
    functionLinenumberEnd: 1165
    functionName: xmlCtxtSetCharEncConvImpl
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtSetCharEncConvImpl(xmlParserCtxt *ctxt, xmlCharEncConvImpl
      impl,\n                          void *vctxt)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1182,1
    - Dst: xmlEncInputChunk
      Src: /src/libxml2/parserInternals.c:1188,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/parserInternals.c:1202,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parserInternals.c:1206,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/parserInternals.c:1210,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/parserInternals.c:1226,1
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1227,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/parserInternals.c:1241,1
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1242,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 49
    argCount: 2
    argNames:
    - ctxt
    - hout
    argTypes:
    - xmlParserCtxtPtr
    - xmlCharEncodingHandlerPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1248
      start: 1167
    functionDepth: 3
    functionLinenumber: 1167
    functionLinenumberEnd: 1248
    functionName: xmlDetectEBCDIC
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlCreateCharEncodingHandler
    - xmlEncInputChunk
    - xmlCharEncCloseFunc
    - xmlStrncmp
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors xmlDetectEBCDIC(xmlParserCtxtPtr ctxt, xmlCharEncodingHandlerPtr
      *hout)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlLookupCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1271,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:1273,1
    - Dst: xmlSwitchToEncoding
      Src: /src/libxml2/parserInternals.c:1277,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - enc
    argTypes:
    - xmlParserCtxt*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1261
    functionDepth: 7
    functionLinenumber: 1261
    functionLinenumberEnd: 1284
    functionName: xmlSwitchEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlSwitchToEncoding
    - xmlFatalErr
    - xmlLookupCharEncodingHandler
    linkageType: ''
    returnType: int
    signature: int xmlSwitchEncoding(xmlParserCtxt *ctxt, xmlCharEncoding enc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1301,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parserInternals.c:1304,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:1308,1
    - Dst: xmlInputSetEncodingHandler
      Src: /src/libxml2/parserInternals.c:1312,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:1314,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ctxt
    - input
    - encoding
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserInputPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1319
      start: 1292
    functionDepth: 7
    functionLinenumber: 1292
    functionLinenumberEnd: 1319
    functionName: xmlSwitchInputEncodingName
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlWarningMsg
    - xmlCtxtErrIO
    - xmlInputSetEncodingHandler
    - xmlCreateCharEncodingHandler
    - xmlFatalErr
    linkageType: ''
    returnType: int
    signature: "int xmlSwitchInputEncodingName(xmlParserCtxtPtr ctxt, xmlParserInputPtr
      input,\n                           const char *encoding)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:1339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - encoding
    argTypes:
    - xmlParserCtxt*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1334
    functionDepth: 8
    functionLinenumber: 1334
    functionLinenumberEnd: 1340
    functionName: xmlSwitchEncodingName
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlSwitchInputEncodingName
    linkageType: ''
    returnType: int
    signature: int xmlSwitchEncodingName(xmlParserCtxt *ctxt, const char *encoding)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/parserInternals.c:1359,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/parserInternals.c:1371,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - input
    - handler
    argTypes:
    - xmlParserInput*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1373
    functionName: xmlInputSetEncodingHandler
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlInputSetEncodingHandler(xmlParserInput *input,\n
      \                          xmlCharEncodingHandler *handler)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInputSetEncodingHandler
      Src: /src/libxml2/parserInternals.c:1453,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:1456,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctxt
    - input
    - handler
    argTypes:
    - xmlParserCtxt*
    - xmlParserInput*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1450
    functionDepth: 2
    functionLinenumber: 1450
    functionLinenumberEnd: 1461
    functionName: xmlSwitchInputEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlInputSetEncodingHandler
    - xmlCtxtErrIO
    linkageType: ''
    returnType: int
    signature: "int xmlSwitchInputEncoding(xmlParserCtxt *ctxt, xmlParserInput *input,\n
      \                      xmlCharEncodingHandler *handler)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInputSetEncodingHandler
      Src: /src/libxml2/parserInternals.c:1481,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:1483,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - handler
    argTypes:
    - xmlParserCtxt*
    - xmlCharEncodingHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1488
      start: 1473
    functionDepth: 2
    functionLinenumber: 1473
    functionLinenumberEnd: 1488
    functionName: xmlSwitchToEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlInputSetEncodingHandler
    - xmlCtxtErrIO
    linkageType: ''
    returnType: int
    signature: int xmlSwitchToEncoding(xmlParserCtxt *ctxt, xmlCharEncodingHandler
      *handler)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserGrow
      Src: /src/libxml2/parserInternals.c:1504,1
    - Dst: xmlDetectEBCDIC
      Src: /src/libxml2/parserInternals.c:1608,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:1610,1
    - Dst: xmlSwitchToEncoding
      Src: /src/libxml2/parserInternals.c:1612,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/parserInternals.c:1615,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 81
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1497
    functionDepth: 8
    functionLinenumber: 1497
    functionLinenumberEnd: 1618
    functionName: xmlDetectEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached:
    - xmlSwitchToEncoding
    - xmlFatalErr
    - xmlSwitchEncoding
    - xmlParserGrow
    - xmlDetectEBCDIC
    linkageType: ''
    returnType: void
    signature: void xmlDetectEncoding(xmlParserCtxt *ctxt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/parserInternals.c:1646,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:1649,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1650,1
    - Dst: xmlInputSetEncodingHandler
      Src: /src/libxml2/parserInternals.c:1654,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:1656,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1657,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/parserInternals.c:1695,1
    - Dst: xmlWarningMsg
      Src: /src/libxml2/parserInternals.c:1702,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1706,1
    - Dst: xmlStrdup
      Src: /src/libxml2/parserInternals.c:1707,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:1709,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1715,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 52
    argCount: 2
    argNames:
    - ctxt
    - encoding
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1631
    functionDepth: 7
    functionLinenumber: 1631
    functionLinenumberEnd: 1717
    functionName: xmlSetDeclaredEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlWarningMsg
    - xmlStrdup
    - xmlCtxtErrMemory
    - xmlCtxtErrIO
    - xmlFree
    - xmlInputSetEncodingHandler
    - xmlCreateCharEncodingHandler
    - xmlFatalErr
    - xmlStrcasecmp
    linkageType: ''
    returnType: void
    signature: void xmlSetDeclaredEncoding(xmlParserCtxt *ctxt, xmlChar *encoding)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1726
    functionDepth: 0
    functionLinenumber: 1726
    functionLinenumberEnd: 1732
    functionName: xmlCtxtGetDeclaredEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCtxtGetDeclaredEncoding(xmlParserCtxt *ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1754
    functionName: xmlGetActualEncoding
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetActualEncoding(xmlParserCtxt *ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1771,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1772,1
    - Dst: xmlParserInput*::free
      Src: /src/libxml2/parserInternals.c:1774,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/parserInternals.c:1776,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:1777,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - input
    argTypes:
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1778
      start: 1767
    functionDepth: 2
    functionLinenumber: 1767
    functionLinenumberEnd: 1778
    functionName: xmlFreeInputStream
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 22
    functionsReached:
    - xmlFreeParserInputBuffer
    - xmlFree
    - xmlParserInput*::free
    linkageType: ''
    returnType: void
    signature: void xmlFreeInputStream(xmlParserInput *input)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:1792,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:1794,1
    - Dst: memset
      Src: /src/libxml2/parserInternals.c:1797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1788
    functionDepth: 3
    functionLinenumber: 1788
    functionLinenumberEnd: 1802
    functionName: xmlNewInputStream
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlCtxtErrMemory
    - memset
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewInputStream(xmlParserCtxt *ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadResource
      Src: /src/libxml2/parserInternals.c:1824,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:1829,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 5
    argNames:
    - ctxt
    - url
    - publicId
    - encoding
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlParserCtxt*
    - char*
    - char*
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1832
      start: 1815
    functionDepth: 8
    functionLinenumber: 1815
    functionLinenumberEnd: 1832
    functionName: xmlCtxtNewInputFromUrl
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlSwitchInputEncodingName
    - xmlLoadResource
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlCtxtNewInputFromUrl(xmlParserCtxt *ctxt, const
      char *url,\n                       const char *publicId, const char *encoding,\n
      \                      xmlParserInputFlags flags ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:1845,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/parserInternals.c:1847,1
    - Dst: memset
      Src: /src/libxml2/parserInternals.c:1850,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/parserInternals.c:1855,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/parserInternals.c:1858,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parserInternals.c:1860,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - buf
    - filename
    argTypes:
    - xmlParserInputBufferPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1866
      start: 1841
    functionDepth: 3
    functionLinenumber: 1841
    functionLinenumberEnd: 1866
    functionName: xmlNewInputInternal
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlBufResetInput
    - xmlMalloc
    - xmlMemStrdup
    - xmlFreeParserInputBuffer
    - xmlFreeInputStream
    - memset
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: xmlParserInputPtr xmlNewInputInternal(xmlParserInputBufferPtr buf,
      const char *filename)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputBufferMemory
      Src: /src/libxml2/parserInternals.c:1898,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:1902,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - url
    - mem
    - size
    - flags
    argTypes:
    - char*
    - void*
    - size_t
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1903
      start: 1890
    functionDepth: 5
    functionLinenumber: 1890
    functionLinenumberEnd: 1903
    functionName: xmlNewInputFromMemory
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlNewInputBufferMemory
    - xmlNewInputInternal
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlNewInputFromMemory(const char *url, const void
      *mem, size_t size,\n                      xmlParserInputFlags flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputFromMemory
      Src: /src/libxml2/parserInternals.c:1923,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:1925,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:1930,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - ctxt
    - url
    - mem
    - size
    - encoding
    - flags
    argTypes:
    - xmlParserCtxt*
    - char*
    - void*
    - size_t
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1933
      start: 1914
    functionDepth: 8
    functionLinenumber: 1914
    functionLinenumberEnd: 1933
    functionName: xmlCtxtNewInputFromMemory
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 5
    functionsReached:
    - xmlSwitchInputEncodingName
    - xmlNewInputFromMemory
    - xmlCtxtErrMemory
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlCtxtNewInputFromMemory(xmlParserCtxt *ctxt, const
      char *url,\n                          const void *mem, size_t size,\n                          const
      char *encoding, xmlParserInputFlags flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputBufferString
      Src: /src/libxml2/parserInternals.c:1960,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:1964,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - url
    - str
    - flags
    argTypes:
    - char*
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1952
    functionDepth: 4
    functionLinenumber: 1952
    functionLinenumberEnd: 1965
    functionName: xmlNewInputFromString
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlNewInputInternal
    - xmlNewInputBufferString
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlNewInputFromString(const char *url, const char
      *str,\n                      xmlParserInputFlags flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputFromString
      Src: /src/libxml2/parserInternals.c:1984,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:1986,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:1991,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - ctxt
    - url
    - str
    - encoding
    - flags
    argTypes:
    - xmlParserCtxt*
    - char*
    - char*
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1975
    functionDepth: 8
    functionLinenumber: 1975
    functionLinenumberEnd: 1994
    functionName: xmlCtxtNewInputFromString
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached:
    - xmlNewInputFromString
    - xmlCtxtErrMemory
    - xmlSwitchInputEncodingName
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlCtxtNewInputFromString(xmlParserCtxt *ctxt, const
      char *url,\n                          const char *str, const char *encoding,\n
      \                         xmlParserInputFlags flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/parserInternals.c:2022,1
    - Dst: xmlInputFromFd
      Src: /src/libxml2/parserInternals.c:2026,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/parserInternals.c:2027,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:2031,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - url
    - fd
    - flags
    argTypes:
    - char*
    - int
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2032
      start: 2015
    functionDepth: 4
    functionLinenumber: 2015
    functionLinenumberEnd: 2032
    functionName: xmlNewInputFromFd
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlFreeParserInputBuffer
    - xmlAllocParserInputBuffer
    - xmlNewInputInternal
    - xmlInputFromFd
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewInputFromFd(const char *url, int fd, xmlParserInputFlags flags)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputFromFd
      Src: /src/libxml2/parserInternals.c:2054,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:2056,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:2061,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 5
    argNames:
    - ctxt
    - url
    - fd
    - encoding
    - flags
    argTypes:
    - xmlParserCtxt*
    - char*
    - int
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2042
    functionDepth: 8
    functionLinenumber: 2042
    functionLinenumberEnd: 2064
    functionName: xmlCtxtNewInputFromFd
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached:
    - xmlSwitchInputEncodingName
    - xmlNewInputFromFd
    - xmlCtxtErrMemory
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlCtxtNewInputFromFd(xmlParserCtxt *ctxt, const
      char *url,\n                      int fd, const char *encoding,\n                      xmlParserInputFlags
      flags)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/parserInternals.c:2099,1
    - Dst: ioClose
      Src: /src/libxml2/parserInternals.c:2102,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:2110,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - url
    - ioRead
    - ioClose
    - ioCtxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2111
      start: 2090
    functionDepth: 4
    functionLinenumber: 2090
    functionLinenumberEnd: 2111
    functionName: xmlNewInputFromIO
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlNewInputInternal
    - ioClose
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlNewInputFromIO(const char *url, xmlInputReadCallback
      ioRead,\n                  xmlInputCloseCallback ioClose, void *ioCtxt,\n                  xmlParserInputFlags
      flags ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputFromIO
      Src: /src/libxml2/parserInternals.c:2134,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:2136,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:2141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 7
    argNames:
    - ctxt
    - url
    - ioRead
    - ioClose
    - ioCtxt
    - encoding
    - flags
    argTypes:
    - xmlParserCtxt*
    - char*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - xmlParserInputFlags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2144
      start: 2123
    functionDepth: 8
    functionLinenumber: 2123
    functionLinenumberEnd: 2144
    functionName: xmlCtxtNewInputFromIO
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlSwitchInputEncodingName
    - xmlCtxtErrMemory
    - xmlNewInputFromIO
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlCtxtNewInputFromIO(xmlParserCtxt *ctxt, const
      char *url,\n                      xmlInputReadCallback ioRead,\n                      xmlInputCloseCallback
      ioClose,\n                      void *ioCtxt, const char *encoding,\n                      xmlParserInputFlags
      flags)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocParserInputBuffer
      Src: /src/libxml2/parserInternals.c:2159,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:2163,1
    - Dst: xmlParserInputBufferPush
      Src: /src/libxml2/parserInternals.c:2172,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/parserInternals.c:2173,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parserInternals.c:2175,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - url
    - chunk
    - size
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2181
      start: 2154
    functionDepth: 4
    functionLinenumber: 2154
    functionLinenumberEnd: 2181
    functionName: xmlNewPushInput
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlAllocParserInputBuffer
    - xmlNewInputInternal
    - xmlBufResetInput
    - xmlParserInputBufferPush
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewPushInput(const char *url, const char *chunk, int size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:2201,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:2203,1
    - Dst: xmlGetCharEncodingName
      Src: /src/libxml2/parserInternals.c:2207,1
    - Dst: xmlSwitchInputEncodingName
      Src: /src/libxml2/parserInternals.c:2209,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - buf
    - enc
    argTypes:
    - xmlParserCtxt*
    - xmlParserInputBuffer*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2212
      start: 2192
    functionDepth: 8
    functionLinenumber: 2192
    functionLinenumberEnd: 2212
    functionName: xmlNewIOInputStream
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlGetCharEncodingName
    - xmlCtxtErrMemory
    - xmlSwitchInputEncodingName
    - xmlNewInputInternal
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlNewIOInputStream(xmlParserCtxt *ctxt, xmlParserInputBuffer
      *buf,\n\t            xmlCharEncoding enc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parserInternals.c:2231,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/parserInternals.c:2241,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - ent
    argTypes:
    - xmlParserCtxt*
    - xmlEntity*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2223
    functionDepth: 9
    functionLinenumber: 2223
    functionLinenumberEnd: 2253
    functionName: xmlNewEntityInputStream
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached:
    - xmlLoadResource
    - xmlCtxtNewInputFromString
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewEntityInputStream(xmlParserCtxt *ctxt, xmlEntity *ent)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/parserInternals.c:2266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - buffer
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2268
      start: 2264
    functionDepth: 9
    functionLinenumber: 2264
    functionLinenumberEnd: 2268
    functionName: xmlNewStringInputStream
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlCtxtNewInputFromString
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewStringInputStream(xmlParserCtxt *ctxt, const xmlChar *buffer)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNoNetExists
      Src: /src/libxml2/parserInternals.c:2308,1
    - Dst: xmlGetLastErrorInternal
      Src: /src/libxml2/parserInternals.c:2312,1
    - Dst: xmlCatalogLocalResolve
      Src: /src/libxml2/parserInternals.c:2320,1
    - Dst: xmlCatalogResolve
      Src: /src/libxml2/parserInternals.c:2328,1
    - Dst: xmlCatalogLocalResolveURI
      Src: /src/libxml2/parserInternals.c:2341,1
    - Dst: xmlCatalogResolveURI
      Src: /src/libxml2/parserInternals.c:2345,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2353,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 5
    argNames:
    - url
    - publicId
    - localCatalogs
    - allowGlobal
    - out
    argTypes:
    - char*
    - char*
    - void*
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2289
    functionDepth: 3
    functionLinenumber: 2289
    functionLinenumberEnd: 2359
    functionName: xmlResolveFromCatalog
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlCatalogLocalResolve
    - xmlCatalogLocalResolveURI
    - xmlFree
    - xmlGetLastErrorInternal
    - xmlCatalogResolve
    - xmlNoNetExists
    - xmlCatalogResolveURI
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlResolveFromCatalog(const char *url, const char
      *publicId,\n                      void *localCatalogs, int allowGlobal, char
      **out)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogGetDefaults
      Src: /src/libxml2/parserInternals.c:2382,1
    - Dst: xmlResolveFromCatalog
      Src: /src/libxml2/parserInternals.c:2395,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/parserInternals.c:2398,1
    - Dst: xmlErrString
      Src: /src/libxml2/parserInternals.c:2400,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - url
    - publicId
    argTypes:
    - xmlParserCtxtPtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2403
      start: 2361
    functionDepth: 6
    functionLinenumber: 2361
    functionLinenumberEnd: 2403
    functionName: xmlCtxtResolveFromCatalog
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlCatalogGetDefaults
    - xmlResolveFromCatalog
    - xmlErrString
    - xmlCtxtErr
    linkageType: ''
    returnType: char
    signature: "char *\nxmlCtxtResolveFromCatalog(xmlParserCtxtPtr ctxt, const char
      *url,\n                          const char *publicId)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlResolveFromCatalog
      Src: /src/libxml2/parserInternals.c:2461,1
    - Dst: xmlParserInputBufferCreateFilenameValue
      Src: /src/libxml2/parserInternals.c:2470,1
    - Dst: xmlParserInputBufferCreateUrl
      Src: /src/libxml2/parserInternals.c:2475,1
    - Dst: xmlNewInputInternal
      Src: /src/libxml2/parserInternals.c:2480,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2488,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - url
    - flags
    - out
    argTypes:
    - char*
    - xmlParserInputFlags
    - xmlParserInput**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2490
      start: 2445
    functionDepth: 5
    functionLinenumber: 2445
    functionLinenumberEnd: 2490
    functionName: xmlNewInputFromUrl
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlParserInputBufferCreateUrl
    - xmlParserInputBufferCreateFilenameValue
    - xmlFree
    - xmlResolveFromCatalog
    - xmlNewInputInternal
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlNewInputFromUrl(const char *url, xmlParserInputFlags
      flags,\n                   xmlParserInput **out)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/parserInternals.c:2518,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:2520,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - filename
    argTypes:
    - xmlParserCtxt*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2525
      start: 2504
    functionDepth: 6
    functionLinenumber: 2504
    functionLinenumberEnd: 2525
    functionName: xmlNewInputFromFile
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlNewInputFromUrl
    - xmlCtxtErrIO
    linkageType: ''
    returnType: xmlParserInput
    signature: 'xmlParserInput *

      xmlNewInputFromFile(xmlParserCtxt *ctxt, const char *filename)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtResolveFromCatalog
      Src: /src/libxml2/parserInternals.c:2548,1
    - Dst: xmlNewInputFromFile
      Src: /src/libxml2/parserInternals.c:2562,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2566,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - url
    - publicId
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2568
      start: 2535
    functionDepth: 7
    functionLinenumber: 2535
    functionLinenumberEnd: 2568
    functionName: xmlDefaultExternalEntityLoader
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlCtxtResolveFromCatalog
    - xmlFree
    - xmlNewInputFromFile
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr xmlDefaultExternalEntityLoader(const char *url,
      const char *publicId,\n                               xmlParserCtxtPtr ctxt)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDefaultExternalEntityLoader
      Src: /src/libxml2/parserInternals.c:2592,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - URL
    - publicId
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2598
      start: 2581
    functionDepth: 8
    functionLinenumber: 2581
    functionLinenumberEnd: 2598
    functionName: xmlNoNetExternalEntityLoader
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlDefaultExternalEntityLoader
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlNoNetExternalEntityLoader(const char *URL, const
      char *publicId,\n                             xmlParserCtxt *ctxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - xmlExternalEntityLoader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2618
      start: 2615
    functionDepth: 0
    functionLinenumber: 2615
    functionLinenumberEnd: 2618
    functionName: xmlSetExternalEntityLoader
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetExternalEntityLoader(xmlExternalEntityLoader f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2630
      start: 2627
    functionDepth: 0
    functionLinenumber: 2627
    functionLinenumberEnd: 2630
    functionName: xmlGetExternalEntityLoader
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: xmlExternalEntityLoader
    signature: xmlExternalEntityLoader xmlGetExternalEntityLoader(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - loader
    - vctxt
    argTypes:
    - xmlParserCtxt*
    - xmlResourceLoader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2651
      start: 2643
    functionDepth: 0
    functionLinenumber: 2643
    functionLinenumberEnd: 2651
    functionName: xmlCtxtSetResourceLoader
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtSetResourceLoader(xmlParserCtxt *ctxt, xmlResourceLoader
      loader,\n                         void *vctxt)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtResolveFromCatalog
      Src: /src/libxml2/parserInternals.c:2676,1
    - Dst: xmlParserCtxt*::resourceLoader
      Src: /src/libxml2/parserInternals.c:2690,1
    - Dst: xmlCtxtErrIO
      Src: /src/libxml2/parserInternals.c:2693,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2697,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/parserInternals.c:2701,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:2703,1
    - Dst: xmlCurrentExternalEntityLoader
      Src: /src/libxml2/parserInternals.c:2707,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2708,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ctxt
    - url
    - publicId
    - type
    argTypes:
    - xmlParserCtxt*
    - char*
    - char*
    - xmlResourceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2660
    functionDepth: 7
    functionLinenumber: 2660
    functionLinenumberEnd: 2710
    functionName: xmlLoadResource
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 6
    functionsReached:
    - xmlCtxtErrMemory
    - xmlCtxtErrIO
    - xmlFree
    - xmlParserCtxt*::resourceLoader
    - xmlCanonicPath
    - xmlCurrentExternalEntityLoader
    - xmlCtxtResolveFromCatalog
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlLoadResource(xmlParserCtxt *ctxt, const char
      *url, const char *publicId,\n                xmlResourceType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadResource
      Src: /src/libxml2/parserInternals.c:2745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - URL
    - publicId
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2742
    functionDepth: 8
    functionLinenumber: 2742
    functionLinenumberEnd: 2746
    functionName: xmlLoadExternalEntity
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlLoadResource
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlLoadExternalEntity(const char *URL, const char
      *publicId,\n                      xmlParserCtxt *ctxt)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictCreate
      Src: /src/libxml2/parserInternals.c:2778,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:2783,1
    - Dst: memset
      Src: /src/libxml2/parserInternals.c:2787,1
    - Dst: xmlSAXVersion
      Src: /src/libxml2/parserInternals.c:2788,1
    - Dst: memcpy
      Src: /src/libxml2/parserInternals.c:2792,1
    - Dst: memset
      Src: /src/libxml2/parserInternals.c:2794,1
    - Dst: memcpy
      Src: /src/libxml2/parserInternals.c:2795,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:2810,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parserInternals.c:2815,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parserInternals.c:2816,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:2831,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:2841,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:2851,1
    - Dst: xmlInitNodeInfoSeq
      Src: /src/libxml2/parserInternals.c:2911,1
    - Dst: xmlParserNsCreate
      Src: /src/libxml2/parserInternals.c:2914,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 118
    argCount: 3
    argNames:
    - ctxt
    - sax
    - userData
    argTypes:
    - xmlParserCtxtPtr
    - xmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2920
      start: 2763
    functionDepth: 5
    functionLinenumber: 2763
    functionLinenumberEnd: 2920
    functionName: xmlInitSAXParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 0
    functionsReached:
    - xmlSAXVersion
    - xmlParserNsCreate
    - xmlMalloc
    - xmlDictCreate
    - xmlInitNodeInfoSeq
    - memcpy
    - xmlCtxtPopInput
    - xmlFreeInputStream
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlInitSAXParserCtxt(xmlParserCtxtPtr ctxt, const xmlSAXHandler
      *sax,\n                     void *userData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitSAXParserCtxt
      Src: /src/libxml2/parserInternals.c:2935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2932
    functionDepth: 6
    functionLinenumber: 2932
    functionLinenumberEnd: 2936
    functionName: xmlInitParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlInitSAXParserCtxt
    linkageType: ''
    returnType: int
    signature: int xmlInitParserCtxt(xmlParserCtxt *ctxt)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/parserInternals.c:2952,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/parserInternals.c:2953,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2955,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2956,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2957,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2958,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2959,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2960,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2961,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2962,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2963,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2970,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2971,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2972,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2973,1
    - Dst: xmlDictFree
      Src: /src/libxml2/parserInternals.c:2974,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2975,1
    - Dst: xmlParserNsFree
      Src: /src/libxml2/parserInternals.c:2976,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2977,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2978,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2979,1
    - Dst: xmlHashFree
      Src: /src/libxml2/parserInternals.c:2981,1
    - Dst: xmlHashFree
      Src: /src/libxml2/parserInternals.c:2983,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:2990,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3000,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3008,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3010,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3012,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3014,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3016,1
    - Dst: xmlCatalogFreeLocal
      Src: /src/libxml2/parserInternals.c:3020,1
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3022,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 78
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3023
      start: 2945
    functionDepth: 3
    functionLinenumber: 2945
    functionLinenumberEnd: 3023
    functionName: xmlFreeParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 47
    functionsReached:
    - xmlDictFree
    - xmlFree
    - xmlHashFree
    - xmlParserNsFree
    - xmlCatalogFreeLocal
    - xmlCtxtPopInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: void
    signature: void xmlFreeParserCtxt(xmlParserCtxt *ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/parserInternals.c:3034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3035
      start: 3031
    functionDepth: 1
    functionLinenumber: 3031
    functionLinenumberEnd: 3035
    functionName: xmlNewParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 26
    functionsReached:
    - xmlNewSAXParserCtxt
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlNewParserCtxt(void)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/parserInternals.c:3057,1
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:3059,1
    - Dst: memset
      Src: /src/libxml2/parserInternals.c:3062,1
    - Dst: xmlInitSAXParserCtxt
      Src: /src/libxml2/parserInternals.c:3063,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/parserInternals.c:3064,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - sax
    - userData
    argTypes:
    - xmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3068
      start: 3052
    functionDepth: 6
    functionLinenumber: 3052
    functionLinenumberEnd: 3068
    functionName: xmlNewSAXParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 11
    functionsReached:
    - xmlMalloc
    - xmlInitParser
    - xmlFreeParserCtxt
    - xmlInitSAXParserCtxt
    - memset
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlNewSAXParserCtxt(const xmlSAXHandler *sax, void *userData)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3082
      start: 3076
    functionDepth: 0
    functionLinenumber: 3076
    functionLinenumberEnd: 3082
    functionName: xmlCtxtGetPrivate
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCtxtGetPrivate(xmlParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - priv
    argTypes:
    - xmlParserCtxt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3092
    functionDepth: 0
    functionLinenumber: 3092
    functionLinenumberEnd: 3098
    functionName: xmlCtxtSetPrivate
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCtxtSetPrivate(xmlParserCtxt *ctxt, void *priv)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3112
      start: 3106
    functionDepth: 0
    functionLinenumber: 3106
    functionLinenumberEnd: 3112
    functionName: xmlCtxtGetCatalogs
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCtxtGetCatalogs(xmlParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - catalogs
    argTypes:
    - xmlParserCtxt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3122
    functionDepth: 0
    functionLinenumber: 3122
    functionLinenumberEnd: 3128
    functionName: xmlCtxtSetCatalogs
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCtxtSetCatalogs(xmlParserCtxt *ctxt, void *catalogs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3136
    functionDepth: 0
    functionLinenumber: 3136
    functionLinenumberEnd: 3142
    functionName: xmlCtxtGetDict
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlDict
    signature: 'xmlDict *

      xmlCtxtGetDict(xmlParserCtxt *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictFree
      Src: /src/libxml2/parserInternals.c:3159,1
    - Dst: xmlDictReference
      Src: /src/libxml2/parserInternals.c:3161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - dict
    argTypes:
    - xmlParserCtxt*
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3163
      start: 3153
    functionDepth: 2
    functionLinenumber: 3153
    functionLinenumberEnd: 3163
    functionName: xmlCtxtSetDict
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlDictFree
    - xmlDictReference
    linkageType: ''
    returnType: void
    signature: void xmlCtxtSetDict(xmlParserCtxt *ctxt, xmlDict *dict)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3178
      start: 3172
    functionDepth: 0
    functionLinenumber: 3172
    functionLinenumberEnd: 3178
    functionName: xmlCtxtGetSaxHandler
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSAXHandler
    signature: 'xmlSAXHandler *

      xmlCtxtGetSaxHandler(xmlParserCtxt *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/parserInternals.c:3197,1
    - Dst: memcpy
      Src: /src/libxml2/parserInternals.c:3201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - sax
    argTypes:
    - xmlParserCtxt*
    - xmlSAXHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3205
      start: 3190
    functionDepth: 0
    functionLinenumber: 3190
    functionLinenumberEnd: 3205
    functionName: xmlCtxtSetSaxHandler
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlCtxtSetSaxHandler(xmlParserCtxt *ctxt, const xmlSAXHandler *sax)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtIsCatastrophicError
      Src: /src/libxml2/parserInternals.c:3224,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/parserInternals.c:3228,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/parserInternals.c:3230,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3235
      start: 3215
    functionDepth: 7
    functionLinenumber: 3215
    functionLinenumberEnd: 3235
    functionName: xmlCtxtGetDocument
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 4
    functionsReached:
    - xmlFreeDoc
    - xmlCtxtIsCatastrophicError
    - xmlFatalErr
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlCtxtGetDocument(xmlParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3249
      start: 3243
    functionDepth: 0
    functionLinenumber: 3243
    functionLinenumberEnd: 3249
    functionName: xmlCtxtIsHtml
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtIsHtml(xmlParserCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3268
      start: 3262
    functionDepth: 0
    functionLinenumber: 3262
    functionLinenumberEnd: 3268
    functionName: xmlCtxtIsStopped
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtIsStopped(xmlParserCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3286
    functionDepth: 0
    functionLinenumber: 3286
    functionLinenumberEnd: 3292
    functionName: xmlCtxtIsInSubset
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCtxtIsInSubset(xmlParserCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3307
      start: 3301
    functionDepth: 0
    functionLinenumber: 3301
    functionLinenumberEnd: 3307
    functionName: xmlCtxtGetValidCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlValidCtxt
    signature: 'xmlValidCtxt *

      xmlCtxtGetValidCtxt(xmlParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3327
      start: 3321
    functionDepth: 0
    functionLinenumber: 3321
    functionLinenumberEnd: 3327
    functionName: xmlCtxtGetUserData
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCtxtGetUserData(xmlParserCtxt *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3352
      start: 3344
    functionDepth: 0
    functionLinenumber: 3344
    functionLinenumberEnd: 3352
    functionName: xmlCtxtGetNode
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlCtxtGetNode(xmlParserCtxt *ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - name
    - systemId
    - publicId
    argTypes:
    - xmlParserCtxt*
    - xmlChar**
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3367
    functionDepth: 0
    functionLinenumber: 3367
    functionLinenumberEnd: 3383
    functionName: xmlCtxtGetDocTypeDecl
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlCtxtGetDocTypeDecl(xmlParserCtxt *ctxt,\n                      const
      xmlChar **name,\n                      const xmlChar **systemId,\n                      const
      xmlChar **publicId)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaturatedAddSizeT
      Src: /src/libxml2/parserInternals.c:3438,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 6
    argNames:
    - ctxt
    - inputIndex
    - filename
    - line
    - col
    - utf8BytePos
    argTypes:
    - xmlParserCtxt*
    - int
    - char**
    - int*
    - int*
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3408
    functionDepth: 1
    functionLinenumber: 3408
    functionLinenumberEnd: 3443
    functionName: xmlCtxtGetInputPosition
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlSaturatedAddSizeT
    linkageType: ''
    returnType: int
    signature: "int xmlCtxtGetInputPosition(xmlParserCtxt *ctxt, int inputIndex,\n
      \                       const char **filename, int *line, int *col,\n                        unsigned
      long *utf8BytePos)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputGetWindow
      Src: /src/libxml2/parserInternals.c:3487,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 5
    argNames:
    - ctxt
    - inputIndex
    - startOut
    - sizeInOut
    - offsetOut
    argTypes:
    - xmlParserCtxt*
    - int
    - xmlChar**
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3490
      start: 3467
    functionDepth: 2
    functionLinenumber: 3467
    functionLinenumberEnd: 3490
    functionName: xmlCtxtGetInputWindow
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlParserInputGetWindow
    linkageType: ''
    returnType: int
    signature: "int xmlCtxtGetInputWindow(xmlParserCtxt *ctxt, int inputIndex,\n                      const
      xmlChar **startOut,\n                      int *sizeInOut, int *offsetOut)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/parserInternals.c:3508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3509
      start: 3505
    functionDepth: 2
    functionLinenumber: 3505
    functionLinenumberEnd: 3509
    functionName: xmlClearParserCtxt
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlCtxtReset
    linkageType: ''
    returnType: void
    signature: void xmlClearParserCtxt(xmlParserCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserFindNodeInfoIndex
      Src: /src/libxml2/parserInternals.c:3529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - node
    argTypes:
    - xmlParserCtxt*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3535
      start: 3521
    functionDepth: 1
    functionLinenumber: 3521
    functionLinenumberEnd: 3535
    functionName: xmlParserFindNodeInfo
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlParserFindNodeInfoIndex
    linkageType: ''
    returnType: xmlParserNodeInfo
    signature: 'xmlParserNodeInfo *

      xmlParserFindNodeInfo(xmlParserCtxt *ctx, xmlNode *node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - seq
    argTypes:
    - xmlParserNodeInfoSeq*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3553
      start: 3545
    functionDepth: 0
    functionLinenumber: 3545
    functionLinenumberEnd: 3553
    functionName: xmlInitNodeInfoSeq
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlInitNodeInfoSeq(xmlParserNodeInfoSeq *seq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/parserInternals.c:3568,1
    - Dst: xmlInitNodeInfoSeq
      Src: /src/libxml2/parserInternals.c:3569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - seq
    argTypes:
    - xmlParserNodeInfoSeq*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3570
      start: 3562
    functionDepth: 1
    functionLinenumber: 3562
    functionLinenumberEnd: 3570
    functionName: xmlClearNodeInfoSeq
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlInitNodeInfoSeq
    linkageType: ''
    returnType: void
    signature: void xmlClearNodeInfoSeq(xmlParserNodeInfoSeq *seq)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - seq
    - node
    argTypes:
    - xmlParserNodeInfoSeq*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3611
      start: 3582
    functionDepth: 0
    functionLinenumber: 3582
    functionLinenumberEnd: 3611
    functionName: xmlParserFindNodeInfoIndex
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: unsigned long
    signature: "unsigned long xmlParserFindNodeInfoIndex(xmlParserNodeInfoSeq *seq,\n
      \                          xmlNode *node)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserFindNodeInfoIndex
      Src: /src/libxml2/parserInternals.c:3631,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/parserInternals.c:3646,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:3649,1
    - Dst: xmlRealloc
      Src: /src/libxml2/parserInternals.c:3652,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/parserInternals.c:3654,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - info
    argTypes:
    - xmlParserCtxt*
    - xmlParserNodeInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3673
      start: 3622
    functionDepth: 3
    functionLinenumber: 3622
    functionLinenumberEnd: 3673
    functionName: xmlParserAddNodeInfo
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 2
    functionsReached:
    - xmlCtxtErrMemory
    - xmlGrowCapacity
    - xmlRealloc
    - xmlParserFindNodeInfoIndex
    linkageType: ''
    returnType: void
    signature: "void xmlParserAddNodeInfo(xmlParserCtxt *ctxt,\n                     xmlParserNodeInfo
      *info)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3695
      start: 3689
    functionDepth: 0
    functionLinenumber: 3689
    functionLinenumberEnd: 3695
    functionName: xmlPedanticParserDefault
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlPedanticParserDefault(int val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3709
      start: 3706
    functionDepth: 0
    functionLinenumber: 3706
    functionLinenumberEnd: 3709
    functionName: xmlLineNumbersDefault
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlLineNumbersDefault(int val ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3726
      start: 3720
    functionDepth: 0
    functionLinenumber: 3720
    functionLinenumberEnd: 3726
    functionName: xmlSubstituteEntitiesDefault
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSubstituteEntitiesDefault(int val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3747
      start: 3737
    functionDepth: 0
    functionLinenumber: 3737
    functionLinenumberEnd: 3747
    functionName: xmlKeepBlanksDefault
    functionSourceFile: /src/libxml2/parserInternals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlKeepBlanksDefault(int val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlmodule.c:64,1
    - Dst: memset
      Src: /src/libxml2/xmlmodule.c:68,1
    - Dst: xmlModulePlatformOpen
      Src: /src/libxml2/xmlmodule.c:70,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlmodule.c:73,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlmodule.c:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - name
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 79
    functionName: xmlModuleOpen
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlMalloc
    - xmlModulePlatformOpen
    - memset
    linkageType: ''
    returnType: xmlModule
    signature: 'xmlModule *

      xmlModuleOpen(const char *name, int options ATTRIBUTE_UNUSED)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlModulePlatformSymbol
      Src: /src/libxml2/xmlmodule.c:104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - module
    - name
    - symbol
    argTypes:
    - xmlModule*
    - char*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 110
    functionName: xmlModuleSymbol
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 2
    functionsReached:
    - xmlModulePlatformSymbol
    linkageType: ''
    returnType: int
    signature: int xmlModuleSymbol(xmlModule *module, const char *name, void **symbol)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlModulePlatformClose
      Src: /src/libxml2/xmlmodule.c:130,1
    - Dst: xmlModuleFree
      Src: /src/libxml2/xmlmodule.c:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - module
    argTypes:
    - xmlModule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 137
    functionName: xmlModuleClose
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 2
    functionsReached:
    - xmlModuleFree
    - xmlModulePlatformClose
    linkageType: ''
    returnType: int
    signature: int xmlModuleClose(xmlModule *module)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlmodule.c:155,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlmodule.c:156,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - module
    argTypes:
    - xmlModule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 159
    functionName: xmlModuleFree
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 2
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlModuleFree(xmlModule *module)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dlopen
      Src: /src/libxml2/xmlmodule.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionName: xmlModulePlatformOpen
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - dlopen
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlModulePlatformOpen(const char *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dlclose
      Src: /src/libxml2/xmlmodule.c:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionName: xmlModulePlatformClose
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - dlclose
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformClose(void *handle)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlsym
      Src: /src/libxml2/xmlmodule.c:200,1
    - Dst: dlerror
      Src: /src/libxml2/xmlmodule.c:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - handle
    - name
    - symbol
    argTypes:
    - void*
    - char*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 205
    functionName: xmlModulePlatformSymbol
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - dlerror
    - dlsym
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shl_load
      Src: /src/libxml2/xmlmodule.c:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionName: xmlModulePlatformOpen
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - shl_load
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlModulePlatformOpen(const char *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shl_unload
      Src: /src/libxml2/xmlmodule.c:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionName: xmlModulePlatformClose
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - shl_unload
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformClose(void *handle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: shl_findsym
      Src: /src/libxml2/xmlmodule.c:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - handle
    - name
    - symbol
    argTypes:
    - void*
    - char*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 245
    functionName: xmlModulePlatformSymbol
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - shl_findsym
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LoadLibraryA
      Src: /src/libxml2/xmlmodule.c:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionName: xmlModulePlatformOpen
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - LoadLibraryA
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlModulePlatformOpen(const char *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FreeLibrary
      Src: /src/libxml2/xmlmodule.c:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 276
    functionName: xmlModulePlatformClose
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - FreeLibrary
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformClose(void *handle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetProcAddress
      Src: /src/libxml2/xmlmodule.c:287,1
    - Dst: memcpy
      Src: /src/libxml2/xmlmodule.c:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - handle
    - name
    - symbol
    argTypes:
    - void*
    - char*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 291
    functionName: xmlModulePlatformSymbol
    functionSourceFile: /src/libxml2/xmlmodule.c
    functionUses: 1
    functionsReached:
    - memcpy
    - GetProcAddress
    linkageType: ''
    returnType: int
    signature: int xmlModulePlatformSymbol(void *handle, const char *name, void **symbol)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: ignoreError
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ignoreError(void *ctxt ATTRIBUTE_UNUSED,\n            const xmlError
      *error ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/testparser.c:33,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:35,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/testparser.c:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 41
    functionName: testNewDocNode
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - fprintf
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int testNewDocNode(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetLastError
      Src: /src/libxml2/testparser.c:51,1
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:53,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:55,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 43
    functionDepth: 14
    functionLinenumber: 43
    functionLinenumberEnd: 61
    functionName: testStandaloneWithEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlResetLastError
    - xmlFreeDoc
    - xmlReadDoc
    linkageType: ''
    returnType: int
    signature: int testStandaloneWithEncoding(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetLastError
      Src: /src/libxml2/testparser.c:69,1
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:71,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:74,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:77,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/testparser.c:79,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:83,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:85,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 63
    functionDepth: 14
    functionLinenumber: 63
    functionLinenumberEnd: 90
    functionName: testUnsupportedEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlResetLastError
    - strcmp
    - xmlReadDoc
    - xmlGetLastError
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testUnsupportedEncoding(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:98,1
    - Dst: xmlAddChild
      Src: /src/libxml2/testparser.c:99,1
    - Dst: xmlNewReference
      Src: /src/libxml2/testparser.c:99,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/testparser.c:100,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:101,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:102,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:105,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 92
    functionDepth: 14
    functionLinenumber: 92
    functionLinenumberEnd: 109
    functionName: testNodeGetContent
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlNodeGetContent
    - strcmp
    - xmlReadDoc
    - xmlAddChild
    - fprintf
    - xmlNewReference
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testNodeGetContent(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/testparser.c:117,1
    - Dst: xmlReadFile
      Src: /src/libxml2/testparser.c:119,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/testparser.c:124,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:126,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:130,1
    - Dst: xmlPopInputCallbacks
      Src: /src/libxml2/testparser.c:131,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:134,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 111
    functionDepth: 14
    functionLinenumber: 111
    functionLinenumberEnd: 137
    functionName: testCFileIO
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlReadFile
    - fprintf
    - xmlRegisterInputCallbacks
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlPopInputCallbacks
    linkageType: ''
    returnType: int
    signature: int testCFileIO(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:156,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/testparser.c:157,1
    - Dst: xmlParseInNodeContext
      Src: /src/libxml2/testparser.c:161,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:164,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/testparser.c:167,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/testparser.c:170,1
    - Dst: xmlParseBalancedChunkMemory
      Src: /src/libxml2/testparser.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:174,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/testparser.c:177,1
    - Dst: xmlSetStructuredErrorFunc
      Src: /src/libxml2/testparser.c:178,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 145
    functionDepth: 14
    functionLinenumber: 145
    functionLinenumberEnd: 184
    functionName: testUndeclEntInContent
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlParseBalancedChunkMemory
    - xmlReadDoc
    - xmlParseInNodeContext
    - xmlSetStructuredErrorFunc
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testUndeclEntInContent(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:192,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:195,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:196,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 186
    functionDepth: 14
    functionLinenumber: 186
    functionLinenumberEnd: 203
    functionName: testInvalidCharRecovery
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeDoc
    - strcmp
    - xmlReadDoc
    linkageType: ''
    returnType: int
    signature: int testInvalidCharRecovery(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtGetInputPosition
      Src: /src/libxml2/testparser.c:215,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:217,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:219,1
    - Dst: xmlCtxtGetInputWindow
      Src: /src/libxml2/testparser.c:225,1
    - Dst: strncmp
      Src: /src/libxml2/testparser.c:227,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:229,1
    - Dst: xmlCtxtGetInputPosition
      Src: /src/libxml2/testparser.c:234,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:238,1
    - Dst: xmlCtxtGetInputWindow
      Src: /src/libxml2/testparser.c:244,1
    - Dst: strncmp
      Src: /src/libxml2/testparser.c:246,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:248,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 23
    argCount: 2
    argNames:
    - errCtxt
    - error
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 252
    functionName: testCtxtInputGetterError
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtGetInputPosition
    - strcmp
    - fprintf
    - strncmp
    - xmlCtxtGetInputWindow
    linkageType: ''
    returnType: void
    signature: void testCtxtInputGetterError(void *errCtxt, const xmlError *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testparser.c:265,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/testparser.c:266,1
    - Dst: xmlCtxtReadDoc
      Src: /src/libxml2/testparser.c:267,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:268,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 254
    functionDepth: 14
    functionLinenumber: 254
    functionLinenumberEnd: 272
    functionName: testCtxtInputGetters
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlFreeParserCtxt
    - xmlCtxtReadDoc
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testCtxtInputGetters(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - vctxt
    - ATTRIBUTE_UNUSED
    - externalId ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 282
    functionName: testSwitchDtdExtSubset
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void testSwitchDtdExtSubset(void *vctxt, const xmlChar *name ATTRIBUTE_UNUSED,\n
      \                      const xmlChar *externalId ATTRIBUTE_UNUSED,\n                       const
      xmlChar *systemId ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateStatic
      Src: /src/libxml2/testparser.c:298,1
    - Dst: xmlIOParseDTD
      Src: /src/libxml2/testparser.c:301,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testparser.c:303,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/testparser.c:306,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:308,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/testparser.c:310,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:312,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:318,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/testparser.c:319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 284
    functionDepth: 14
    functionLinenumber: 284
    functionLinenumberEnd: 322
    functionName: testSwitchDtd
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlParserInputBufferCreateStatic
    - xmlFreeDoc
    - xmlFreeDtd
    - xmlNewParserCtxt
    - xmlGetDocEntity
    - fprintf
    - xmlCtxtReadMemory
    - xmlIOParseDTD
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int testSwitchDtd(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:333,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/testparser.c:334,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/testparser.c:336,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testparser.c:337,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testparser.c:339,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 326
    functionDepth: 2
    functionLinenumber: 326
    functionLinenumberEnd: 342
    functionName: dumpNodeList
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 1
    functionsReached:
    - xmlSaveClose
    - xmlBufferDetach
    - xmlBufferFree
    - xmlSaveTree
    - xmlBufferCreate
    - xmlSaveToBuffer
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      dumpNodeList(xmlNodePtr list)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:360,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testparser.c:364,1
    - Dst: xmlNewInputFromString
      Src: /src/libxml2/testparser.c:371,1
    - Dst: xmlCtxtParseContent
      Src: /src/libxml2/testparser.c:373,1
    - Dst: xmlParseInNodeContext
      Src: /src/libxml2/testparser.c:375,1
    - Dst: strlen
      Src: /src/libxml2/testparser.c:375,1
    - Dst: dumpNodeList
      Src: /src/libxml2/testparser.c:379,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:382,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:383,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:391,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/testparser.c:392,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:396,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:397,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 344
    functionDepth: 14
    functionLinenumber: 344
    functionLinenumberEnd: 400
    functionName: testCtxtParseContent
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlNewInputFromString
    - xmlFreeNodeList
    - xmlCtxtParseContent
    - strlen
    - xmlFree
    - xmlNewParserCtxt
    - strcmp
    - xmlReadDoc
    - xmlParseInNodeContext
    - fprintf
    - dumpNodeList
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int testCtxtParseContent(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:422,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/testparser.c:423,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:424,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:426,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:427,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 402
    functionDepth: 14
    functionLinenumber: 402
    functionLinenumberEnd: 433
    functionName: testNoBlanks
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlReadDoc
    - xmlDocDumpMemory
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testNoBlanks(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:443,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:445,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/testparser.c:446,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/testparser.c:447,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testparser.c:448,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/testparser.c:450,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:451,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:452,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:456,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - xml
    - expect
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 435
    functionDepth: 14
    functionLinenumber: 435
    functionLinenumberEnd: 460
    functionName: testSaveNullEncDoc
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlSaveClose
    - xmlBufferContent
    - xmlBufferFree
    - xmlSaveDoc
    - strcmp
    - xmlReadDoc
    - xmlBufferCreate
    - xmlSaveToBuffer
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testSaveNullEncDoc(const char *xml, const char *expect)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testSaveNullEncDoc
      Src: /src/libxml2/testparser.c:466,1
    - Dst: testSaveNullEncDoc
      Src: /src/libxml2/testparser.c:469,1
    - Dst: testSaveNullEncDoc
      Src: /src/libxml2/testparser.c:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 462
    functionDepth: 15
    functionLinenumber: 462
    functionLinenumberEnd: 477
    functionName: testSaveNullEnc
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - testSaveNullEncDoc
    linkageType: ''
    returnType: int
    signature: int testSaveNullEnc(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:490,1
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/testparser.c:491,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:493,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:494,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:498,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 479
    functionDepth: 14
    functionLinenumber: 479
    functionLinenumberEnd: 501
    functionName: testDocDumpFormatMemoryEnc
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlDocDumpFormatMemoryEnc
    - xmlFree
    - strcmp
    - xmlReadDoc
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testDocDumpFormatMemoryEnc(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseBalancedChunkMemory
      Src: /src/libxml2/testparser.c:512,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:520,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:521,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/testparser.c:525,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 505
    functionDepth: 2
    functionLinenumber: 505
    functionLinenumberEnd: 528
    functionName: testBalancedChunk
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlParseBalancedChunkMemory
    - fprintf
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int testBalancedChunk(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:537,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:544,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:546,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:547,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:550,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 532
    functionDepth: 4
    functionLinenumber: 532
    functionLinenumberEnd: 554
    functionName: testHugePush
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlParseChunk
    - xmlFreeParserCtxt
    - xmlFreeDoc
    - xmlCreatePushParserCtxt
    linkageType: ''
    returnType: int
    signature: int testHugePush(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:567,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:568,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:570,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:572,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:573,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testparser.c:574,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:575,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:577,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:579,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testparser.c:579,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:580,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:584,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:585,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:586,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:598,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:599,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:601,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:604,1
    - Dst: xmlBufferCat
      Src: /src/libxml2/testparser.c:605,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testparser.c:606,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:607,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:609,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:611,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testparser.c:611,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:615,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:616,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:617,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 556
    functionDepth: 4
    functionLinenumber: 556
    functionLinenumberEnd: 620
    functionName: testHugeEncodedChunk
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlBufferDetach
    - xmlBufferFree
    - xmlFree
    - xmlCreatePushParserCtxt
    - xmlStrlen
    - xmlFreeParserCtxt
    - xmlParseChunk
    - xmlBufferCreate
    - xmlBufferCat
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testHugeEncodedChunk(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:633,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/testparser.c:634,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:639,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:640,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:646,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:648,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:655,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:658,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:660,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testparser.c:662,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:663,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:665,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testparser.c:665,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:667,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:669,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:672,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:677,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:678,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:679,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 622
    functionDepth: 4
    functionLinenumber: 622
    functionLinenumberEnd: 683
    functionName: testPushCDataEnd
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlBufferDetach
    - xmlBufferFree
    - xmlFree
    - xmlBufferCCat
    - xmlCreatePushParserCtxt
    - xmlCtxtSetOptions
    - xmlStrlen
    - xmlFreeParserCtxt
    - xmlParseChunk
    - xmlBufferCreate
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testPushCDataEnd(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlReadDoc
      Src: /src/libxml2/testparser.c:694,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:696,1
    - Dst: xmlGetID
      Src: /src/libxml2/testparser.c:700,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:702,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:706,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 708
    functionName: testHtmlIds
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlGetID
    - htmlReadDoc
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testHtmlIds(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlReadDoc
      Src: /src/libxml2/testparser.c:733,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:736,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/testparser.c:737,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/testparser.c:738,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testparser.c:739,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:740,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/testparser.c:740,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:741,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:744,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxml2/testparser.c:746,1
    - Dst: htmlDocDumpMemoryFormat
      Src: /src/libxml2/testparser.c:748,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:749,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:750,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:753,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:755,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 713
    functionDepth: 6
    functionLinenumber: 713
    functionLinenumberEnd: 757
    functionName: testHtmlInsertMetaEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlSaveClose
    - xmlBufferContent
    - xmlBufferFree
    - xmlStrEqual
    - xmlFree
    - htmlDocDumpMemoryFormat
    - xmlSaveDoc
    - htmlReadDoc
    - xmlBufferCreate
    - xmlSaveToBuffer
    - fprintf
    - xmlFreeDoc
    - htmlSetMetaEncoding
    linkageType: ''
    returnType: int
    signature: int testHtmlInsertMetaEncoding(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlReadDoc
      Src: /src/libxml2/testparser.c:806,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:809,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/testparser.c:810,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/testparser.c:811,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/testparser.c:812,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:813,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/testparser.c:813,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:814,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:817,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:819,1
    - Dst: htmlSetMetaEncoding
      Src: /src/libxml2/testparser.c:821,1
    - Dst: htmlDocDumpMemoryFormat
      Src: /src/libxml2/testparser.c:823,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:824,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:825,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:828,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:830,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 759
    functionDepth: 6
    functionLinenumber: 759
    functionLinenumberEnd: 832
    functionName: testHtmlUpdateMetaEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlSaveClose
    - xmlBufferContent
    - xmlBufferFree
    - xmlStrEqual
    - xmlFree
    - htmlDocDumpMemoryFormat
    - xmlSaveDoc
    - htmlReadDoc
    - xmlBufferCreate
    - xmlSaveToBuffer
    - fprintf
    - xmlFreeDoc
    - htmlSetMetaEncoding
    linkageType: ''
    returnType: int
    signature: int testHtmlUpdateMetaEncoding(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:843,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/testparser.c:845,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:848,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:849,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/testparser.c:853,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:854,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:855,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:859,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:860,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 862
    functionName: testHtmlPushWithEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - htmlFreeParserCtxt
    - xmlStrEqual
    - htmlParseChunk
    - htmlCreatePushParserCtxt
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testHtmlPushWithEncoding(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/testparser.c:876,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:877,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:878,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:880,1
    - Dst: xmlBufferCCat
      Src: /src/libxml2/testparser.c:881,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/testparser.c:882,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/testparser.c:883,1
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testparser.c:885,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testparser.c:886,1
    - Dst: xmlTextReaderConstEncoding
      Src: /src/libxml2/testparser.c:887,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:889,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:890,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testparser.c:894,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:895,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 867
    functionDepth: 7
    functionLinenumber: 867
    functionLinenumberEnd: 897
    functionName: testReaderEncoding
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlBufferDetach
    - xmlBufferFree
    - xmlStrEqual
    - xmlFree
    - xmlBufferCCat
    - xmlTextReaderRead
    - xmlReaderForDoc
    - xmlBufferCreate
    - fprintf
    - xmlTextReaderConstEncoding
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int testReaderEncoding(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testparser.c:907,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testparser.c:908,1
    - Dst: xmlTextReaderReadOuterXml
      Src: /src/libxml2/testparser.c:910,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:911,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:912,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:915,1
    - Dst: xmlTextReaderReadInnerXml
      Src: /src/libxml2/testparser.c:917,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:918,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:919,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:922,1
    - Dst: xmlTextReaderReadString
      Src: /src/libxml2/testparser.c:924,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:925,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:926,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:929,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testparser.c:931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 900
    functionDepth: 7
    functionLinenumber: 900
    functionLinenumberEnd: 933
    functionName: testReaderContent
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlTextReaderReadOuterXml
    - xmlTextReaderRead
    - xmlReaderForDoc
    - xmlTextReaderReadInnerXml
    - xmlTextReaderReadString
    - fprintf
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int testReaderContent(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/testparser.c:942,1
    - Dst: xmlTextReaderReadString
      Src: /src/libxml2/testparser.c:943,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/testparser.c:946,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:962,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:964,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 936
    functionDepth: 4
    functionLinenumber: 936
    functionLinenumberEnd: 967
    functionName: testReaderNode
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlTextReaderNodeType
    - xmlTextReaderCurrentNode
    - xmlTextReaderReadString
    - fprintf
    linkageType: ''
    returnType: int
    signature: int testReaderNode(xmlTextReader *reader)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testparser.c:982,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testparser.c:984,1
    - Dst: testReaderNode
      Src: /src/libxml2/testparser.c:985,1
    - Dst: xmlTextReaderMoveToFirstAttribute
      Src: /src/libxml2/testparser.c:990,1
    - Dst: testReaderNode
      Src: /src/libxml2/testparser.c:992,1
    - Dst: xmlTextReaderMoveToNextAttribute
      Src: /src/libxml2/testparser.c:996,1
    - Dst: xmlTextReaderMoveToElement
      Src: /src/libxml2/testparser.c:998,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testparser.c:1002,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 969
    functionDepth: 7
    functionLinenumber: 969
    functionLinenumberEnd: 1004
    functionName: testReader
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderMoveToNextAttribute
    - xmlTextReaderRead
    - xmlTextReaderMoveToElement
    - xmlTextReaderMoveToFirstAttribute
    - xmlReaderForDoc
    - testReaderNode
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int testReader(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1019,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/testparser.c:1020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - arg
    - msg
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    - xmlParserSeverities
    - xmlTextReaderLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1021
    functionName: testReaderError
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlMemStrdup
    linkageType: ''
    returnType: void
    signature: "void testReaderError(void *arg, const char *msg,\n                xmlParserSeverities
      severity ATTRIBUTE_UNUSED,\n                xmlTextReaderLocatorPtr locator
      ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1028,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/testparser.c:1029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg
    - error
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1023
    functionDepth: 0
    functionLinenumber: 1023
    functionLinenumberEnd: 1031
    functionName: testStructuredReaderError
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlMemStrdup
    linkageType: ''
    returnType: void
    signature: void testStructuredReaderError(void *arg, const xmlError *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testparser.c:1047,1
    - Dst: xmlTextReaderSetErrorHandler
      Src: /src/libxml2/testparser.c:1048,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testparser.c:1051,1
    - Dst: strstr
      Src: /src/libxml2/testparser.c:1055,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1056,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1060,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testparser.c:1061,1
    - Dst: xmlReaderForDoc
      Src: /src/libxml2/testparser.c:1063,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/testparser.c:1064,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/testparser.c:1068,1
    - Dst: strstr
      Src: /src/libxml2/testparser.c:1073,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1074,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1078,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/testparser.c:1079,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1033
    functionDepth: 7
    functionLinenumber: 1033
    functionLinenumberEnd: 1082
    functionName: testReaderXIncludeError
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderSetErrorHandler
    - xmlFree
    - xmlTextReaderRead
    - xmlTextReaderSetStructuredErrorHandler
    - xmlReaderForDoc
    - fprintf
    - strstr
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int testReaderXIncludeError(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctxt
    - data
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1087
    functionDepth: 0
    functionLinenumber: 1087
    functionLinenumberEnd: 1093
    functionName: testWriterIOWrite
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int testWriterIOWrite(void *ctxt, const char *data, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1100
      start: 1095
    functionDepth: 0
    functionLinenumber: 1095
    functionLinenumberEnd: 1100
    functionName: testWriterIOClose
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int testWriterIOClose(void *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/testparser.c:1109,1
    - Dst: xmlNewTextWriter
      Src: /src/libxml2/testparser.c:1111,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/testparser.c:1112,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/testparser.c:1113,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/testparser.c:1114,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/testparser.c:1115,1
    - Dst: xmlTextWriterClose
      Src: /src/libxml2/testparser.c:1116,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1119,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/testparser.c:1124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1102
    functionDepth: 7
    functionLinenumber: 1102
    functionLinenumberEnd: 1126
    functionName: testWriterClose
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlNewTextWriter
    - xmlTextWriterEndElement
    - xmlTextWriterStartElement
    - xmlTextWriterEndDocument
    - xmlOutputBufferCreateIO
    - fprintf
    - xmlTextWriterClose
    - xmlFreeTextWriter
    - xmlTextWriterStartDocument
    linkageType: ''
    returnType: int
    signature: int testWriterClose(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildRelativeURI
      Src: /src/libxml2/testparser.c:1244,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:1246,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1247,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1135
    functionDepth: 11
    functionLinenumber: 1135
    functionLinenumberEnd: 1256
    functionName: testBuildRelativeUri
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlBuildRelativeURI
    - fprintf
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int testBuildRelativeUri(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseURI
      Src: /src/libxml2/testparser.c:1299,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1301,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1305,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:1308,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1309,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/testparser.c:1313,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/testparser.c:1319,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/testparser.c:1320,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1321,1
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1326,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1259
    functionDepth: 10
    functionLinenumber: 1259
    functionLinenumberEnd: 1330
    functionName: testWindowsUri
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlBuildURI
    - strcmp
    - xmlFreeURI
    - fprintf
    - xmlParseURI
    linkageType: ''
    returnType: int
    signature: int testWindowsUri(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetLastError
      Src: /src/libxml2/testparser.c:1348,1
    - Dst: xmlReadDoc
      Src: /src/libxml2/testparser.c:1349,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/testparser.c:1350,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1352,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:1355,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/testparser.c:1358,1
    - Dst: htmlReadDoc
      Src: /src/libxml2/testparser.c:1359,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/testparser.c:1360,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1362,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:1365,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:1372,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/testparser.c:1373,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:1375,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/testparser.c:1376,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1379,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:1383,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:1384,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/testparser.c:1387,1
    - Dst: xmlCtxtSetOptions
      Src: /src/libxml2/testparser.c:1389,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/testparser.c:1391,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/testparser.c:1392,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1395,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:1399,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:1400,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1334
    functionDepth: 14
    functionLinenumber: 1334
    functionLinenumberEnd: 1406
    functionName: testTruncatedMultiByte
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCreatePushParserCtxt
    - xmlCtxtSetOptions
    - xmlResetLastError
    - htmlReadDoc
    - xmlFreeParserCtxt
    - xmlParseChunk
    - xmlReadDoc
    - htmlParseChunk
    - htmlCreatePushParserCtxt
    - xmlGetLastError
    - fprintf
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int testTruncatedMultiByte(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1411
    functionDepth: 0
    functionLinenumber: 1411
    functionLinenumberEnd: 1437
    functionName: rot13Convert
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError rot13Convert(void *vctxt, unsigned char *out, int
      *outlen,\n             const unsigned char *in, int *inlen,\n             int
      flush ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testparser.c:1441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1442
      start: 1439
    functionDepth: 0
    functionLinenumber: 1439
    functionLinenumberEnd: 1442
    functionName: rot13ConvCtxtDtor
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void rot13ConvCtxtDtor(void *vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:1449,1
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/testparser.c:1450,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testparser.c:1455,1
    - Dst: xmlCharEncNewCustomHandler
      Src: /src/libxml2/testparser.c:1458,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - name
    - flags
    - out
    argTypes:
    - void*
    - char*
    - xmlCharEncFlags
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1444
    functionDepth: 3
    functionLinenumber: 1444
    functionLinenumberEnd: 1461
    functionName: rot13ConvImpl
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlCreateCharEncodingHandler
    - strcmp
    - xmlCharEncNewCustomHandler
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors rot13ConvImpl(void *vctxt ATTRIBUTE_UNUSED, const
      char *name,\n              xmlCharEncFlags flags, xmlCharEncodingHandler **out)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/testparser.c:1470,1
    - Dst: xmlCtxtSetCharEncConvImpl
      Src: /src/libxml2/testparser.c:1471,1
    - Dst: xmlCtxtReadDoc
      Src: /src/libxml2/testparser.c:1473,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/testparser.c:1477,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/testparser.c:1479,1
    - Dst: strcmp
      Src: /src/libxml2/testparser.c:1480,1
    - Dst: fprintf
      Src: /src/libxml2/testparser.c:1481,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/testparser.c:1485,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1488
      start: 1463
    functionDepth: 14
    functionLinenumber: 1463
    functionLinenumberEnd: 1488
    functionName: testCharEncConvImpl
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - xmlNewParserCtxt
    - xmlCtxtSetCharEncConvImpl
    - strcmp
    - xmlCtxtReadDoc
    - fprintf
    - xmlFreeDoc
    - xmlDocGetRootElement
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int testCharEncConvImpl(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testNewDocNode
      Src: /src/libxml2/testparser.c:1494,1
    - Dst: testStandaloneWithEncoding
      Src: /src/libxml2/testparser.c:1495,1
    - Dst: testUnsupportedEncoding
      Src: /src/libxml2/testparser.c:1496,1
    - Dst: testNodeGetContent
      Src: /src/libxml2/testparser.c:1497,1
    - Dst: testCFileIO
      Src: /src/libxml2/testparser.c:1498,1
    - Dst: testUndeclEntInContent
      Src: /src/libxml2/testparser.c:1499,1
    - Dst: testInvalidCharRecovery
      Src: /src/libxml2/testparser.c:1500,1
    - Dst: testCtxtInputGetters
      Src: /src/libxml2/testparser.c:1501,1
    - Dst: testSwitchDtd
      Src: /src/libxml2/testparser.c:1503,1
    - Dst: testCtxtParseContent
      Src: /src/libxml2/testparser.c:1506,1
    - Dst: testNoBlanks
      Src: /src/libxml2/testparser.c:1507,1
    - Dst: testSaveNullEnc
      Src: /src/libxml2/testparser.c:1508,1
    - Dst: testDocDumpFormatMemoryEnc
      Src: /src/libxml2/testparser.c:1509,1
    - Dst: testBalancedChunk
      Src: /src/libxml2/testparser.c:1512,1
    - Dst: testHugePush
      Src: /src/libxml2/testparser.c:1515,1
    - Dst: testHugeEncodedChunk
      Src: /src/libxml2/testparser.c:1516,1
    - Dst: testPushCDataEnd
      Src: /src/libxml2/testparser.c:1517,1
    - Dst: testHtmlIds
      Src: /src/libxml2/testparser.c:1520,1
    - Dst: testHtmlInsertMetaEncoding
      Src: /src/libxml2/testparser.c:1522,1
    - Dst: testHtmlUpdateMetaEncoding
      Src: /src/libxml2/testparser.c:1523,1
    - Dst: testHtmlPushWithEncoding
      Src: /src/libxml2/testparser.c:1526,1
    - Dst: testReaderEncoding
      Src: /src/libxml2/testparser.c:1530,1
    - Dst: testReaderContent
      Src: /src/libxml2/testparser.c:1532,1
    - Dst: testReader
      Src: /src/libxml2/testparser.c:1534,1
    - Dst: testReaderXIncludeError
      Src: /src/libxml2/testparser.c:1536,1
    - Dst: testWriterClose
      Src: /src/libxml2/testparser.c:1540,1
    - Dst: testBuildRelativeUri
      Src: /src/libxml2/testparser.c:1542,1
    - Dst: testWindowsUri
      Src: /src/libxml2/testparser.c:1544,1
    - Dst: testTruncatedMultiByte
      Src: /src/libxml2/testparser.c:1547,1
    - Dst: testCharEncConvImpl
      Src: /src/libxml2/testparser.c:1549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1552
      start: 1490
    functionDepth: 16
    functionLinenumber: 1490
    functionLinenumberEnd: 1552
    functionName: main
    functionSourceFile: /src/libxml2/testparser.c
    functionUses: 0
    functionsReached:
    - testNodeGetContent
    - testCFileIO
    - testReaderEncoding
    - testHtmlIds
    - testUndeclEntInContent
    - testInvalidCharRecovery
    - testDocDumpFormatMemoryEnc
    - testWriterClose
    - testBuildRelativeUri
    - testTruncatedMultiByte
    - testBalancedChunk
    - testReaderContent
    - testCharEncConvImpl
    - testSwitchDtd
    - testCtxtParseContent
    - testSaveNullEnc
    - testHtmlPushWithEncoding
    - testHtmlUpdateMetaEncoding
    - testCtxtInputGetters
    - testReaderXIncludeError
    - testPushCDataEnd
    - testStandaloneWithEncoding
    - testUnsupportedEncoding
    - testWindowsUri
    - testHugeEncodedChunk
    - testReader
    - testHtmlInsertMetaEncoding
    - testNewDocNode
    - testNoBlanks
    - testHugePush
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: xlinkGetDefaultHandler
    functionSourceFile: /src/libxml2/xlink.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xlinkHandler
    signature: 'xlinkHandler *

      xlinkGetDefaultHandler(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - handler
    argTypes:
    - xlinkHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: xlinkSetDefaultHandler
    functionSourceFile: /src/libxml2/xlink.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xlinkSetDefaultHandler(xlinkHandler *handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: xlinkGetDefaultDetect
    functionSourceFile: /src/libxml2/xlink.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xlinkNodeDetectFunc
    signature: "xlinkNodeDetectFunc xlinkGetDefaultDetect\t(void)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - func
    argTypes:
    - xlinkNodeDetectFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: xlinkSetDefaultDetect
    functionSourceFile: /src/libxml2/xlink.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xlinkSetDefaultDetect\t(xlinkNodeDetectFunc func)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xlink.c:118,1
    - Dst: xmlGetNsProp
      Src: /src/libxml2/xlink.c:133,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xlink.c:135,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xlink.c:137,1
    - Dst: xmlGetNsProp
      Src: /src/libxml2/xlink.c:138,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xlink.c:141,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xlink.c:144,1
    - Dst: snprintf
      Src: /src/libxml2/xlink.c:148,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xlink.c:151,1
    - Dst: xmlFree
      Src: /src/libxml2/xlink.c:161,1
    - Dst: xmlFree
      Src: /src/libxml2/xlink.c:162,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 36
    argCount: 2
    argNames:
    - doc
    - node
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 164
    functionName: xlinkIsLink
    functionSourceFile: /src/libxml2/xlink.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlSearchNs
    - xmlGetNsProp
    - snprintf
    linkageType: ''
    returnType: xlinkType
    signature: "xlinkType xlinkIsLink\t(xmlDoc *doc, xmlNode *node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xpath.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 4
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: xmlXPathInit
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlXPathInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 194
    functionName: xmlXPathSFComputeHash
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: ATTRIBUTE_NO_SANITIZE_INTEGER xmlXPathSFComputeHash(const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSFComputeHash
      Src: /src/libxml2/xpath.c:225,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 235
    functionName: xmlInitXPathInternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathSFComputeHash
    linkageType: ''
    returnType: void
    signature: void xmlInitXPathInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: isnan
      Src: /src/libxml2/xpath.c:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 256
    functionName: xmlXPathIsNaN
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 28
    functionsReached:
    - isnan
    linkageType: ''
    returnType: int
    signature: int xmlXPathIsNaN(double val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isinf
      Src: /src/libxml2/xpath.c:267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 275
    functionName: xmlXPathIsInf
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - isinf
    linkageType: ''
    returnType: int
    signature: int xmlXPathIsInf(double val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 296
    functionName: XML_NODE_SORT_VALUE
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_NODE_SORT_VALUE(n)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:328,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:329,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:332,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:333,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:378,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:428,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:501,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:502,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:505,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:506,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:569,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:570,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:573,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:574,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 196
    argCount: 2
    argNames:
    - node1
    - node2
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 585
    functionName: xmlXPathCmpNodesExt
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - XML_NODE_SORT_VALUE
    linkageType: ''
    returnType: int
    signature: int xmlXPathCmpNodesExt(xmlNodePtr node1, xmlNodePtr node2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCmpNodesExt
      Src: /src/libxml2/xpath.c:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 605
    functionDepth: 2
    functionLinenumber: 605
    functionLinenumberEnd: 609
    functionName: wrap_cmp
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCmpNodesExt
    linkageType: ''
    returnType: int
    signature: int wrap_cmp( xmlNodePtr x, xmlNodePtr y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCmpNodes
      Src: /src/libxml2/xpath.c:613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 615
    functionName: wrap_cmp
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCmpNodes
    linkageType: ''
    returnType: int
    signature: int wrap_cmp( xmlNodePtr x, xmlNodePtr y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 617
    functionDepth: 0
    functionLinenumber: 617
    functionLinenumberEnd: 618
    functionName: SORT_CMP
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SORT_CMP(x, y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 634
    functionName: XP_ERRORNULL
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XP_ERRORNULL(X)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xpath.c:680,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 675
    functionDepth: 2
    functionLinenumber: 675
    functionLinenumberEnd: 682
    functionName: xmlXPathErrMemory
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlXPathErrMemory(xmlXPathContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 689
    functionDepth: 3
    functionLinenumber: 689
    functionLinenumberEnd: 696
    functionName: xmlXPathPErrMemory
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathErrMemory
    linkageType: ''
    returnType: void
    signature: void xmlXPathPErrMemory(xmlXPathParserContext *ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetError
      Src: /src/libxml2/xpath.c:733,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:739,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:741,1
    - Dst: va_start
      Src: /src/libxml2/xpath.c:758,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/xpath.c:759,1
    - Dst: va_end
      Src: /src/libxml2/xpath.c:765,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:767,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 3
    argNames:
    - ctxt
    - code
    - fmt
    argTypes:
    - xmlXPathParserContext*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 706
    functionDepth: 4
    functionLinenumber: 706
    functionLinenumberEnd: 768
    functionName: xmlXPathErrFmt
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - va_end
    - xmlXPathPErrMemory
    - xmlResetError
    - va_start
    - xmlVRaiseError
    linkageType: ''
    returnType: void
    signature: void xmlXPathErrFmt(xmlXPathParserContext *ctxt, int code, const char
      *fmt, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - code
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 776
    functionDepth: 5
    functionLinenumber: 776
    functionLinenumberEnd: 779
    functionName: xmlXPathErr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathErrFmt
    linkageType: ''
    returnType: void
    signature: void xmlXPathErr(xmlXPathParserContext *ctxt, int code)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - 'no'
    argTypes:
    - xmlXPathParserContext*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 789
    functionDepth: 6
    functionLinenumber: 789
    functionLinenumberEnd: 793
    functionName: xmlXPatherror
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathErr
    linkageType: ''
    returnType: void
    signature: "void xmlXPatherror(xmlXPathParserContext *ctxt, const char *file ATTRIBUTE_UNUSED,\n
      \             int line ATTRIBUTE_UNUSED, int no)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:809,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - opCount
    argTypes:
    - xmlXPathParserContextPtr
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 802
    functionDepth: 6
    functionLinenumber: 802
    functionLinenumberEnd: 815
    functionName: xmlXPathCheckOpLimit
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathErr
    linkageType: ''
    returnType: int
    signature: int xmlXPathCheckOpLimit(xmlXPathParserContextPtr ctxt, unsigned long
      opCount)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 819
    functionName: OP_LIMIT_EXCEEDED
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_LIMIT_EXCEEDED(ctxt, n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:943,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:946,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:953,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:956,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 939
    functionDepth: 0
    functionLinenumber: 939
    functionLinenumberEnd: 962
    functionName: xmlXPathNewCompExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlXPathCompExprPtr
    signature: xmlXPathCompExprPtr xmlXPathNewCompExpr(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:982,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:984,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:987,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:994,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xpath.c:997,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1000,1
    - Dst: xmlFreePatternList
      Src: /src/libxml2/xpath.c:1004,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1008,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1011,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlXPathCompExpr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 969
    functionDepth: 3
    functionLinenumber: 969
    functionLinenumberEnd: 1012
    functionName: xmlXPathFreeCompExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 16
    functionsReached:
    - xmlDictFree
    - xmlFreePatternList
    - xmlXPathFreeObject
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeCompExpr(xmlXPathCompExpr *comp)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xpath.c:1037,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1040,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xpath.c:1043,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1045,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xpath.c:1063,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1064,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xpath.c:1069,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1070,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 9
    argNames:
    - ctxt
    - ch1
    - ch2
    - op
    - value
    - value2
    - value3
    - value4
    - value5
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - int
    - xmlXPathOp
    - int
    - int
    - int
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 1028
    functionDepth: 4
    functionLinenumber: 1028
    functionLinenumberEnd: 1079
    functionName: xmlXPathCompExprAdd
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlFree
    - xmlXPathPErrMemory
    - xmlDictLookup
    - xmlGrowCapacity
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompExprAdd(xmlXPathParserContextPtr ctxt, int ch1, int
      ch2,\n   xmlXPathOp op, int value,\n   int value2, int value3, void *value4,
      void *value5)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - op
    - ','
    - op1
    - ','
    - op2
    - ','
    - val
    - ','
    - val2
    - ','
    - val3
    - ','
    - val4
    - ','
    - val5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 1081
    functionDepth: 0
    functionLinenumber: 1081
    functionLinenumberEnd: 1084
    functionName: PUSH_FULL_EXPR
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_FULL_EXPR(op, op1, op2, val, val2, val3, val4, val5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - op
    - ','
    - val
    - ','
    - val2
    - ','
    - val3
    - ','
    - val4
    - ','
    - val5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1084
    functionDepth: 0
    functionLinenumber: 1084
    functionLinenumberEnd: 1087
    functionName: PUSH_LONG_EXPR
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_LONG_EXPR(op, val, val2, val3, val4, val5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - op
    - ','
    - val
    - ','
    - val2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1090
    functionName: PUSH_LEAVE_EXPR
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_LEAVE_EXPR(op, val, val2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - op
    - ','
    - ch
    - ','
    - val
    - ','
    - val2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1093
    functionName: PUSH_UNARY_EXPR
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_UNARY_EXPR(op, ch, val, val2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - op
    - ','
    - ch1
    - ','
    - ch2
    - ','
    - val
    - ','
    - val2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1094
    functionDepth: 0
    functionLinenumber: 1094
    functionLinenumberEnd: 1097
    functionName: PUSH_BINARY_EXPR
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH_BINARY_EXPR(op, ch1, ch2, val, val2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1133,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1134,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1141,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1142,1
    - Dst: xmlDebugDumpAttr
      Src: /src/libxml2/xpath.c:1144,1
    - Dst: xmlDebugDumpOneNode
      Src: /src/libxml2/xpath.c:1146,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - output
    - cur
    - depth
    argTypes:
    - FILE*
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1124
    functionDepth: 1
    functionLinenumber: 1124
    functionLinenumberEnd: 1147
    functionName: xmlXPathDebugDumpNode
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlDebugDumpOneNode
    - fprintf
    - xmlDebugDumpAttr
    linkageType: ''
    returnType: void
    signature: void xmlXPathDebugDumpNode(FILE *output, xmlNodePtr cur, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1158,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1159,1
    - Dst: xmlDebugDumpOneNode
      Src: /src/libxml2/xpath.c:1167,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - output
    - cur
    - depth
    argTypes:
    - FILE*
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1148
    functionDepth: 1
    functionLinenumber: 1148
    functionLinenumberEnd: 1169
    functionName: xmlXPathDebugDumpNodeList
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlDebugDumpOneNode
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlXPathDebugDumpNodeList(FILE *output, xmlNodePtr cur, int depth)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1181,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1182,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1188,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1190,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1191,1
    - Dst: xmlXPathDebugDumpNode
      Src: /src/libxml2/xpath.c:1192,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - output
    - cur
    - depth
    argTypes:
    - FILE*
    - xmlNodeSetPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1171
    functionDepth: 2
    functionLinenumber: 1171
    functionLinenumberEnd: 1195
    functionName: xmlXPathDebugDumpNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlXPathDebugDumpNode
    linkageType: ''
    returnType: void
    signature: void xmlXPathDebugDumpNodeSet(FILE *output, xmlNodeSetPtr cur, int
      depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1207,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1208,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1213,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1214,1
    - Dst: xmlXPathDebugDumpNodeList
      Src: /src/libxml2/xpath.c:1215,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - output
    - cur
    - depth
    argTypes:
    - FILE*
    - xmlNodeSetPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1197
    functionDepth: 2
    functionLinenumber: 1197
    functionLinenumberEnd: 1216
    functionName: xmlXPathDebugDumpValueTree
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlXPathDebugDumpNodeList
    linkageType: ''
    returnType: void
    signature: void xmlXPathDebugDumpValueTree(FILE *output, xmlNodeSetPtr cur, int
      depth)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1237,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1240,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1245,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1248,1
    - Dst: xmlXPathDebugDumpNodeSet
      Src: /src/libxml2/xpath.c:1249,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1252,1
    - Dst: xmlXPathDebugDumpValueTree
      Src: /src/libxml2/xpath.c:1253,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1256,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1257,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1258,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:1261,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1263,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1266,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:1269,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1270,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1273,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1275,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1280,1
    - Dst: xmlDebugDumpString
      Src: /src/libxml2/xpath.c:1281,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1282,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1285,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 3
    argNames:
    - output
    - cur
    - depth
    argTypes:
    - FILE*
    - xmlXPathObject*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1225
    functionDepth: 3
    functionLinenumber: 1225
    functionLinenumberEnd: 1288
    functionName: xmlXPathDebugDumpObject
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlXPathDebugDumpNodeSet
    - xmlXPathIsInf
    - xmlXPathIsNaN
    - xmlXPathDebugDumpValueTree
    - fprintf
    - xmlDebugDumpString
    linkageType: ''
    returnType: void
    signature: void xmlXPathDebugDumpObject(FILE *output, xmlXPathObject *cur, int
      depth)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1300,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1302,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1307,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1309,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1311,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1314,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1316,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1320,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1322,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1324,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1328,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1330,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1332,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1334,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1338,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1340,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1342,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1345,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1347,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1349,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1351,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1359,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1362,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1364,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1366,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1368,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1370,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1372,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1374,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1376,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1378,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1380,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1382,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1384,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1386,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1390,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1392,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1394,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1396,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1398,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1400,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1404,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1406,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1408,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1410,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1413,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1415,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1422,1
    - Dst: xmlXPathDebugDumpObject
      Src: /src/libxml2/xpath.c:1423,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1431,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1433,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1442,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1445,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1448,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1449,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1450,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1452,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1454,1
    - Dst: xmlXPathDebugDumpStepOp
      Src: /src/libxml2/xpath.c:1461,1
    - Dst: xmlXPathDebugDumpStepOp
      Src: /src/libxml2/xpath.c:1463,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 183
    argCount: 4
    argNames:
    - output
    - comp
    - op
    - depth
    argTypes:
    - FILE*
    - xmlXPathCompExprPtr
    - xmlXPathStepOpPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1290
    functionDepth: 4
    functionLinenumber: 1290
    functionLinenumberEnd: 1464
    functionName: xmlXPathDebugDumpStepOp
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlXPathDebugDumpStepOp
    - xmlXPathDebugDumpObject
    linkageType: ''
    returnType: void
    signature: "void xmlXPathDebugDumpStepOp(FILE *output, xmlXPathCompExprPtr comp,\n\t
      \                    xmlXPathStepOpPtr op, int depth)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1485,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1489,1
    - Dst: fprintf
      Src: /src/libxml2/xpath.c:1493,1
    - Dst: xmlXPathDebugDumpStepOp
      Src: /src/libxml2/xpath.c:1496,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - output
    - comp
    - depth
    argTypes:
    - FILE*
    - xmlXPathCompExpr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1498
      start: 1473
    functionDepth: 5
    functionLinenumber: 1473
    functionLinenumberEnd: 1498
    functionName: xmlXPathDebugDumpCompExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - fprintf
    - xmlXPathDebugDumpStepOp
    linkageType: ''
    returnType: void
    signature: "void xmlXPathDebugDumpCompExpr(FILE *output, xmlXPathCompExpr *comp,\n\t
      \                 int depth)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:1518,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:1521,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1513
    functionDepth: 0
    functionLinenumber: 1513
    functionLinenumberEnd: 1525
    functionName: xmlXPathNewCache
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlXPathContextCachePtr
    signature: xmlXPathContextCachePtr xmlXPathNewCache(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1537,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1538,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1540,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1527
    functionDepth: 0
    functionLinenumber: 1527
    functionLinenumberEnd: 1544
    functionName: xmlXPathCacheFreeObjectList
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathCacheFreeObjectList(xmlXPathObjectPtr list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCacheFreeObjectList
      Src: /src/libxml2/xpath.c:1552,1
    - Dst: xmlXPathCacheFreeObjectList
      Src: /src/libxml2/xpath.c:1554,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1555,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - cache
    argTypes:
    - xmlXPathContextCachePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1556
      start: 1546
    functionDepth: 1
    functionLinenumber: 1546
    functionLinenumberEnd: 1556
    functionName: xmlXPathFreeCache
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlXPathCacheFreeObjectList
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeCache(xmlXPathContextCachePtr cache)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewCache
      Src: /src/libxml2/xpath.c:1588,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:1590,1
    - Dst: xmlXPathFreeCache
      Src: /src/libxml2/xpath.c:1602,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 4
    argNames:
    - ctxt
    - active
    - value
    - options
    argTypes:
    - xmlXPathContext*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1576
    functionDepth: 3
    functionLinenumber: 1576
    functionLinenumberEnd: 1606
    functionName: xmlXPathContextSetCache
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathFreeCache
    - xmlXPathNewCache
    - xmlXPathErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlXPathContextSetCache(xmlXPathContext *ctxt,\n\t\t\tint active,\n\t\t\tint
      value,\n\t\t\tint options)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxml2/xpath.c:1639,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1641,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1643
      start: 1618
    functionDepth: 4
    functionLinenumber: 1618
    functionLinenumberEnd: 1643
    functionName: xmlXPathCacheWrapNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlXPathWrapNodeSet
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheWrapNodeSet(xmlXPathParserContextPtr
      pctxt, xmlNodeSetPtr val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/xpath.c:1672,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1674,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1653
    functionDepth: 4
    functionLinenumber: 1653
    functionLinenumberEnd: 1676
    functionName: xmlXPathCacheWrapString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlXPathWrapString
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheWrapString(xmlXPathParserContextPtr
      pctxt, xmlChar *val)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:1710,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1711,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:1724,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1726,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpath.c:1740,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1742,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1687
    functionDepth: 4
    functionLinenumber: 1687
    functionLinenumberEnd: 1744
    functionName: xmlXPathCacheNewNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetAddUnique
    - xmlXPathNewNodeSet
    - xmlXPathPErrMemory
    - xmlXPathNodeSetCreate
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheNewNodeSet(xmlXPathParserContextPtr
      pctxt, xmlNodePtr val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:1768,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1770,1
    - Dst: xmlXPathNewString
      Src: /src/libxml2/xpath.c:1783,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1785,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1754
    functionDepth: 4
    functionLinenumber: 1754
    functionLinenumberEnd: 1787
    functionName: xmlXPathCacheNewString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlStrdup
    - xmlXPathNewString
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheNewString(xmlXPathParserContextPtr pctxt,
      const xmlChar *val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:1800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1797
    functionDepth: 5
    functionLinenumber: 1797
    functionLinenumberEnd: 1801
    functionName: xmlXPathCacheNewCString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCacheNewString
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheNewCString(xmlXPathParserContextPtr
      pctxt, const char *val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/xpath.c:1831,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1833,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1835
      start: 1811
    functionDepth: 4
    functionLinenumber: 1811
    functionLinenumberEnd: 1835
    functionName: xmlXPathCacheNewBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlXPathNewBoolean
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheNewBoolean(xmlXPathParserContextPtr
      pctxt, int val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/xpath.c:1865,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1867,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1845
    functionDepth: 4
    functionLinenumber: 1845
    functionLinenumberEnd: 1869
    functionName: xmlXPathCacheNewFloat
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlXPathNewFloat
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheNewFloat(xmlXPathParserContextPtr pctxt,
      double val)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:1893,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1895,1
    - Dst: xmlXPathCacheWrapNodeSet
      Src: /src/libxml2/xpath.c:1898,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:1901,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:1903,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:1905,1
    - Dst: xmlXPathObjectCopy
      Src: /src/libxml2/xpath.c:1910,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1912,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 2
    argNames:
    - pctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1914
      start: 1879
    functionDepth: 5
    functionLinenumber: 1879
    functionLinenumberEnd: 1914
    functionName: xmlXPathCacheObjectCopy
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlXPathCacheWrapNodeSet
    - xmlXPathObjectCopy
    - xmlXPathCacheNewBoolean
    - xmlXPathCacheNewFloat
    - xmlXPathNodeSetMerge
    - xmlXPathCacheNewString
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr xmlXPathCacheObjectCopy(xmlXPathParserContextPtr
      pctxt, xmlXPathObjectPtr val)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeSetToString
      Src: /src/libxml2/xpath.c:1944,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:1946,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxml2/xpath.c:1949,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:1950,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxml2/xpath.c:1955,1
    - Dst: xmlXPathCastBooleanToNumber
      Src: /src/libxml2/xpath.c:1961,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - ctxt
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1969
      start: 1929
    functionDepth: 4
    functionLinenumber: 1929
    functionLinenumberEnd: 1969
    functionName: xmlXPathCastToNumberInternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCastBooleanToNumber
    - xmlFree
    - xmlXPathCastNodeSetToString
    - xmlXPathPErrMemory
    - xmlXPathCastStringToNumber
    linkageType: ''
    returnType: double
    signature: "double xmlXPathCastToNumberInternal(xmlXPathParserContextPtr ctxt,\n
      \                            xmlXPathObjectPtr val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1993
      start: 1977
    functionDepth: 0
    functionLinenumber: 1977
    functionLinenumberEnd: 1993
    functionName: xmlXPathValuePop
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathValuePop(xmlXPathParserContext *ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:2013,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xpath.c:2020,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:2023,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:2024,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xpath.c:2027,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:2029,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:2030,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlXPathParserContext*
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2039
      start: 2005
    functionDepth: 4
    functionLinenumber: 2005
    functionLinenumberEnd: 2039
    functionName: xmlXPathValuePush
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathPErrMemory
    - xmlRealloc
    - xmlGrowCapacity
    - xmlXPathFreeObject
    linkageType: ''
    returnType: int
    signature: int xmlXPathValuePush(xmlXPathParserContext *ctxt, xmlXPathObject *value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:2053,1
    - Dst: xmlXPathSetError
      Src: /src/libxml2/xpath.c:2055,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/xpath.c:2059,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:2062,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2048
    functionDepth: 1
    functionLinenumber: 2048
    functionLinenumberEnd: 2064
    functionName: xmlXPathPopBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCastToBoolean
    - xmlXPathSetError
    - xmlXPathValuePop
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: int xmlXPathPopBoolean (xmlXPathParserContext *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:2078,1
    - Dst: xmlXPathSetError
      Src: /src/libxml2/xpath.c:2080,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:2084,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:2087,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2073
    functionDepth: 5
    functionLinenumber: 2073
    functionLinenumberEnd: 2089
    functionName: xmlXPathPopNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 15
    functionsReached:
    - xmlXPathReleaseObject
    - xmlXPathSetError
    - xmlXPathValuePop
    - xmlXPathCastToNumberInternal
    linkageType: ''
    returnType: double
    signature: double xmlXPathPopNumber (xmlXPathParserContext *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:2103,1
    - Dst: xmlXPathSetError
      Src: /src/libxml2/xpath.c:2105,1
    - Dst: xmlXPathCastToString
      Src: /src/libxml2/xpath.c:2108,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:2110,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:2111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2098
    functionDepth: 4
    functionLinenumber: 2098
    functionLinenumberEnd: 2113
    functionName: xmlXPathPopString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 29
    functionsReached:
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathCastToString
    - xmlXPathSetError
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathPopString (xmlXPathParserContext *ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetError
      Src: /src/libxml2/xpath.c:2129,1
    - Dst: xmlXPathStackIsNodeSet
      Src: /src/libxml2/xpath.c:2132,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxml2/xpath.c:2133,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:2136,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:2139,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2141
      start: 2122
    functionDepth: 1
    functionLinenumber: 2122
    functionLinenumberEnd: 2141
    functionName: xmlXPathPopNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 14
    functionsReached:
    - xmlXPathValuePop
    - xmlXPathSetTypeError
    - xmlXPathStackIsNodeSet
    - xmlXPathSetError
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathPopNodeSet (xmlXPathParserContext *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetError
      Src: /src/libxml2/xpath.c:2156,1
    - Dst: xmlXPathSetTypeError
      Src: /src/libxml2/xpath.c:2160,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:2163,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:2166,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2150
    functionDepth: 1
    functionLinenumber: 2150
    functionLinenumberEnd: 2168
    functionName: xmlXPathPopExternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathSetTypeError
    - xmlXPathSetError
    - xmlXPathValuePop
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlXPathPopExternal (xmlXPathParserContext *ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2195
      start: 2194
    functionDepth: 0
    functionLinenumber: 2194
    functionLinenumberEnd: 2195
    functionName: SKIP
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2196
      start: 2195
    functionDepth: 0
    functionLinenumber: 2195
    functionLinenumberEnd: 2196
    functionName: NXT
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 41
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:2230,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2233,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2237,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:2240,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2242,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2245,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2256,1
    - Dst: fabs
      Src: /src/libxml2/xpath.c:2285,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2298,1
    - Dst: log10
      Src: /src/libxml2/xpath.c:2306,1
    - Dst: snprintf
      Src: /src/libxml2/xpath.c:2314,1
    - Dst: strlen
      Src: /src/libxml2/xpath.c:2334,1
    - Dst: memmove
      Src: /src/libxml2/xpath.c:2339,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 77
    argCount: 3
    argNames:
    - number
    - buffer
    - buffersize
    argTypes:
    - double
    - char[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2343
      start: 2227
    functionDepth: 2
    functionLinenumber: 2227
    functionLinenumberEnd: 2343
    functionName: xmlXPathFormatNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlXPathIsNaN
    - memmove
    - snprintf
    - xmlXPathIsInf
    - log10
    - fabs
    linkageType: ''
    returnType: void
    signature: void xmlXPathFormatNumber(double number, char buffer[], int buffersize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/xpath.c:2374,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2399
      start: 2363
    functionDepth: 1
    functionLinenumber: 2363
    functionLinenumberEnd: 2399
    functionName: xmlXPathOrderDocElems
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - XML_INT_TO_PTR
    linkageType: ''
    returnType: long
    signature: long xmlXPathOrderDocElems(xmlDoc *doc)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2464,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2465,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2469,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2470,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2527,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2528,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2532,1
    - Dst: XML_NODE_SORT_VALUE
      Src: /src/libxml2/xpath.c:2533,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 90
    argCount: 2
    argNames:
    - node1
    - node2
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2544
      start: 2409
    functionDepth: 1
    functionLinenumber: 2409
    functionLinenumberEnd: 2544
    functionName: xmlXPathCmpNodes
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - XML_NODE_SORT_VALUE
    linkageType: ''
    returnType: int
    signature: int xmlXPathCmpNodes(xmlNode *node1, xmlNode *node2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCmpNodesExt
      Src: /src/libxml2/xpath.c:2572,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxml2/xpath.c:2575,1
    - Dst: libxml_domnode_tim_sort
      Src: /src/libxml2/xpath.c:2589,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - set
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2551
    functionDepth: 2
    functionLinenumber: 2551
    functionLinenumberEnd: 2591
    functionName: xmlXPathNodeSetSort
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCmpNodes
    - xmlXPathCmpNodesExt
    - libxml_domnode_tim_sort
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetSort(xmlNodeSet *set)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:2615,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:2618,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:2621,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2623,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:2628,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2630,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2631,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - node
    - ns
    argTypes:
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2637
      start: 2603
    functionDepth: 1
    functionLinenumber: 2603
    functionLinenumberEnd: 2637
    functionName: xmlXPathNodeSetDupNs
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlXPathNodeSetDupNs(xmlNodePtr node, xmlNsPtr ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2653,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2655,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2656,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2658
      start: 2646
    functionDepth: 0
    functionLinenumber: 2646
    functionLinenumberEnd: 2658
    functionName: xmlXPathNodeSetFreeNs
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetFreeNs(xmlNs *ns)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:2670,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:2673,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:2675,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:2678,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:2681,1
    - Dst: xmlXPathNodeSetDupNs
      Src: /src/libxml2/xpath.c:2686,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:2689,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2697
      start: 2666
    functionDepth: 2
    functionLinenumber: 2666
    functionLinenumberEnd: 2697
    functionName: xmlXPathNodeSetCreate
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 7
    functionsReached:
    - xmlXPathNodeSetDupNs
    - xmlFree
    - xmlMalloc
    - memset
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeSetCreate(xmlNode *val)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:2721,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2732
      start: 2706
    functionDepth: 1
    functionLinenumber: 2706
    functionLinenumberEnd: 2732
    functionName: xmlXPathNodeSetContains
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlXPathNodeSetContains (xmlNodeSet *cur, xmlNode *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xpath.c:2739,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xpath.c:2743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2750
      start: 2734
    functionDepth: 1
    functionLinenumber: 2734
    functionLinenumberEnd: 2750
    functionName: xmlXPathNodeSetGrow
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlXPathNodeSetGrow(xmlNodeSetPtr cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:2778,1
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:2786,1
    - Dst: xmlXPathNodeSetDupNs
      Src: /src/libxml2/xpath.c:2789,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 16
    argCount: 3
    argNames:
    - cur
    - node
    - ns
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2794
      start: 2760
    functionDepth: 2
    functionLinenumber: 2760
    functionLinenumberEnd: 2794
    functionName: xmlXPathNodeSetAddNs
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetDupNs
    - xmlXPathNodeSetGrow
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlXPathNodeSetAddNs(xmlNodeSet *cur, xmlNode *node, xmlNs *ns)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:2820,1
    - Dst: xmlXPathNodeSetDupNs
      Src: /src/libxml2/xpath.c:2826,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2834
      start: 2803
    functionDepth: 2
    functionLinenumber: 2803
    functionLinenumberEnd: 2834
    functionName: xmlXPathNodeSetAdd
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathNodeSetDupNs
    - xmlXPathNodeSetGrow
    linkageType: ''
    returnType: int
    signature: int xmlXPathNodeSetAdd(xmlNodeSet *cur, xmlNode *val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:2853,1
    - Dst: xmlXPathNodeSetDupNs
      Src: /src/libxml2/xpath.c:2859,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2867
      start: 2844
    functionDepth: 2
    functionLinenumber: 2844
    functionLinenumberEnd: 2867
    functionName: xmlXPathNodeSetAddUnique
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 8
    functionsReached:
    - xmlXPathNodeSetDupNs
    - xmlXPathNodeSetGrow
    linkageType: ''
    returnType: int
    signature: int xmlXPathNodeSetAddUnique(xmlNodeSet *cur, xmlNode *val)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:2885,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:2909,1
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:2924,1
    - Dst: xmlXPathNodeSetDupNs
      Src: /src/libxml2/xpath.c:2929,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:2941,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 45
    argCount: 2
    argNames:
    - val1
    - val2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2943
      start: 2879
    functionDepth: 3
    functionLinenumber: 2879
    functionLinenumberEnd: 2943
    functionName: xmlXPathNodeSetMerge
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathNodeSetDupNs
    - xmlXPathNodeSetGrow
    - xmlStrEqual
    - xmlXPathNodeSetCreate
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeSetMerge(xmlNodeSet *val1, xmlNodeSet *val2)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:2977,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:2983,1
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:2992,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3004,1
    - Dst: xmlXPathNodeSetClear
      Src: /src/libxml2/xpath.c:3005,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 2
    argNames:
    - set1
    - set2
    argTypes:
    - xmlNodeSetPtr
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3007
      start: 2956
    functionDepth: 2
    functionLinenumber: 2956
    functionLinenumberEnd: 3007
    functionName: xmlXPathNodeSetMergeAndClear
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetGrow
    - xmlStrEqual
    - xmlXPathNodeSetClear
    - xmlXPathNodeSetFreeNs
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr xmlXPathNodeSetMergeAndClear(xmlNodeSetPtr set1, xmlNodeSetPtr
      set2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetGrow
      Src: /src/libxml2/xpath.c:3029,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3040,1
    - Dst: xmlXPathNodeSetClear
      Src: /src/libxml2/xpath.c:3041,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - set1
    - set2
    argTypes:
    - xmlNodeSetPtr
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3043
      start: 3019
    functionDepth: 2
    functionLinenumber: 3019
    functionLinenumberEnd: 3043
    functionName: xmlXPathNodeSetMergeAndClearNoDupls
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetGrow
    - xmlXPathNodeSetClear
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr xmlXPathNodeSetMergeAndClearNoDupls(xmlNodeSetPtr set1,
      xmlNodeSetPtr set2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:3069,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3074
      start: 3051
    functionDepth: 1
    functionLinenumber: 3051
    functionLinenumberEnd: 3074
    functionName: xmlXPathNodeSetDel
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetFreeNs
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetDel(xmlNodeSet *cur, xmlNode *val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:3088,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNodeSet*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3093
      start: 3082
    functionDepth: 1
    functionLinenumber: 3082
    functionLinenumberEnd: 3093
    functionName: xmlXPathNodeSetRemove
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetFreeNs
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetRemove(xmlNodeSet *cur, int val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:3110,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3111,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3113,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3114
      start: 3100
    functionDepth: 1
    functionLinenumber: 3100
    functionLinenumberEnd: 3114
    functionName: xmlXPathFreeNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 22
    functionsReached:
    - xmlXPathNodeSetFreeNs
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeNodeSet(xmlNodeSet *obj)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:3138,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - set
    - pos
    - hasNsNodes
    argTypes:
    - xmlNodeSetPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3125
    functionDepth: 1
    functionLinenumber: 3125
    functionLinenumberEnd: 3142
    functionName: xmlXPathNodeSetClearFromPos
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetFreeNs
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetClearFromPos(xmlNodeSetPtr set, int pos, int hasNsNodes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetClearFromPos
      Src: /src/libxml2/xpath.c:3155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - set
    - hasNsNodes
    argTypes:
    - xmlNodeSetPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3156
      start: 3152
    functionDepth: 2
    functionLinenumber: 3152
    functionLinenumberEnd: 3156
    functionName: xmlXPathNodeSetClear
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetClearFromPos
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetClear(xmlNodeSetPtr set, int hasNsNodes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:3177,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - set
    argTypes:
    - xmlNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3181
      start: 3165
    functionDepth: 1
    functionLinenumber: 3165
    functionLinenumberEnd: 3181
    functionName: xmlXPathNodeSetKeepLast
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetFreeNs
    linkageType: ''
    returnType: void
    signature: void xmlXPathNodeSetKeepLast(xmlNodeSetPtr set)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:3194,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:3197,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3200,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3207
      start: 3190
    functionDepth: 3
    functionLinenumber: 3190
    functionLinenumberEnd: 3207
    functionName: xmlXPathNewNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 13
    functionsReached:
    - xmlMalloc
    - xmlXPathNodeSetCreate
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewNodeSet(xmlNode *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpath.c:3220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3226
      start: 3216
    functionDepth: 4
    functionLinenumber: 3216
    functionLinenumberEnd: 3226
    functionName: xmlXPathNewValueTree
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathNewNodeSet
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewValueTree(xmlNode *val)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpath.c:3243,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/libxml2/xpath.c:3245,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:3247,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3249,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3256
      start: 3235
    functionDepth: 4
    functionLinenumber: 3235
    functionLinenumberEnd: 3256
    functionName: xmlXPathNewNodeSetList
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewNodeSet
    - xmlXPathNodeSetMerge
    - xmlFree
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewNodeSetList(xmlNodeSet *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:3270,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3272,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:3275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3279
      start: 3266
    functionDepth: 2
    functionLinenumber: 3266
    functionLinenumberEnd: 3279
    functionName: xmlXPathWrapNodeSet
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlMalloc
    - memset
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathWrapNodeSet(xmlNodeSet *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3291
      start: 3287
    functionDepth: 0
    functionLinenumber: 3287
    functionLinenumberEnd: 3291
    functionName: xmlXPathFreeNodeSetList
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeNodeSetList(xmlXPathObject *obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3308,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3311,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3314,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3317,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3320,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/xpath.c:3321,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:3322,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3323,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3329
      start: 3302
    functionDepth: 3
    functionLinenumber: 3302
    functionLinenumberEnd: 3329
    functionName: xmlXPathDifference
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlXPathNodeSetGetLength
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathFreeNodeSet
    - xmlXPathNodeSetAddUnique
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathDifference (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3342,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3348,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3350,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3353,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3356,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/xpath.c:3357,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:3358,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3359,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3365
      start: 3340
    functionDepth: 3
    functionLinenumber: 3340
    functionLinenumberEnd: 3365
    functionName: xmlXPathIntersection
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlXPathNodeSetGetLength
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathFreeNodeSet
    - xmlXPathNodeSetAddUnique
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathIntersection (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3383,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3386,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3389,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/xpath.c:3390,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3392,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:3393,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xpath.c:3394,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xpath.c:3395,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3396,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:3399,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3402,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xpath.c:3405,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xpath.c:3409,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3410,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - nodes
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3412
      start: 3375
    functionDepth: 5
    functionLinenumber: 3375
    functionLinenumberEnd: 3412
    functionName: xmlXPathDistinctSorted
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetGetLength
    - xmlFree
    - xmlHashLookup
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlHashAddEntry
    - xmlHashFree
    - xmlXPathFreeNodeSet
    - xmlXPathCastNodeToString
    - xmlHashCreate
    - xmlXPathNodeSetAddUnique
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathDistinctSorted (xmlNodeSet *nodes)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3426,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3429,1
    - Dst: xmlXPathDistinctSorted
      Src: /src/libxml2/xpath.c:3430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - nodes
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3431
      start: 3424
    functionDepth: 6
    functionLinenumber: 3424
    functionLinenumberEnd: 3431
    functionName: xmlXPathDistinct
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathDistinctSorted
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetSort
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathDistinct (xmlNodeSet *nodes)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3447,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3448,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3451,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3453,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/xpath.c:3454,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3458
      start: 3442
    functionDepth: 2
    functionLinenumber: 3442
    functionLinenumberEnd: 3458
    functionName: xmlXPathHasSameNodes
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlXPathNodeSetGetLength
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: int
    signature: int xmlXPathHasSameNodes (xmlNodeSet *nodes1, xmlNodeSet *nodes2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3479,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3482,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/xpath.c:3483,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3486,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3488,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:3491,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3492,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - nodes
    - node
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3497
      start: 3470
    functionDepth: 3
    functionLinenumber: 3470
    functionLinenumberEnd: 3497
    functionName: xmlXPathNodeLeadingSorted
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlXPathNodeSetGetLength
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathFreeNodeSet
    - xmlXPathNodeSetAddUnique
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeLeadingSorted (xmlNodeSet *nodes, xmlNode *node)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3513,1
    - Dst: xmlXPathNodeLeadingSorted
      Src: /src/libxml2/xpath.c:3514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nodes
    - node
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3515
      start: 3511
    functionDepth: 4
    functionLinenumber: 3511
    functionLinenumberEnd: 3515
    functionName: xmlXPathNodeLeading
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeLeadingSorted
    - xmlXPathNodeSetSort
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeLeading (xmlNodeSet *nodes, xmlNode *node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3529,1
    - Dst: xmlXPathNodeLeadingSorted
      Src: /src/libxml2/xpath.c:3531,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3533
      start: 3527
    functionDepth: 4
    functionLinenumber: 3527
    functionLinenumberEnd: 3533
    functionName: xmlXPathLeadingSorted
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeLeadingSorted
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathLeadingSorted (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3549,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3551,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3552,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3553,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3554,1
    - Dst: xmlXPathNodeLeadingSorted
      Src: /src/libxml2/xpath.c:3555,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3556,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3557
      start: 3547
    functionDepth: 4
    functionLinenumber: 3547
    functionLinenumberEnd: 3557
    functionName: xmlXPathLeading
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeLeadingSorted
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetSort
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathLeading (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3578,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3581,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/xpath.c:3582,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/libxml2/xpath.c:3585,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3587,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:3590,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:3591,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3595,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 2
    argNames:
    - nodes
    - node
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3597
      start: 3569
    functionDepth: 3
    functionLinenumber: 3569
    functionLinenumberEnd: 3597
    functionName: xmlXPathNodeTrailingSorted
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlXPathNodeSetGetLength
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetSort
    - xmlXPathFreeNodeSet
    - xmlXPathNodeSetAddUnique
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeTrailingSorted (xmlNodeSet *nodes, xmlNode *node)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3613,1
    - Dst: xmlXPathNodeTrailingSorted
      Src: /src/libxml2/xpath.c:3614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - nodes
    - node
    argTypes:
    - xmlNodeSet*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3615
      start: 3611
    functionDepth: 4
    functionLinenumber: 3611
    functionLinenumberEnd: 3615
    functionName: xmlXPathNodeTrailing
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeTrailingSorted
    - xmlXPathNodeSetSort
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathNodeTrailing (xmlNodeSet *nodes, xmlNode *node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3629,1
    - Dst: xmlXPathNodeTrailingSorted
      Src: /src/libxml2/xpath.c:3631,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3633
      start: 3627
    functionDepth: 4
    functionLinenumber: 3627
    functionLinenumberEnd: 3633
    functionName: xmlXPathTrailingSorted
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeTrailingSorted
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathTrailingSorted (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3649,1
    - Dst: xmlXPathNodeSetIsEmpty
      Src: /src/libxml2/xpath.c:3651,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:3652,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3653,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:3654,1
    - Dst: xmlXPathNodeTrailingSorted
      Src: /src/libxml2/xpath.c:3655,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/libxml2/xpath.c:3656,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - nodes1
    - nodes2
    argTypes:
    - xmlNodeSet*
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3657
      start: 3647
    functionDepth: 4
    functionLinenumber: 3647
    functionLinenumberEnd: 3657
    functionName: xmlXPathTrailing
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeTrailingSorted
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetIsEmpty
    - xmlXPathNodeSetSort
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: xmlNodeSet
    signature: 'xmlNodeSet *

      xmlXPathTrailing (xmlNodeSet *nodes1, xmlNodeSet *nodes2)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterFuncNS
      Src: /src/libxml2/xpath.c:3676,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - name
    - f
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlXPathFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3677
      start: 3673
    functionDepth: 1
    functionLinenumber: 3673
    functionLinenumberEnd: 3677
    functionName: xmlXPathRegisterFunc
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathRegisterFuncNS
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRegisterFunc(xmlXPathContext *ctxt, const xmlChar *name,\n\t\t
      \    xmlXPathFunction f)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/xpath.c:3700,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:3702,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/xpath.c:3706,1
    - Dst: memcpy
      Src: /src/libxml2/xpath.c:3707,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/xpath.c:3708,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:3710,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - ctxt
    - name
    - ns_uri
    - f
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlChar*
    - xmlXPathFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3715
      start: 3688
    functionDepth: 5
    functionLinenumber: 3688
    functionLinenumberEnd: 3715
    functionName: xmlXPathRegisterFuncNS
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 7
    functionsReached:
    - memcpy
    - xmlHashRemoveEntry2
    - xmlXPathErrMemory
    - xmlHashCreate
    - xmlHashAddEntry2
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRegisterFuncNS(xmlXPathContext *ctxt, const xmlChar *name,\n\t\t
      \      const xmlChar *ns_uri, xmlXPathFunction f)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - f
    - funcCtxt
    argTypes:
    - xmlXPathContext*
    - xmlXPathFuncLookupFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3732
      start: 3724
    functionDepth: 0
    functionLinenumber: 3724
    functionLinenumberEnd: 3732
    functionName: xmlXPathRegisterFuncLookup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlXPathRegisterFuncLookup (xmlXPathContext *ctxt,\n\t\t\t    xmlXPathFuncLookupFunc
      f,\n\t\t\t    void *funcCtxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFunctionLookupNS
      Src: /src/libxml2/xpath.c:3744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3745
      start: 3742
    functionDepth: 1
    functionLinenumber: 3742
    functionLinenumberEnd: 3745
    functionName: xmlXPathFunctionLookup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathFunctionLookupNS
    linkageType: ''
    returnType: xmlXPathFunction
    signature: xmlXPathFunction xmlXPathFunctionLookup(xmlXPathContext *ctxt, const
      xmlChar *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSFComputeHash
      Src: /src/libxml2/xpath.c:3768,1
    - Dst: strcmp
      Src: /src/libxml2/xpath.c:3773,1
    - Dst: f
      Src: /src/libxml2/xpath.c:3787,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/xpath.c:3795,1
    - Dst: memcpy
      Src: /src/libxml2/xpath.c:3796,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3799
      start: 3756
    functionDepth: 2
    functionLinenumber: 3756
    functionLinenumberEnd: 3799
    functionName: xmlXPathFunctionLookupNS
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlHashLookup2
    - f
    - xmlXPathSFComputeHash
    - strcmp
    - memcpy
    linkageType: ''
    returnType: xmlXPathFunction
    signature: "xmlXPathFunction xmlXPathFunctionLookupNS(xmlXPathContext *ctxt, const
      xmlChar *name,\n\t\t\t const xmlChar *ns_uri)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/xpath.c:3811,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3813
      start: 3806
    functionDepth: 2
    functionLinenumber: 3806
    functionLinenumberEnd: 3813
    functionName: xmlXPathRegisteredFuncsCleanup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathRegisteredFuncsCleanup(xmlXPathContext *ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterVariableNS
      Src: /src/libxml2/xpath.c:3833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - name
    - value
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3834
      start: 3830
    functionDepth: 1
    functionLinenumber: 3830
    functionLinenumberEnd: 3834
    functionName: xmlXPathRegisterVariable
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathRegisterVariableNS
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRegisterVariable(xmlXPathContext *ctxt, const xmlChar
      *name,\n\t\t\t xmlXPathObject *value)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/xpath.c:3856,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/xpath.c:3860,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxml2/xpath.c:3862,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - ctxt
    - name
    - ns_uri
    - value
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlChar*
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3864
      start: 3846
    functionDepth: 5
    functionLinenumber: 3846
    functionLinenumberEnd: 3864
    functionName: xmlXPathRegisterVariableNS
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlHashRemoveEntry2
    - xmlHashCreate
    - xmlHashUpdateEntry2
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRegisterVariableNS(xmlXPathContext *ctxt, const xmlChar
      *name,\n\t\t\t   const xmlChar *ns_uri,\n\t\t\t   xmlXPathObject *value)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - f
    - data
    argTypes:
    - xmlXPathContext*
    - xmlXPathVariableLookupFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3880
      start: 3873
    functionDepth: 0
    functionLinenumber: 3873
    functionLinenumberEnd: 3880
    functionName: xmlXPathRegisterVariableLookup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlXPathRegisterVariableLookup(xmlXPathContext *ctxt,\n\t xmlXPathVariableLookupFunc
      f, void *data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathVariableLookupNS
      Src: /src/libxml2/xpath.c:3902,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3903
      start: 3890
    functionDepth: 1
    functionLinenumber: 3890
    functionLinenumberEnd: 3903
    functionName: xmlXPathVariableLookup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathVariableLookupNS
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathVariableLookup(xmlXPathContext *ctxt, const xmlChar *name)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathObjectCopy
      Src: /src/libxml2/xpath.c:3933,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/xpath.c:3933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3934
      start: 3914
    functionDepth: 2
    functionLinenumber: 3914
    functionLinenumberEnd: 3934
    functionName: xmlXPathVariableLookupNS
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlHashLookup2
    - xmlXPathObjectCopy
    linkageType: ''
    returnType: xmlXPathObject
    signature: "xmlXPathObject *\nxmlXPathVariableLookupNS(xmlXPathContext *ctxt,
      const xmlChar *name,\n\t\t\t const xmlChar *ns_uri)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/xpath.c:3946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3948
      start: 3941
    functionDepth: 2
    functionLinenumber: 3941
    functionLinenumberEnd: 3948
    functionName: xmlXPathRegisteredVariablesCleanup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathRegisteredVariablesCleanup(xmlXPathContext *ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/xpath.c:3972,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:3974,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/xpath.c:3978,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:3981,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:3983,1
    - Dst: xmlHashUpdateEntry
      Src: /src/libxml2/xpath.c:3986,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:3988,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:3989,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - ctxt
    - prefix
    - ns_uri
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3994
      start: 3959
    functionDepth: 5
    functionLinenumber: 3959
    functionLinenumberEnd: 3994
    functionName: xmlXPathRegisterNs
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 10
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlHashRemoveEntry
    - xmlHashUpdateEntry
    - xmlXPathErrMemory
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRegisterNs(xmlXPathContext *ctxt, const xmlChar *prefix,\n\t\t\t
      \  const xmlChar *ns_uri)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:4011,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:4019,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xpath.c:4024,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4025
      start: 4004
    functionDepth: 2
    functionLinenumber: 4004
    functionLinenumberEnd: 4025
    functionName: xmlXPathNsLookup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlHashLookup
    - xmlStrEqual
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathNsLookup(xmlXPathContext *ctxt, const xmlChar *prefix)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/xpath.c:4037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4039
      start: 4032
    functionDepth: 2
    functionLinenumber: 4032
    functionLinenumberEnd: 4039
    functionName: xmlXPathRegisteredNsCleanup
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlXPathRegisteredNsCleanup(xmlXPathContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4059,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4062,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4066
      start: 4055
    functionDepth: 0
    functionLinenumber: 4055
    functionLinenumberEnd: 4066
    functionName: xmlXPathNewFloat
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 6
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewFloat(double val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4078,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4081,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4085
      start: 4074
    functionDepth: 0
    functionLinenumber: 4074
    functionLinenumberEnd: 4085
    functionName: xmlXPathNewBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 7
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewBoolean(int val)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4097,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4100,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4104,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4110
      start: 4093
    functionDepth: 1
    functionLinenumber: 4093
    functionLinenumberEnd: 4110
    functionName: xmlXPathNewString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 10
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewString(const xmlChar *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4124,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4126,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4133
      start: 4120
    functionDepth: 0
    functionLinenumber: 4120
    functionLinenumberEnd: 4133
    functionName: xmlXPathWrapString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathWrapString (xmlChar *val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4144
      start: 4141
    functionDepth: 0
    functionLinenumber: 4141
    functionLinenumberEnd: 4144
    functionName: xmlXPathNewCString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNewCString(const char *val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/xpath.c:4154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4155
      start: 4152
    functionDepth: 1
    functionLinenumber: 4152
    functionLinenumberEnd: 4155
    functionName: xmlXPathWrapCString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathWrapString
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathWrapCString (char * val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4167,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4174
      start: 4163
    functionDepth: 0
    functionLinenumber: 4163
    functionLinenumberEnd: 4174
    functionName: xmlXPathWrapExternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathWrapExternal (void *val)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4189,1
    - Dst: memcpy
      Src: /src/libxml2/xpath.c:4192,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4198,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4200,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:4206,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4208,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4218,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4223
      start: 4182
    functionDepth: 4
    functionLinenumber: 4182
    functionLinenumberEnd: 4223
    functionName: xmlXPathObjectCopy
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 8
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlMalloc
    - memcpy
    - xmlXPathNodeSetMerge
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathObjectCopy(xmlXPathObject *val)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:4235,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4238,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4240,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4241
      start: 4230
    functionDepth: 2
    functionLinenumber: 4230
    functionLinenumberEnd: 4241
    functionName: xmlXPathFreeObject
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 42
    functionsReached:
    - xmlFree
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeObject(xmlXPathObject *obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - obj
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4246
      start: 4243
    functionDepth: 3
    functionLinenumber: 4243
    functionLinenumberEnd: 4246
    functionName: xmlXPathFreeObjectEntry
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeObjectEntry(void *obj, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4261,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:4277,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4284,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:4321,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:4335,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4336,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 61
    argCount: 2
    argNames:
    - ctxt
    - obj
    argTypes:
    - xmlXPathContextPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4338
      start: 4255
    functionDepth: 3
    functionLinenumber: 4255
    functionLinenumberEnd: 4338
    functionName: xmlXPathReleaseObject
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlXPathNodeSetFreeNs
    - xmlXPathFreeObject
    - xmlFree
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: void
    signature: void xmlXPathReleaseObject(xmlXPathContextPtr ctxt, xmlXPathObjectPtr
      obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4357,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4361
      start: 4353
    functionDepth: 1
    functionLinenumber: 4353
    functionLinenumberEnd: 4361
    functionName: xmlXPathCastBooleanToString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathCastBooleanToString (int val)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:4372,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4374,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4377,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:4380,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4381,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4384,1
    - Dst: xmlXPathFormatNumber
      Src: /src/libxml2/xpath.c:4388,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4390,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4394
      start: 4369
    functionDepth: 3
    functionLinenumber: 4369
    functionLinenumberEnd: 4394
    functionName: xmlXPathCastNumberToString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathIsInf
    - xmlStrdup
    - xmlXPathFormatNumber
    - xmlXPathIsNaN
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathCastNumberToString (double val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xpath.c:4404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4405
      start: 4402
    functionDepth: 1
    functionLinenumber: 4402
    functionLinenumberEnd: 4405
    functionName: xmlXPathCastNodeToString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 6
    functionsReached:
    - xmlNodeGetContent
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathCastNodeToString (xmlNode *node)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4416,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:4419,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:4420,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4421
      start: 4413
    functionDepth: 3
    functionLinenumber: 4413
    functionLinenumberEnd: 4421
    functionName: xmlXPathCastNodeSetToString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCastNodeToString
    - xmlStrdup
    - xmlXPathNodeSetSort
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathCastNodeSetToString (xmlNodeSet *ns)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4435,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4438,1
    - Dst: xmlXPathCastNodeSetToString
      Src: /src/libxml2/xpath.c:4442,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4445,1
    - Dst: xmlXPathCastBooleanToString
      Src: /src/libxml2/xpath.c:4447,1
    - Dst: xmlXPathCastNumberToString
      Src: /src/libxml2/xpath.c:4450,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:4455,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4459
      start: 4430
    functionDepth: 4
    functionLinenumber: 4430
    functionLinenumberEnd: 4459
    functionName: xmlXPathCastToString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlXPathCastNodeSetToString
    - xmlStrdup
    - xmlXPathCastBooleanToString
    - xmlXPathCastNumberToString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathCastToString(xmlXPathObject *val)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewCString
      Src: /src/libxml2/xpath.c:4473,1
    - Dst: xmlXPathCastNodeSetToString
      Src: /src/libxml2/xpath.c:4480,1
    - Dst: xmlXPathCastBooleanToString
      Src: /src/libxml2/xpath.c:4485,1
    - Dst: xmlXPathCastNumberToString
      Src: /src/libxml2/xpath.c:4488,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4494,1
    - Dst: xmlXPathNewCString
      Src: /src/libxml2/xpath.c:4496,1
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/xpath.c:4497,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4498
      start: 4468
    functionDepth: 4
    functionLinenumber: 4468
    functionLinenumberEnd: 4498
    functionName: xmlXPathConvertString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathCastNodeSetToString
    - xmlXPathNewCString
    - xmlXPathCastNumberToString
    - xmlXPathWrapString
    - xmlXPathFreeObject
    - xmlXPathCastBooleanToString
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathConvertString(xmlXPathObject *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4511
      start: 4506
    functionDepth: 0
    functionLinenumber: 4506
    functionLinenumberEnd: 4511
    functionName: xmlXPathCastBooleanToNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: double xmlXPathCastBooleanToNumber(int val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathStringEvalNumber
      Src: /src/libxml2/xpath.c:4521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4522
      start: 4519
    functionDepth: 1
    functionLinenumber: 4519
    functionLinenumberEnd: 4522
    functionName: xmlXPathCastStringToNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathStringEvalNumber
    linkageType: ''
    returnType: double
    signature: double xmlXPathCastStringToNumber(const xmlChar * val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:4538,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:4540,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxml2/xpath.c:4543,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4547
      start: 4531
    functionDepth: 4
    functionLinenumber: 4531
    functionLinenumberEnd: 4547
    functionName: xmlXPathNodeToNumberInternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCastNodeToString
    - xmlXPathCastStringToNumber
    - xmlXPathPErrMemory
    - xmlFree
    linkageType: ''
    returnType: double
    signature: double xmlXPathNodeToNumberInternal(xmlXPathParserContextPtr ctxt,
      xmlNodePtr node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeToNumberInternal
      Src: /src/libxml2/xpath.c:4557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4558
      start: 4555
    functionDepth: 5
    functionLinenumber: 4555
    functionLinenumberEnd: 4558
    functionName: xmlXPathCastNodeToNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlXPathNodeToNumberInternal
    linkageType: ''
    returnType: double
    signature: double xmlXPathCastNodeToNumber (xmlNode *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeSetToString
      Src: /src/libxml2/xpath.c:4573,1
    - Dst: xmlXPathCastStringToNumber
      Src: /src/libxml2/xpath.c:4574,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4577
      start: 4566
    functionDepth: 4
    functionLinenumber: 4566
    functionLinenumberEnd: 4577
    functionName: xmlXPathCastNodeSetToNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCastNodeSetToString
    - xmlXPathCastStringToNumber
    - xmlFree
    linkageType: ''
    returnType: double
    signature: double xmlXPathCastNodeSetToNumber (xmlNodeSet *ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:4587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4588
      start: 4585
    functionDepth: 5
    functionLinenumber: 4585
    functionLinenumberEnd: 4588
    functionName: xmlXPathCastToNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCastToNumberInternal
    linkageType: ''
    returnType: double
    signature: double xmlXPathCastToNumber(xmlXPathObject *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/xpath.c:4602,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/xpath.c:4605,1
    - Dst: xmlXPathCastToNumber
      Src: /src/libxml2/xpath.c:4605,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4608
      start: 4597
    functionDepth: 6
    functionLinenumber: 4597
    functionLinenumberEnd: 4608
    functionName: xmlXPathConvertNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCastToNumber
    - xmlXPathNewFloat
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathConvertNumber(xmlXPathObject *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:4618,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4621
      start: 4616
    functionDepth: 2
    functionLinenumber: 4616
    functionLinenumberEnd: 4621
    functionName: xmlXPathCastNumberToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathIsNaN
    linkageType: ''
    returnType: int
    signature: int xmlXPathCastNumberToBoolean (double val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:4631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4634
      start: 4629
    functionDepth: 1
    functionLinenumber: 4629
    functionLinenumberEnd: 4634
    functionName: xmlXPathCastStringToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlXPathCastStringToBoolean (const xmlChar *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNodeSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4647
      start: 4642
    functionDepth: 0
    functionLinenumber: 4642
    functionLinenumberEnd: 4647
    functionName: xmlXPathCastNodeSetToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXPathCastNodeSetToBoolean (xmlNodeSet *ns)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeSetToBoolean
      Src: /src/libxml2/xpath.c:4667,1
    - Dst: xmlXPathCastStringToBoolean
      Src: /src/libxml2/xpath.c:4670,1
    - Dst: xmlXPathCastNumberToBoolean
      Src: /src/libxml2/xpath.c:4673,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4684
      start: 4655
    functionDepth: 3
    functionLinenumber: 4655
    functionLinenumberEnd: 4684
    functionName: xmlXPathCastToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCastNodeSetToBoolean
    - xmlXPathCastNumberToBoolean
    - xmlXPathCastStringToBoolean
    linkageType: ''
    returnType: int
    signature: int xmlXPathCastToBoolean (xmlXPathObject *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/xpath.c:4699,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/xpath.c:4702,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/xpath.c:4702,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4703,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4705
      start: 4694
    functionDepth: 4
    functionLinenumber: 4694
    functionLinenumberEnd: 4705
    functionName: xmlXPathConvertBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathCastToBoolean
    - xmlXPathNewBoolean
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathConvertBoolean(xmlXPathObject *val)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4723,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4726,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxml2/xpath.c:4747,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xpath.c:4748,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4754
      start: 4719
    functionDepth: 4
    functionLinenumber: 4719
    functionLinenumberEnd: 4754
    functionName: xmlXPathNewContext
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 10
    functionsReached:
    - xmlMalloc
    - xmlXPathFreeContext
    - xmlXPathContextSetCache
    - memset
    linkageType: ''
    returnType: xmlXPathContext
    signature: 'xmlXPathContext *

      xmlXPathNewContext(xmlDoc *doc)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeCache
      Src: /src/libxml2/xpath.c:4766,1
    - Dst: xmlXPathRegisteredNsCleanup
      Src: /src/libxml2/xpath.c:4767,1
    - Dst: xmlXPathRegisteredFuncsCleanup
      Src: /src/libxml2/xpath.c:4768,1
    - Dst: xmlXPathRegisteredVariablesCleanup
      Src: /src/libxml2/xpath.c:4769,1
    - Dst: xmlResetError
      Src: /src/libxml2/xpath.c:4770,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4772
      start: 4761
    functionDepth: 3
    functionLinenumber: 4761
    functionLinenumberEnd: 4772
    functionName: xmlXPathFreeContext
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 10
    functionsReached:
    - xmlXPathRegisteredFuncsCleanup
    - xmlFree
    - xmlXPathRegisteredNsCleanup
    - xmlResetError
    - xmlXPathFreeCache
    - xmlXPathRegisteredVariablesCleanup
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeContext(xmlXPathContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - handler
    - data
    argTypes:
    - xmlXPathContext*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4783
    functionDepth: 0
    functionLinenumber: 4783
    functionLinenumberEnd: 4791
    functionName: xmlXPathSetErrorHandler
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlXPathSetErrorHandler(xmlXPathContext *ctxt,\n                        xmlStructuredErrorFunc
      handler, void *data)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4810,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:4812,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4815,1
    - Dst: xmlXPathNewCompExpr
      Src: /src/libxml2/xpath.c:4819,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:4821,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4822,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4823,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xpath.c:4828,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - str
    - ctxt
    argTypes:
    - xmlChar*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4832
      start: 4806
    functionDepth: 3
    functionLinenumber: 4806
    functionLinenumberEnd: 4832
    functionName: xmlXPathNewParserContext
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - xmlDictReference
    - xmlMalloc
    - xmlXPathErrMemory
    - xmlXPathNewCompExpr
    - memset
    linkageType: ''
    returnType: xmlXPathParserContext
    signature: 'xmlXPathParserContext *

      xmlXPathNewParserContext(const xmlChar *str, xmlXPathContext *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4845,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:4847,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:4850,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:4858,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4860,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:4861,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - comp
    - ctxt
    argTypes:
    - xmlXPathCompExprPtr
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4871
      start: 4841
    functionDepth: 3
    functionLinenumber: 4841
    functionLinenumberEnd: 4871
    functionName: xmlXPathCompParserContext
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlFree
    - xmlXPathErrMemory
    linkageType: ''
    returnType: xmlXPathParserContextPtr
    signature: xmlXPathParserContextPtr xmlXPathCompParserContext(xmlXPathCompExprPtr
      comp, xmlXPathContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:4888,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:4890,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4892,1
    - Dst: xmlFreePatternList
      Src: /src/libxml2/xpath.c:4897,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/xpath.c:4901,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:4903,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4904
      start: 4878
    functionDepth: 4
    functionLinenumber: 4878
    functionLinenumberEnd: 4904
    functionName: xmlXPathFreeParserContext
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - xmlXPathFreeCompExpr
    - xmlFreePatternList
    - xmlXPathFreeObject
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathFreeParserContext(xmlXPathParserContext *ctxt)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xpath.c:4930,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 84
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5021
      start: 4919
    functionDepth: 1
    functionLinenumber: 4919
    functionLinenumberEnd: 5021
    functionName: xmlXPathNodeValHash
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlDocGetRootElement
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int xmlXPathNodeValHash(xmlNodePtr node)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - string
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5037
      start: 5030
    functionDepth: 0
    functionLinenumber: 5030
    functionLinenumberEnd: 5037
    functionName: xmlXPathStringHash
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int xmlXPathStringHash(const xmlChar * string)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5068,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5069,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:5075,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5077,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:5077,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5078,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5079,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5080,1
    - Dst: xmlXPathCacheObjectCopy
      Src: /src/libxml2/xpath.c:5080,1
    - Dst: xmlXPathCompareValues
      Src: /src/libxml2/xpath.c:5081,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5085,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5089,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5090,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 5
    argNames:
    - ctxt
    - inf
    - strict
    - arg
    - f
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - int
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5092
      start: 5059
    functionDepth: 6
    functionLinenumber: 5059
    functionLinenumberEnd: 5092
    functionName: xmlXPathCompareNodeSetFloat
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCacheObjectCopy
    - xmlFree
    - xmlXPathCompareValues
    - xmlXPathNumberFunction
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastNodeToString
    - xmlXPathCacheNewString
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompareNodeSetFloat(xmlXPathParserContextPtr ctxt, int
      inf, int strict,\n\t                    xmlXPathObjectPtr arg, xmlXPathObjectPtr
      f)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5122,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5123,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:5129,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5131,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:5132,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5133,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5134,1
    - Dst: xmlXPathCacheObjectCopy
      Src: /src/libxml2/xpath.c:5134,1
    - Dst: xmlXPathCompareValues
      Src: /src/libxml2/xpath.c:5135,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5139,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5143,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5144,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 5
    argNames:
    - ctxt
    - inf
    - strict
    - arg
    - s
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - int
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5146
      start: 5113
    functionDepth: 6
    functionLinenumber: 5113
    functionLinenumberEnd: 5146
    functionName: xmlXPathCompareNodeSetString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCacheObjectCopy
    - xmlFree
    - xmlXPathCompareValues
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastNodeToString
    - xmlXPathCacheNewString
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompareNodeSetString(xmlXPathParserContextPtr ctxt, int
      inf, int strict,\n\t                    xmlXPathObjectPtr arg, xmlXPathObjectPtr
      s)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5188,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5193,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5194,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5202,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5203,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5207,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5208,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:5212,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5214,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5215,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5216,1
    - Dst: xmlXPathNodeToNumberInternal
      Src: /src/libxml2/xpath.c:5220,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5221,1
    - Dst: xmlXPathNodeToNumberInternal
      Src: /src/libxml2/xpath.c:5225,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5228,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5245,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5246,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5247,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 58
    argCount: 5
    argNames:
    - ctxt
    - inf
    - strict
    - arg1
    - arg2
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - int
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5249
      start: 5176
    functionDepth: 5
    functionLinenumber: 5176
    functionLinenumberEnd: 5249
    functionName: xmlXPathCompareNodeSets
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlXPathIsNaN
    - xmlXPathNodeToNumberInternal
    - xmlMalloc
    - xmlXPathPErrMemory
    - xmlXPathFreeObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompareNodeSets(xmlXPathParserContextPtr ctxt, int inf,
      int strict,\n\t                xmlXPathObjectPtr arg1, xmlXPathObjectPtr arg2)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompareNodeSetFloat
      Src: /src/libxml2/xpath.c:5279,1
    - Dst: xmlXPathCompareNodeSets
      Src: /src/libxml2/xpath.c:5282,1
    - Dst: xmlXPathCompareNodeSetString
      Src: /src/libxml2/xpath.c:5284,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5286,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/xpath.c:5287,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5288,1
    - Dst: xmlXPathCompareValues
      Src: /src/libxml2/xpath.c:5289,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5291,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5292,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:5293,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - ctxt
    - inf
    - strict
    - arg
    - val
    argTypes:
    - xmlXPathParserContextPtr
    - int
    - int
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5296
      start: 5270
    functionDepth: 7
    functionLinenumber: 5270
    functionLinenumberEnd: 5296
    functionName: xmlXPathCompareNodeSetValue
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompareValues
    - xmlXPathBooleanFunction
    - xmlXPathCompareNodeSetFloat
    - xmlXPathValuePush
    - xmlXPathCompareNodeSetString
    - XP_ERROR0
    - xmlXPathReleaseObject
    - xmlXPathCompareNodeSets
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompareNodeSetValue(xmlXPathParserContextPtr ctxt, int
      inf, int strict,\n\t                    xmlXPathObjectPtr arg, xmlXPathObjectPtr
      val)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathStringHash
      Src: /src/libxml2/xpath.c:5330,1
    - Dst: xmlXPathNodeValHash
      Src: /src/libxml2/xpath.c:5332,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xpath.c:5333,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5335,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:5338,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5339,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5344,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5347,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 4
    argNames:
    - ctxt
    - arg
    - str
    - neq
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5352
      start: 5311
    functionDepth: 4
    functionLinenumber: 5311
    functionLinenumberEnd: 5352
    functionName: xmlXPathEqualNodeSetString
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlXPathStringHash
    - xmlNodeGetContent
    - xmlXPathPErrMemory
    - xmlXPathNodeValHash
    linkageType: ''
    returnType: int
    signature: "int xmlXPathEqualNodeSetString(xmlXPathParserContextPtr ctxt,\n                           xmlXPathObjectPtr
      arg, const xmlChar * str, int neq)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:5384,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5386,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:5386,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5387,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5388,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5390,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5392,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5393,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5406,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 4
    argNames:
    - ctxt
    - arg
    - f
    - neq
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    - double
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5412
      start: 5368
    functionDepth: 5
    functionLinenumber: 5368
    functionLinenumberEnd: 5412
    functionName: xmlXPathEqualNodeSetFloat
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlXPathIsNaN
    - xmlXPathValuePop
    - xmlXPathNumberFunction
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastNodeToString
    - xmlXPathCacheNewString
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathEqualNodeSetFloat(xmlXPathParserContextPtr ctxt,\n    xmlXPathObjectPtr
      arg, double f, int neq)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:5467,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5469,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:5472,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5474,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5475,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:5478,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:5479,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5481,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5482,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5483,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:5486,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5488,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5489,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5490,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5491,1
    - Dst: memset
      Src: /src/libxml2/xpath.c:5494,1
    - Dst: xmlXPathNodeValHash
      Src: /src/libxml2/xpath.c:5496,1
    - Dst: xmlXPathNodeValHash
      Src: /src/libxml2/xpath.c:5499,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xpath.c:5508,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5510,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xpath.c:5513,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:5515,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:5517,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5527,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5530,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5531,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5532,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5533,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:5534,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 84
    argCount: 4
    argNames:
    - ctxt
    - arg1
    - arg2
    - neq
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5536
      start: 5431
    functionDepth: 4
    functionLinenumber: 5431
    functionLinenumberEnd: 5536
    functionName: xmlXPathEqualNodeSets
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlNodeGetContent
    - xmlMalloc
    - xmlXPathPErrMemory
    - xmlXPathNodeValHash
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlXPathEqualNodeSets(xmlXPathParserContextPtr ctxt, xmlXPathObjectPtr
      arg1,\n                      xmlXPathObjectPtr arg2, int neq)"
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNumberToBoolean
      Src: /src/libxml2/xpath.c:5558,1
    - Dst: xmlXPathCastNumberToBoolean
      Src: /src/libxml2/xpath.c:5581,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5584,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5585,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5586,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5592,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5593,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5595,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5596,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5600,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5601,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5605,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5606,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5610,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5611,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:5639,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5642,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5643,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5644,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5648,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5649,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5651,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5652,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5656,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5657,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5661,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5662,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5666,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5667,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5690,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5691,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 135
    argCount: 3
    argNames:
    - ctxt
    - arg1
    - arg2
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathObjectPtr
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5693
      start: 5538
    functionDepth: 5
    functionLinenumber: 5538
    functionLinenumberEnd: 5693
    functionName: xmlXPathEqualValuesCommon
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlXPathIsNaN
    - xmlXPathValuePop
    - xmlXPathNumberFunction
    - xmlXPathValuePush
    - xmlXPathIsInf
    - xmlXPathCastNumberToBoolean
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathEqualValuesCommon(xmlXPathParserContextPtr ctxt,\n  xmlXPathObjectPtr
      arg1, xmlXPathObjectPtr arg2)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5707,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5708,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5711,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5713,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:5714,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:5718,1
    - Dst: xmlXPathEqualNodeSets
      Src: /src/libxml2/xpath.c:5740,1
    - Dst: xmlXPathEqualNodeSetFloat
      Src: /src/libxml2/xpath.c:5750,1
    - Dst: xmlXPathEqualNodeSetString
      Src: /src/libxml2/xpath.c:5753,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5760,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5761,1
    - Dst: xmlXPathEqualValuesCommon
      Src: /src/libxml2/xpath.c:5765,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 48
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5766
      start: 5701
    functionDepth: 6
    functionLinenumber: 5701
    functionLinenumberEnd: 5766
    functionName: xmlXPathEqualValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathEqualValuesCommon
    - xmlXPathEqualNodeSets
    - xmlXPathValuePop
    - xmlXPathEqualNodeSetFloat
    - xmlXPathEqualNodeSetString
    - XP_ERROR0
    - xmlXPathFreeObject
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: int xmlXPathEqualValues(xmlXPathParserContext *ctxt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5780,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5781,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5784,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5786,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:5787,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5791,1
    - Dst: xmlXPathEqualNodeSets
      Src: /src/libxml2/xpath.c:5813,1
    - Dst: xmlXPathEqualNodeSetFloat
      Src: /src/libxml2/xpath.c:5823,1
    - Dst: xmlXPathEqualNodeSetString
      Src: /src/libxml2/xpath.c:5826,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5833,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5834,1
    - Dst: xmlXPathEqualValuesCommon
      Src: /src/libxml2/xpath.c:5838,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 48
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5839
      start: 5774
    functionDepth: 6
    functionLinenumber: 5774
    functionLinenumberEnd: 5839
    functionName: xmlXPathNotEqualValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathEqualValuesCommon
    - xmlXPathEqualNodeSets
    - xmlXPathValuePop
    - xmlXPathEqualNodeSetString
    - XP_ERROR0
    - xmlXPathReleaseObject
    - xmlXPathEqualNodeSetFloat
    linkageType: ''
    returnType: int
    signature: int xmlXPathNotEqualValues(xmlXPathParserContext *ctxt)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5869,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5870,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5873,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5875,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:5876,1
    - Dst: xmlXPathCompareNodeSets
      Src: /src/libxml2/xpath.c:5888,1
    - Dst: xmlXPathCompareNodeSetValue
      Src: /src/libxml2/xpath.c:5891,1
    - Dst: xmlXPathCompareNodeSetValue
      Src: /src/libxml2/xpath.c:5894,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5902,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5903,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5904,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:5907,1
    - Dst: xmlXPathNumberFunction
      Src: /src/libxml2/xpath.c:5908,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5909,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5918,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:5918,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5921,1
    - Dst: xmlXPathIsInf
      Src: /src/libxml2/xpath.c:5922,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5963,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5964,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 87
    argCount: 3
    argNames:
    - ctxt
    - inf
    - strict
    argTypes:
    - xmlXPathParserContext*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5966
      start: 5863
    functionDepth: 8
    functionLinenumber: 5863
    functionLinenumberEnd: 5966
    functionName: xmlXPathCompareValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathCompareNodeSetValue
    - xmlXPathIsNaN
    - xmlXPathValuePop
    - xmlXPathNumberFunction
    - xmlXPathValuePush
    - xmlXPathIsInf
    - XP_ERROR0
    - xmlXPathReleaseObject
    - xmlXPathCompareNodeSets
    linkageType: ''
    returnType: int
    signature: int xmlXPathCompareValues(xmlXPathParserContext *ctxt, int inf, int
      strict)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:5979,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5981
      start: 5975
    functionDepth: 1
    functionLinenumber: 5975
    functionLinenumberEnd: 5981
    functionName: xmlXPathValueFlipSign
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathValueFlipSign(xmlXPathParserContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:5995,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:5997,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:5998,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:5999,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:6001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6003
      start: 5990
    functionDepth: 5
    functionLinenumber: 5990
    functionLinenumberEnd: 6003
    functionName: xmlXPathAddValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - XP_ERROR
    - xmlXPathValuePop
    - xmlXPathCastToNumberInternal
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathAddValues(xmlXPathParserContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:6017,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6019,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:6020,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:6021,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:6023,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6025
      start: 6012
    functionDepth: 5
    functionLinenumber: 6012
    functionLinenumberEnd: 6025
    functionName: xmlXPathSubValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - XP_ERROR
    - xmlXPathValuePop
    - xmlXPathCastToNumberInternal
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathSubValues(xmlXPathParserContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:6039,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6041,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:6042,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:6043,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:6045,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6047
      start: 6034
    functionDepth: 5
    functionLinenumber: 6034
    functionLinenumberEnd: 6047
    functionName: xmlXPathMultValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - XP_ERROR
    - xmlXPathValuePop
    - xmlXPathCastToNumberInternal
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathMultValues(xmlXPathParserContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:6062,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6064,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:6065,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:6066,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:6068,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6070
      start: 6057
    functionDepth: 5
    functionLinenumber: 6057
    functionLinenumberEnd: 6070
    functionName: xmlXPathDivValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - XP_ERROR
    - xmlXPathValuePop
    - xmlXPathCastToNumberInternal
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathDivValues(xmlXPathParserContext *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:6084,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6086,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:6087,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:6088,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:6090,1
    - Dst: fmod
      Src: /src/libxml2/xpath.c:6095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6097
      start: 6079
    functionDepth: 5
    functionLinenumber: 6079
    functionLinenumberEnd: 6097
    functionName: xmlXPathModValues
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - XP_ERROR
    - xmlXPathValuePop
    - fmod
    - xmlXPathCastToNumberInternal
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathModValues(xmlXPathParserContext *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6143
      start: 6137
    functionDepth: 0
    functionLinenumber: 6137
    functionLinenumberEnd: 6143
    functionName: xmlXPathNextSelf
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextSelf(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6189
      start: 6153
    functionDepth: 0
    functionLinenumber: 6153
    functionLinenumberEnd: 6189
    functionName: xmlXPathNextChild
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextChild(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xpath.c:6226,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6259
      start: 6199
    functionDepth: 1
    functionLinenumber: 6199
    functionLinenumberEnd: 6259
    functionName: xmlXPathNextChildElement
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlDocGetRootElement
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlXPathNextChildElement(xmlXPathParserContextPtr ctxt,
      xmlNodePtr cur)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 40
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6320
      start: 6270
    functionDepth: 0
    functionLinenumber: 6270
    functionLinenumberEnd: 6320
    functionName: xmlXPathNextDescendant
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextDescendant(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNextDescendant
      Src: /src/libxml2/xpath.c:6345,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6346
      start: 6333
    functionDepth: 1
    functionLinenumber: 6333
    functionLinenumberEnd: 6346
    functionName: xmlXPathNextDescendantOrSelf
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNextDescendant
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextDescendantOrSelf(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:6385,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6410
      start: 6356
    functionDepth: 1
    functionLinenumber: 6356
    functionLinenumberEnd: 6410
    functionName: xmlXPathNextParent
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextParent(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:6453,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:6502,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 81
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6527
      start: 6424
    functionDepth: 1
    functionLinenumber: 6424
    functionLinenumberEnd: 6527
    functionName: xmlXPathNextAncestor
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextAncestor(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNextAncestor
      Src: /src/libxml2/xpath.c:6545,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6546
      start: 6540
    functionDepth: 2
    functionLinenumber: 6540
    functionLinenumberEnd: 6546
    functionName: xmlXPathNextAncestorOrSelf
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNextAncestor
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextAncestorOrSelf(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6568
      start: 6557
    functionDepth: 0
    functionLinenumber: 6557
    functionLinenumberEnd: 6568
    functionName: xmlXPathNextFollowingSibling
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextFollowingSibling(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6596
      start: 6580
    functionDepth: 0
    functionLinenumber: 6580
    functionLinenumberEnd: 6596
    functionName: xmlXPathNextPrecedingSibling
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextPrecedingSibling(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6638
      start: 6609
    functionDepth: 0
    functionLinenumber: 6609
    functionLinenumberEnd: 6638
    functionName: xmlXPathNextFollowing
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextFollowing(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - ancestor
    - node
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6666
      start: 6648
    functionDepth: 0
    functionLinenumber: 6648
    functionLinenumberEnd: 6666
    functionName: xmlXPathIsAncestor
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXPathIsAncestor(xmlNodePtr ancestor, xmlNodePtr node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsAncestor
      Src: /src/libxml2/xpath.c:6711,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6713
      start: 6679
    functionDepth: 1
    functionLinenumber: 6679
    functionLinenumberEnd: 6713
    functionName: xmlXPathNextPreceding
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathIsAncestor
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextPreceding(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 35
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6767
      start: 6728
    functionDepth: 0
    functionLinenumber: 6728
    functionLinenumberEnd: 6767
    functionName: xmlXPathNextPrecedingInternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr
      ctxt,\n                              xmlNodePtr cur)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:6787,1
    - Dst: xmlGetNsListSafe
      Src: /src/libxml2/xpath.c:6789,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:6791,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:6805,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6809
      start: 6781
    functionDepth: 4
    functionLinenumber: 6781
    functionLinenumberEnd: 6809
    functionName: xmlXPathNextNamespace
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlGetNsListSafe
    - xmlXPathPErrMemory
    - xmlFree
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextNamespace(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXPathParserContext*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6832
      start: 6819
    functionDepth: 0
    functionLinenumber: 6819
    functionLinenumberEnd: 6832
    functionName: xmlXPathNextAttribute
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlXPathNextAttribute(xmlXPathParserContext *ctxt, xmlNode *cur)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:6858,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:6858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6860
      start: 6854
    functionDepth: 5
    functionLinenumber: 6854
    functionLinenumberEnd: 6860
    functionName: xmlXPathRoot
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathCacheNewNodeSet
    - xmlXPathValuePush
    linkageType: ''
    returnType: void
    signature: void xmlXPathRoot(xmlXPathParserContext *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:6880,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:6882,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:6883,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6885,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6887
      start: 6878
    functionDepth: 5
    functionLinenumber: 6878
    functionLinenumberEnd: 6887
    functionName: xmlXPathLastFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewFloat
    - CHECK_ARITY
    - xmlXPathValuePush
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathLastFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:6901,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:6903,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:6903,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6906,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6908
      start: 6899
    functionDepth: 5
    functionLinenumber: 6899
    functionLinenumberEnd: 6908
    functionName: xmlXPathPositionFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewFloat
    - CHECK_ARITY
    - xmlXPathValuePush
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathPositionFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:6921,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:6925,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:6926,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:6929,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:6929,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:6931,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:6931,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:6933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6934
      start: 6917
    functionDepth: 5
    functionLinenumber: 6917
    functionLinenumberEnd: 6934
    functionName: xmlXPathCountFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathCacheNewFloat
    - xmlXPathReleaseObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCountFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:6953,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:6957,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:6959,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:6962,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:6964,1
    - Dst: xmlGetID
      Src: /src/libxml2/xpath.c:6974,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:6975,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxml2/xpath.c:6984,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:6985,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:6991,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 36
    argCount: 2
    argNames:
    - doc
    - ids
    argTypes:
    - xmlDocPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6995
      start: 6943
    functionDepth: 3
    functionLinenumber: 6943
    functionLinenumberEnd: 6995
    functionName: xmlXPathGetElementsByIds
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlFree
    - xmlStrndup
    - xmlXPathNodeSetCreate
    - xmlXPathNodeSetAdd
    - xmlGetID
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: xmlNodeSetPtr
    signature: xmlNodeSetPtr xmlXPathGetElementsByIds (xmlDocPtr doc, const xmlChar
      *ids)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7020,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7021,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7022,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:7027,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7029,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:7034,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7036,1
    - Dst: xmlXPathGetElementsByIds
      Src: /src/libxml2/xpath.c:7037,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7039,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:7040,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7042,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:7043,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7045,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7048,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7049,1
    - Dst: xmlXPathCacheWrapNodeSet
      Src: /src/libxml2/xpath.c:7049,1
    - Dst: xmlXPathCastToString
      Src: /src/libxml2/xpath.c:7052,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7054,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7055,1
    - Dst: xmlXPathGetElementsByIds
      Src: /src/libxml2/xpath.c:7056,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7058,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7059,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7060,1
    - Dst: xmlXPathCacheWrapNodeSet
      Src: /src/libxml2/xpath.c:7060,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7061
      start: 7014
    functionDepth: 5
    functionLinenumber: 7014
    functionLinenumberEnd: 7061
    functionName: xmlXPathIdFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - CHECK_ARITY
    - xmlXPathNodeSetCreate
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathCacheWrapNodeSet
    - xmlXPathValuePush
    - xmlXPathCastToString
    - xmlXPathFreeNodeSet
    - xmlXPathCastNodeToString
    - xmlXPathGetElementsByIds
    - xmlXPathNodeSetMerge
    - xmlXPathReleaseObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathIdFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7082,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:7082,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7086,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7090,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7091,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7094,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7094,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7102,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7102,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7104,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:7104,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7108,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:7108,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7112,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7112,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7115,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7116
      start: 7075
    functionDepth: 6
    functionLinenumber: 7075
    functionLinenumberEnd: 7116
    functionName: xmlXPathLocalNameFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewCString
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    - xmlXPathCacheNewNodeSet
    - xmlXPathCacheNewString
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathLocalNameFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7138,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:7138,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7141,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7145,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7146,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7149,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7149,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7156,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7156,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7158,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:7158,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7162,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7162,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7165,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7166
      start: 7131
    functionDepth: 6
    functionLinenumber: 7131
    functionLinenumberEnd: 7166
    functionName: xmlXPathNamespaceURIFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewCString
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    - xmlXPathCacheNewNodeSet
    - xmlXPathCacheNewString
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathNamespaceURIFunction(xmlXPathParserContext *ctxt, int
      nargs)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7195,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:7195,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7199,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7203,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7204,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7207,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7207,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7215,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7216,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7219,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:7219,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/xpath.c:7224,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:7228,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7230,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7231,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7231,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7235,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:7235,1
    - Dst: xmlXPathLocalNameFunction
      Src: /src/libxml2/xpath.c:7237,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7240,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7241
      start: 7189
    functionDepth: 7
    functionLinenumber: 7189
    functionLinenumberEnd: 7241
    functionName: xmlXPathNameFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlBuildQName
    - xmlStrdup
    - xmlXPathCacheWrapString
    - xmlXPathCacheNewCString
    - xmlXPathLocalNameFunction
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    - xmlXPathCacheNewNodeSet
    - xmlXPathCacheNewString
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathNameFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:7286,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7288,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7289,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7289,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7293,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7294,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7295,1
    - Dst: xmlXPathCastToString
      Src: /src/libxml2/xpath.c:7297,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7299,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7300,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7301,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7303,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7304
      start: 7279
    functionDepth: 5
    functionLinenumber: 7279
    functionLinenumberEnd: 7304
    functionName: xmlXPathStringFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 6
    functionsReached:
    - xmlXPathCacheWrapString
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastToString
    - xmlXPathCastNodeToString
    - xmlXPathReleaseObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathStringFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7325,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7325,1
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:7329,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7331,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7332,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7332,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xpath.c:7333,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7334,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7338,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7340,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7341,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7342,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7342,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xpath.c:7343,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7344,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7345
      start: 7317
    functionDepth: 5
    functionLinenumber: 7317
    functionLinenumberEnd: 7345
    functionName: xmlXPathStringLengthFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlUTF8Strlen
    - xmlXPathValuePush
    - xmlXPathCastNodeToString
    - xmlXPathCacheNewFloat
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathStringLengthFunction(xmlXPathParserContext *ctxt, int
      nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7362,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7366,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7368,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7375,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7377,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7378,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7379,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xpath.c:7381,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7383,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7386,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7389,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7390
      start: 7355
    functionDepth: 5
    functionLinenumber: 7355
    functionLinenumberEnd: 7390
    functionName: xmlXPathConcatFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlStrcat
    - xmlXPathReleaseObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathConcatFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7405,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7407,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7408,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7410,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7413,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7414,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7415,1
    - Dst: xmlStrstr
      Src: /src/libxml2/xpath.c:7417,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7418,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7418,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7420,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7420,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7421,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7422,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7423
      start: 7401
    functionDepth: 5
    functionLinenumber: 7401
    functionLinenumberEnd: 7423
    functionName: xmlXPathContainsFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlStrstr
    - xmlXPathValuePush
    - xmlXPathCacheNewBoolean
    - xmlXPathReleaseObject
    - CHECK_TYPE
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathContainsFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7439,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7441,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7442,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7444,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7447,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7448,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7449,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:7451,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/xpath.c:7452,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7453,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7453,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7455,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7455,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7456,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7457,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7458
      start: 7434
    functionDepth: 5
    functionLinenumber: 7434
    functionLinenumberEnd: 7458
    functionName: xmlXPathStartsWithFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrlen
    - xmlStrncmp
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathCacheNewBoolean
    - xmlXPathReleaseObject
    - CHECK_TYPE
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathStartsWithFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7494,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7497,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7504,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7505,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7507,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7511,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7512,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7514,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7516,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7517,1
    - Dst: floor
      Src: /src/libxml2/xpath.c:7523,1
    - Dst: floor
      Src: /src/libxml2/xpath.c:7530,1
    - Dst: floor
      Src: /src/libxml2/xpath.c:7534,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xpath.c:7549,1
    - Dst: xmlUTF8Strsub
      Src: /src/libxml2/xpath.c:7550,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7552,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7553,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:7553,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7554,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7556,1
    - Dst: xmlXPathCacheNewCString
      Src: /src/libxml2/xpath.c:7556,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7559,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7560
      start: 7487
    functionDepth: 6
    functionLinenumber: 7487
    functionLinenumberEnd: 7560
    functionName: xmlXPathSubstringFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlXPathCacheNewCString
    - floor
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlUTF8Strsub
    - xmlXPathPErrMemory
    - xmlXPathCacheNewString
    - xmlUTF8Strlen
    - xmlXPathValuePush
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathSubstringFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7581,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7583,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7585,1
    - Dst: xmlStrstr
      Src: /src/libxml2/xpath.c:7589,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:7591,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:7593,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7596,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7599,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7599,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7602,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7603,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7604
      start: 7574
    functionDepth: 5
    functionLinenumber: 7574
    functionLinenumberEnd: 7604
    functionName: xmlXPathSubstringBeforeFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlXPathCacheWrapString
    - CHECK_ARITY
    - xmlStrndup
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlStrstr
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathSubstringBeforeFunction(xmlXPathParserContext *ctxt, int
      nargs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7626,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7628,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7630,1
    - Dst: xmlStrstr
      Src: /src/libxml2/xpath.c:7634,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:7636,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:7638,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:7638,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7641,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7644,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7644,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7647,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7648,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7649
      start: 7619
    functionDepth: 5
    functionLinenumber: 7619
    functionLinenumberEnd: 7649
    functionName: xmlXPathSubstringAfterFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlXPathCacheWrapString
    - xmlStrlen
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlStrstr
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathSubstringAfterFunction(xmlXPathParserContext *ctxt, int
      nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCastNodeToString
      Src: /src/libxml2/xpath.c:7672,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7674,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7675,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7675,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7679,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7681,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:7688,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:7694,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7706
      start: 7664
    functionDepth: 5
    functionLinenumber: 7664
    functionLinenumberEnd: 7706
    functionName: xmlXPathNormalizeFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheWrapString
    - IS_BLANK_CH
    - CHECK_ARITY
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastNodeToString
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathNormalizeFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7740,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7743,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7745,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7747,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:7755,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:7756,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:7764,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xpath.c:7769,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7771,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xpath.c:7775,1
    - Dst: xmlUTF8Strloc
      Src: /src/libxml2/xpath.c:7777,1
    - Dst: xmlUTF8Strpos
      Src: /src/libxml2/xpath.c:7780,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/xpath.c:7782,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxml2/xpath.c:7782,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/xpath.c:7785,1
    - Dst: xmlUTF8Strsize
      Src: /src/libxml2/xpath.c:7785,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:7792,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:7798,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/xpath.c:7806,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7808,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7810,1
    - Dst: xmlXPathCacheWrapString
      Src: /src/libxml2/xpath.c:7810,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xpath.c:7811,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7813,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7814,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7815,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 63
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7816
      start: 7729
    functionDepth: 7
    functionLinenumber: 7729
    functionLinenumberEnd: 7816
    functionName: xmlXPathTranslateFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheWrapString
    - xmlStrlen
    - xmlXPathCheckOpLimit
    - CHECK_ARITY
    - xmlBufAdd
    - xmlBufDetach
    - xmlXPathValuePop
    - xmlBufCreate
    - xmlXPathPErrMemory
    - xmlUTF8Strlen
    - xmlXPathErr
    - xmlUTF8Strpos
    - xmlXPathValuePush
    - xmlXPathReleaseObject
    - xmlUTF8Strsize
    - xmlBufFree
    - xmlUTF8Strloc
    linkageType: ''
    returnType: void
    signature: void xmlXPathTranslateFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7834,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7835,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:7836,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/xpath.c:7838,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7840,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7841,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7844
      start: 7830
    functionDepth: 5
    functionLinenumber: 7830
    functionLinenumberEnd: 7844
    functionName: xmlXPathBooleanFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - XP_ERROR
    - CHECK_ARITY
    - xmlXPathValuePop
    - xmlXPathCastToBoolean
    - xmlXPathValuePush
    - xmlXPathCacheNewBoolean
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathBooleanFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7857,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7861
      start: 7855
    functionDepth: 1
    functionLinenumber: 7855
    functionLinenumberEnd: 7861
    functionName: xmlXPathNotFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_ARITY
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathNotFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7872,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7873,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7874
      start: 7870
    functionDepth: 5
    functionLinenumber: 7870
    functionLinenumberEnd: 7874
    functionName: xmlXPathTrueFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewBoolean
    - CHECK_ARITY
    - xmlXPathValuePush
    linkageType: ''
    returnType: void
    signature: void xmlXPathTrueFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7885,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7886,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7887
      start: 7883
    functionDepth: 5
    functionLinenumber: 7883
    functionLinenumberEnd: 7887
    functionName: xmlXPathFalseFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheNewBoolean
    - CHECK_ARITY
    - xmlXPathValuePush
    linkageType: ''
    returnType: void
    signature: void xmlXPathFalseFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7918,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:7920,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7921,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xpath.c:7925,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7927,1
    - Dst: toupper
      Src: /src/libxml2/xpath.c:7934,1
    - Dst: toupper
      Src: /src/libxml2/xpath.c:7934,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7941,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7943,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7944,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:7944,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7945
      start: 7909
    functionDepth: 5
    functionLinenumber: 7909
    functionLinenumberEnd: 7945
    functionName: xmlXPathLangFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - toupper
    - xmlFree
    - CHECK_ARITY
    - xmlNodeGetAttrValue
    - xmlXPathValuePop
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCacheNewBoolean
    - CHECK_TYPE
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathLangFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7962,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7962,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xpath.c:7964,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:7966,1
    - Dst: xmlXPathStringEvalNumber
      Src: /src/libxml2/xpath.c:7968,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7969,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7969,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:7970,1
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:7975,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:7976,1
    - Dst: xmlXPathCastToNumberInternal
      Src: /src/libxml2/xpath.c:7980,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:7981,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:7982,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:7984,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7985
      start: 7954
    functionDepth: 5
    functionLinenumber: 7954
    functionLinenumberEnd: 7985
    functionName: xmlXPathNumberFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 6
    functionsReached:
    - xmlFree
    - CHECK_ARITY
    - xmlNodeGetContent
    - xmlXPathValuePop
    - xmlXPathStringEvalNumber
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathCastToNumberInternal
    - xmlXPathCacheNewFloat
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathNumberFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:8002,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8006,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:8007,1
    - Dst: xmlXPathNodeToNumberInternal
      Src: /src/libxml2/xpath.c:8011,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:8015,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:8015,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:8016,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8017
      start: 7996
    functionDepth: 5
    functionLinenumber: 7996
    functionLinenumberEnd: 8017
    functionName: xmlXPathSumFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - CHECK_ARITY
    - xmlXPathNodeToNumberInternal
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathCacheNewFloat
    - xmlXPathReleaseObject
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathSumFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:8030,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:8032,1
    - Dst: floor
      Src: /src/libxml2/xpath.c:8034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8035
      start: 8028
    functionDepth: 1
    functionLinenumber: 8028
    functionLinenumberEnd: 8035
    functionName: xmlXPathFloorFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - floor
    - CHECK_ARITY
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathFloorFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:8048,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:8050,1
    - Dst: copysign
      Src: /src/libxml2/xpath.c:8054,1
    - Dst: ceil
      Src: /src/libxml2/xpath.c:8054,1
    - Dst: ceil
      Src: /src/libxml2/xpath.c:8056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8058
      start: 8046
    functionDepth: 1
    functionLinenumber: 8046
    functionLinenumberEnd: 8058
    functionName: xmlXPathCeilingFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - copysign
    - CHECK_ARITY
    - ceil
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathCeilingFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/libxml2/xpath.c:8074,1
    - Dst: CHECK_TYPE
      Src: /src/libxml2/xpath.c:8076,1
    - Dst: floor
      Src: /src/libxml2/xpath.c:8085,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8090
      start: 8070
    functionDepth: 1
    functionLinenumber: 8070
    functionLinenumberEnd: 8090
    functionName: xmlXPathRoundFunction
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - floor
    - CHECK_ARITY
    - CHECK_TYPE
    linkageType: ''
    returnType: void
    signature: void xmlXPathRoundFunction(xmlXPathParserContext *ctxt, int nargs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/xpath.c:8121,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8123,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:8128,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:8130,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8133
      start: 8114
    functionDepth: 4
    functionLinenumber: 8114
    functionLinenumberEnd: 8133
    functionName: xmlXPathParseNCName
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathPErrMemory
    - XP_ERRORNULL
    - xmlStrndup
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathParseNCName(xmlXPathParserContext *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpath.c:8150,1
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpath.c:8154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - prefix
    argTypes:
    - xmlXPathParserContextPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8157
      start: 8145
    functionDepth: 5
    functionLinenumber: 8145
    functionLinenumberEnd: 8157
    functionName: xmlXPathParseQName
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathParseNCName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathParseQName(xmlXPathParserContextPtr ctxt, xmlChar **prefix)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/xpath.c:8173,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8175,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:8180,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:8182,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8185
      start: 8166
    functionDepth: 4
    functionLinenumber: 8166
    functionLinenumberEnd: 8185
    functionName: xmlXPathParseName
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathPErrMemory
    - XP_ERRORNULL
    - xmlStrndup
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathParseName(xmlXPathParserContext *ctxt)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:8216,1
    - Dst: pow
      Src: /src/libxml2/xpath.c:8267,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:8286,1
    - Dst: pow
      Src: /src/libxml2/xpath.c:8290,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 73
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8292
      start: 8203
    functionDepth: 1
    functionLinenumber: 8203
    functionLinenumberEnd: 8292
    functionName: xmlXPathStringEvalNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - pow
    - IS_BLANK_CH
    linkageType: ''
    returnType: double
    signature: double xmlXPathStringEvalNumber(const xmlChar *str)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8318,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8348,1
    - Dst: pow
      Src: /src/libxml2/xpath.c:8361,1
    - Dst: pow
      Src: /src/libxml2/xpath.c:8381,1
    - Dst: xmlXPathCacheNewFloat
      Src: /src/libxml2/xpath.c:8383,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:8386,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:8388,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 66
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8390
      start: 8303
    functionDepth: 5
    functionLinenumber: 8303
    functionLinenumberEnd: 8390
    functionName: xmlXPathCompNumber
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - XP_ERROR
    - pow
    - PUSH_LONG_EXPR
    - xmlXPathCacheNewFloat
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompNumber(xmlXPathParserContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8412,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8422,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xpath.c:8423,1
    - Dst: IS_CHAR
      Src: /src/libxml2/xpath.c:8424,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8425,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:8428,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:8430,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8433
      start: 8401
    functionDepth: 4
    functionLinenumber: 8401
    functionLinenumberEnd: 8433
    functionName: xmlXPathParseLiteral
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - IS_CHAR
    - xmlStrndup
    - xmlXPathPErrMemory
    - XP_ERRORNULL
    - xmlGetUTF8Char
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathParseLiteral(xmlXPathParserContextPtr ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseLiteral
      Src: /src/libxml2/xpath.c:8450,1
    - Dst: xmlXPathCacheNewString
      Src: /src/libxml2/xpath.c:8453,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:8456,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:8458,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8460,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8461
      start: 8445
    functionDepth: 5
    functionLinenumber: 8445
    functionLinenumberEnd: 8461
    functionName: xmlXPathCompLiteral
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlXPathParseLiteral
    - PUSH_LONG_EXPR
    - xmlXPathCacheNewString
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompLiteral(xmlXPathParserContextPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8485,1
    - Dst: xmlXPathParseQName
      Src: /src/libxml2/xpath.c:8488,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8490,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8491,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:8494,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8495,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8496,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8500,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8502
      start: 8478
    functionDepth: 6
    functionLinenumber: 8478
    functionLinenumberEnd: 8502
    functionName: xmlXPathCompVariableReference
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - PUSH_LONG_EXPR
    - xmlXPathParseQName
    - xmlFree
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompVariableReference(xmlXPathParserContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:8520,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:8522,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:8524,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:8526,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8529
      start: 8515
    functionDepth: 1
    functionLinenumber: 8515
    functionLinenumberEnd: 8529
    functionName: xmlXPathIsNodeType
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlXPathIsNodeType(const xmlChar *name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseQName
      Src: /src/libxml2/xpath.c:8547,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8549,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8550,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8555,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8556,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8557,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:8566,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:8575,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8577,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8578,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:8581,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8585,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8586,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8587,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:8593,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8594,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8595,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8599
      start: 8540
    functionDepth: 6
    functionLinenumber: 8540
    functionLinenumberEnd: 8599
    functionName: xmlXPathCompFunctionCall
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlXPathCompileExpr
    - PUSH_LONG_EXPR
    - PUSH_BINARY_EXPR
    - xmlXPathParseQName
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompFunctionCall(xmlXPathParserContextPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompVariableReference
      Src: /src/libxml2/xpath.c:8615,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:8619,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8622,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/xpath.c:8626,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/xpath.c:8626,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8626,1
    - Dst: xmlXPathCompNumber
      Src: /src/libxml2/xpath.c:8627,1
    - Dst: xmlXPathCompLiteral
      Src: /src/libxml2/xpath.c:8629,1
    - Dst: xmlXPathCompFunctionCall
      Src: /src/libxml2/xpath.c:8631,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8634
      start: 8612
    functionDepth: 7
    functionLinenumber: 8612
    functionLinenumberEnd: 8634
    functionName: xmlXPathCompPrimaryExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompNumber
    - xmlXPathCompLiteral
    - xmlXPathCompileExpr
    - NXT
    - xmlXPathCompVariableReference
    - xmlXPathCompFunctionCall
    - IS_ASCII_DIGIT
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompPrimaryExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompPrimaryExpr
      Src: /src/libxml2/xpath.c:8652,1
    - Dst: xmlXPathCompPredicate
      Src: /src/libxml2/xpath.c:8657,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8662
      start: 8650
    functionDepth: 8
    functionLinenumber: 8650
    functionLinenumberEnd: 8662
    functionName: xmlXPathCompFilterExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompPredicate
    - xmlXPathCompPrimaryExpr
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompFilterExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/xpath.c:8677,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:8679,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xpath.c:8684,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:8686,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8688
      start: 8672
    functionDepth: 4
    functionLinenumber: 8672
    functionLinenumberEnd: 8688
    functionName: xmlXPathScanName
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - XP_ERRORNULL
    - xmlStrndup
    - xmlScanName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlXPathScanName(xmlXPathParserContextPtr ctxt)'
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/xpath.c:8708,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/xpath.c:8710,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8710,1
    - Dst: xmlXPathScanName
      Src: /src/libxml2/xpath.c:8737,1
    - Dst: xmlStrstr
      Src: /src/libxml2/xpath.c:8738,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8740,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:8742,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8745,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8746,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:8750,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8750,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8753,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8756,1
    - Dst: xmlXPathIsNodeType
      Src: /src/libxml2/xpath.c:8758,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8764,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8768,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8768,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8769,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8778,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:8782,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:8785,1
    - Dst: PUSH_LEAVE_EXPR
      Src: /src/libxml2/xpath.c:8791,1
    - Dst: PUSH_LEAVE_EXPR
      Src: /src/libxml2/xpath.c:8793,1
    - Dst: xmlXPathCompLocationPath
      Src: /src/libxml2/xpath.c:8795,1
    - Dst: xmlXPathCompFilterExpr
      Src: /src/libxml2/xpath.c:8797,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8799,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:8800,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:8803,1
    - Dst: xmlXPathCompRelativeLocationPath
      Src: /src/libxml2/xpath.c:8806,1
    - Dst: xmlXPathCompRelativeLocationPath
      Src: /src/libxml2/xpath.c:8808,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 86
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8812
      start: 8701
    functionDepth: 9
    functionLinenumber: 8701
    functionLinenumberEnd: 8812
    functionName: xmlXPathCompPathExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlXPathCompLocationPath
    - xmlXPathCompFilterExpr
    - xmlFree
    - xmlStrlen
    - xmlXPathIsNodeType
    - NXT
    - xmlXPathCompRelativeLocationPath
    - PUSH_LONG_EXPR
    - xmlStrstr
    - xmlXPathScanName
    - PUSH_LEAVE_EXPR
    - IS_ASCII_DIGIT
    - SKIP
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompPathExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompPathExpr
      Src: /src/libxml2/xpath.c:8825,1
    - Dst: PUSH_LEAVE_EXPR
      Src: /src/libxml2/xpath.c:8830,1
    - Dst: xmlXPathCompPathExpr
      Src: /src/libxml2/xpath.c:8834,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:8836,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8840
      start: 8823
    functionDepth: 10
    functionLinenumber: 8823
    functionLinenumberEnd: 8840
    functionName: xmlXPathCompUnionExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - PUSH_LEAVE_EXPR
    - xmlXPathCompPathExpr
    - PUSH_BINARY_EXPR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompUnionExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompUnionExpr
      Src: /src/libxml2/xpath.c:8864,1
    - Dst: PUSH_UNARY_EXPR
      Src: /src/libxml2/xpath.c:8868,1
    - Dst: PUSH_UNARY_EXPR
      Src: /src/libxml2/xpath.c:8870,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8872
      start: 8851
    functionDepth: 11
    functionLinenumber: 8851
    functionLinenumberEnd: 8872
    functionName: xmlXPathCompUnaryExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompUnionExpr
    - PUSH_UNARY_EXPR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompUnaryExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompUnaryExpr
      Src: /src/libxml2/xpath.c:8888,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8892,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8892,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8893,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8893,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:8902,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:8905,1
    - Dst: xmlXPathCompUnaryExpr
      Src: /src/libxml2/xpath.c:8908,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:8910,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8913
      start: 8886
    functionDepth: 12
    functionLinenumber: 8886
    functionLinenumberEnd: 8913
    functionName: xmlXPathCompMultiplicativeExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - PUSH_BINARY_EXPR
    - xmlXPathCompUnaryExpr
    - NXT
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompMultiplicativeExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompMultiplicativeExpr
      Src: /src/libxml2/xpath.c:8928,1
    - Dst: xmlXPathCompMultiplicativeExpr
      Src: /src/libxml2/xpath.c:8939,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:8941,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8944
      start: 8925
    functionDepth: 13
    functionLinenumber: 8925
    functionLinenumberEnd: 8944
    functionName: xmlXPathCompAdditiveExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompMultiplicativeExpr
    - PUSH_BINARY_EXPR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompAdditiveExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompAdditiveExpr
      Src: /src/libxml2/xpath.c:8965,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:8974,1
    - Dst: xmlXPathCompAdditiveExpr
      Src: /src/libxml2/xpath.c:8979,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:8981,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8984
      start: 8963
    functionDepth: 14
    functionLinenumber: 8963
    functionLinenumberEnd: 8984
    functionName: xmlXPathCompRelationalExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - PUSH_BINARY_EXPR
    - NXT
    - xmlXPathCompAdditiveExpr
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompRelationalExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompRelationalExpr
      Src: /src/libxml2/xpath.c:9002,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9005,1
    - Dst: xmlXPathCompRelationalExpr
      Src: /src/libxml2/xpath.c:9014,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:9016,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9019
      start: 9000
    functionDepth: 15
    functionLinenumber: 9000
    functionLinenumberEnd: 9019
    functionName: xmlXPathCompEqualityExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - PUSH_BINARY_EXPR
    - xmlXPathCompRelationalExpr
    - NXT
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompEqualityExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompEqualityExpr
      Src: /src/libxml2/xpath.c:9031,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9034,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9034,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9036,1
    - Dst: xmlXPathCompEqualityExpr
      Src: /src/libxml2/xpath.c:9038,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:9040,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9043
      start: 9029
    functionDepth: 16
    functionLinenumber: 9029
    functionLinenumberEnd: 9043
    functionName: xmlXPathCompAndExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompEqualityExpr
    - PUSH_BINARY_EXPR
    - NXT
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompAndExpr(xmlXPathParserContextPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:9061,1
    - Dst: xmlXPathCompAndExpr
      Src: /src/libxml2/xpath.c:9069,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9072,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9074,1
    - Dst: xmlXPathCompAndExpr
      Src: /src/libxml2/xpath.c:9076,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:9078,1
    - Dst: PUSH_UNARY_EXPR
      Src: /src/libxml2/xpath.c:9088,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - sort
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9093
      start: 9055
    functionDepth: 17
    functionLinenumber: 9055
    functionLinenumberEnd: 9093
    functionName: xmlXPathCompileExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - XP_ERROR
    - xmlXPathCompAndExpr
    - PUSH_UNARY_EXPR
    - NXT
    - PUSH_BINARY_EXPR
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompileExpr(xmlXPathParserContextPtr ctxt, int sort)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:9110,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:9126,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:9128,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:9132,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:9136,1
    - Dst: PUSH_BINARY_EXPR
      Src: /src/libxml2/xpath.c:9138,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - filter
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9142
      start: 9104
    functionDepth: 18
    functionLinenumber: 9104
    functionLinenumberEnd: 9142
    functionName: xmlXPathCompPredicate
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - PUSH_BINARY_EXPR
    - xmlXPathCompileExpr
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompPredicate(xmlXPathParserContextPtr ctxt, int filter)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpath.c:9190,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:9192,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xpath.c:9195,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9202,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9204,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9206,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9208,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9212,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:9213,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9224,1
    - Dst: xmlXPathParseLiteral
      Src: /src/libxml2/xpath.c:9227,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9234,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:9235,1
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpath.c:9262,1
    - Dst: XP_ERRORNULL
      Src: /src/libxml2/xpath.c:9264,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 5
    argNames:
    - ctxt
    - test
    - type
    - prefix
    - name
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathTestVal*
    - xmlXPathTypeVal*
    - xmlChar**
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9268
      start: 9166
    functionDepth: 5
    functionLinenumber: 9166
    functionLinenumberEnd: 9268
    functionName: xmlXPathCompNodeTest
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlFree
    - xmlXPathParseLiteral
    - XP_ERRORNULL
    - xmlXPathParseNCName
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlXPathCompNodeTest(xmlXPathParserContextPtr ctxt, xmlXPathTestVal
      *test,\n\t             xmlXPathTypeVal *type, xmlChar **prefix,\n\t\t     xmlChar
      *name)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9293,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9295,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9297,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9301,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9305,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9307,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9311,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9313,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9317,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9321,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9323,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9325,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:9329,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 44
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9334
      start: 9288
    functionDepth: 1
    functionLinenumber: 9288
    functionLinenumberEnd: 9334
    functionName: xmlXPathIsAxisName
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlXPathAxisVal
    signature: xmlXPathAxisVal xmlXPathIsAxisName(const xmlChar *name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9360,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9361,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:9363,1
    - Dst: xmlXPathParseNCName
      Src: /src/libxml2/xpath.c:9380,1
    - Dst: xmlXPathIsAxisName
      Src: /src/libxml2/xpath.c:9382,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9385,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9386,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9387,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9405,1
    - Dst: xmlXPathCompNodeTest
      Src: /src/libxml2/xpath.c:9409,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxml2/xpath.c:9415,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:9416,1
    - Dst: xmlXPathCompPredicate
      Src: /src/libxml2/xpath.c:9426,1
    - Dst: PUSH_FULL_EXPR
      Src: /src/libxml2/xpath.c:9429,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9431,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:9432,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9435
      start: 9357
    functionDepth: 19
    functionLinenumber: 9357
    functionLinenumberEnd: 9435
    functionName: xmlXPathCompStep
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsAxisName
    - xmlXPathCompPredicate
    - PUSH_FULL_EXPR
    - xmlFree
    - xmlXPathNsLookup
    - xmlXPathErrFmt
    - NXT
    - xmlXPathCompNodeTest
    - PUSH_LONG_EXPR
    - xmlXPathParseNCName
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompStep(xmlXPathParserContextPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9451,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9452,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:9454,1
    - Dst: xmlXPathCompStep
      Src: /src/libxml2/xpath.c:9460,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9464,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9465,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:9467,1
    - Dst: xmlXPathCompStep
      Src: /src/libxml2/xpath.c:9469,1
    - Dst: xmlXPathCompStep
      Src: /src/libxml2/xpath.c:9473,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9477
      start: 9447
    functionDepth: 20
    functionLinenumber: 9447
    functionLinenumberEnd: 9477
    functionName: xmlXPathCompRelativeLocationPath
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCompStep
    - PUSH_LONG_EXPR
    - NXT
    - SKIP
    linkageType: ''
    returnType: void
    signature: 'void xmlXPathCompRelativeLocationPath

      (xmlXPathParserContextPtr ctxt)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompRelativeLocationPath
      Src: /src/libxml2/xpath.c:9495,1
    - Dst: NXT
      Src: /src/libxml2/xpath.c:9498,1
    - Dst: SKIP
      Src: /src/libxml2/xpath.c:9499,1
    - Dst: PUSH_LONG_EXPR
      Src: /src/libxml2/xpath.c:9501,1
    - Dst: xmlXPathCompRelativeLocationPath
      Src: /src/libxml2/xpath.c:9503,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/xpath.c:9508,1
    - Dst: xmlXPathCompRelativeLocationPath
      Src: /src/libxml2/xpath.c:9511,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9516
      start: 9491
    functionDepth: 21
    functionLinenumber: 9491
    functionLinenumberEnd: 9516
    functionName: xmlXPathCompLocationPath
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - NXT
    - xmlXPathCompRelativeLocationPath
    - PUSH_LONG_EXPR
    - IS_ASCII_LETTER
    - SKIP
    linkageType: ''
    returnType: void
    signature: void xmlXPathCompLocationPath(xmlXPathParserContextPtr ctxt)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetClear
      Src: /src/libxml2/xpath.c:9561,1
    - Dst: xmlXPathCompOpEvalToBoolean
      Src: /src/libxml2/xpath.c:9591,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:9597,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:9612,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/xpath.c:9630,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xpath.c:9644,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:9647,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 67
    argCount: 6
    argNames:
    - ctxt
    - set
    - filterOpIndex
    - minPos
    - maxPos
    - hasNsNodes
    argTypes:
    - xmlXPathParserContextPtr
    - xmlNodeSetPtr
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9658
      start: 9539
    functionDepth: 6
    functionLinenumber: 9539
    functionLinenumberEnd: 9658
    functionName: xmlXPathNodeSetFilter
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlXPathNodeSetClear
    - xmlXPathCompOpEvalToBoolean
    - xmlXPathPErrMemory
    - xmlXPathErr
    - xmlXPathNodeSetFreeNs
    linkageType: ''
    returnType: void
    signature: "void xmlXPathNodeSetFilter(xmlXPathParserContextPtr ctxt,\n\t\t      xmlNodeSetPtr
      set,\n\t\t      int filterOpIndex,\n                      int minPos, int maxPos,\n\t\t
      \     int hasNsNodes)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:9685,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:9688,1
    - Dst: xmlXPathCompOpEvalPredicate
      Src: /src/libxml2/xpath.c:9690,1
    - Dst: xmlXPathNodeSetFilter
      Src: /src/libxml2/xpath.c:9697,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 6
    argNames:
    - ctxt
    - op
    - set
    - minPos
    - maxPos
    - hasNsNodes
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - xmlNodeSetPtr
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9698
      start: 9672
    functionDepth: 7
    functionLinenumber: 9672
    functionLinenumberEnd: 9698
    functionName: xmlXPathCompOpEvalPredicate
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCompOpEvalPredicate
    - xmlXPathNodeSetFilter
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: "void xmlXPathCompOpEvalPredicate(xmlXPathParserContextPtr ctxt,\n\t\t\t
      \   xmlXPathStepOpPtr op,\n\t\t\t    xmlNodeSetPtr set,\n                            int
      minPos, int maxPos,\n\t\t\t    int hasNsNodes)"
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 15
    argCount: 3
    argNames:
    - ctxt
    - op
    - maxPos
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9754
      start: 9700
    functionDepth: 0
    functionLinenumber: 9700
    functionLinenumberEnd: 9754
    functionName: xmlXPathIsPositionalPredicate
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlXPathIsPositionalPredicate(xmlXPathParserContextPtr ctxt,\n\t\t\t
      \   xmlXPathStepOpPtr op,\n\t\t\t    int *maxPos)"
  - BBCount: 101
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_TYPE0
      Src: /src/libxml2/xpath.c:9822,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:9823,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxml2/xpath.c:9828,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:9830,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:9831,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:9921,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:9926,1
    - Dst: xmlXPathIsPositionalPredicate
      Src: /src/libxml2/xpath.c:9956,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:9999,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10001,1
    - Dst: OP_LIMIT_EXCEEDED
      Src: /src/libxml2/xpath.c:10013,1
    - Dst: next
      Src: /src/libxml2/xpath.c:10016,1
    - Dst: XP_OPTIMIZED_NON_ELEM_COMPARISON
      Src: /src/libxml2/xpath.c:10027,1
    - Dst: xmlXPathCmpNodesExt
      Src: /src/libxml2/xpath.c:10028,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxml2/xpath.c:10030,1
    - Dst: XP_OPTIMIZED_NON_ELEM_COMPARISON
      Src: /src/libxml2/xpath.c:10040,1
    - Dst: xmlXPathCmpNodesExt
      Src: /src/libxml2/xpath.c:10041,1
    - Dst: xmlXPathCmpNodes
      Src: /src/libxml2/xpath.c:10043,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10094,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10107,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10124,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10148,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10156,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10166,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10175,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10189,1
    - Dst: mergeAndClear
      Src: /src/libxml2/xpath.c:10215,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10217,1
    - Dst: mergeAndClear
      Src: /src/libxml2/xpath.c:10235,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10237,1
    - Dst: xmlXPathCompOpEvalPredicate
      Src: /src/libxml2/xpath.c:10278,1
    - Dst: xmlXPathCompOpEvalPredicate
      Src: /src/libxml2/xpath.c:10281,1
    - Dst: mergeAndClear
      Src: /src/libxml2/xpath.c:10298,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10300,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10320,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/xpath.c:10329,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10331,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/libxml2/xpath.c:10335,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10341,1
    - Dst: xmlXPathCacheWrapNodeSet
      Src: /src/libxml2/xpath.c:10341,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:10351,1
    CyclomaticComplexity: 140
    EdgeCount: 140
    ICount: 337
    argCount: 5
    argNames:
    - ctxt
    - op
    - first
    - last
    - toBool
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - xmlNodePtr*
    - xmlNodePtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10356
      start: 9756
    functionDepth: 8
    functionLinenumber: 9756
    functionLinenumberEnd: 10356
    functionName: xmlXPathNodeCollectAndTest
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathIsPositionalPredicate
    - OP_LIMIT_EXCEEDED
    - xmlXPathValuePop
    - mergeAndClear
    - xmlXPathCacheWrapNodeSet
    - XP_OPTIMIZED_NON_ELEM_COMPARISON
    - xmlXPathNsLookup
    - CHECK_TYPE0
    - xmlXPathErrFmt
    - xmlFree
    - xmlXPathPErrMemory
    - xmlXPathCompOpEvalPredicate
    - xmlStrEqual
    - xmlXPathCmpNodesExt
    - xmlXPathNodeSetCreate
    - next
    - xmlXPathReleaseObject
    - xmlXPathCmpNodes
    - xmlXPathValuePush
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: int
    signature: "int xmlXPathNodeCollectAndTest(xmlXPathParserContextPtr ctxt,\n                           xmlXPathStepOpPtr
      op,\n\t\t\t   xmlNodePtr * first, xmlNodePtr * last,\n\t\t\t   int toBool)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: OP_LIMIT_EXCEEDED
      Src: /src/libxml2/xpath.c:10380,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10383,1
    - Dst: xmlXPathCompOpEvalFirst
      Src: /src/libxml2/xpath.c:10391,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:10409,1
    - Dst: xmlXPathCompOpEvalFirst
      Src: /src/libxml2/xpath.c:10413,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10417,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10418,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10421,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10422,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10423,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10427,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10430,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10432,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10433,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:10439,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10442,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10444,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10445,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/xpath.c:10449,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10453,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10456,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10458,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:10458,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10465,1
    - Dst: xmlXPathNodeCollectAndTest
      Src: /src/libxml2/xpath.c:10468,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10472,1
    - Dst: xmlXPathCacheObjectCopy
      Src: /src/libxml2/xpath.c:10472,1
    - Dst: xmlXPathCompOpEvalFirst
      Src: /src/libxml2/xpath.c:10477,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:10484,1
    - Dst: xmlXPathCompOpEvalFilterFirst
      Src: /src/libxml2/xpath.c:10488,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10492,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 81
    argCount: 3
    argNames:
    - ctxt
    - op
    - first
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10498
      start: 10371
    functionDepth: 9
    functionLinenumber: 10371
    functionLinenumberEnd: 10498
    functionName: xmlXPathCompOpEvalFirst
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheObjectCopy
    - xmlXPathCompOpEval
    - xmlXPathCompOpEvalFilterFirst
    - OP_LIMIT_EXCEEDED
    - xmlXPathNodeSetMerge
    - xmlXPathCheckOpLimit
    - xmlXPathNodeCollectAndTest
    - xmlXPathValuePop
    - xmlXPathNodeSetSort
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathRoot
    - xmlXPathCompOpEvalFirst
    - XP_ERROR0
    - xmlXPathCacheNewNodeSet
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompOpEvalFirst(xmlXPathParserContextPtr ctxt,\n                        xmlXPathStepOpPtr
      op, xmlNodePtr * first)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: OP_LIMIT_EXCEEDED
      Src: /src/libxml2/xpath.c:10518,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10521,1
    - Dst: xmlXPathCompOpEvalLast
      Src: /src/libxml2/xpath.c:10529,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:10539,1
    - Dst: xmlXPathCompOpEvalLast
      Src: /src/libxml2/xpath.c:10546,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10554,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10555,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10558,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10559,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10560,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10564,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10567,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10569,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10570,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:10576,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10579,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10581,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10582,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/xpath.c:10586,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10590,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10593,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10595,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:10595,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10602,1
    - Dst: xmlXPathNodeCollectAndTest
      Src: /src/libxml2/xpath.c:10605,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10609,1
    - Dst: xmlXPathCacheObjectCopy
      Src: /src/libxml2/xpath.c:10609,1
    - Dst: xmlXPathCompOpEvalLast
      Src: /src/libxml2/xpath.c:10614,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:10621,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10624,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 80
    argCount: 3
    argNames:
    - ctxt
    - op
    - last
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10630
      start: 10509
    functionDepth: 9
    functionLinenumber: 10509
    functionLinenumberEnd: 10630
    functionName: xmlXPathCompOpEvalLast
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCacheObjectCopy
    - xmlXPathCompOpEval
    - OP_LIMIT_EXCEEDED
    - xmlXPathNodeSetMerge
    - xmlXPathCheckOpLimit
    - xmlXPathValuePop
    - xmlXPathNodeSetSort
    - xmlXPathPErrMemory
    - xmlXPathValuePush
    - xmlXPathRoot
    - xmlXPathNodeCollectAndTest
    - XP_ERROR0
    - xmlXPathReleaseObject
    - xmlXPathCacheNewNodeSet
    - xmlXPathCompOpEvalLast
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompOpEvalLast(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr
      op,\n                       xmlNodePtr * last)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:10657,1
    - Dst: xmlXPathCompOpEvalLast
      Src: /src/libxml2/xpath.c:10662,1
    - Dst: xmlXPathNodeSetKeepLast
      Src: /src/libxml2/xpath.c:10675,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10683,1
    - Dst: CHECK_TYPE0
      Src: /src/libxml2/xpath.c:10695,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10696,1
    - Dst: xmlXPathNodeSetFilter
      Src: /src/libxml2/xpath.c:10699,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10703,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 31
    argCount: 3
    argNames:
    - ctxt
    - op
    - first
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10706
      start: 10633
    functionDepth: 10
    functionLinenumber: 10633
    functionLinenumberEnd: 10706
    functionName: xmlXPathCompOpEvalFilterFirst
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetFilter
    - xmlXPathCompOpEval
    - xmlStrEqual
    - CHECK_TYPE0
    - xmlXPathValuePop
    - xmlXPathValuePush
    - xmlXPathNodeSetKeepLast
    - xmlXPathCompOpEvalLast
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompOpEvalFilterFirst(xmlXPathParserContextPtr ctxt,\n\t\t\t
      \     xmlXPathStepOpPtr op, xmlNodePtr * first)"
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: OP_LIMIT_EXCEEDED
      Src: /src/libxml2/xpath.c:10725,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10728,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10735,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/xpath.c:10737,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10740,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10741,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:10743,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/xpath.c:10746,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10749,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10752,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/xpath.c:10754,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10757,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10758,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xpath.c:10760,1
    - Dst: xmlXPathBooleanFunction
      Src: /src/libxml2/xpath.c:10763,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10766,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10769,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10771,1
    - Dst: xmlXPathEqualValues
      Src: /src/libxml2/xpath.c:10774,1
    - Dst: xmlXPathNotEqualValues
      Src: /src/libxml2/xpath.c:10776,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10777,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:10777,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10780,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10782,1
    - Dst: xmlXPathCompareValues
      Src: /src/libxml2/xpath.c:10784,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10785,1
    - Dst: xmlXPathCacheNewBoolean
      Src: /src/libxml2/xpath.c:10785,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10788,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10791,1
    - Dst: xmlXPathSubValues
      Src: /src/libxml2/xpath.c:10795,1
    - Dst: xmlXPathAddValues
      Src: /src/libxml2/xpath.c:10797,1
    - Dst: xmlXPathValueFlipSign
      Src: /src/libxml2/xpath.c:10799,1
    - Dst: CHECK_TYPE0
      Src: /src/libxml2/xpath.c:10802,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10806,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10808,1
    - Dst: xmlXPathMultValues
      Src: /src/libxml2/xpath.c:10811,1
    - Dst: xmlXPathDivValues
      Src: /src/libxml2/xpath.c:10813,1
    - Dst: xmlXPathModValues
      Src: /src/libxml2/xpath.c:10815,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10818,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10820,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10823,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:10824,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10827,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10828,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10829,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10833,1
    - Dst: xmlXPathCheckOpLimit
      Src: /src/libxml2/xpath.c:10836,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10838,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10839,1
    - Dst: xmlXPathNodeSetMerge
      Src: /src/libxml2/xpath.c:10846,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:10849,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10852,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:10853,1
    - Dst: xmlXPathRoot
      Src: /src/libxml2/xpath.c:10856,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10860,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10863,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10865,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:10865,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10872,1
    - Dst: xmlXPathNodeCollectAndTest
      Src: /src/libxml2/xpath.c:10875,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10879,1
    - Dst: xmlXPathCacheObjectCopy
      Src: /src/libxml2/xpath.c:10879,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10886,1
    - Dst: xmlXPathVariableLookup
      Src: /src/libxml2/xpath.c:10888,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10890,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10894,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxml2/xpath.c:10898,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10900,1
    - Dst: xmlXPathVariableLookupNS
      Src: /src/libxml2/xpath.c:10905,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10908,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:10913,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10926,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10931,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10934,1
    - Dst: xmlXPathFunctionLookup
      Src: /src/libxml2/xpath.c:10942,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10945,1
    - Dst: xmlXPathNsLookup
      Src: /src/libxml2/xpath.c:10951,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10953,1
    - Dst: xmlXPathFunctionLookupNS
      Src: /src/libxml2/xpath.c:10958,1
    - Dst: xmlXPathErrFmt
      Src: /src/libxml2/xpath.c:10961,1
    - Dst: func
      Src: /src/libxml2/xpath.c:10974,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:10979,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10984,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:10988,1
    - Dst: XP_OPTIMIZED_FILTER_FIRST
      Src: /src/libxml2/xpath.c:11001,1
    - Dst: xmlXPathCompOpEvalFirst
      Src: /src/libxml2/xpath.c:11025,1
    - Dst: xmlXPathNodeSetClearFromPos
      Src: /src/libxml2/xpath.c:11037,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xpath.c:11055,1
    - Dst: xmlXPathCompOpEvalLast
      Src: /src/libxml2/xpath.c:11060,1
    - Dst: xmlXPathNodeSetKeepLast
      Src: /src/libxml2/xpath.c:11073,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:11090,1
    - Dst: CHECK_TYPE0
      Src: /src/libxml2/xpath.c:11103,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:11104,1
    - Dst: xmlXPathNodeSetFilter
      Src: /src/libxml2/xpath.c:11107,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:11109,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:11114,1
    - Dst: xmlXPathNodeSetSort
      Src: /src/libxml2/xpath.c:11121,1
    - Dst: XP_ERROR0
      Src: /src/libxml2/xpath.c:11125,1
    CyclomaticComplexity: 120
    EdgeCount: 120
    ICount: 273
    argCount: 2
    argNames:
    - ctxt
    - op
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11131
      start: 10716
    functionDepth: 10
    functionLinenumber: 10716
    functionLinenumberEnd: 11131
    functionName: xmlXPathCompOpEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 4
    functionsReached:
    - xmlXPathCacheObjectCopy
    - OP_LIMIT_EXCEEDED
    - xmlXPathValueFlipSign
    - xmlXPathDivValues
    - xmlXPathCheckOpLimit
    - xmlXPathValuePop
    - xmlXPathNodeSetSort
    - XP_OPTIMIZED_FILTER_FIRST
    - xmlXPathRoot
    - xmlXPathNodeSetKeepLast
    - XP_ERROR0
    - xmlXPathFreeObject
    - xmlXPathCacheNewNodeSet
    - xmlXPathNotEqualValues
    - xmlXPathMultValues
    - CHECK_TYPE0
    - xmlXPathNsLookup
    - xmlXPathErrFmt
    - xmlXPathPErrMemory
    - xmlXPathCompOpEvalFirst
    - xmlXPathNodeCollectAndTest
    - xmlXPathSubValues
    - xmlXPathVariableLookup
    - xmlXPathCompOpEvalLast
    - xmlStrEqual
    - xmlXPathCompareValues
    - xmlXPathNodeSetClearFromPos
    - func
    - xmlXPathAddValues
    - xmlXPathEqualValues
    - xmlXPathNodeSetMerge
    - xmlXPathFunctionLookup
    - xmlXPathNodeSetFilter
    - xmlXPathCompOpEval
    - xmlXPathModValues
    - xmlXPathBooleanFunction
    - xmlXPathFunctionLookupNS
    - xmlXPathValuePush
    - xmlXPathVariableLookupNS
    - xmlXPathCacheNewBoolean
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: int xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr
      op)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: OP_LIMIT_EXCEEDED
      Src: /src/libxml2/xpath.c:11149,1
    - Dst: xmlXPathEvaluatePredicateResult
      Src: /src/libxml2/xpath.c:11158,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/xpath.c:11159,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:11173,1
    - Dst: xmlXPathNodeCollectAndTest
      Src: /src/libxml2/xpath.c:11177,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:11181,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:11189,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:11193,1
    - Dst: xmlXPathEvaluatePredicateResult
      Src: /src/libxml2/xpath.c:11213,1
    - Dst: xmlXPathCastToBoolean
      Src: /src/libxml2/xpath.c:11215,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:11217,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 3
    argNames:
    - ctxt
    - op
    - isPredicate
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11222
      start: 11141
    functionDepth: 11
    functionLinenumber: 11141
    functionLinenumberEnd: 11222
    functionName: xmlXPathCompOpEvalToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCompOpEval
    - OP_LIMIT_EXCEEDED
    - xmlXPathValuePop
    - xmlXPathCastToBoolean
    - xmlXPathEvaluatePredicateResult
    - xmlXPathNodeCollectAndTest
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompOpEvalToBoolean(xmlXPathParserContextPtr ctxt,\n\t\t\t
      \   xmlXPathStepOpPtr op,\n\t\t\t    int isPredicate)"
  - BBCount: 72
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatternMaxDepth
      Src: /src/libxml2/xpath.c:11244,1
    - Dst: xmlPatternMinDepth
      Src: /src/libxml2/xpath.c:11249,1
    - Dst: xmlPatternFromRoot
      Src: /src/libxml2/xpath.c:11252,1
    - Dst: xmlXPathCacheNewNodeSet
      Src: /src/libxml2/xpath.c:11259,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:11274,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:11280,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11285,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/xpath.c:11325,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11327,1
    - Dst: xmlStreamWantsAnyNode
      Src: /src/libxml2/xpath.c:11331,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xpath.c:11334,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:11339,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11340,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:11349,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xpath.c:11350,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xpath.c:11363,1
    - Dst: xmlStreamPushNode
      Src: /src/libxml2/xpath.c:11366,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11371,1
    - Dst: xmlXPathNodeSetAddUnique
      Src: /src/libxml2/xpath.c:11375,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11377,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xpath.c:11380,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xpath.c:11426,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xpath.c:11433,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xpath.c:11446,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xpath.c:11451,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 185
    argCount: 4
    argNames:
    - pctxt
    - comp
    - resultSeq
    - toBool
    argTypes:
    - xmlXPathParserContextPtr
    - xmlPatternPtr
    - xmlXPathObjectPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11453
      start: 11230
    functionDepth: 6
    functionLinenumber: 11230
    functionLinenumberEnd: 11453
    functionName: xmlXPathRunStreamEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathPErrMemory
    - xmlPatternMaxDepth
    - xmlPatternMinDepth
    - xmlStreamPush
    - xmlStreamWantsAnyNode
    - xmlPatternFromRoot
    - xmlXPathErr
    - xmlStreamPushNode
    - xmlXPathNodeSetAddUnique
    - xmlXPathCacheNewNodeSet
    - xmlPatternGetStreamCtxt
    - xmlStreamPop
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlXPathRunStreamEval(xmlXPathParserContextPtr pctxt, xmlPatternPtr
      comp,\n\t\t      xmlXPathObjectPtr *resultSeq, int toBool)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:11479,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11481,1
    - Dst: xmlXPathRunStreamEval
      Src: /src/libxml2/xpath.c:11496,1
    - Dst: xmlXPathRunStreamEval
      Src: /src/libxml2/xpath.c:11505,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/xpath.c:11508,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:11512,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:11522,1
    - Dst: xmlXPathCompOpEvalToBoolean
      Src: /src/libxml2/xpath.c:11527,1
    - Dst: xmlXPathCompOpEval
      Src: /src/libxml2/xpath.c:11530,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - ctxt
    - toBool
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11534
      start: 11462
    functionDepth: 12
    functionLinenumber: 11462
    functionLinenumberEnd: 11534
    functionName: xmlXPathRunEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompOpEval
    - xmlMalloc
    - xmlXPathPErrMemory
    - xmlXPathCompOpEvalToBoolean
    - xmlXPathValuePush
    - xmlXPathErr
    - xmlXPathRunStreamEval
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: int xmlXPathRunEval(xmlXPathParserContextPtr ctxt, int toBool)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xpath.c:11571,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - res
    argTypes:
    - xmlXPathContext*
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11576
      start: 11556
    functionDepth: 1
    functionLinenumber: 11556
    functionLinenumberEnd: 11576
    functionName: xmlXPathEvalPredicate
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlXPathEvalPredicate(xmlXPathContext *ctxt, xmlXPathObject *res)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/xpath.c:11602,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - res
    argTypes:
    - xmlXPathParserContext*
    - xmlXPathObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11617
      start: 11592
    functionDepth: 2
    functionLinenumber: 11592
    functionLinenumberEnd: 11617
    functionName: xmlXPathEvaluatePredicateResult
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathIsNaN
    linkageType: ''
    returnType: int
    signature: "int xmlXPathEvaluatePredicateResult(xmlXPathParserContext *ctxt,\n
      \                               xmlXPathObject *res)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrchr
      Src: /src/libxml2/xpath.c:11640,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xpath.c:11640,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xpath.c:11641,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xpath.c:11654,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xpath.c:11662,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:11664,1
    - Dst: xmlPatternCompileSafe
      Src: /src/libxml2/xpath.c:11677,1
    - Dst: xmlFree
      Src: /src/libxml2/xpath.c:11680,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:11683,1
    - Dst: xmlPatternStreamable
      Src: /src/libxml2/xpath.c:11686,1
    - Dst: xmlXPathNewCompExpr
      Src: /src/libxml2/xpath.c:11687,1
    - Dst: xmlXPathErrMemory
      Src: /src/libxml2/xpath.c:11689,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xpath.c:11690,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xpath.c:11696,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xpath.c:11699,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11702
      start: 11627
    functionDepth: 6
    functionLinenumber: 11627
    functionLinenumberEnd: 11702
    functionName: xmlXPathTryStreamCompile
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFreePattern
    - xmlPatternStreamable
    - xmlFree
    - xmlDictReference
    - xmlMalloc
    - xmlXPathErrMemory
    - xmlXPathNewCompExpr
    - xmlStrchr
    - xmlPatternCompileSafe
    linkageType: ''
    returnType: xmlXPathCompExprPtr
    signature: xmlXPathCompExprPtr xmlXPathTryStreamCompile(xmlXPathContextPtr ctxt,
      const xmlChar *str)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathOptimizeExpression
      Src: /src/libxml2/xpath.c:11774,1
    - Dst: xmlXPathOptimizeExpression
      Src: /src/libxml2/xpath.c:11776,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 33
    argCount: 2
    argNames:
    - pctxt
    - op
    argTypes:
    - xmlXPathParserContextPtr
    - xmlXPathStepOpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11779
      start: 11705
    functionDepth: 1
    functionLinenumber: 11705
    functionLinenumberEnd: 11779
    functionName: xmlXPathOptimizeExpression
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathOptimizeExpression
    linkageType: ''
    returnType: void
    signature: "void xmlXPathOptimizeExpression(xmlXPathParserContextPtr pctxt,\n
      \                          xmlXPathStepOpPtr op)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathTryStreamCompile
      Src: /src/libxml2/xpath.c:11800,1
    - Dst: xmlInitParser
      Src: /src/libxml2/xpath.c:11805,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/xpath.c:11811,1
    - Dst: xmlXPathNewParserContext
      Src: /src/libxml2/xpath.c:11817,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xpath.c:11820,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:11825,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/xpath.c:11830,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xpath.c:11832,1
    - Dst: xmlXPatherror
      Src: /src/libxml2/xpath.c:11843,1
    - Dst: xmlXPathOptimizeExpression
      Src: /src/libxml2/xpath.c:11850,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/xpath.c:11856,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xpath.c:11858,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xpath.c:11861,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlXPathContext*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11864
      start: 11789
    functionDepth: 18
    functionLinenumber: 11789
    functionLinenumberEnd: 11864
    functionName: xmlXPathCtxtCompile
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 10
    functionsReached:
    - xmlStrdup
    - xmlXPathFreeContext
    - xmlXPathCompileExpr
    - xmlXPathFreeParserContext
    - xmlXPathNewContext
    - xmlXPathTryStreamCompile
    - xmlXPatherror
    - xmlXPathOptimizeExpression
    - xmlInitParser
    - xmlXPathNewParserContext
    linkageType: ''
    returnType: xmlXPathCompExpr
    signature: 'xmlXPathCompExpr *

      xmlXPathCtxtCompile(xmlXPathContext *ctxt, const xmlChar *str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/xpath.c:11875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11876
      start: 11873
    functionDepth: 19
    functionLinenumber: 11873
    functionLinenumberEnd: 11876
    functionName: xmlXPathCompile
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathCtxtCompile
    linkageType: ''
    returnType: xmlXPathCompExpr
    signature: 'xmlXPathCompExpr *

      xmlXPathCompile(const xmlChar *str)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xpath.c:11901,1
    - Dst: xmlResetError
      Src: /src/libxml2/xpath.c:11903,1
    - Dst: xmlXPathCompParserContext
      Src: /src/libxml2/xpath.c:11905,1
    - Dst: xmlXPathRunEval
      Src: /src/libxml2/xpath.c:11908,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:11912,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:11914,1
    - Dst: xmlXPathReleaseObject
      Src: /src/libxml2/xpath.c:11920,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/xpath.c:11923,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - comp
    - ctxt
    - resObjPtr
    - toBool
    argTypes:
    - xmlXPathCompExprPtr
    - xmlXPathContextPtr
    - xmlXPathObjectPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11926
      start: 11889
    functionDepth: 13
    functionLinenumber: 11889
    functionLinenumberEnd: 11926
    functionName: xmlXPathCompiledEvalInternal
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeParserContext
    - xmlXPathValuePop
    - xmlResetError
    - xmlXPathErr
    - xmlXPathCompParserContext
    - xmlInitParser
    - xmlXPathRunEval
    - xmlXPathReleaseObject
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompiledEvalInternal(xmlXPathCompExprPtr comp,\n\t\t\t
      \    xmlXPathContextPtr ctxt,\n\t\t\t     xmlXPathObjectPtr *resObjPtr,\n\t\t\t
      \    int toBool)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEvalInternal
      Src: /src/libxml2/xpath.c:11941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - comp
    - ctx
    argTypes:
    - xmlXPathCompExpr*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11943
      start: 11936
    functionDepth: 14
    functionLinenumber: 11936
    functionLinenumberEnd: 11943
    functionName: xmlXPathCompiledEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 13
    functionsReached:
    - xmlXPathCompiledEvalInternal
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathCompiledEval(xmlXPathCompExpr *comp, xmlXPathContext *ctx)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEvalInternal
      Src: /src/libxml2/xpath.c:11958,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - comp
    - ctxt
    argTypes:
    - xmlXPathCompExpr*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11959
      start: 11954
    functionDepth: 14
    functionLinenumber: 11954
    functionLinenumberEnd: 11959
    functionName: xmlXPathCompiledEvalToBoolean
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCompiledEvalInternal
    linkageType: ''
    returnType: int
    signature: "int xmlXPathCompiledEvalToBoolean(xmlXPathCompExpr *comp,\n\t\t\t
      \     xmlXPathContext *ctxt)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathTryStreamCompile
      Src: /src/libxml2/xpath.c:11982,1
    - Dst: xmlXPathPErrMemory
      Src: /src/libxml2/xpath.c:11985,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/xpath.c:11990,1
    - Dst: xmlXPathCompileExpr
      Src: /src/libxml2/xpath.c:11997,1
    - Dst: XP_ERROR
      Src: /src/libxml2/xpath.c:12004,1
    - Dst: xmlXPathOptimizeExpression
      Src: /src/libxml2/xpath.c:12009,1
    - Dst: xmlXPathRunEval
      Src: /src/libxml2/xpath.c:12016,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12017
      start: 11969
    functionDepth: 18
    functionLinenumber: 11969
    functionLinenumberEnd: 12017
    functionName: xmlXPathEvalExpr
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 2
    functionsReached:
    - xmlXPathCompileExpr
    - xmlXPathFreeCompExpr
    - xmlXPathTryStreamCompile
    - xmlXPathPErrMemory
    - xmlXPathOptimizeExpression
    - xmlXPathRunEval
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlXPathEvalExpr(xmlXPathParserContext *ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xpath.c:12035,1
    - Dst: xmlResetError
      Src: /src/libxml2/xpath.c:12037,1
    - Dst: xmlXPathNewParserContext
      Src: /src/libxml2/xpath.c:12039,1
    - Dst: xmlXPathEvalExpr
      Src: /src/libxml2/xpath.c:12042,1
    - Dst: xmlXPathErr
      Src: /src/libxml2/xpath.c:12047,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/xpath.c:12050,1
    - Dst: xmlXPathFreeParserContext
      Src: /src/libxml2/xpath.c:12053,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - str
    - ctx
    argTypes:
    - xmlChar*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12055
      start: 12027
    functionDepth: 19
    functionLinenumber: 12027
    functionLinenumberEnd: 12055
    functionName: xmlXPathEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 5
    functionsReached:
    - xmlXPathFreeParserContext
    - xmlXPathValuePop
    - xmlResetError
    - xmlXPathErr
    - xmlInitParser
    - xmlXPathEvalExpr
    - xmlXPathNewParserContext
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathEval(const xmlChar *str, xmlXPathContext *ctx)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - node
    - ctx
    argTypes:
    - xmlNode*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12075
      start: 12065
    functionDepth: 0
    functionLinenumber: 12065
    functionLinenumberEnd: 12075
    functionName: xmlXPathSetContextNode
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXPathSetContextNode(xmlNode *node, xmlXPathContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathSetContextNode
      Src: /src/libxml2/xpath.c:12091,1
    - Dst: xmlXPathEval
      Src: /src/libxml2/xpath.c:12093,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - node
    - str
    - ctx
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12094
      start: 12087
    functionDepth: 20
    functionLinenumber: 12087
    functionLinenumberEnd: 12094
    functionName: xmlXPathNodeEval
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 1
    functionsReached:
    - xmlXPathSetContextNode
    - xmlXPathEval
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathNodeEval(xmlNode *node, const xmlChar *str, xmlXPathContext *ctx)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathEval
      Src: /src/libxml2/xpath.c:12106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - ctxt
    argTypes:
    - xmlChar*
    - xmlXPathContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12107
      start: 12104
    functionDepth: 20
    functionLinenumber: 12104
    functionLinenumberEnd: 12107
    functionName: xmlXPathEvalExpression
    functionSourceFile: /src/libxml2/xpath.c
    functionUses: 3
    functionsReached:
    - xmlXPathEval
    linkageType: ''
    returnType: xmlXPathObject
    signature: 'xmlXPathObject *

      xmlXPathEvalExpression(const xmlChar *str, xmlXPathContext *ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/runxmlconf.c:50,1
    - Dst: S_ISREG
      Src: /src/libxml2/runxmlconf.c:57,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 62
    functionName: checkTestFile
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 5
    functionsReached:
    - stat
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int checkTestFile(const char *filename)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/runxmlconf.c:67,1
    - Dst: snprintf
      Src: /src/libxml2/runxmlconf.c:70,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runxmlconf.c:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dir
    - path
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: composeDir
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - snprintf
    linkageType: ''
    returnType: xmlChar
    signature: xmlChar *composeDir(const xmlChar *dir, const xmlChar *path)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:97,1
    - Dst: va_start
      Src: /src/libxml2/runxmlconf.c:98,1
    - Dst: vfprintf
      Src: /src/libxml2/runxmlconf.c:99,1
    - Dst: va_end
      Src: /src/libxml2/runxmlconf.c:100,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:101,1
    - Dst: va_start
      Src: /src/libxml2/runxmlconf.c:105,1
    - Dst: vfprintf
      Src: /src/libxml2/runxmlconf.c:106,1
    - Dst: va_end
      Src: /src/libxml2/runxmlconf.c:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - msg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 109
    functionName: test_log
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void test_log(const char *msg, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxml2/runxmlconf.c:117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - error
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 133
    functionName: testErrorHandler
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 10
    functionsReached:
    - snprintf
    linkageType: ''
    returnType: void
    signature: void testErrorHandler(void *userData ATTRIBUTE_UNUSED, const xmlError
      *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxml2/runxmlconf.c:139,1
    - Dst: xmlInitParser
      Src: /src/libxml2/runxmlconf.c:140,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/runxmlconf.c:142,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/runxmlconf.c:143,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/runxmlconf.c:145,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxml2/runxmlconf.c:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 137
    functionDepth: 5
    functionLinenumber: 137
    functionLinenumberEnd: 156
    functionName: initializeLibxml2
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 4
    functionsReached:
    - xmlCatalogSetDefaults
    - xmlMemSetup
    - xmlXPathNewContext
    - xmlXPathContextSetCache
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runxmlconf.c:170,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:172,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runxmlconf.c:176,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runxmlconf.c:177,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:179,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:186,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runxmlconf.c:191,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runxmlconf.c:193,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - id
    - filename
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 164
    functionDepth: 14
    functionLinenumber: 164
    functionLinenumberEnd: 195
    functionName: xmlconfTestInvalid
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlconfTestInvalid(const char *id, const char *filename, int options)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runxmlconf.c:203,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:205,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runxmlconf.c:209,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runxmlconf.c:210,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:212,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:219,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runxmlconf.c:224,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runxmlconf.c:226,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - id
    - filename
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 197
    functionDepth: 14
    functionLinenumber: 197
    functionLinenumberEnd: 228
    functionName: xmlconfTestValid
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlconfTestValid(const char *id, const char *filename, int options)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runxmlconf.c:236,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runxmlconf.c:237,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runxmlconf.c:242,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:244,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/runxmlconf.c:249,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:253,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runxmlconf.c:258,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runxmlconf.c:260,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - id
    - filename
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 230
    functionDepth: 14
    functionLinenumber: 230
    functionLinenumberEnd: 262
    functionName: xmlconfTestNotNSWF
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - xmlGetLastError
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlconfTestNotNSWF(const char *id, const char *filename, int options)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/runxmlconf.c:270,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/runxmlconf.c:271,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/runxmlconf.c:272,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:274,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runxmlconf.c:277,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/runxmlconf.c:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - id
    - filename
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 264
    functionDepth: 14
    functionLinenumber: 264
    functionLinenumberEnd: 282
    functionName: xmlconfTestNotWF
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlCtxtSetErrorHandler
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - xmlFreeParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlconfTestNotWF(const char *id, const char *filename, int options)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:304,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:306,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runxmlconf.c:306,1
    - Dst: strcmp
      Src: /src/libxml2/runxmlconf.c:310,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:311,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:317,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:319,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:322,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:324,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/runxmlconf.c:327,1
    - Dst: composeDir
      Src: /src/libxml2/runxmlconf.c:328,1
    - Dst: checkTestFile
      Src: /src/libxml2/runxmlconf.c:329,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:330,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:335,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:337,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:338,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:342,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:344,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:345,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:346,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:347,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:348,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:349,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:356,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:357,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:361,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:366,1
    - Dst: xmlStrchr
      Src: /src/libxml2/runxmlconf.c:367,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runxmlconf.c:375,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runxmlconf.c:377,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:379,1
    - Dst: xmlconfTestNotWF
      Src: /src/libxml2/runxmlconf.c:381,1
    - Dst: xmlconfTestNotNSWF
      Src: /src/libxml2/runxmlconf.c:383,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:384,1
    - Dst: xmlconfTestValid
      Src: /src/libxml2/runxmlconf.c:386,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:387,1
    - Dst: xmlconfTestInvalid
      Src: /src/libxml2/runxmlconf.c:389,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:390,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:391,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:396,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runxmlconf.c:404,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runxmlconf.c:405,1
    - Dst: test_log
      Src: /src/libxml2/runxmlconf.c:407,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:415,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:417,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:419,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:421,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:423,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:425,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:427,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:429,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:431,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 127
    argCount: 2
    argNames:
    - doc
    - cur
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 284
    functionDepth: 15
    functionLinenumber: 284
    functionLinenumberEnd: 433
    functionName: xmlconfTestItem
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlconfTestNotNSWF
    - xmlGetProp
    - xmlNodeGetBase
    - xmlStrEqual
    - xmlconfTestValid
    - xmlFree
    - composeDir
    - xmlResetLastError
    - xmlconfTestInvalid
    - strcmp
    - checkTestFile
    - xmlGetLineNo
    - xmlconfTestNotWF
    - xmlMemUsed
    - xmlStrchr
    linkageType: ''
    returnType: int
    signature: int xmlconfTestItem(xmlDocPtr doc, xmlNodePtr cur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:443,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:447,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:448,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:455,1
    - Dst: xmlconfTestCases
      Src: /src/libxml2/runxmlconf.c:456,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:457,1
    - Dst: xmlconfTestItem
      Src: /src/libxml2/runxmlconf.c:458,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:462,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:469,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - doc
    - cur
    - level
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 435
    functionDepth: 16
    functionLinenumber: 435
    functionLinenumberEnd: 472
    functionName: xmlconfTestCases
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 1
    functionsReached:
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlconfTestCases
    - xmlconfTestItem
    - printf
    - fprintf
    linkageType: ''
    returnType: int
    signature: int xmlconfTestCases(xmlDocPtr doc, xmlNodePtr cur, int level)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/runxmlconf.c:479,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:481,1
    - Dst: xmlFree
      Src: /src/libxml2/runxmlconf.c:482,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:484,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:489,1
    - Dst: xmlconfTestCases
      Src: /src/libxml2/runxmlconf.c:490,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - doc
    - cur
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 474
    functionDepth: 17
    functionLinenumber: 474
    functionLinenumberEnd: 498
    functionName: xmlconfTestSuite
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - xmlconfTestCases
    - printf
    - fprintf
    linkageType: ''
    returnType: int
    signature: int xmlconfTestSuite(xmlDocPtr doc, xmlNodePtr cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:502,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:503,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:504,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:505,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 506
    functionName: xmlconfInfo
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlconfInfo(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxml2/runxmlconf.c:515,1
    - Dst: checkTestFile
      Src: /src/libxml2/runxmlconf.c:517,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:518,1
    - Dst: xmlconfInfo
      Src: /src/libxml2/runxmlconf.c:519,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runxmlconf.c:522,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:524,1
    - Dst: xmlconfInfo
      Src: /src/libxml2/runxmlconf.c:525,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runxmlconf.c:529,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runxmlconf.c:530,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:531,1
    - Dst: xmlconfInfo
      Src: /src/libxml2/runxmlconf.c:532,1
    - Dst: xmlconfTestSuite
      Src: /src/libxml2/runxmlconf.c:535,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runxmlconf.c:537,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - dir
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 508
    functionDepth: 18
    functionLinenumber: 508
    functionLinenumberEnd: 539
    functionName: xmlconfTest
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - checkTestFile
    - xmlconfInfo
    - xmlReadFile
    - xmlconfTestSuite
    - snprintf
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlconfTest(const char *dir)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/runxmlconf.c:554,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:556,1
    - Dst: initializeLibxml2
      Src: /src/libxml2/runxmlconf.c:560,1
    - Dst: strcmp
      Src: /src/libxml2/runxmlconf.c:563,1
    - Dst: strcmp
      Src: /src/libxml2/runxmlconf.c:565,1
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:569,1
    - Dst: xmlconfTest
      Src: /src/libxml2/runxmlconf.c:577,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:579,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:581,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:587,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:591,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:593,1
    - Dst: printf
      Src: /src/libxml2/runxmlconf.c:595,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/runxmlconf.c:599,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/runxmlconf.c:600,1
    - Dst: fclose
      Src: /src/libxml2/runxmlconf.c:603,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 547
    functionDepth: 19
    functionLinenumber: 547
    functionLinenumberEnd: 605
    functionName: main
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlCleanupParser
    - initializeLibxml2
    - strcmp
    - fopen
    - xmlconfTest
    - fclose
    - printf
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runxmlconf.c:610,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 612
    functionName: main
    functionSourceFile: /src/libxml2/runxmlconf.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/runsuite.c:47,1
    - Dst: S_ISREG
      Src: /src/libxml2/runsuite.c:54,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 59
    functionName: checkTestFile
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 7
    functionsReached:
    - stat
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int checkTestFile(const char *filename)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:84,1
    - Dst: va_start
      Src: /src/libxml2/runsuite.c:85,1
    - Dst: vfprintf
      Src: /src/libxml2/runsuite.c:86,1
    - Dst: va_end
      Src: /src/libxml2/runsuite.c:87,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:88,1
    - Dst: va_start
      Src: /src/libxml2/runsuite.c:92,1
    - Dst: vfprintf
      Src: /src/libxml2/runsuite.c:93,1
    - Dst: va_end
      Src: /src/libxml2/runsuite.c:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - msg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 96
    functionName: test_log
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 5
    functionsReached:
    - vfprintf
    - fprintf
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void test_log(const char *msg, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/runsuite.c:105,1
    - Dst: vsnprintf
      Src: /src/libxml2/runsuite.c:106,1
    - Dst: va_end
      Src: /src/libxml2/runsuite.c:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 118
    functionName: testErrorHandler
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 10
    functionsReached:
    - va_end
    - vsnprintf
    - va_start
    linkageType: ''
    returnType: void
    signature: void testErrorHandler(void *ctx  ATTRIBUTE_UNUSED, const char *msg,
      ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxml2/runsuite.c:124,1
    - Dst: xmlInitParser
      Src: /src/libxml2/runsuite.c:125,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/runsuite.c:126,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxml2/runsuite.c:136,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/runsuite.c:138,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/runsuite.c:139,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/runsuite.c:141,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/runsuite.c:143,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/runsuite.c:144,1
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/runsuite.c:147,1
    - Dst: xmlRelaxNGInitTypes
      Src: /src/libxml2/runsuite.c:150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 122
    functionDepth: 6
    functionLinenumber: 122
    functionLinenumberEnd: 152
    functionName: initializeLibxml2
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 5
    functionsReached:
    - xmlCatalogSetDefaults
    - xmlSetGenericErrorFunc
    - xmlXPathRegisterNs
    - xmlSchemaInitTypes
    - xmlMemSetup
    - xmlXPathNewContext
    - xmlRelaxNGInitTypes
    - xmlXPathContextSetCache
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: void
    signature: void initializeLibxml2(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompile
      Src: /src/libxml2/runsuite.c:164,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:166,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/runsuite.c:169,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/runsuite.c:170,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/runsuite.c:178,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - cur
    - xpath
    argTypes:
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 154
    functionDepth: 20
    functionLinenumber: 154
    functionLinenumberEnd: 180
    functionName: getNext
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xmlXPathCompile
    - xmlXPathFreeCompExpr
    - fprintf
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr getNext(xmlNodePtr cur, const char *xpath)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompile
      Src: /src/libxml2/runsuite.c:192,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:194,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/runsuite.c:197,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/runsuite.c:198,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/runsuite.c:205,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - cur
    - xpath
    argTypes:
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 182
    functionDepth: 20
    functionLinenumber: 182
    functionLinenumberEnd: 207
    functionName: getString
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xmlXPathCompile
    - xmlXPathFreeCompExpr
    - fprintf
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      getString(xmlNodePtr cur, const char *xpath)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:229,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:231,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 234
    functionName: resetEntities
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void resetEntities(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - name
    - content
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 244
    functionName: addEntity
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int addEntity(char *name, char *content)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/runsuite.c:255,1
    - Dst: xmlNewInputFromString
      Src: /src/libxml2/runsuite.c:256,1
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/runsuite.c:263,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - URL
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - out
    argTypes:
    - void*
    - char*
    - char*
    - xmlResourceType
    - xmlParserInputFlags
    - xmlParserInputPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 246
    functionDepth: 6
    functionLinenumber: 246
    functionLinenumberEnd: 264
    functionName: testResourceLoader
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlNewInputFromString
    - xmlNewInputFromUrl
    - strcmp
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors testResourceLoader(void *vctxt ATTRIBUTE_UNUSED, const
      char *URL,\n                   const char *ID ATTRIBUTE_UNUSED,\n                   xmlResourceType
      type ATTRIBUTE_UNUSED,\n                   xmlParserInputFlags flags ATTRIBUTE_UNUSED,\n
      \                  xmlParserInputPtr *out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:268,1
    - Dst: exit
      Src: /src/libxml2/runsuite.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionName: fatalError
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 14
    functionsReached:
    - fprintf
    - exit
    linkageType: ''
    returnType: int
    signature: int fatalError(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:280,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:285,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:287,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:288,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:292,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/runsuite.c:296,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:298,1
    - Dst: fatalError
      Src: /src/libxml2/runsuite.c:299,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxml2/runsuite.c:301,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:302,1
    - Dst: xmlRelaxNGNewMemParserCtxt
      Src: /src/libxml2/runsuite.c:303,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/runsuite.c:304,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/runsuite.c:304,1
    - Dst: xmlRelaxNGSetParserErrors
      Src: /src/libxml2/runsuite.c:305,1
    - Dst: xmlRelaxNGSetResourceLoader
      Src: /src/libxml2/runsuite.c:307,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/runsuite.c:308,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/runsuite.c:309,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:311,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:312,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runsuite.c:319,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runsuite.c:321,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:322,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:323,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:324,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:325,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:325,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 272
    functionDepth: 21
    functionLinenumber: 272
    functionLinenumberEnd: 329
    functionName: xsdIncorrectTestCase
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlRelaxNGNewMemParserCtxt
    - getNext
    - xmlBufferContent
    - fatalError
    - xmlRelaxNGSetParserErrors
    - xmlRelaxNGFree
    - xmlRelaxNGSetResourceLoader
    - xmlBufferSetAllocationScheme
    - xmlNodeDump
    - fprintf
    - xmlResetLastError
    - xmlGetLineNo
    - xmlRelaxNGParse
    - test_log
    - xmlRelaxNGFreeParserCtxt
    - xmlBufferLength
    - xmlBufferCreate
    - xmlMemUsed
    linkageType: ''
    returnType: int
    signature: int xsdIncorrectTestCase(xmlNodePtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/runsuite.c:334,1
    - Dst: snprintf
      Src: /src/libxml2/runsuite.c:337,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runsuite.c:338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dir
    - path
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: composeDir
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - snprintf
    linkageType: ''
    returnType: xmlChar
    signature: xmlChar *composeDir(const xmlChar *dir, const xmlChar *path)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/runsuite.c:347,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:349,1
    - Dst: fatalError
      Src: /src/libxml2/runsuite.c:350,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxml2/runsuite.c:352,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:353,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:356,1
    - Dst: xmlBufferEmpty
      Src: /src/libxml2/runsuite.c:358,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:359,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:360,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runsuite.c:361,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/runsuite.c:361,1
    - Dst: composeDir
      Src: /src/libxml2/runsuite.c:363,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:364,1
    - Dst: addEntity
      Src: /src/libxml2/runsuite.c:365,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:367,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:368,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:371,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runsuite.c:374,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - tst
    - base
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 341
    functionDepth: 21
    functionLinenumber: 341
    functionLinenumberEnd: 375
    functionName: installResources
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlBufferContent
    - fatalError
    - xmlBufferFree
    - xmlFree
    - xmlBufferEmpty
    - composeDir
    - addEntity
    - getNext
    - xmlBufferCreate
    - xmlBufferSetAllocationScheme
    - xmlNodeDump
    - getString
    - fprintf
    linkageType: ''
    returnType: void
    signature: void installResources(xmlNodePtr tst, const xmlChar *base)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getString
      Src: /src/libxml2/runsuite.c:382,1
    - Dst: composeDir
      Src: /src/libxml2/runsuite.c:385,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:386,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:391,1
    - Dst: installResources
      Src: /src/libxml2/runsuite.c:393,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:395,1
    - Dst: installDirs
      Src: /src/libxml2/runsuite.c:397,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:398,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:400,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - tst
    - base
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 377
    functionDepth: 22
    functionLinenumber: 377
    functionLinenumberEnd: 401
    functionName: installDirs
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 1
    functionsReached:
    - installDirs
    - xmlFree
    - composeDir
    - installResources
    - getString
    - getNext
    linkageType: ''
    returnType: void
    signature: void installDirs(xmlNodePtr tst, const xmlChar *base)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: resetEntities
      Src: /src/libxml2/runsuite.c:414,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:417,1
    - Dst: installDirs
      Src: /src/libxml2/runsuite.c:419,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:421,1
    - Dst: installResources
      Src: /src/libxml2/runsuite.c:423,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:426,1
    - Dst: xsdIncorrectTestCase
      Src: /src/libxml2/runsuite.c:428,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:431,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:433,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:434,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:438,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/runsuite.c:442,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:444,1
    - Dst: fatalError
      Src: /src/libxml2/runsuite.c:445,1
    - Dst: xmlBufferSetAllocationScheme
      Src: /src/libxml2/runsuite.c:447,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:448,1
    - Dst: xmlRelaxNGNewMemParserCtxt
      Src: /src/libxml2/runsuite.c:449,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/runsuite.c:450,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/runsuite.c:450,1
    - Dst: xmlRelaxNGSetParserErrors
      Src: /src/libxml2/runsuite.c:451,1
    - Dst: xmlRelaxNGSetResourceLoader
      Src: /src/libxml2/runsuite.c:453,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/runsuite.c:454,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/runsuite.c:455,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:458,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:459,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:467,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runsuite.c:469,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:470,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:472,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:473,1
    - Dst: xmlBufferEmpty
      Src: /src/libxml2/runsuite.c:476,1
    - Dst: xmlBufferAdd
      Src: /src/libxml2/runsuite.c:478,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:479,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:484,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/runsuite.c:485,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/runsuite.c:485,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/runsuite.c:486,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:488,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:489,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/runsuite.c:493,1
    - Dst: xmlRelaxNGSetValidErrors
      Src: /src/libxml2/runsuite.c:494,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/runsuite.c:496,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/runsuite.c:497,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:499,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:500,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:503,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:504,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:507,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:509,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:510,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:511,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:512,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:512,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:517,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:518,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:523,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:525,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:527,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:528,1
    - Dst: xmlBufferEmpty
      Src: /src/libxml2/runsuite.c:531,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/runsuite.c:532,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:537,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/runsuite.c:538,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/runsuite.c:538,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/runsuite.c:539,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:541,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:542,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/runsuite.c:546,1
    - Dst: xmlRelaxNGSetValidErrors
      Src: /src/libxml2/runsuite.c:547,1
    - Dst: xmlRelaxNGValidateDoc
      Src: /src/libxml2/runsuite.c:549,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/runsuite.c:550,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:552,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:553,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:556,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:557,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:560,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:562,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:563,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:564,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:565,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:565,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:569,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/runsuite.c:574,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runsuite.c:576,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:577,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:578,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:579,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:580,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:580,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 132
    argCount: 1
    argNames:
    - tst
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 403
    functionDepth: 23
    functionLinenumber: 403
    functionLinenumberEnd: 584
    functionName: xsdTestCase
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlRelaxNGNewMemParserCtxt
    - xmlGetProp
    - installDirs
    - xmlBufferAdd
    - xmlReadMemory
    - getNext
    - xsdIncorrectTestCase
    - resetEntities
    - xmlBufferContent
    - fatalError
    - xmlRelaxNGSetParserErrors
    - xmlFree
    - xmlRelaxNGFree
    - xmlRelaxNGSetResourceLoader
    - installResources
    - xmlBufferSetAllocationScheme
    - xmlNodeDump
    - fprintf
    - xmlRelaxNGValidateDoc
    - xmlResetLastError
    - xmlGetLineNo
    - xmlRelaxNGParse
    - xmlRelaxNGNewValidCtxt
    - test_log
    - xmlRelaxNGFreeParserCtxt
    - xmlRelaxNGFreeValidCtxt
    - xmlBufferLength
    - xmlBufferCreate
    - xmlBufferEmpty
    - xmlRelaxNGSetValidErrors
    - xmlMemUsed
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xsdTestCase(xmlNodePtr tst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getString
      Src: /src/libxml2/runsuite.c:589,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:592,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:593,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:596,1
    - Dst: xsdTestCase
      Src: /src/libxml2/runsuite.c:598,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:599,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 586
    functionDepth: 24
    functionLinenumber: 586
    functionLinenumberEnd: 603
    functionName: xsdTestSuite
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - printf
    - getString
    - getNext
    - xsdTestCase
    linkageType: ''
    returnType: int
    signature: int xsdTestSuite(xmlNodePtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:612,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:614,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:617,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runsuite.c:619,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:620,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:621,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:627,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:628,1
    - Dst: xsdTestSuite
      Src: /src/libxml2/runsuite.c:633,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:634,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:639,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 605
    functionDepth: 25
    functionLinenumber: 605
    functionLinenumberEnd: 641
    functionName: xsdTest
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - getNext
    - xmlReadFile
    - printf
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xsdTestSuite
    linkageType: ''
    returnType: int
    signature: int xsdTest(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getString
      Src: /src/libxml2/runsuite.c:646,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:649,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:650,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:652,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:654,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:655,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:659,1
    - Dst: xsdTestSuite
      Src: /src/libxml2/runsuite.c:661,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:662,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 643
    functionDepth: 25
    functionLinenumber: 643
    functionLinenumberEnd: 666
    functionName: rngTestSuite
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - printf
    - getString
    - getNext
    - xsdTestSuite
    linkageType: ''
    returnType: int
    signature: int rngTestSuite(xmlNodePtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:675,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:677,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:680,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runsuite.c:682,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:683,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:684,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:689,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:690,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:691,1
    - Dst: rngTestSuite
      Src: /src/libxml2/runsuite.c:696,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:697,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:702,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 668
    functionDepth: 26
    functionLinenumber: 668
    functionLinenumberEnd: 704
    functionName: rngTest1
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - rngTestSuite
    - getNext
    - xmlReadFile
    - printf
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int rngTest1(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:713,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:715,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:718,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runsuite.c:720,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:721,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:722,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:727,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:728,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:729,1
    - Dst: xsdTestSuite
      Src: /src/libxml2/runsuite.c:734,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:735,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:740,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 706
    functionDepth: 25
    functionLinenumber: 706
    functionLinenumberEnd: 742
    functionName: rngTest2
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - getNext
    - xmlReadFile
    - printf
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xsdTestSuite
    linkageType: ''
    returnType: int
    signature: int rngTest2(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/runsuite.c:747,1
    - Dst: xmlRelaxNGValidateFullElement
      Src: /src/libxml2/runsuite.c:751,1
    - Dst: xmlRelaxNGValidCtxtClearErrors
      Src: /src/libxml2/runsuite.c:756,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:757,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/runsuite.c:764,1
    - Dst: xmlNextElementSibling
      Src: /src/libxml2/runsuite.c:764,1
    - Dst: tryValidateElement
      Src: /src/libxml2/runsuite.c:769,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/runsuite.c:774,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - ctx
    - doc
    - elem
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 745
    functionDepth: 6
    functionLinenumber: 745
    functionLinenumberEnd: 783
    functionName: tryValidateElement
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 1
    functionsReached:
    - tryValidateElement
    - xmlRelaxNGValidatePopElement
    - xmlResetLastError
    - xmlRelaxNGValidateFullElement
    - xmlRelaxNGValidatePushElement
    - xmlRelaxNGValidCtxtClearErrors
    - xmlFirstElementChild
    - xmlNextElementSibling
    linkageType: ''
    returnType: int
    signature: int tryValidateElement(xmlRelaxNGValidCtxtPtr ctx, xmlDocPtr doc, xmlNodePtr
      elem)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:803,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:805,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:807,1
    - Dst: xmlRelaxNGNewDocParserCtxt
      Src: /src/libxml2/runsuite.c:811,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:813,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:814,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:818,1
    - Dst: xmlRelaxNGParse
      Src: /src/libxml2/runsuite.c:819,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/runsuite.c:821,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:822,1
    - Dst: xmlRelaxNGFreeParserCtxt
      Src: /src/libxml2/runsuite.c:826,1
    - Dst: xmlRelaxNGNewValidCtxt
      Src: /src/libxml2/runsuite.c:827,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runsuite.c:829,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:830,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:834,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/runsuite.c:836,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runsuite.c:837,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:838,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runsuite.c:842,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:843,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:844,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/runsuite.c:849,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:850,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:851,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/runsuite.c:856,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:857,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:858,1
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/runsuite.c:864,1
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/runsuite.c:867,1
    - Dst: xmlRelaxNGValidatePushElement
      Src: /src/libxml2/runsuite.c:870,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/runsuite.c:874,1
    - Dst: xmlNextElementSibling
      Src: /src/libxml2/runsuite.c:874,1
    - Dst: tryValidateElement
      Src: /src/libxml2/runsuite.c:876,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:880,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/runsuite.c:889,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/runsuite.c:892,1
    - Dst: xmlRelaxNGValidatePopElement
      Src: /src/libxml2/runsuite.c:895,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:900,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:901,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/runsuite.c:902,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:903,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:912,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/runsuite.c:916,1
    - Dst: xmlRelaxNGFree
      Src: /src/libxml2/runsuite.c:917,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:918,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:920,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:921,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 114
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 785
    functionDepth: 19
    functionLinenumber: 785
    functionLinenumberEnd: 926
    functionName: rngTestStreaming
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlRelaxNGFreeParserCtxt
    - xmlRelaxNGFree
    - tryValidateElement
    - xmlNextElementSibling
    - xmlRelaxNGFreeValidCtxt
    - xmlRelaxNGValidatePopElement
    - xmlRelaxNGValidatePushElement
    - xmlStrcmp
    - xmlReadFile
    - xmlFirstElementChild
    - xmlRelaxNGNewDocParserCtxt
    - xmlRelaxNGParse
    - fprintf
    - xmlMemUsed
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlRelaxNGNewValidCtxt
    linkageType: ''
    returnType: int
    signature: int rngTestStreaming(void)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:947,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:949,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:950,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:953,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:954,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/runsuite.c:958,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:960,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:962,1
    - Dst: checkTestFile
      Src: /src/libxml2/runsuite.c:966,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:967,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:968,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:972,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:975,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:976,1
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:981,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:983,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/runsuite.c:989,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/runsuite.c:990,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/runsuite.c:991,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:993,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:995,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:999,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:1004,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1006,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1011,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1012,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1018,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1019,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1020,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/runsuite.c:1021,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:1022,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:1023,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:1024,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1025,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1026,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:1026,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 84
    argCount: 4
    argNames:
    - cur
    - schemas
    - spath
    - base
    argTypes:
    - xmlNodePtr
    - xmlSchemaPtr
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 937
    functionDepth: 21
    functionLinenumber: 937
    functionLinenumberEnd: 1030
    functionName: xstcTestInstance
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlStrEqual
    - xmlFree
    - xmlSchemaNewValidCtxt
    - xmlBuildURI
    - xmlSchemaSetValidErrors
    - xmlResetLastError
    - checkTestFile
    - xmlSchemaFreeValidCtxt
    - xmlGetLineNo
    - xmlReadFile
    - xmlSchemaValidateDoc
    - getString
    - fprintf
    - xmlMemUsed
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xstcTestInstance(xmlNodePtr cur, xmlSchemaPtr schemas,\n                 const
      xmlChar *spath, const char *base)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:1042,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:1044,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:1045,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1048,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1049,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/runsuite.c:1053,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1055,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1056,1
    - Dst: checkTestFile
      Src: /src/libxml2/runsuite.c:1060,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1061,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1062,1
    - Dst: getString
      Src: /src/libxml2/runsuite.c:1066,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1069,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1070,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:1075,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/runsuite.c:1077,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/runsuite.c:1078,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/runsuite.c:1080,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/runsuite.c:1081,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1083,1
    - Dst: strstr
      Src: /src/libxml2/runsuite.c:1088,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1089,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:1095,1
    - Dst: xstcTestInstance
      Src: /src/libxml2/runsuite.c:1098,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:1106,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:1109,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/runsuite.c:1111,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/runsuite.c:1112,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/runsuite.c:1114,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/runsuite.c:1115,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1117,1
    - Dst: strstr
      Src: /src/libxml2/runsuite.c:1122,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1124,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1130,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1131,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1137,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1138,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1139,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/runsuite.c:1140,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/runsuite.c:1141,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:1142,1
    - Dst: test_log
      Src: /src/libxml2/runsuite.c:1143,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/runsuite.c:1144,1
    - Dst: xmlMemUsed
      Src: /src/libxml2/runsuite.c:1144,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 99
    argCount: 2
    argNames:
    - cur
    - base
    argTypes:
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1032
    functionDepth: 22
    functionLinenumber: 1032
    functionLinenumberEnd: 1148
    functionName: xstcTestGroup
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - test_log
    - xmlSchemaSetParserErrors
    - xmlSchemaNewParserCtxt
    - xmlStrEqual
    - xmlSchemaFreeParserCtxt
    - xmlFree
    - xmlBuildURI
    - xmlResetLastError
    - xstcTestInstance
    - checkTestFile
    - strstr
    - xmlGetLineNo
    - getString
    - xmlSchemaFree
    - getNext
    - xmlMemUsed
    - xmlSchemaParse
    linkageType: ''
    returnType: int
    signature: int xstcTestGroup(xmlNodePtr cur, const char *base)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/runsuite.c:1158,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:1160,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/runsuite.c:1164,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:1165,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:1166,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runsuite.c:1169,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runsuite.c:1171,1
    - Dst: xmlGetProp
      Src: /src/libxml2/runsuite.c:1173,1
    - Dst: xmlStrdup
      Src: /src/libxml2/runsuite.c:1175,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1177,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1178,1
    - Dst: xmlFree
      Src: /src/libxml2/runsuite.c:1179,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:1181,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/runsuite.c:1182,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:1183,1
    - Dst: xstcTestGroup
      Src: /src/libxml2/runsuite.c:1188,1
    - Dst: getNext
      Src: /src/libxml2/runsuite.c:1189,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/runsuite.c:1193,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - metadata
    - base
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1150
    functionDepth: 23
    functionLinenumber: 1150
    functionLinenumberEnd: 1195
    functionName: xstcMetadata
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlGetProp
    - xmlStrEqual
    - xmlFree
    - getNext
    - xmlReadFile
    - printf
    - fprintf
    - xmlFreeDoc
    - xmlDocGetRootElement
    - xstcTestGroup
    linkageType: ''
    returnType: int
    signature: int xstcMetadata(const char *metadata, const char *base)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/runsuite.c:1212,1
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:1214,1
    - Dst: initializeLibxml2
      Src: /src/libxml2/runsuite.c:1218,1
    - Dst: strcmp
      Src: /src/libxml2/runsuite.c:1220,1
    - Dst: rngTestStreaming
      Src: /src/libxml2/runsuite.c:1224,1
    - Dst: xsdTest
      Src: /src/libxml2/runsuite.c:1230,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1232,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1237,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1240,1
    - Dst: rngTest1
      Src: /src/libxml2/runsuite.c:1248,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1250,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1252,1
    - Dst: rngTest2
      Src: /src/libxml2/runsuite.c:1260,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1262,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1264,1
    - Dst: xstcMetadata
      Src: /src/libxml2/runsuite.c:1276,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1279,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1282,1
    - Dst: xstcMetadata
      Src: /src/libxml2/runsuite.c:1294,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1297,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1300,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1306,1
    - Dst: xstcMetadata
      Src: /src/libxml2/runsuite.c:1315,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1318,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1321,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1327,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1334,1
    - Dst: printf
      Src: /src/libxml2/runsuite.c:1338,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/runsuite.c:1341,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/runsuite.c:1342,1
    - Dst: fclose
      Src: /src/libxml2/runsuite.c:1345,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 85
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1204
    functionDepth: 27
    functionLinenumber: 1204
    functionLinenumberEnd: 1347
    functionName: main
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xsdTest
    - xmlCleanupParser
    - rngTestStreaming
    - initializeLibxml2
    - strcmp
    - fopen
    - rngTest2
    - xstcMetadata
    - fclose
    - printf
    - fprintf
    - rngTest1
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/runsuite.c:1351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1349
    functionDepth: 0
    functionLinenumber: 1349
    functionLinenumberEnd: 1352
    functionName: main
    functionSourceFile: /src/libxml2/runsuite.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/testdict.c:53,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:55,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:56,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/testdict.c:60,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:62,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:63,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testdict.c:65,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:66,1
    - Dst: abort
      Src: /src/libxml2/testdict.c:67,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/testdict.c:77,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:79,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:80,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/testdict.c:86,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:88,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:89,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 2
    argNames:
    - strings
    - seeds
    argTypes:
    - xmlChar**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 96
    functionName: fill_string_pool
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrlen
    - abort
    - exit
    - fprintf
    - xmlStrncatNew
    linkageType: ''
    returnType: void
    signature: void fill_string_pool(xmlChar **strings, const char **seeds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/testdict.c:103,1
    - Dst: printf
      Src: /src/libxml2/testdict.c:106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 108
    functionName: print_strings
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void print_strings(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:116,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionName: clean_strings
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void clean_strings(void)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictCreateSub
      Src: /src/libxml2/testdict.c:136,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:138,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:139,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:142,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:151,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:153,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:161,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testdict.c:161,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:163,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:171,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testdict.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:173,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:187,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:189,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/testdict.c:200,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:201,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/testdict.c:206,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:207,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/testdict.c:218,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:219,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:230,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:231,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:242,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:243,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/testdict.c:259,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:261,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/testdict.c:276,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/testdict.c:277,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:278,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testdict.c:285,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 106
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xmlDictPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 127
    functionDepth: 6
    functionLinenumber: 127
    functionLinenumberEnd: 287
    functionName: test_subdict
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xmlDictQLookup
    - xmlStrlen
    - xmlDictCreateSub
    - exit
    - xmlDictOwns
    - fprintf
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: int
    signature: int test_subdict(xmlDictPtr parent)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/testdict.c:301,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:308,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:310,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:318,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testdict.c:318,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:320,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:328,1
    - Dst: xmlStrlen
      Src: /src/libxml2/testdict.c:328,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:330,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:344,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:346,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/testdict.c:357,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:358,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/testdict.c:369,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:370,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/testdict.c:386,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:388,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 67
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDict*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 292
    functionDepth: 2
    functionLinenumber: 292
    functionLinenumberEnd: 396
    functionName: test_dict
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlDictQLookup
    - xmlStrlen
    - xmlDictOwns
    - fprintf
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: int
    signature: int test_dict(xmlDict *dict)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:403,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:404,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:405,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:406,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:407,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:408,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:409,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:410,1
    - Dst: fill_string_pool
      Src: /src/libxml2/testdict.c:412,1
    - Dst: fill_string_pool
      Src: /src/libxml2/testdict.c:413,1
    - Dst: print_strings
      Src: /src/libxml2/testdict.c:415,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/testdict.c:418,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:420,1
    - Dst: exit
      Src: /src/libxml2/testdict.c:421,1
    - Dst: test_dict
      Src: /src/libxml2/testdict.c:423,1
    - Dst: test_subdict
      Src: /src/libxml2/testdict.c:426,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testdict.c:429,1
    - Dst: clean_strings
      Src: /src/libxml2/testdict.c:431,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:432,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:433,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:434,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:435,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 398
    functionDepth: 7
    functionLinenumber: 398
    functionLinenumberEnd: 438
    functionName: testall_dict
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xmlFree
    - print_strings
    - fill_string_pool
    - test_subdict
    - clean_strings
    - xmlMalloc
    - exit
    - xmlDictCreate
    - test_dict
    - fprintf
    - memset
    linkageType: ''
    returnType: int
    signature: int testall_dict(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 447
    functionName: HASH_ROL
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_ROL(x,n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: HASH_ROL
      Src: /src/libxml2/testdict.c:453,1
    - Dst: HASH_ROL
      Src: /src/libxml2/testdict.c:456,1
    - Dst: HASH_ROL
      Src: /src/libxml2/testdict.c:457,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - max
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 460
    functionName: my_rand
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - HASH_ROL
    linkageType: ''
    returnType: ATTRIBUTE_NO_SANITIZE_INTEGER
    signature: ATTRIBUTE_NO_SANITIZE_INTEGER my_rand(unsigned max)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:464,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:465,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:468,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:470,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:476,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:477,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 485
    functionName: gen_random_string
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - my_rand
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      gen_random_string(xmlChar id)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:501,1
    - Dst: xmlMalloc
      Src: /src/libxml2/testdict.c:505,1
    - Dst: memset
      Src: /src/libxml2/testdict.c:506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 3
    argNames:
    - num_entries
    - num_keys
    - id
    argTypes:
    - size_t
    - size_t
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 512
    functionName: pool_new
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: StringPool
    signature: 'StringPool *

      pool_new(size_t num_entries, size_t num_keys, xmlChar id)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:519,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:521,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pool
    argTypes:
    - StringPool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 514
    functionDepth: 0
    functionLinenumber: 514
    functionLinenumberEnd: 523
    functionName: pool_free
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void pool_free(StringPool *pool)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pool
    argTypes:
    - StringPool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 528
    functionName: pool_done
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int pool_done(StringPool *pool)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pool
    argTypes:
    - StringPool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: pool_reset
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void pool_reset(StringPool *pool)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gen_random_string
      Src: /src/libxml2/testdict.c:549,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/testdict.c:553,1
    - Dst: xmlHashUpdateEntry
      Src: /src/libxml2/testdict.c:555,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/testdict.c:559,1
    - Dst: xmlHashUpdateEntry2
      Src: /src/libxml2/testdict.c:561,1
    - Dst: xmlHashAddEntry3
      Src: /src/libxml2/testdict.c:566,1
    - Dst: xmlHashUpdateEntry3
      Src: /src/libxml2/testdict.c:569,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:578,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 32
    argCount: 3
    argNames:
    - pool
    - hash
    - num
    argTypes:
    - StringPool*
    - xmlHashTablePtr
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 535
    functionDepth: 4
    functionLinenumber: 535
    functionLinenumberEnd: 587
    functionName: pool_bulk_insert
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlHashUpdateEntry2
    - xmlFree
    - gen_random_string
    - xmlHashAddEntry
    - xmlHashAddEntry3
    - xmlHashUpdateEntry
    - xmlHashUpdateEntry3
    - xmlHashAddEntry2
    linkageType: ''
    returnType: int
    signature: int pool_bulk_insert(StringPool *pool, xmlHashTablePtr hash, size_t
      num)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/libxml2/testdict.c:602,1
    - Dst: xmlStrndup
      Src: /src/libxml2/testdict.c:608,1
    - Dst: xmlHashQLookup3
      Src: /src/libxml2/testdict.c:614,1
    - Dst: xmlFree
      Src: /src/libxml2/testdict.c:618,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - hash
    - names
    - num_keys
    argTypes:
    - xmlHashTable*
    - xmlChar**
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 589
    functionDepth: 3
    functionLinenumber: 589
    functionLinenumberEnd: 621
    functionName: hash_qlookup
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlHashQLookup3
    - xmlStrndup
    - strchr
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      hash_qlookup(xmlHashTable *hash, xmlChar **names, size_t num_keys)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: hash_qlookup
      Src: /src/libxml2/testdict.c:637,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/testdict.c:641,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/testdict.c:644,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/testdict.c:647,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 4
    argNames:
    - pool
    - hash
    - num
    - existing
    argTypes:
    - StringPool*
    - xmlHashTablePtr
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 623
    functionDepth: 4
    functionLinenumber: 623
    functionLinenumberEnd: 666
    functionName: pool_bulk_lookup
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlHashLookup2
    - hash_qlookup
    - xmlHashLookup3
    linkageType: ''
    returnType: int
    signature: "int pool_bulk_lookup(StringPool *pool, xmlHashTablePtr hash, size_t
      num,\n                 int existing)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/testdict.c:679,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/testdict.c:682,1
    - Dst: xmlHashRemoveEntry3
      Src: /src/libxml2/testdict.c:685,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - pool
    - hash
    - num
    argTypes:
    - StringPool*
    - xmlHashTablePtr
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 668
    functionDepth: 3
    functionLinenumber: 668
    functionLinenumberEnd: 697
    functionName: pool_bulk_remove
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry2
    - xmlHashRemoveEntry
    - xmlHashRemoveEntry3
    linkageType: ''
    returnType: int
    signature: int pool_bulk_remove(StringPool *pool, xmlHashTablePtr hash, size_t
      num)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictCreate
      Src: /src/libxml2/testdict.c:707,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/testdict.c:708,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/testdict.c:710,1
    - Dst: pool_new
      Src: /src/libxml2/testdict.c:712,1
    - Dst: pool_new
      Src: /src/libxml2/testdict.c:713,1
    - Dst: pool_done
      Src: /src/libxml2/testdict.c:716,1
    - Dst: pool_bulk_insert
      Src: /src/libxml2/testdict.c:717,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:717,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:718,1
    - Dst: pool_bulk_insert
      Src: /src/libxml2/testdict.c:721,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:721,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:722,1
    - Dst: pool_reset
      Src: /src/libxml2/testdict.c:728,1
    - Dst: pool_bulk_lookup
      Src: /src/libxml2/testdict.c:729,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:730,1
    - Dst: pool_reset
      Src: /src/libxml2/testdict.c:735,1
    - Dst: pool_done
      Src: /src/libxml2/testdict.c:736,1
    - Dst: pool_done
      Src: /src/libxml2/testdict.c:736,1
    - Dst: pool_bulk_insert
      Src: /src/libxml2/testdict.c:737,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:737,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:738,1
    - Dst: pool_bulk_remove
      Src: /src/libxml2/testdict.c:741,1
    - Dst: my_rand
      Src: /src/libxml2/testdict.c:741,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:742,1
    - Dst: pool_reset
      Src: /src/libxml2/testdict.c:748,1
    - Dst: pool_bulk_lookup
      Src: /src/libxml2/testdict.c:749,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:750,1
    - Dst: pool_reset
      Src: /src/libxml2/testdict.c:755,1
    - Dst: pool_bulk_lookup
      Src: /src/libxml2/testdict.c:756,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:757,1
    - Dst: pool_free
      Src: /src/libxml2/testdict.c:761,1
    - Dst: pool_free
      Src: /src/libxml2/testdict.c:762,1
    - Dst: xmlHashFree
      Src: /src/libxml2/testdict.c:763,1
    - Dst: xmlDictFree
      Src: /src/libxml2/testdict.c:764,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 3
    argNames:
    - num_entries
    - num_keys
    - use_dict
    argTypes:
    - size_t
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 699
    functionDepth: 6
    functionLinenumber: 699
    functionLinenumberEnd: 767
    functionName: test_hash
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - pool_bulk_remove
    - my_rand
    - pool_reset
    - pool_bulk_insert
    - xmlHashFree
    - xmlHashCreateDict
    - pool_new
    - pool_done
    - fprintf
    - xmlDictCreate
    - pool_bulk_lookup
    - xmlHashCreate
    - pool_free
    linkageType: ''
    returnType: int
    signature: int test_hash(size_t num_entries, size_t num_keys, int use_dict)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: test_hash
      Src: /src/libxml2/testdict.c:785,1
    - Dst: test_hash
      Src: /src/libxml2/testdict.c:789,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 769
    functionDepth: 7
    functionLinenumber: 769
    functionLinenumberEnd: 795
    functionName: testall_hash
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - test_hash
    linkageType: ''
    returnType: int
    signature: int testall_hash(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: testall_dict
      Src: /src/libxml2/testdict.c:806,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:807,1
    - Dst: testall_hash
      Src: /src/libxml2/testdict.c:810,1
    - Dst: fprintf
      Src: /src/libxml2/testdict.c:811,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/testdict.c:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 800
    functionDepth: 8
    functionLinenumber: 800
    functionLinenumberEnd: 817
    functionName: main
    functionSourceFile: /src/libxml2/testdict.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - fprintf
    - testall_dict
    - testall_hash
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/catalog.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 207
    functionName: xmlCatalogErrMemory
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlCatalogErrMemory(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/catalog.c:227,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - catal
    - node
    - error
    - msg
    - str1
    - str2
    - str3
    argTypes:
    - xmlCatalogEntryPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 221
    functionDepth: 5
    functionLinenumber: 221
    functionLinenumberEnd: 234
    functionName: xmlCatalogErr
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogErrMemory
    - xmlRaiseError
    linkageType: ''
    returnType: void
    signature: "void xmlCatalogErr(xmlCatalogEntryPtr catal, xmlNodePtr node, int
      error,\n               const char *msg, const xmlChar *str1, const xmlChar *str2,\n\t
      \      const xmlChar *str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/catalog.c:240,1
    - Dst: xmlVPrintErrorMessage
      Src: /src/libxml2/catalog.c:241,1
    - Dst: va_end
      Src: /src/libxml2/catalog.c:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 243
    functionName: xmlCatalogPrintDebug
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVPrintErrorMessage
    - va_start
    linkageType: ''
    returnType: void
    signature: void xmlCatalogPrintDebug(const char *fmt, ...)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/catalog.c:270,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:272,1
    - Dst: xmlCatalogNormalizePublic
      Src: /src/libxml2/catalog.c:280,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:285,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:289,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:291,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:297,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 6
    argNames:
    - type
    - name
    - value
    - URL
    - prefer
    - group
    argTypes:
    - xmlCatalogEntryType
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlCatalogPrefer
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 305
    functionName: xmlNewCatalogEntry
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlMalloc
    - xmlCatalogErrMemory
    - xmlCatalogNormalizePublic
    linkageType: ''
    returnType: xmlCatalogEntryPtr
    signature: "xmlCatalogEntryPtr xmlNewCatalogEntry(xmlCatalogEntryType type, const
      xmlChar *name,\n\t   const xmlChar *value, const xmlChar *URL, xmlCatalogPrefer
      prefer,\n\t   xmlCatalogEntryPtr group)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:330,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:333,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:336,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:341,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:343,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:345,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:346,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 316
    functionDepth: 2
    functionLinenumber: 316
    functionLinenumberEnd: 347
    functionName: xmlFreeCatalogEntry
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogPrintDebug
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeCatalogEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ret
    argTypes:
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 354
    functionDepth: 3
    functionLinenumber: 354
    functionLinenumberEnd: 363
    functionName: xmlFreeCatalogEntryList
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlFreeCatalogEntry
    linkageType: ''
    returnType: void
    signature: void xmlFreeCatalogEntryList(xmlCatalogEntryPtr ret)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:386,1
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:390,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 372
    functionDepth: 3
    functionLinenumber: 372
    functionLinenumberEnd: 391
    functionName: xmlFreeCatalogHashEntryList
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlFreeCatalogEntry
    linkageType: ''
    returnType: void
    signature: "void xmlFreeCatalogHashEntryList(void *payload,\n                            const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/catalog.c:405,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:407,1
    - Dst: memset
      Src: /src/libxml2/catalog.c:410,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/catalog.c:417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - type
    - prefer
    argTypes:
    - xmlCatalogType
    - xmlCatalogPrefer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 401
    functionDepth: 5
    functionLinenumber: 401
    functionLinenumberEnd: 420
    functionName: xmlCreateNewCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlCatalogErrMemory
    - xmlHashCreate
    - memset
    linkageType: ''
    returnType: xmlCatalogPtr
    signature: xmlCatalogPtr xmlCreateNewCatalog(xmlCatalogType type, xmlCatalogPrefer
      prefer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeCatalogEntryList
      Src: /src/libxml2/catalog.c:434,1
    - Dst: xmlHashFree
      Src: /src/libxml2/catalog.c:437,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:439,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - catal
    argTypes:
    - xmlCatalog*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 429
    functionDepth: 4
    functionLinenumber: 429
    functionLinenumberEnd: 440
    functionName: xmlFreeCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlHashFree
    - xmlFreeCatalogEntryList
    linkageType: ''
    returnType: void
    signature: void xmlFreeCatalog(xmlCatalog *catal)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:466,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:468,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:470,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:472,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:474,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:476,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:478,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:480,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:482,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:484,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:486,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:488,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:498,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:506,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:519,1
    - Dst: fprintf
      Src: /src/libxml2/catalog.c:523,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 524
    functionName: xmlCatalogDumpEntry
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlCatalogDumpEntry(void *payload, void *data,\n                    const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:558,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:559,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:560,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:565,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:566,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/catalog.c:569,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/catalog.c:571,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:578,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:581,1
    - Dst: xmlDumpXMLCatalogNode
      Src: /src/libxml2/catalog.c:584,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:585,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:588,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:589,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:590,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:591,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:594,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:595,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:596,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:597,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:600,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:601,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:602,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:603,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:606,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:607,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:608,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:609,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:612,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:613,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:614,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:615,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:618,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:619,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:620,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:621,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:624,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:625,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:626,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:627,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:630,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:631,1
    - Dst: xmlSetProp
      Src: /src/libxml2/catalog.c:632,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:633,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 96
    argCount: 5
    argNames:
    - catal
    - catalog
    - doc
    - ns
    - cgroup
    argTypes:
    - xmlCatalogEntryPtr
    - xmlNodePtr
    - xmlDocPtr
    - xmlNsPtr
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 537
    functionDepth: 1
    functionLinenumber: 537
    functionLinenumberEnd: 641
    functionName: xmlDumpXMLCatalogNode
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNode
    - xmlDumpXMLCatalogNode
    - xmlSearchNsByHref
    - xmlAddChild
    - xmlSetNsProp
    - xmlSetProp
    linkageType: ''
    returnType: void
    signature: "void xmlDumpXMLCatalogNode(xmlCatalogEntryPtr catal, xmlNodePtr catalog,\n\t\t
      \   xmlDocPtr doc, xmlNsPtr ns, xmlCatalogEntryPtr cgroup)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/catalog.c:655,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/catalog.c:658,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:662,1
    - Dst: xmlNewNs
      Src: /src/libxml2/catalog.c:664,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:666,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/catalog.c:669,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/catalog.c:671,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:672,1
    - Dst: xmlAddChild
      Src: /src/libxml2/catalog.c:676,1
    - Dst: xmlDumpXMLCatalogNode
      Src: /src/libxml2/catalog.c:678,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/catalog.c:683,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:685,1
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/catalog.c:688,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:693,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 2
    argNames:
    - out
    - catal
    argTypes:
    - FILE*
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 643
    functionDepth: 4
    functionLinenumber: 643
    functionLinenumberEnd: 696
    functionName: xmlDumpXMLCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlDumpXMLCatalogNode
    - xmlNewDtd
    - xmlNewDoc
    - xmlSaveFormatFileTo
    - xmlAddChild
    - xmlNewNs
    - xmlOutputBufferCreateFile
    - xmlFreeNs
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlDumpXMLCatalog(FILE *out, xmlCatalogEntryPtr catal)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/catalog.c:751,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/catalog.c:758,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 714
    functionDepth: 2
    functionLinenumber: 714
    functionLinenumberEnd: 771
    functionName: xmlCatalogConvertEntry
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlHashRemoveEntry
    linkageType: ''
    returnType: void
    signature: "void xmlCatalogConvertEntry(void *payload, void *data,\n                       const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:788,1
    - Dst: xmlHashScan
      Src: /src/libxml2/catalog.c:791,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - catal
    argTypes:
    - xmlCatalog*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 781
    functionDepth: 2
    functionLinenumber: 781
    functionLinenumberEnd: 793
    functionName: xmlConvertSGMLCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlCatalogPrintDebug
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: int xmlConvertSGMLCatalog(xmlCatalog *catal)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:815,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:863,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 50
    argCount: 1
    argNames:
    - urn
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 864
    functionName: xmlCatalogUnWrapURN
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrncmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogUnWrapURN(const xmlChar *urn)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/catalog.c:883,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:885,1
    - Dst: xmlParserInputBufferCreateFilename
      Src: /src/libxml2/catalog.c:889,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/catalog.c:891,1
    - Dst: xmlNewInputStream
      Src: /src/libxml2/catalog.c:895,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/catalog.c:897,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/catalog.c:898,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/catalog.c:902,1
    - Dst: xmlBufResetInput
      Src: /src/libxml2/catalog.c:904,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/catalog.c:906,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/catalog.c:907,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/catalog.c:908,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/catalog.c:918,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:924,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/catalog.c:927,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 876
    functionDepth: 12
    functionLinenumber: 876
    functionLinenumberEnd: 930
    functionName: xmlParseCatalogFile
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewInputStream
    - xmlNewParserCtxt
    - xmlBufResetInput
    - xmlCatalogErrMemory
    - xmlParserInputBufferCreateFilename
    - xmlCanonicPath
    - xmlFreeParserInputBuffer
    - xmlFreeDoc
    - xmlParseDocument
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlParseCatalogFile(const char *filename)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/catalog.c:951,1
    - Dst: open
      Src: /src/libxml2/catalog.c:954,1
    - Dst: xmlMalloc
      Src: /src/libxml2/catalog.c:960,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:962,1
    - Dst: close
      Src: /src/libxml2/catalog.c:963,1
    - Dst: read
      Src: /src/libxml2/catalog.c:966,1
    - Dst: close
      Src: /src/libxml2/catalog.c:967,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:969,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 938
    functionDepth: 3
    functionLinenumber: 938
    functionLinenumberEnd: 975
    functionName: xmlLoadFileContent
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - open
    - xmlMalloc
    - stat
    - xmlCatalogErrMemory
    - close
    - read
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlLoadFileContent(const char *filename)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:1001,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1011,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:1015,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - pubID
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 1028
    functionName: xmlCatalogNormalizePublic
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlIsBlank_ch
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogNormalizePublic(const xmlChar *pubID)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1057,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1059,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1061,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1063,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1065,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1067,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1069,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1071,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1073,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1075,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1078
      start: 1054
    functionDepth: 1
    functionLinenumber: 1054
    functionLinenumberEnd: 1078
    functionName: xmlGetXMLCatalogEntryType
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlCatalogEntryType
    signature: xmlCatalogEntryType xmlGetXMLCatalogEntryType(const xmlChar *name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/libxml2/catalog.c:1106,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1108,1
    - Dst: xmlGetProp
      Src: /src/libxml2/catalog.c:1113,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1115,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1121,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1123,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/catalog.c:1127,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/catalog.c:1128,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1132,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1135,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:1138,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1140,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1144,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1146,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1148,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1150,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 7
    argNames:
    - cur
    - type
    - name
    - attrName
    - uriAttrName
    - prefer
    - cgroup
    argTypes:
    - xmlNodePtr
    - xmlCatalogEntryType
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlCatalogPrefer
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1093
    functionDepth: 10
    functionLinenumber: 1093
    functionLinenumberEnd: 1152
    functionName: xmlParseXMLCatalogOneNode
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlCatalogErr
    - xmlNodeGetBase
    - xmlFree
    - xmlCatalogPrintDebug
    - xmlBuildURI
    - xmlNewCatalogEntry
    linkageType: ''
    returnType: xmlCatalogEntryPtr
    signature: "xmlCatalogEntryPtr xmlParseXMLCatalogOneNode(xmlNodePtr cur, xmlCatalogEntryType
      type,\n\t\t\t  const xmlChar *name, const xmlChar *attrName,\n\t\t\t  const
      xmlChar *uriAttrName, xmlCatalogPrefer prefer,\n\t\t\t  xmlCatalogEntryPtr cgroup)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1173,1
    - Dst: xmlGetProp
      Src: /src/libxml2/catalog.c:1177,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1179,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1181,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1184,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1188,1
    - Dst: xmlGetProp
      Src: /src/libxml2/catalog.c:1191,1
    - Dst: xmlGetNsProp
      Src: /src/libxml2/catalog.c:1192,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:1193,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1194,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1195,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1196,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1198,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1199,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1201,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1202,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1205,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1206,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1209,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1210,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1213,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1214,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1217,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1218,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1221,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1222,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1225,1
    - Dst: xmlParseXMLCatalogOneNode
      Src: /src/libxml2/catalog.c:1226,1
    - Dst: xmlParseXMLCatalogNodeList
      Src: /src/libxml2/catalog.c:1249,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1253,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 4
    argNames:
    - cur
    - prefer
    - parent
    - cgroup
    argTypes:
    - xmlNodePtr
    - xmlCatalogPrefer
    - xmlCatalogEntryPtr
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1164
    functionDepth: 11
    functionLinenumber: 1164
    functionLinenumberEnd: 1254
    functionName: xmlParseXMLCatalogNode
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlCatalogErr
    - xmlStrEqual
    - xmlFree
    - xmlParseXMLCatalogOneNode
    - xmlNewCatalogEntry
    - xmlGetNsProp
    - xmlParseXMLCatalogNodeList
    linkageType: ''
    returnType: void
    signature: "void xmlParseXMLCatalogNode(xmlNodePtr cur, xmlCatalogPrefer prefer,\n\t
      \              xmlCatalogEntryPtr parent, xmlCatalogEntryPtr cgroup)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1271,1
    - Dst: xmlParseXMLCatalogNode
      Src: /src/libxml2/catalog.c:1272,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - cur
    - prefer
    - parent
    - cgroup
    argTypes:
    - xmlNodePtr
    - xmlCatalogPrefer
    - xmlCatalogEntryPtr
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1266
    functionDepth: 12
    functionLinenumber: 1266
    functionLinenumberEnd: 1277
    functionName: xmlParseXMLCatalogNodeList
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlParseXMLCatalogNode
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: "void xmlParseXMLCatalogNodeList(xmlNodePtr cur, xmlCatalogPrefer prefer,\n\t
      \                  xmlCatalogEntryPtr parent, xmlCatalogEntryPtr cgroup)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlParseCatalogFile
      Src: /src/libxml2/catalog.c:1297,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1300,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1306,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/catalog.c:1309,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1310,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1312,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:1314,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:1317,1
    - Dst: xmlGetProp
      Src: /src/libxml2/catalog.c:1321,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1323,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1325,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1328,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1332,1
    - Dst: xmlParseXMLCatalogNodeList
      Src: /src/libxml2/catalog.c:1335,1
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1337,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:1340,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/catalog.c:1343,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 2
    argNames:
    - prefer
    - filename
    argTypes:
    - xmlCatalogPrefer
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1287
    functionDepth: 13
    functionLinenumber: 1287
    functionLinenumberEnd: 1345
    functionName: xmlParseXMLCatalogFile
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlCatalogErr
    - xmlCatalogPrintDebug
    - xmlStrEqual
    - xmlFree
    - xmlNewCatalogEntry
    - xmlParseCatalogFile
    - xmlParseXMLCatalogNodeList
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlCatalogEntryPtr
    signature: xmlCatalogEntryPtr xmlParseXMLCatalogFile(xmlCatalogPrefer prefer,
      const xmlChar *filename)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:1365,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:1368,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/catalog.c:1374,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1377,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:1385,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1389,1
    - Dst: xmlParseXMLCatalogFile
      Src: /src/libxml2/catalog.c:1398,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:1401,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/catalog.c:1413,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1416,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/catalog.c:1418,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:1420,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 1
    argNames:
    - catal
    argTypes:
    - xmlCatalogEntryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1353
    functionDepth: 14
    functionLinenumber: 1353
    functionLinenumberEnd: 1422
    functionName: xmlFetchXMLCatalogFile
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogPrintDebug
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlParseXMLCatalogFile
    - xmlHashCreate
    - xmlRMutexUnlock
    - xmlRMutexLock
    linkageType: ''
    returnType: int
    signature: int xmlFetchXMLCatalogFile(xmlCatalogEntryPtr catal)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1452,1
    - Dst: xmlGetXMLCatalogEntryType
      Src: /src/libxml2/catalog.c:1457,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1460,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1472,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1474,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1477,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1479,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1480,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1481,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1490,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:1493,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:1496,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/catalog.c:1500,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 45
    argCount: 4
    argNames:
    - catal
    - type
    - orig
    - replace
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1440
    functionDepth: 15
    functionLinenumber: 1440
    functionLinenumberEnd: 1506
    functionName: xmlAddXMLCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlGetXMLCatalogEntryType
    - xmlCatalogPrintDebug
    - xmlFree
    - xmlStrEqual
    - xmlHashLookup
    - xmlFetchXMLCatalogFile
    - xmlNewCatalogEntry
    linkageType: ''
    returnType: int
    signature: "int xmlAddXMLCatalog(xmlCatalogEntryPtr catal, const xmlChar *type,\n\t
      \     const xmlChar *orig, const xmlChar *replace)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1528,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1536,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1537,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1540,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1543,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - catal
    - value
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1516
    functionDepth: 15
    functionLinenumber: 1516
    functionLinenumberEnd: 1551
    functionName: xmlDelXMLCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogPrintDebug
    - xmlFetchXMLCatalogFile
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlDelXMLCatalog(xmlCatalogEntryPtr catal, const xmlChar *value)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1577,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1595,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1597,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1601,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1605,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1607,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1613,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1613,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1626,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1628,1
    - Dst: xmlStrcat
      Src: /src/libxml2/catalog.c:1630,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1645,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1645,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1647,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1657,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1661,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1663,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1689,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1691,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1694,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1698,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1698,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1723,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1723,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1726,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1736,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1740,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1742,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1764,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1767,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 160
    argCount: 3
    argNames:
    - catal
    - pubID
    - sysID
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1565
    functionDepth: 15
    functionLinenumber: 1565
    functionLinenumberEnd: 1782
    functionName: xmlCatalogXMLResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCatalogListXMLResolve
    - xmlCatalogErr
    - xmlCatalogPrintDebug
    - xmlStrEqual
    - xmlStrlen
    - xmlFetchXMLCatalogFile
    - xmlStrcat
    - xmlStrncmp
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlCatalogXMLResolve(xmlCatalogEntryPtr catal, const xmlChar
      *pubID,\n\t              const xmlChar *sysID)"
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogErr
      Src: /src/libxml2/catalog.c:1811,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1825,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1827,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1829,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1833,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1835,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1841,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1841,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1854,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:1856,1
    - Dst: xmlStrcat
      Src: /src/libxml2/catalog.c:1858,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1873,1
    - Dst: xmlStrlen
      Src: /src/libxml2/catalog.c:1873,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1875,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1885,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1889,1
    - Dst: xmlCatalogListXMLResolveURI
      Src: /src/libxml2/catalog.c:1891,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1909,1
    - Dst: xmlCatalogListXMLResolveURI
      Src: /src/libxml2/catalog.c:1912,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 92
    argCount: 2
    argNames:
    - catal
    - URI
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1922
      start: 1795
    functionDepth: 15
    functionLinenumber: 1795
    functionLinenumberEnd: 1922
    functionName: xmlCatalogXMLResolveURI
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCatalogErr
    - xmlCatalogPrintDebug
    - xmlStrEqual
    - xmlStrlen
    - xmlFetchXMLCatalogFile
    - xmlCatalogListXMLResolveURI
    - xmlStrcat
    - xmlStrncmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogXMLResolveURI(xmlCatalogEntryPtr catal, const xmlChar *URI)'
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogNormalizePublic
      Src: /src/libxml2/catalog.c:1948,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1952,1
    - Dst: xmlCatalogUnWrapURN
      Src: /src/libxml2/catalog.c:1953,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1956,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1959,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1962,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1964,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1966,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:1969,1
    - Dst: xmlCatalogUnWrapURN
      Src: /src/libxml2/catalog.c:1970,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1973,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:1976,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1980,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:1981,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1982,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:1984,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1987,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:1989,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:1995,1
    - Dst: xmlCatalogXMLResolve
      Src: /src/libxml2/catalog.c:1998,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2010,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 62
    argCount: 3
    argNames:
    - catal
    - pubID
    - sysID
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 1936
    functionDepth: 16
    functionLinenumber: 1936
    functionLinenumberEnd: 2012
    functionName: xmlCatalogListXMLResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlCatalogListXMLResolve
    - xmlCatalogPrintDebug
    - xmlFree
    - xmlStrEqual
    - xmlFetchXMLCatalogFile
    - xmlCatalogXMLResolve
    - xmlCatalogNormalizePublic
    - xmlCatalogUnWrapURN
    - xmlStrncmp
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlCatalogListXMLResolve(xmlCatalogEntryPtr catal, const
      xmlChar *pubID,\n\t              const xmlChar *sysID)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncmp
      Src: /src/libxml2/catalog.c:2034,1
    - Dst: xmlCatalogUnWrapURN
      Src: /src/libxml2/catalog.c:2035,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2038,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2041,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:2044,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2046,1
    - Dst: xmlFetchXMLCatalogFile
      Src: /src/libxml2/catalog.c:2052,1
    - Dst: xmlCatalogXMLResolveURI
      Src: /src/libxml2/catalog.c:2055,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - catal
    - URI
    argTypes:
    - xmlCatalogEntryPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2024
    functionDepth: 17
    functionLinenumber: 2024
    functionLinenumberEnd: 2063
    functionName: xmlCatalogListXMLResolveURI
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlCatalogListXMLResolve
    - xmlCatalogPrintDebug
    - xmlFree
    - xmlFetchXMLCatalogFile
    - xmlCatalogXMLResolveURI
    - xmlCatalogUnWrapURN
    - xmlStrncmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogListXMLResolveURI(xmlCatalogEntryPtr catal, const xmlChar *URI)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2076
    functionDepth: 0
    functionLinenumber: 2076
    functionLinenumberEnd: 2077
    functionName: SKIP
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 33
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/catalog.c:2090,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2097
      start: 2086
    functionDepth: 0
    functionLinenumber: 2086
    functionLinenumberEnd: 2097
    functionName: xmlParseSGMLCatalogComment
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseSGMLCatalogComment(const xmlChar *cur)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/catalog.c:2124,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:2126,1
    - Dst: IS_PUBIDCHAR_CH
      Src: /src/libxml2/catalog.c:2129,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/catalog.c:2132,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/catalog.c:2138,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:2140,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2141,1
    - Dst: xmlRealloc
      Src: /src/libxml2/catalog.c:2144,1
    - Dst: xmlCatalogErrMemory
      Src: /src/libxml2/catalog.c:2146,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2147,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/catalog.c:2158,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2159,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2164,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 56
    argCount: 2
    argNames:
    - cur
    - id
    argTypes:
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2171
      start: 2106
    functionDepth: 3
    functionLinenumber: 2106
    functionLinenumberEnd: 2171
    functionName: xmlParseSGMLCatalogPubid
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlRealloc
    - xmlFree
    - xmlMalloc
    - xmlCatalogErrMemory
    - xmlGrowCapacity
    - IS_PUBIDCHAR_CH
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseSGMLCatalogPubid(const xmlChar *cur, xmlChar **id)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_LETTER
      Src: /src/libxml2/catalog.c:2192,1
    - Dst: IS_LETTER
      Src: /src/libxml2/catalog.c:2196,1
    - Dst: IS_DIGIT
      Src: /src/libxml2/catalog.c:2196,1
    - Dst: xmlStrndup
      Src: /src/libxml2/catalog.c:2205,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 15
    argCount: 2
    argNames:
    - cur
    - name
    argTypes:
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2180
    functionDepth: 1
    functionLinenumber: 2180
    functionLinenumberEnd: 2207
    functionName: xmlParseSGMLCatalogName
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - IS_DIGIT
    - xmlStrndup
    - IS_LETTER
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlParseSGMLCatalogName(const xmlChar *cur, xmlChar **name)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2218,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2220,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2222,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2224,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2226,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2228,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2230,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2232,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2234,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2236,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2238,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2215
    functionDepth: 1
    functionLinenumber: 2215
    functionLinenumberEnd: 2241
    functionName: xmlGetSGMLCatalogEntryType
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlCatalogEntryType
    signature: xmlCatalogEntryType xmlGetSGMLCatalogEntryType(const xmlChar *name)
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2263,1
    - Dst: xmlParseSGMLCatalogComment
      Src: /src/libxml2/catalog.c:2270,1
    - Dst: xmlParseSGMLCatalogName
      Src: /src/libxml2/catalog.c:2280,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/catalog.c:2285,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2287,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2291,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2293,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2295,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2297,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2299,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2301,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2303,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2305,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2307,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2309,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2311,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:2313,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2314,1
    - Dst: xmlParseSGMLCatalogName
      Src: /src/libxml2/catalog.c:2315,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2320,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2323,1
    - Dst: xmlParseSGMLCatalogName
      Src: /src/libxml2/catalog.c:2335,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/catalog.c:2340,1
    - Dst: xmlParseSGMLCatalogPubid
      Src: /src/libxml2/catalog.c:2345,1
    - Dst: xmlParseSGMLCatalogPubid
      Src: /src/libxml2/catalog.c:2354,1
    - Dst: xmlCatalogNormalizePublic
      Src: /src/libxml2/catalog.c:2362,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2365,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2369,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/catalog.c:2374,1
    - Dst: xmlParseSGMLCatalogPubid
      Src: /src/libxml2/catalog.c:2379,1
    - Dst: xmlParseSGMLCatalogPubid
      Src: /src/libxml2/catalog.c:2389,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2400,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2402,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2406,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2407,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/catalog.c:2412,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:2416,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/catalog.c:2418,1
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:2420,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2422,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:2429,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/catalog.c:2431,1
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:2433,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/catalog.c:2438,1
    - Dst: xmlExpandCatalog
      Src: /src/libxml2/catalog.c:2440,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2441,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2449,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2451,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2455,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 166
    argCount: 4
    argNames:
    - catal
    - value
    - file
    - super
    argTypes:
    - xmlCatalogPtr
    - xmlChar*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2459
      start: 2254
    functionDepth: 10
    functionLinenumber: 2254
    functionLinenumberEnd: 2459
    functionName: xmlParseSGMLCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlFreeCatalogEntry
    - xmlStrdup
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlFree
    - xmlBuildURI
    - xmlNewCatalogEntry
    - xmlHashAddEntry
    - xmlParseSGMLCatalogComment
    - xmlCatalogNormalizePublic
    - xmlExpandCatalog
    - xmlParseSGMLCatalogName
    - xmlParseSGMLCatalogPubid
    linkageType: ''
    returnType: int
    signature: "int xmlParseSGMLCatalog(xmlCatalogPtr catal, const xmlChar *value,\n\t
      \           const char *file, int super)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogNormalizePublic
      Src: /src/libxml2/catalog.c:2482,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/catalog.c:2486,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2489,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2494,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2498,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - catal
    - pubID
    argTypes:
    - xmlHashTablePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2474
    functionDepth: 2
    functionLinenumber: 2474
    functionLinenumberEnd: 2500
    functionName: xmlCatalogGetSGMLPublic
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogNormalizePublic
    - xmlFree
    - xmlHashLookup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogGetSGMLPublic(xmlHashTablePtr catal, const xmlChar *pubID)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/catalog.c:2516,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - catal
    - sysID
    argTypes:
    - xmlHashTablePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2522
      start: 2509
    functionDepth: 2
    functionLinenumber: 2509
    functionLinenumberEnd: 2522
    functionName: xmlCatalogGetSGMLSystem
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogGetSGMLSystem(xmlHashTablePtr catal, const xmlChar *sysID)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogGetSGMLPublic
      Src: /src/libxml2/catalog.c:2541,1
    - Dst: xmlCatalogGetSGMLSystem
      Src: /src/libxml2/catalog.c:2545,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - catal
    - pubID
    - sysID
    argTypes:
    - xmlCatalogPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2549
    functionName: xmlCatalogSGMLResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogGetSGMLSystem
    - xmlCatalogGetSGMLPublic
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlCatalogSGMLResolve(xmlCatalogPtr catal, const xmlChar
      *pubID,\n\t              const xmlChar *sysID)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadFileContent
      Src: /src/libxml2/catalog.c:2577,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:2581,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2583,1
    - Dst: xmlParseSGMLCatalog
      Src: /src/libxml2/catalog.c:2587,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2588,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/catalog.c:2590,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2594
      start: 2570
    functionDepth: 11
    functionLinenumber: 2570
    functionLinenumberEnd: 2594
    functionName: xmlLoadSGMLSuperCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlLoadFileContent
    - xmlParseSGMLCatalog
    - xmlFree
    - xmlFreeCatalog
    - xmlCreateNewCatalog
    linkageType: ''
    returnType: xmlCatalog
    signature: 'xmlCatalog *

      xmlLoadSGMLSuperCatalog(const char *filename)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadFileContent
      Src: /src/libxml2/catalog.c:2615,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:2631,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2633,1
    - Dst: xmlParseSGMLCatalog
      Src: /src/libxml2/catalog.c:2636,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/catalog.c:2638,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2639,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:2645,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2647,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:2650,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2653,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2655
      start: 2608
    functionDepth: 11
    functionLinenumber: 2608
    functionLinenumberEnd: 2655
    functionName: xmlLoadACatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlLoadFileContent
    - xmlParseSGMLCatalog
    - xmlFree
    - xmlNewCatalogEntry
    - xmlFreeCatalog
    - xmlCreateNewCatalog
    linkageType: ''
    returnType: xmlCatalog
    signature: 'xmlCatalog *

      xmlLoadACatalog(const char *filename)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlLoadFileContent
      Src: /src/libxml2/catalog.c:2676,1
    - Dst: xmlParseSGMLCatalog
      Src: /src/libxml2/catalog.c:2680,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2682,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:2685,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:2690,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - catal
    - filename
    argTypes:
    - xmlCatalogPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2665
    functionDepth: 11
    functionLinenumber: 2665
    functionLinenumberEnd: 2702
    functionName: xmlExpandCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlNewCatalogEntry
    - xmlLoadFileContent
    - xmlParseSGMLCatalog
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlExpandCatalog(xmlCatalogPtr catal, const char *filename)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2722,1
    - Dst: xmlCatalogGetSGMLSystem
      Src: /src/libxml2/catalog.c:2729,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2731,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:2735,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - catal
    - sysID
    argTypes:
    - xmlCatalog*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2740
      start: 2714
    functionDepth: 17
    functionLinenumber: 2714
    functionLinenumberEnd: 2740
    functionName: xmlACatalogResolveSystem
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlCatalogListXMLResolve
    - xmlCatalogGetSGMLSystem
    - xmlCatalogPrintDebug
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlACatalogResolveSystem(xmlCatalog *catal, const xmlChar *sysID)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2760,1
    - Dst: xmlCatalogGetSGMLPublic
      Src: /src/libxml2/catalog.c:2767,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2769,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:2773,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - catal
    - pubID
    argTypes:
    - xmlCatalog*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2778
      start: 2752
    functionDepth: 17
    functionLinenumber: 2752
    functionLinenumberEnd: 2778
    functionName: xmlACatalogResolvePublic
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlCatalogListXMLResolve
    - xmlCatalogPrintDebug
    - xmlCatalogGetSGMLPublic
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlACatalogResolvePublic(xmlCatalog *catal, const xmlChar *pubID)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2802,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2805,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2808,1
    - Dst: xmlCatalogSGMLResolve
      Src: /src/libxml2/catalog.c:2817,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2819,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:2823,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 3
    argNames:
    - catal
    - pubID
    - sysID
    argTypes:
    - xmlCatalog*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2828
      start: 2791
    functionDepth: 17
    functionLinenumber: 2791
    functionLinenumberEnd: 2828
    functionName: xmlACatalogResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlCatalogListXMLResolve
    - xmlCatalogPrintDebug
    - xmlCatalogSGMLResolve
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlACatalogResolve(xmlCatalog *catal, const xmlChar * pubID,\n
      \                  const xmlChar * sysID)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:2848,1
    - Dst: xmlCatalogSGMLResolve
      Src: /src/libxml2/catalog.c:2855,1
    - Dst: xmlStrdup
      Src: /src/libxml2/catalog.c:2857,1
    - Dst: xmlCatalogListXMLResolveURI
      Src: /src/libxml2/catalog.c:2861,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - catal
    - URI
    argTypes:
    - xmlCatalog*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2866
      start: 2840
    functionDepth: 18
    functionLinenumber: 2840
    functionLinenumberEnd: 2866
    functionName: xmlACatalogResolveURI
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlCatalogListXMLResolveURI
    - xmlCatalogPrintDebug
    - xmlCatalogSGMLResolve
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlACatalogResolveURI(xmlCatalog *catal, const xmlChar *URI)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxml2/catalog.c:2884,1
    - Dst: xmlDumpXMLCatalog
      Src: /src/libxml2/catalog.c:2888,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - catal
    - out
    argTypes:
    - xmlCatalog*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2890
      start: 2877
    functionDepth: 5
    functionLinenumber: 2877
    functionLinenumberEnd: 2890
    functionName: xmlACatalogDump
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlDumpXMLCatalog
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: void xmlACatalogDump(xmlCatalog *catal, FILE *out)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetSGMLCatalogEntryType
      Src: /src/libxml2/catalog.c:2918,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:2922,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/catalog.c:2925,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/catalog.c:2926,1
    - Dst: xmlFreeCatalogEntry
      Src: /src/libxml2/catalog.c:2928,1
    - Dst: xmlAddXMLCatalog
      Src: /src/libxml2/catalog.c:2933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - catal
    - type
    - orig
    - replace
    argTypes:
    - xmlCatalog*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2905
    functionDepth: 16
    functionLinenumber: 2905
    functionLinenumberEnd: 2936
    functionName: xmlACatalogAdd
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlFreeCatalogEntry
    - xmlGetSGMLCatalogEntryType
    - xmlAddXMLCatalog
    - xmlNewCatalogEntry
    - xmlHashAddEntry
    - xmlHashCreate
    linkageType: ''
    returnType: int
    signature: "int xmlACatalogAdd(xmlCatalog *catal, const xmlChar * type,\n              const
      xmlChar * orig, const xmlChar * replace)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/catalog.c:2956,1
    - Dst: xmlDelXMLCatalog
      Src: /src/libxml2/catalog.c:2962,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - catal
    - value
    argTypes:
    - xmlCatalog*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2947
    functionDepth: 16
    functionLinenumber: 2947
    functionLinenumberEnd: 2965
    functionName: xmlACatalogRemove
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlHashRemoveEntry
    - xmlDelXMLCatalog
    linkageType: ''
    returnType: int
    signature: int xmlACatalogRemove(xmlCatalog *catal, const xmlChar *value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:2983,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/catalog.c:2986,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:2990,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - sgml
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2994
      start: 2975
    functionDepth: 6
    functionLinenumber: 2975
    functionLinenumberEnd: 2994
    functionName: xmlNewCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlHashCreate
    - xmlCreateNewCatalog
    linkageType: ''
    returnType: xmlCatalog
    signature: 'xmlCatalog *

      xmlNewCatalog(int sgml)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashSize
      Src: /src/libxml2/catalog.c:3015,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - catal
    argTypes:
    - xmlCatalog*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3033
      start: 3004
    functionDepth: 1
    functionLinenumber: 3004
    functionLinenumberEnd: 3033
    functionName: xmlCatalogIsEmpty
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlHashSize
    linkageType: ''
    returnType: int
    signature: int xmlCatalogIsEmpty(xmlCatalog *catal)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/libxml2/catalog.c:3047,1
    - Dst: xmlInitRMutex
      Src: /src/libxml2/catalog.c:3049,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3050
      start: 3045
    functionDepth: 1
    functionLinenumber: 3045
    functionLinenumberEnd: 3050
    functionName: xmlInitCatalogInternal
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - getenv
    - xmlInitRMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitCatalogInternal(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/catalog.c:3060,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3062,1
    - Dst: getenv
      Src: /src/libxml2/catalog.c:3071,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:3075,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:3083,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:3087,1
    - Dst: xmlStrndup
      Src: /src/libxml2/catalog.c:3089,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:3091,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:3095,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3103,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3055
    functionDepth: 6
    functionLinenumber: 3055
    functionLinenumberEnd: 3106
    functionName: xmlInitializeCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 6
    functionsReached:
    - xmlFree
    - xmlStrndup
    - xmlIsBlank_ch
    - xmlNewCatalogEntry
    - xmlInitParser
    - xmlRMutexUnlock
    - getenv
    - xmlCreateNewCatalog
    - xmlRMutexLock
    linkageType: ''
    returnType: void
    signature: void xmlInitializeCatalog(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/catalog.c:3124,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3126,1
    - Dst: xmlLoadACatalog
      Src: /src/libxml2/catalog.c:3129,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3131,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3136,1
    - Dst: xmlExpandCatalog
      Src: /src/libxml2/catalog.c:3141,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3144
      start: 3118
    functionDepth: 12
    functionLinenumber: 3118
    functionLinenumberEnd: 3144
    functionName: xmlLoadCatalog
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 3
    functionsReached:
    - xmlInitParser
    - xmlRMutexUnlock
    - xmlExpandCatalog
    - xmlRMutexLock
    - xmlLoadACatalog
    linkageType: ''
    returnType: int
    signature: int xmlLoadCatalog(const char *filename)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:3168,1
    - Dst: xmlIsBlank_ch
      Src: /src/libxml2/catalog.c:3171,1
    - Dst: xmlStrndup
      Src: /src/libxml2/catalog.c:3173,1
    - Dst: strlen
      Src: /src/libxml2/catalog.c:3176,1
    - Dst: xmlLoadCatalog
      Src: /src/libxml2/catalog.c:3183,1
    - Dst: xmlFree
      Src: /src/libxml2/catalog.c:3184,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 1
    argNames:
    - pathss
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3190
      start: 3154
    functionDepth: 13
    functionLinenumber: 3154
    functionLinenumberEnd: 3190
    functionName: xmlLoadCatalogs
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 3
    functionsReached:
    - strlen
    - xmlFree
    - xmlLoadCatalog
    - xmlStrndup
    - xmlIsBlank_ch
    linkageType: ''
    returnType: void
    signature: void xmlLoadCatalogs(const char *pathss)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3197,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3199,1
    - Dst: xmlHashFree
      Src: /src/libxml2/catalog.c:3202,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/catalog.c:3205,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3209,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3195
    functionDepth: 5
    functionLinenumber: 3195
    functionLinenumberEnd: 3210
    functionName: xmlCatalogCleanup
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 4
    functionsReached:
    - xmlCatalogPrintDebug
    - xmlHashFree
    - xmlFreeCatalog
    - xmlRMutexUnlock
    - xmlRMutexLock
    linkageType: ''
    returnType: void
    signature: void xmlCatalogCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupRMutex
      Src: /src/libxml2/catalog.c:3217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3215
    functionDepth: 1
    functionLinenumber: 3215
    functionLinenumberEnd: 3218
    functionName: xmlCleanupCatalogInternal
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlCleanupRMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupCatalogInternal(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3232,1
    - Dst: xmlACatalogResolveSystem
      Src: /src/libxml2/catalog.c:3234,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sysID
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3227
    functionDepth: 18
    functionLinenumber: 3227
    functionLinenumberEnd: 3236
    functionName: xmlCatalogResolveSystem
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlInitializeCatalog
    - xmlACatalogResolveSystem
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogResolveSystem(const xmlChar *sysID)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3250,1
    - Dst: xmlACatalogResolvePublic
      Src: /src/libxml2/catalog.c:3252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pubID
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3254
      start: 3245
    functionDepth: 18
    functionLinenumber: 3245
    functionLinenumberEnd: 3254
    functionName: xmlCatalogResolvePublic
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlInitializeCatalog
    - xmlACatalogResolvePublic
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogResolvePublic(const xmlChar *pubID)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3269,1
    - Dst: xmlACatalogResolve
      Src: /src/libxml2/catalog.c:3271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pubID
    - sysID
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3273
      start: 3264
    functionDepth: 18
    functionLinenumber: 3264
    functionLinenumberEnd: 3273
    functionName: xmlCatalogResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlACatalogResolve
    - xmlInitializeCatalog
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogResolve(const xmlChar *pubID, const xmlChar *sysID)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3287,1
    - Dst: xmlACatalogResolveURI
      Src: /src/libxml2/catalog.c:3289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - URI
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3291
      start: 3282
    functionDepth: 19
    functionLinenumber: 3282
    functionLinenumberEnd: 3291
    functionName: xmlCatalogResolveURI
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlACatalogResolveURI
    - xmlInitializeCatalog
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogResolveURI(const xmlChar *URI)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3305,1
    - Dst: xmlACatalogDump
      Src: /src/libxml2/catalog.c:3307,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - out
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3308
      start: 3299
    functionDepth: 7
    functionLinenumber: 3299
    functionLinenumberEnd: 3308
    functionName: xmlCatalogDump
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlInitializeCatalog
    - xmlACatalogDump
    linkageType: ''
    returnType: void
    signature: void xmlCatalogDump(FILE *out)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/catalog.c:3326,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3328,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/catalog.c:3334,1
    - Dst: xmlCreateNewCatalog
      Src: /src/libxml2/catalog.c:3335,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:3338,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3341,1
    - Dst: xmlACatalogAdd
      Src: /src/libxml2/catalog.c:3346,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - type
    - orig
    - replace
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3349
      start: 3322
    functionDepth: 17
    functionLinenumber: 3322
    functionLinenumberEnd: 3349
    functionName: xmlCatalogAdd
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlNewCatalogEntry
    - xmlACatalogAdd
    - xmlInitParser
    - xmlRMutexUnlock
    - xmlCreateNewCatalog
    - xmlRMutexLock
    linkageType: ''
    returnType: int
    signature: int xmlCatalogAdd(const xmlChar *type, const xmlChar *orig, const xmlChar
      *replace)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3362,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3364,1
    - Dst: xmlACatalogRemove
      Src: /src/libxml2/catalog.c:3365,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3368
      start: 3357
    functionDepth: 17
    functionLinenumber: 3357
    functionLinenumberEnd: 3368
    functionName: xmlCatalogRemove
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlInitializeCatalog
    - xmlRMutexUnlock
    - xmlRMutexLock
    - xmlACatalogRemove
    linkageType: ''
    returnType: int
    signature: int xmlCatalogRemove(const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3381,1
    - Dst: xmlRMutexLock
      Src: /src/libxml2/catalog.c:3383,1
    - Dst: xmlConvertSGMLCatalog
      Src: /src/libxml2/catalog.c:3384,1
    - Dst: xmlRMutexUnlock
      Src: /src/libxml2/catalog.c:3385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3387
      start: 3376
    functionDepth: 7
    functionLinenumber: 3376
    functionLinenumberEnd: 3387
    functionName: xmlCatalogConvert
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlInitializeCatalog
    - xmlRMutexUnlock
    - xmlConvertSGMLCatalog
    - xmlRMutexLock
    linkageType: ''
    returnType: int
    signature: int xmlCatalogConvert(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3408
      start: 3405
    functionDepth: 0
    functionLinenumber: 3405
    functionLinenumberEnd: 3408
    functionName: xmlCatalogGetDefaults
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xmlCatalogAllow
    signature: xmlCatalogAllow xmlCatalogGetDefaults(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3424,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3428,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3432,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3436,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - allow
    argTypes:
    - xmlCatalogAllow
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3419
    functionDepth: 2
    functionLinenumber: 3419
    functionLinenumberEnd: 3442
    functionName: xmlCatalogSetDefaults
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 5
    functionsReached:
    - xmlCatalogPrintDebug
    linkageType: ''
    returnType: void
    signature: void xmlCatalogSetDefaults(xmlCatalogAllow allow)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3464,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3468,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - prefer
    argTypes:
    - xmlCatalogPrefer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3477
      start: 3454
    functionDepth: 2
    functionLinenumber: 3454
    functionLinenumberEnd: 3477
    functionName: xmlCatalogSetDefaultPrefer
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached:
    - xmlCatalogPrintDebug
    linkageType: ''
    returnType: xmlCatalogPrefer
    signature: xmlCatalogPrefer xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - level
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3495
      start: 3486
    functionDepth: 0
    functionLinenumber: 3486
    functionLinenumberEnd: 3495
    functionName: xmlCatalogSetDebug
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCatalogSetDebug(int level)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeCatalogEntryList
      Src: /src/libxml2/catalog.c:3514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - catalogs
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3515
      start: 3508
    functionDepth: 4
    functionLinenumber: 3508
    functionLinenumberEnd: 3515
    functionName: xmlCatalogFreeLocal
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 3
    functionsReached:
    - xmlFreeCatalogEntryList
    linkageType: ''
    returnType: void
    signature: void xmlCatalogFreeLocal(void *catalogs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/catalog.c:3529,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3535,1
    - Dst: xmlNewCatalogEntry
      Src: /src/libxml2/catalog.c:3538,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - catalogs
    - URL
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3551
      start: 3525
    functionDepth: 4
    functionLinenumber: 3525
    functionLinenumberEnd: 3551
    functionName: xmlCatalogAddLocal
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlNewCatalogEntry
    - xmlCatalogPrintDebug
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCatalogAddLocal(void *catalogs, const xmlChar *URL)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3574,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3577,1
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3580,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:3588,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 3
    argNames:
    - catalogs
    - pubID
    - sysID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3592
      start: 3563
    functionDepth: 17
    functionLinenumber: 3563
    functionLinenumberEnd: 3592
    functionName: xmlCatalogLocalResolve
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlCatalogListXMLResolve
    - xmlCatalogPrintDebug
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlCatalogLocalResolve(void *catalogs, const xmlChar *pubID,\n\t
      \              const xmlChar *sysID)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlCatalogPrintDebug
      Src: /src/libxml2/catalog.c:3612,1
    - Dst: xmlCatalogListXMLResolveURI
      Src: /src/libxml2/catalog.c:3618,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - catalogs
    - URI
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3622
      start: 3603
    functionDepth: 18
    functionLinenumber: 3603
    functionLinenumberEnd: 3622
    functionName: xmlCatalogLocalResolveURI
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 2
    functionsReached:
    - xmlCatalogListXMLResolveURI
    - xmlCatalogPrintDebug
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogLocalResolveURI(void *catalogs, const xmlChar *URI)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3644,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/catalog.c:3647,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:3659,1
    - Dst: snprintf
      Src: /src/libxml2/catalog.c:3661,1
    - Dst: xmlCatalogGetSGMLSystem
      Src: /src/libxml2/catalog.c:3669,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - sysID
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3672
      start: 3637
    functionDepth: 17
    functionLinenumber: 3637
    functionLinenumberEnd: 3672
    functionName: xmlCatalogGetSystem
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogListXMLResolve
    - xmlPrintErrorMessage
    - xmlCatalogGetSGMLSystem
    - snprintf
    - xmlInitializeCatalog
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogGetSystem(const xmlChar *sysID)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/catalog.c:3689,1
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/catalog.c:3692,1
    - Dst: xmlCatalogListXMLResolve
      Src: /src/libxml2/catalog.c:3704,1
    - Dst: snprintf
      Src: /src/libxml2/catalog.c:3706,1
    - Dst: xmlCatalogGetSGMLPublic
      Src: /src/libxml2/catalog.c:3714,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - pubID
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3717
      start: 3682
    functionDepth: 17
    functionLinenumber: 3682
    functionLinenumberEnd: 3717
    functionName: xmlCatalogGetPublic
    functionSourceFile: /src/libxml2/catalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogListXMLResolve
    - xmlPrintErrorMessage
    - snprintf
    - xmlInitializeCatalog
    - xmlCatalogGetSGMLPublic
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCatalogGetPublic(const xmlChar *pubID)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/SAX2.c:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: xmlSAX2ErrMemory
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    linkageType: ''
    returnType: void
    signature: void xmlSAX2ErrMemory(xmlParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 6
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: xmlErrValid
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlErrValid(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n            const
      char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 6
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: xmlFatalErrMsg
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 36
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlFatalErrMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \              const char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - str1
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 6
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: xmlErrId
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlErrId(xmlParserCtxtPtr ctxt, xmlParserErrors error, const
      char *msg,\n         const xmlChar *str1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - str1
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 6
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: xmlWarnMsg
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlWarnMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n               const
      char *msg, const xmlChar *str1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 126
    functionDepth: 6
    functionLinenumber: 126
    functionLinenumberEnd: 131
    functionName: xmlNsWarnMsg
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlNsWarnMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \            const char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 144
    functionName: xmlSAX2GetPublicId
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSAX2GetPublicId(void *ctx ATTRIBUTE_UNUSED)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 159
    functionName: xmlSAX2GetSystemId
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSAX2GetSystemId(void *ctx)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionName: xmlSAX2GetLineNumber
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAX2GetLineNumber(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 187
    functionName: xmlSAX2GetColumnNumber
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAX2GetColumnNumber(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionName: xmlSAX2IsStandalone
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAX2IsStandalone(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: xmlSAX2HasInternalSubset
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAX2HasInternalSubset(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 229
    functionName: xmlSAX2HasExternalSubset
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAX2HasExternalSubset(void *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/SAX2.c:251,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/SAX2.c:253,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/SAX2.c:254,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/SAX2.c:258,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:260,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 239
    functionDepth: 4
    functionLinenumber: 239
    functionLinenumberEnd: 261
    functionName: xmlSAX2InternalSubset
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlGetIntSubset
    - xmlUnlinkNode
    - xmlFreeDtd
    - xmlSAX2ErrMemory
    - xmlCreateIntSubset
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2InternalSubset(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserCtxtPtr::sax::resolveEntity
      Src: /src/libxml2/SAX2.c:302,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/SAX2.c:308,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:309,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/SAX2.c:310,1
    - Dst: xmlMalloc
      Src: /src/libxml2/SAX2.c:324,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:326,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/SAX2.c:332,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/SAX2.c:336,1
    - Dst: xmlParseExternalSubset
      Src: /src/libxml2/SAX2.c:346,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/SAX2.c:353,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/SAX2.c:353,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/SAX2.c:367,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:368,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:378,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 62
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 271
    functionDepth: 11
    functionLinenumber: 271
    functionLinenumberEnd: 382
    functionName: xmlSAX2ExternalSubset
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlFree
    - xmlNewDtd
    - xmlSAX2ErrMemory
    - xmlParserCtxtPtr::sax::resolveEntity
    - xmlMalloc
    - xmlParseExternalSubset
    - xmlCanonicPath
    - xmlCtxtPopInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2ExternalSubset(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/SAX2.c:417,1
    - Dst: xmlStrlen
      Src: /src/libxml2/SAX2.c:418,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/SAX2.c:419,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/SAX2.c:422,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:425,1
    - Dst: xmlWarnMsg
      Src: /src/libxml2/SAX2.c:427,1
    - Dst: xmlStrlen
      Src: /src/libxml2/SAX2.c:431,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/SAX2.c:432,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:433,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/SAX2.c:438,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:441,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 393
    functionDepth: 9
    functionLinenumber: 393
    functionLinenumberEnd: 443
    functionName: xmlSAX2ResolveEntity
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlLoadResource
    - xmlWarnMsg
    - xmlFree
    - xmlStrlen
    - xmlSAX2ErrMemory
    - xmlBuildURISafe
    - xmlFatalErr
    linkageType: ''
    returnType: xmlParserInput
    signature: "xmlParserInput *\nxmlSAX2ResolveEntity(void *ctx, const xmlChar *publicId,\n
      \                    const xmlChar *systemId)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/SAX2.c:461,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/SAX2.c:468,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/SAX2.c:471,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/SAX2.c:474,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:476,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/SAX2.c:484,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 487
    functionName: xmlSAX2GetEntity
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 3
    functionsReached:
    - xmlGetPredefinedEntity
    - xmlFatalErrMsg
    - xmlGetDocEntity
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlSAX2GetEntity(void *ctx, const xmlChar *name)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetParameterEntity
      Src: /src/libxml2/SAX2.c:504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 506
    functionName: xmlSAX2GetParameterEntity
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlGetParameterEntity
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlSAX2GetParameterEntity(void *ctx, const xmlChar *name)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddEntity
      Src: /src/libxml2/SAX2.c:532,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:538,1
    - Dst: xmlWarnMsg
      Src: /src/libxml2/SAX2.c:543,1
    - Dst: xmlWarnMsg
      Src: /src/libxml2/SAX2.c:546,1
    - Dst: xmlWarnMsg
      Src: /src/libxml2/SAX2.c:555,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:559,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/SAX2.c:584,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:588,1
    - Dst: xmlWarnMsg
      Src: /src/libxml2/SAX2.c:590,1
    - Dst: xmlStrlen
      Src: /src/libxml2/SAX2.c:593,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/SAX2.c:594,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:595,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 6
    argNames:
    - ctx
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 519
    functionDepth: 9
    functionLinenumber: 519
    functionLinenumberEnd: 600
    functionName: xmlSAX2EntityDecl
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlAddEntity
    - xmlWarnMsg
    - xmlFree
    - xmlStrlen
    - xmlSAX2ErrMemory
    - xmlFatalErrMsg
    - xmlBuildURISafe
    - xmlFatalErr
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2EntityDecl(void *ctx, const xmlChar *name, int type,\n
      \         const xmlChar *publicId, const xmlChar *systemId, xmlChar *content)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:629,1
    - Dst: xmlErrId
      Src: /src/libxml2/SAX2.c:631,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/SAX2.c:634,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:636,1
    - Dst: xmlAddAttributeDecl
      Src: /src/libxml2/SAX2.c:639,1
    - Dst: xmlAddAttributeDecl
      Src: /src/libxml2/SAX2.c:643,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:647,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:650,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/SAX2.c:651,1
    - Dst: xmlValidateAttributeDecl
      Src: /src/libxml2/SAX2.c:659,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:663,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 7
    argNames:
    - ctx
    - elem
    - fullname
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumeration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 613
    functionDepth: 7
    functionLinenumber: 613
    functionLinenumberEnd: 664
    functionName: xmlSAX2AttributeDecl
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlStrEqual
    - xmlFree
    - xmlSAX2ErrMemory
    - xmlFatalErrMsg
    - xmlFreeEnumeration
    - xmlErrId
    - xmlValidateAttributeDecl
    - xmlAddAttributeDecl
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2AttributeDecl(void *ctx, const xmlChar *elem, const xmlChar
      *fullname,\n              int type, int def, const xmlChar *defaultValue,\n\t
      \     xmlEnumeration *tree)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddElementDecl
      Src: /src/libxml2/SAX2.c:688,1
    - Dst: xmlAddElementDecl
      Src: /src/libxml2/SAX2.c:691,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:694,1
    - Dst: xmlValidateElementDecl
      Src: /src/libxml2/SAX2.c:705,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - name
    - type
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 707
    functionName: xmlSAX2ElementDecl
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlValidateElementDecl
    - xmlAddElementDecl
    - xmlFatalErrMsg
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2ElementDecl(void *ctx, const xmlChar * name, int type,\n
      \           xmlElementContent *content)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:731,1
    - Dst: xmlAddNotationDecl
      Src: /src/libxml2/SAX2.c:736,1
    - Dst: xmlAddNotationDecl
      Src: /src/libxml2/SAX2.c:739,1
    - Dst: xmlFatalErrMsg
      Src: /src/libxml2/SAX2.c:742,1
    - Dst: xmlValidateNotationDecl
      Src: /src/libxml2/SAX2.c:751,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 717
    functionDepth: 1
    functionLinenumber: 717
    functionLinenumberEnd: 754
    functionName: xmlSAX2NotationDecl
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlAddNotationDecl
    - xmlFatalErrMsg
    - xmlValidateNotationDecl
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2NotationDecl(void *ctx, const xmlChar *name,\n\t     const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2EntityDecl
      Src: /src/libxml2/SAX2.c:770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    - notationName
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 765
    functionDepth: 10
    functionLinenumber: 765
    functionLinenumberEnd: 772
    functionName: xmlSAX2UnparsedEntityDecl
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlSAX2EntityDecl
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2UnparsedEntityDecl(void *ctx, const xmlChar *name,\n\t\t
      \  const xmlChar *publicId, const xmlChar *systemId,\n\t\t   const xmlChar *notationName)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlSAXLocator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 784
    functionName: xmlSAX2SetDocumentLocator
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSAX2SetDocumentLocator(void *ctx ATTRIBUTE_UNUSED, xmlSAXLocator
      *loc ATTRIBUTE_UNUSED)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/SAX2.c:802,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:804,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/SAX2.c:812,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:820,1
    - Dst: xmlDictReference
      Src: /src/libxml2/SAX2.c:825,1
    - Dst: xmlPathToURI
      Src: /src/libxml2/SAX2.c:830,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:832,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 791
    functionDepth: 4
    functionLinenumber: 791
    functionLinenumberEnd: 834
    functionName: xmlSAX2StartDocument
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlNewDoc
    - xmlSAX2ErrMemory
    - xmlPathToURI
    - htmlNewDocNoDtD
    - xmlDictReference
    linkageType: ''
    returnType: void
    signature: void xmlSAX2StartDocument(void *ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateDocumentFinal
      Src: /src/libxml2/SAX2.c:851,1
    - Dst: xmlGetActualEncoding
      Src: /src/libxml2/SAX2.c:859,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:862,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:864,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/SAX2.c:872,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:876,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 32
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 841
    functionDepth: 4
    functionLinenumber: 841
    functionLinenumberEnd: 892
    functionName: xmlSAX2EndDocument
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlGetActualEncoding
    - xmlSAX2ErrMemory
    - xmlCreateIntSubset
    - xmlValidateDocumentFinal
    linkageType: ''
    returnType: void
    signature: void xmlSAX2EndDocument(void *ctx)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 894
    functionDepth: 0
    functionLinenumber: 894
    functionLinenumberEnd: 927
    functionName: xmlSAX2AppendChild
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSAX2AppendChild(xmlParserCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 940
    functionDepth: 6
    functionLinenumber: 940
    functionLinenumberEnd: 945
    functionName: xmlNsErrMsg
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void xmlNsErrMsg(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n            const
      char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/SAX2.c:969,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:971,1
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/SAX2.c:989,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:991,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/SAX2.c:1001,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1002,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:1004,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:1008,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/SAX2.c:1012,1
    - Dst: xmlNewNs
      Src: /src/libxml2/SAX2.c:1017,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1019,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/SAX2.c:1028,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1033,1
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/SAX2.c:1046,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1048,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1049,1
    - Dst: xmlNsErrMsg
      Src: /src/libxml2/SAX2.c:1057,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/SAX2.c:1063,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1064,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:1066,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:1070,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/SAX2.c:1073,1
    - Dst: xmlNewNs
      Src: /src/libxml2/SAX2.c:1078,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1079,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1082,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/SAX2.c:1091,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1096,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/SAX2.c:1103,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1105,1
    - Dst: xmlNsErrMsg
      Src: /src/libxml2/SAX2.c:1108,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1117,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1119,1
    - Dst: xmlCtxtErr
      Src: /src/libxml2/SAX2.c:1120,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/SAX2.c:1136,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1138,1
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/SAX2.c:1143,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1144,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/SAX2.c:1146,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1148,1
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/SAX2.c:1167,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:1170,1
    - Dst: xmlValidCtxtNormalizeAttributeValue
      Src: /src/libxml2/SAX2.c:1180,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1184,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:1188,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1190,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:1202,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1220,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/SAX2.c:1226,1
    - Dst: xmlErrId
      Src: /src/libxml2/SAX2.c:1227,1
    - Dst: xmlAddID
      Src: /src/libxml2/SAX2.c:1231,1
    - Dst: xmlIsID
      Src: /src/libxml2/SAX2.c:1233,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/SAX2.c:1236,1
    - Dst: xmlAddID
      Src: /src/libxml2/SAX2.c:1238,1
    - Dst: xmlIsRef
      Src: /src/libxml2/SAX2.c:1239,1
    - Dst: xmlAddRef
      Src: /src/libxml2/SAX2.c:1240,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1246,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 157
    argCount: 4
    argNames:
    - ctxt
    - fullname
    - value
    - prefix
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1247
      start: 957
    functionDepth: 8
    functionLinenumber: 957
    functionLinenumberEnd: 1247
    functionName: xmlSAX1Attribute
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlSearchNsSafe
    - xmlSAX2ErrMemory
    - xmlExpandEntitiesInAttValue
    - xmlIsID
    - xmlSplitQName4
    - xmlValidateNCName
    - xmlFree
    - xmlValidateOneAttribute
    - xmlAddID
    - xmlParseURISafe
    - xmlIsRef
    - xmlNodeParseAttValue
    - xmlNewNs
    - xmlFreeURI
    - xmlNewNsProp
    - xmlNsErrMsg
    - xmlAddRef
    - xmlStrEqual
    - xmlValidateOneNamespace
    - xmlNewDocText
    - xmlErrId
    - xmlCtxtErrMemory
    - xmlCtxtErr
    - xmlValidCtxtNormalizeAttributeValue
    - xmlNsWarnMsg
    linkageType: ''
    returnType: void
    signature: "void xmlSAX1Attribute(xmlParserCtxtPtr ctxt, const xmlChar *fullname,\n
      \                const xmlChar *value, const xmlChar *prefix)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/SAX2.c:1263,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/SAX2.c:1265,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/SAX2.c:1287,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/SAX2.c:1290,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:1296,1
    - Dst: xmlStrcat
      Src: /src/libxml2/SAX2.c:1298,1
    - Dst: xmlStrcat
      Src: /src/libxml2/SAX2.c:1300,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:1302,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1305,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1318,1
    - Dst: xmlErrValid
      Src: /src/libxml2/SAX2.c:1325,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1330,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1357,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1359,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/SAX2.c:1363,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/SAX2.c:1370,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1372,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1385,1
    - Dst: xmlSAX1Attribute
      Src: /src/libxml2/SAX2.c:1392,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1396,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/SAX2.c:1403,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 83
    argCount: 4
    argNames:
    - ctxt
    - name
    - prefix
    - atts
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1409
      start: 1255
    functionDepth: 9
    functionLinenumber: 1255
    functionLinenumberEnd: 1409
    functionName: xmlCheckDefaultedAttributes
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlBuildQName
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xmlSAX2ErrMemory
    - xmlGetDtdQAttrDesc
    - xmlErrValid
    - xmlSAX1Attribute
    - xmlStrcat
    - xmlGetDtdQElementDesc
    linkageType: ''
    returnType: void
    signature: "void xmlCheckDefaultedAttributes(xmlParserCtxtPtr ctxt, const xmlChar
      *name,\n\tconst xmlChar *prefix, const xmlChar **atts)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValid
      Src: /src/libxml2/SAX2.c:1445,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/SAX2.c:1454,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1456,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/SAX2.c:1465,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1467,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1468,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:1481,1
    - Dst: nodePush
      Src: /src/libxml2/SAX2.c:1486,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/SAX2.c:1487,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/SAX2.c:1488,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1490,1
    - Dst: xmlCheckDefaultedAttributes
      Src: /src/libxml2/SAX2.c:1500,1
    - Dst: xmlSAX1Attribute
      Src: /src/libxml2/SAX2.c:1513,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/SAX2.c:1524,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1526,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/SAX2.c:1528,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1530,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:1533,1
    - Dst: xmlNewNs
      Src: /src/libxml2/SAX2.c:1536,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1538,1
    - Dst: xmlSetNs
      Src: /src/libxml2/SAX2.c:1547,1
    - Dst: xmlSAX1Attribute
      Src: /src/libxml2/SAX2.c:1559,1
    - Dst: xmlValidateDtdFinal
      Src: /src/libxml2/SAX2.c:1578,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/SAX2.c:1583,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1589,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 82
    argCount: 3
    argNames:
    - ctx
    - fullname
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1591
      start: 1420
    functionDepth: 10
    functionLinenumber: 1420
    functionLinenumberEnd: 1591
    functionName: xmlSAX1StartElement
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName4
    - xmlNewDocNode
    - xmlUnlinkNode
    - xmlSearchNsSafe
    - xmlFree
    - xmlValidateDtdFinal
    - xmlSAX2ErrMemory
    - xmlErrValid
    - xmlSAX1Attribute
    - nodePush
    - xmlNewNs
    - xmlSAX2AppendChild
    - xmlCheckDefaultedAttributes
    - xmlValidateRoot
    - xmlNsWarnMsg
    - xmlFreeNode
    - xmlSetNs
    linkageType: ''
    returnType: void
    signature: void xmlSAX1StartElement(void *ctx, const xmlChar *fullname, const
      xmlChar **atts)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewNsProp
      Src: /src/libxml2/SAX2.c:1601,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1603,1
    - Dst: htmlIsBooleanAttr
      Src: /src/libxml2/SAX2.c:1607,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:1608,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1610,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/SAX2.c:1617,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1619,1
    - Dst: xmlIsID
      Src: /src/libxml2/SAX2.c:1634,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/SAX2.c:1637,1
    - Dst: xmlAddID
      Src: /src/libxml2/SAX2.c:1639,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1643,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 3
    argNames:
    - ctxt
    - fullname
    - value
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1595
    functionDepth: 4
    functionLinenumber: 1595
    functionLinenumberEnd: 1644
    functionName: xmlSAX2HtmlAttribute
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCtxtErrMemory
    - xmlFree
    - xmlSAX2ErrMemory
    - xmlAddID
    - xmlNewDocText
    - htmlIsBooleanAttr
    - xmlNewNsProp
    - xmlIsID
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2HtmlAttribute(xmlParserCtxtPtr ctxt, const xmlChar *fullname,\n
      \                    const xmlChar *value)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/SAX2.c:1662,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1664,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:1677,1
    - Dst: nodePush
      Src: /src/libxml2/SAX2.c:1682,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/SAX2.c:1683,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/SAX2.c:1684,1
    - Dst: xmlSAX2HtmlAttribute
      Src: /src/libxml2/SAX2.c:1693,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - ctxt
    - fullname
    - atts
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1698
      start: 1653
    functionDepth: 5
    functionLinenumber: 1653
    functionLinenumberEnd: 1698
    functionName: xmlSAX2StartHtmlElement
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlUnlinkNode
    - xmlSAX2HtmlAttribute
    - xmlSAX2ErrMemory
    - nodePush
    - xmlSAX2AppendChild
    - xmlFreeNode
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2StartHtmlElement(xmlParserCtxtPtr ctxt, const xmlChar
      *fullname,\n                        const xmlChar **atts)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX1StartElement
      Src: /src/libxml2/SAX2.c:1723,1
    - Dst: xmlSAX2StartHtmlElement
      Src: /src/libxml2/SAX2.c:1730,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - fullname
    - atts
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1734
      start: 1712
    functionDepth: 11
    functionLinenumber: 1712
    functionLinenumberEnd: 1734
    functionName: xmlSAX2StartElement
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX1StartElement
    - xmlSAX2StartHtmlElement
    linkageType: ''
    returnType: void
    signature: void xmlSAX2StartElement(void *ctx, const xmlChar *fullname, const
      xmlChar **atts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateOneElement
      Src: /src/libxml2/SAX2.c:1757,1
    - Dst: nodePop
      Src: /src/libxml2/SAX2.c:1767,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1746
    functionDepth: 1
    functionLinenumber: 1746
    functionLinenumberEnd: 1769
    functionName: xmlSAX2EndElement
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlValidateOneElement
    - nodePop
    linkageType: ''
    returnType: void
    signature: void xmlSAX2EndElement(void *ctx, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/SAX2.c:1795,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/SAX2.c:1798,1
    - Dst: memset
      Src: /src/libxml2/SAX2.c:1801,1
    - Dst: memcpy
      Src: /src/libxml2/SAX2.c:1813,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/SAX2.c:1818,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1820,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1821,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/SAX2.c:1824,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/SAX2.c:1829,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/SAX2.c:1831,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1833,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1834,1
    - Dst: xmlStrndup
      Src: /src/libxml2/SAX2.c:1845,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1847,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:1848,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/SAX2.c:1855,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 58
    argCount: 4
    argNames:
    - ctxt
    - doc
    - str
    - len
    argTypes:
    - xmlParserCtxtPtr
    - xmlDocPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1781
    functionDepth: 4
    functionLinenumber: 1781
    functionLinenumberEnd: 1857
    functionName: xmlSAX2TextNode
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    - IS_BLANK_CH
    - xmlFree
    - xmlSAX2ErrMemory
    - xmlRegisterNodeDefaultValue
    - xmlStrndup
    - xmlMalloc
    - memcpy
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSAX2TextNode(xmlParserCtxtPtr ctxt, xmlDocPtr doc, const
      xmlChar *str,\n                int len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlExpandEntitiesInAttValue
      Src: /src/libxml2/SAX2.c:1885,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctxt
    - str
    - end
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1869
    functionDepth: 5
    functionLinenumber: 1869
    functionLinenumberEnd: 1886
    functionName: xmlSAX2DecodeAttrEntities
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlExpandEntitiesInAttValue
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSAX2DecodeAttrEntities(xmlParserCtxtPtr ctxt, const
      xmlChar *str,\n                          const xmlChar *end)"
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:1918,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/SAX2.c:1921,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1923,1
    - Dst: xmlMalloc
      Src: /src/libxml2/SAX2.c:1935,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1937,1
    - Dst: memset
      Src: /src/libxml2/SAX2.c:1942,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:1961,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1963,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/SAX2.c:1967,1
    - Dst: xmlSAX2TextNode
      Src: /src/libxml2/SAX2.c:1978,1
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/SAX2.c:1985,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:1987,1
    - Dst: xmlSAX2TextNode
      Src: /src/libxml2/SAX2.c:1992,1
    - Dst: xmlSAX2DecodeAttrEntities
      Src: /src/libxml2/SAX2.c:2008,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:2011,1
    - Dst: xmlStrndup
      Src: /src/libxml2/SAX2.c:2019,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2021,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:2023,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/SAX2.c:2039,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2041,1
    - Dst: xmlValidCtxtNormalizeAttributeValue
      Src: /src/libxml2/SAX2.c:2044,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:2051,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:2053,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:2059,1
    - Dst: xmlStrndup
      Src: /src/libxml2/SAX2.c:2067,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2069,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/SAX2.c:2080,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/SAX2.c:2106,1
    - Dst: xmlErrId
      Src: /src/libxml2/SAX2.c:2107,1
    - Dst: xmlAddID
      Src: /src/libxml2/SAX2.c:2111,1
    - Dst: xmlIsID
      Src: /src/libxml2/SAX2.c:2113,1
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/SAX2.c:2116,1
    - Dst: xmlAddID
      Src: /src/libxml2/SAX2.c:2118,1
    - Dst: xmlIsRef
      Src: /src/libxml2/SAX2.c:2119,1
    - Dst: xmlAddRef
      Src: /src/libxml2/SAX2.c:2120,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:2124,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 116
    argCount: 5
    argNames:
    - ctxt
    - localname
    - prefix
    - value
    - valueend
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2127
      start: 1902
    functionDepth: 7
    functionLinenumber: 1902
    functionLinenumberEnd: 2127
    functionName: xmlSAX2AttributeNs
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSearchNsSafe
    - xmlSAX2ErrMemory
    - xmlIsID
    - xmlValidateNCName
    - xmlFree
    - xmlValidateOneAttribute
    - xmlAddID
    - xmlIsRef
    - xmlMalloc
    - xmlNodeParseAttValue
    - xmlBuildQName
    - xmlSAX2TextNode
    - xmlAddRef
    - xmlStrEqual
    - xmlErrId
    - xmlSAX2DecodeAttrEntities
    - memset
    - xmlCtxtErrMemory
    - xmlRegisterNodeDefaultValue
    - xmlStrndup
    - xmlValidCtxtNormalizeAttributeValue
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xmlSAX2AttributeNs(xmlParserCtxtPtr ctxt,\n                   const
      xmlChar * localname,\n                   const xmlChar * prefix,\n\t\t   const
      xmlChar * value,\n\t\t   const xmlChar * valueend)"
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValid
      Src: /src/libxml2/SAX2.c:2177,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/SAX2.c:2190,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2192,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/SAX2.c:2197,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2199,1
    - Dst: memset
      Src: /src/libxml2/SAX2.c:2211,1
    - Dst: xmlStrdup
      Src: /src/libxml2/SAX2.c:2219,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2223,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:2224,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/SAX2.c:2229,1
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxml2/SAX2.c:2232,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/SAX2.c:2235,1
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxml2/SAX2.c:2237,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2239,1
    - Dst: xmlNewNs
      Src: /src/libxml2/SAX2.c:2250,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2261,1
    - Dst: xmlParserNsUpdateSax
      Src: /src/libxml2/SAX2.c:2265,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/SAX2.c:2270,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:2280,1
    - Dst: nodePush
      Src: /src/libxml2/SAX2.c:2285,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/SAX2.c:2286,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/SAX2.c:2287,1
    - Dst: xmlParserNsLookupSax
      Src: /src/libxml2/SAX2.c:2303,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/SAX2.c:2304,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/SAX2.c:2307,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2309,1
    - Dst: xmlNewNs
      Src: /src/libxml2/SAX2.c:2312,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2315,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:2319,1
    - Dst: xmlNsWarnMsg
      Src: /src/libxml2/SAX2.c:2323,1
    - Dst: xmlDictQLookup
      Src: /src/libxml2/SAX2.c:2345,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2348,1
    - Dst: xmlSAX2AttributeNs
      Src: /src/libxml2/SAX2.c:2351,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/SAX2.c:2356,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2359,1
    - Dst: xmlSAX2AttributeNs
      Src: /src/libxml2/SAX2.c:2362,1
    - Dst: xmlFree
      Src: /src/libxml2/SAX2.c:2365,1
    - Dst: xmlSAX2AttributeNs
      Src: /src/libxml2/SAX2.c:2369,1
    - Dst: xmlValidateDtdFinal
      Src: /src/libxml2/SAX2.c:2396,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/SAX2.c:2401,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 150
    argCount: 9
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2405
      start: 2145
    functionDepth: 8
    functionLinenumber: 2145
    functionLinenumberEnd: 2405
    functionName: xmlSAX2StartElementNs
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlUnlinkNode
    - xmlSearchNsSafe
    - xmlSAX2ErrMemory
    - xmlParserNsLookupSax
    - xmlFree
    - xmlNewNs
    - xmlSAX2AppendChild
    - xmlFreeNode
    - xmlNewDocNodeEatName
    - xmlBuildQName
    - xmlStrEqual
    - xmlValidateOneNamespace
    - nodePush
    - xmlSAX2AttributeNs
    - xmlValidateRoot
    - xmlParserNsUpdateSax
    - memset
    - xmlNewDocNode
    - xmlDictQLookup
    - xmlValidateDtdFinal
    - xmlRegisterNodeDefaultValue
    - xmlErrValid
    - xmlNsWarnMsg
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2StartElementNs(void *ctx,\n                      const
      xmlChar *localname,\n\t\t      const xmlChar *prefix,\n\t\t      const xmlChar
      *URI,\n\t\t      int nb_namespaces,\n\t\t      const xmlChar **namespaces,\n\t\t
      \     int nb_attributes,\n\t\t      int nb_defaulted,\n\t\t      const xmlChar
      **attributes)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateOneElement
      Src: /src/libxml2/SAX2.c:2430,1
    - Dst: nodePop
      Src: /src/libxml2/SAX2.c:2437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2438
      start: 2416
    functionDepth: 1
    functionLinenumber: 2416
    functionLinenumberEnd: 2438
    functionName: xmlSAX2EndElementNs
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlValidateOneElement
    - nodePop
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2EndElementNs(void *ctx,\n                    const xmlChar
      * localname ATTRIBUTE_UNUSED,\n                    const xmlChar * prefix ATTRIBUTE_UNUSED,\n\t\t
      \   const xmlChar * URI ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewReference
      Src: /src/libxml2/SAX2.c:2453,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2455,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:2459,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2460
      start: 2446
    functionDepth: 4
    functionLinenumber: 2446
    functionLinenumberEnd: 2460
    functionName: xmlSAX2Reference
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX2ErrMemory
    - xmlNewReference
    - xmlSAX2AppendChild
    linkageType: ''
    returnType: void
    signature: void xmlSAX2Reference(void *ctx, const xmlChar *name)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2TextNode
      Src: /src/libxml2/SAX2.c:2498,1
    - Dst: xmlNewCDataBlock
      Src: /src/libxml2/SAX2.c:2500,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2502,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:2511,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/SAX2.c:2530,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/SAX2.c:2536,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/SAX2.c:2555,1
    - Dst: xmlMalloc
      Src: /src/libxml2/SAX2.c:2558,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2560,1
    - Dst: memcpy
      Src: /src/libxml2/SAX2.c:2564,1
    - Dst: xmlRealloc
      Src: /src/libxml2/SAX2.c:2568,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2570,1
    - Dst: memcpy
      Src: /src/libxml2/SAX2.c:2579,1
    - Dst: XML_INT_TO_PTR
      Src: /src/libxml2/SAX2.c:2592,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 73
    argCount: 4
    argNames:
    - ctxt
    - ch
    - len
    - type
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - int
    - xmlElementType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2595
      start: 2470
    functionDepth: 7
    functionLinenumber: 2470
    functionLinenumberEnd: 2595
    functionName: xmlSAX2Text
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 0
    functionsReached:
    - xmlSAX2TextNode
    - xmlRealloc
    - xmlSAX2ErrMemory
    - xmlNewCDataBlock
    - xmlMalloc
    - xmlFatalErr
    - xmlSAX2AppendChild
    - xmlDictOwns
    - memcpy
    - XML_INT_TO_PTR
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2Text(xmlParserCtxtPtr ctxt, const xmlChar *ch, int len,\n
      \           xmlElementType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2Text
      Src: /src/libxml2/SAX2.c:2607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2608
      start: 2604
    functionDepth: 8
    functionLinenumber: 2604
    functionLinenumberEnd: 2608
    functionName: xmlSAX2Characters
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX2Text
    linkageType: ''
    returnType: void
    signature: void xmlSAX2Characters(void *ctx, const xmlChar *ch, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2621
      start: 2618
    functionDepth: 0
    functionLinenumber: 2618
    functionLinenumberEnd: 2621
    functionName: xmlSAX2IgnorableWhitespace
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSAX2IgnorableWhitespace(void *ctx ATTRIBUTE_UNUSED, const xmlChar
      *ch ATTRIBUTE_UNUSED, int len ATTRIBUTE_UNUSED)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocPI
      Src: /src/libxml2/SAX2.c:2639,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2641,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:2645,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2646
      start: 2630
    functionDepth: 4
    functionLinenumber: 2630
    functionLinenumberEnd: 2646
    functionName: xmlSAX2ProcessingInstruction
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX2ErrMemory
    - xmlNewDocPI
    - xmlSAX2AppendChild
    linkageType: ''
    returnType: void
    signature: "void xmlSAX2ProcessingInstruction(void *ctx, const xmlChar *target,\n
      \                     const xmlChar *data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocComment
      Src: /src/libxml2/SAX2.c:2662,1
    - Dst: xmlSAX2ErrMemory
      Src: /src/libxml2/SAX2.c:2664,1
    - Dst: xmlSAX2AppendChild
      Src: /src/libxml2/SAX2.c:2668,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2654
    functionDepth: 4
    functionLinenumber: 2654
    functionLinenumberEnd: 2669
    functionName: xmlSAX2Comment
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX2ErrMemory
    - xmlNewDocComment
    - xmlSAX2AppendChild
    linkageType: ''
    returnType: void
    signature: void xmlSAX2Comment(void *ctx, const xmlChar *value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAX2Text
      Src: /src/libxml2/SAX2.c:2681,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - value
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2678
    functionDepth: 8
    functionLinenumber: 2678
    functionLinenumberEnd: 2682
    functionName: xmlSAX2CDataBlock
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached:
    - xmlSAX2Text
    linkageType: ''
    returnType: void
    signature: void xmlSAX2CDataBlock(void *ctx, const xmlChar *value, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - version
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2699
      start: 2693
    functionDepth: 0
    functionLinenumber: 2693
    functionLinenumberEnd: 2699
    functionName: xmlSAXDefaultVersion
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAXDefaultVersion(int version)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 43
    argCount: 2
    argNames:
    - hdlr
    - version
    argTypes:
    - xmlSAXHandler*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2709
    functionDepth: 0
    functionLinenumber: 2709
    functionLinenumberEnd: 2758
    functionName: xmlSAXVersion
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSAXVersion(xmlSAXHandler *hdlr, int version)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSAXVersion
      Src: /src/libxml2/SAX2.c:2772,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - hdlr
    - warning
    argTypes:
    - xmlSAXHandler*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2766
    functionDepth: 1
    functionLinenumber: 2766
    functionLinenumberEnd: 2775
    functionName: xmlSAX2InitDefaultSAXHandler
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 3
    functionsReached:
    - xmlSAXVersion
    linkageType: ''
    returnType: void
    signature: void xmlSAX2InitDefaultSAXHandler(xmlSAXHandler *hdlr, int warning)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2787
      start: 2784
    functionDepth: 0
    functionLinenumber: 2784
    functionLinenumberEnd: 2787
    functionName: xmlDefaultSAXHandlerInit
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlDefaultSAXHandlerInit(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 1
    argNames:
    - hdlr
    argTypes:
    - xmlSAXHandler*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2831
      start: 2796
    functionDepth: 0
    functionLinenumber: 2796
    functionLinenumberEnd: 2831
    functionName: xmlSAX2InitHtmlDefaultSAXHandler
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2840
      start: 2837
    functionDepth: 0
    functionLinenumber: 2837
    functionLinenumberEnd: 2840
    functionName: htmlDefaultSAXHandlerInit
    functionSourceFile: /src/libxml2/SAX2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void htmlDefaultSAXHandlerInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dest
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: va_copy
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: va_copy(dest, src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:54,1
    - Dst: memcpy
      Src: /src/libxml2/xmlstring.c:58,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - cur
    - len
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: xmlStrndup
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 47
    functionsReached:
    - xmlMalloc
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrndup(const xmlChar *cur, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlstring.c:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: xmlStrdup
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 129
    functionsReached:
    - xmlStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrdup(const xmlChar *cur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:94,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - cur
    - len
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 105
    functionName: xmlCharStrndup
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCharStrndup(const char *cur, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharStrndup
      Src: /src/libxml2/xmlstring.c:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - cur
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: xmlCharStrdup
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 6
    functionsReached:
    - xmlCharStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlCharStrdup(const char *cur)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmlstring.c:137,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - str1
    - str2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 145
    functionName: xmlStrcmp
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 15
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlStrcmp(const xmlChar *str1, const xmlChar *str2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmlstring.c:162,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - str1
    - str2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 169
    functionName: xmlStrEqual
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 189
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlStrEqual(const xmlChar *str1, const xmlChar *str2)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlstring.c:182,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 3
    argNames:
    - pref
    - name
    - str
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 194
    functionName: xmlStrQEqual
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 3
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlStrQEqual(const xmlChar *pref, const xmlChar *name, const xmlChar
      *str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/xmlstring.c:212,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - str1
    - str2
    - len
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 220
    functionName: xmlStrncmp
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 13
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: int
    signature: int xmlStrncmp(const xmlChar *str1, const xmlChar *str2, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - str1
    - str2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 277
    functionName: xmlStrcasecmp
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlStrcasecmp(const xmlChar *str1, const xmlChar *str2)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - str1
    - str2
    - len
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 301
    functionName: xmlStrncasecmp
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlStrncasecmp(const xmlChar *str1, const xmlChar *str2, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - xmlChar*
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 319
    functionName: xmlStrchr
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrchr(const xmlChar *str, xmlChar val)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlstring.c:335,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/xmlstring.c:340,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 329
    functionDepth: 1
    functionLinenumber: 329
    functionLinenumberEnd: 345
    functionName: xmlStrstr
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 14
    functionsReached:
    - xmlStrncmp
    - xmlStrlen
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrstr(const xmlChar *str, const xmlChar *val)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlstring.c:361,1
    - Dst: xmlStrncasecmp
      Src: /src/libxml2/xmlstring.c:366,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 370
    functionName: xmlStrcasestr
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached:
    - xmlStrncasecmp
    - xmlStrlen
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrcasestr(const xmlChar *str, const xmlChar *val)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlstring.c:394,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - str
    - start
    - len
    argTypes:
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 395
    functionName: xmlStrsub
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrsub(const xmlChar *str, int start, int len)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmlstring.c:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 408
    functionName: xmlStrlen
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 58
    functionsReached:
    - strlen
    linkageType: ''
    returnType: int
    signature: int xmlStrlen(const xmlChar *str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlstring.c:432,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlstring.c:434,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlstring.c:437,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlstring.c:439,1
    - Dst: memcpy
      Src: /src/libxml2/xmlstring.c:442,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - cur
    - add
    - len
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 445
    functionName: xmlStrncat
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 4
    functionsReached:
    - xmlRealloc
    - xmlFree
    - xmlStrlen
    - xmlStrndup
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrncat(xmlChar *cur, const xmlChar *add, int len)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlstring.c:463,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlstring.c:468,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlstring.c:470,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlstring.c:472,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:475,1
    - Dst: memcpy
      Src: /src/libxml2/xmlstring.c:478,1
    - Dst: memcpy
      Src: /src/libxml2/xmlstring.c:479,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - str1
    - str2
    - len
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 457
    functionDepth: 2
    functionLinenumber: 457
    functionLinenumberEnd: 482
    functionName: xmlStrncatNew
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlStrlen
    - xmlStrndup
    - xmlMalloc
    - memcpy
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrncatNew(const xmlChar *str1, const xmlChar *str2, int len)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlstring.c:500,1
    - Dst: xmlStrncat
      Src: /src/libxml2/xmlstring.c:503,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - cur
    - add
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 504
    functionName: xmlStrcat
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 20
    functionsReached:
    - xmlStrdup
    - xmlStrncat
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlStrcat(xmlChar *cur, const xmlChar *add)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlstring.c:524,1
    - Dst: vsnprintf
      Src: /src/libxml2/xmlstring.c:525,1
    - Dst: va_end
      Src: /src/libxml2/xmlstring.c:526,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - buf
    - len
    - msg
    argTypes:
    - xmlChar*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 530
    functionName: xmlStrPrintf
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 3
    functionsReached:
    - va_end
    - vsnprintf
    - va_start
    linkageType: ''
    returnType: int
    signature: int xmlStrPrintf(xmlChar *buf, int len, const char *msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf
      Src: /src/libxml2/xmlstring.c:549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - buf
    - len
    - msg
    - ap
    argTypes:
    - xmlChar*
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 553
    functionName: xmlStrVPrintf
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 0
    functionsReached:
    - vsnprintf
    linkageType: ''
    returnType: int
    signature: int xmlStrVPrintf(xmlChar *buf, int len, const char *msg, va_list ap)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: va_copy
      Src: /src/libxml2/xmlstring.c:581,1
    - Dst: vsnprintf
      Src: /src/libxml2/xmlstring.c:582,1
    - Dst: va_end
      Src: /src/libxml2/xmlstring.c:583,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:594,1
    - Dst: vsnprintf
      Src: /src/libxml2/xmlstring.c:597,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlstring.c:598,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:623,1
    - Dst: va_copy
      Src: /src/libxml2/xmlstring.c:627,1
    - Dst: vsnprintf
      Src: /src/libxml2/xmlstring.c:628,1
    - Dst: va_end
      Src: /src/libxml2/xmlstring.c:629,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlstring.c:638,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 4
    argNames:
    - out
    - maxSize
    - msg
    - ap
    argTypes:
    - xmlChar**
    - int
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 669
    functionName: xmlStrVASPrintf
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - va_end
    - va_copy
    - vsnprintf
    - xmlMalloc
    linkageType: ''
    returnType: int
    signature: int xmlStrVASPrintf(xmlChar **out, int maxSize, const char *msg, va_list
      ap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlstring.c:686,1
    - Dst: xmlStrVASPrintf
      Src: /src/libxml2/xmlstring.c:687,1
    - Dst: va_end
      Src: /src/libxml2/xmlstring.c:688,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - out
    - maxSize
    - msg
    argTypes:
    - xmlChar**
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 681
    functionDepth: 1
    functionLinenumber: 681
    functionLinenumberEnd: 691
    functionName: xmlStrASPrintf
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlStrVASPrintf
    - va_start
    linkageType: ''
    returnType: int
    signature: int xmlStrASPrintf(xmlChar **out, int maxSize, const char *msg, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - utf
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 735
    functionName: xmlUTF8Size
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlUTF8Size(const xmlChar *utf)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncmp
      Src: /src/libxml2/xmlstring.c:752,1
    - Dst: xmlUTF8Size
      Src: /src/libxml2/xmlstring.c:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - utf1
    - utf2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 753
    functionName: xmlUTF8Charcmp
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlStrncmp
    - xmlUTF8Size
    linkageType: ''
    returnType: int
    signature: int xmlUTF8Charcmp(const xmlChar *utf1, const xmlChar *utf2)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - utf
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 792
    functionName: xmlUTF8Strlen
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlUTF8Strlen(const xmlChar *utf)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 57
    argCount: 2
    argNames:
    - utf
    - len
    argTypes:
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 804
    functionDepth: 0
    functionLinenumber: 804
    functionLinenumberEnd: 860
    functionName: xmlGetUTF8Char
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlGetUTF8Char(const unsigned char *utf, int *len)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 1
    argNames:
    - utf
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 873
    functionDepth: 0
    functionLinenumber: 873
    functionLinenumberEnd: 913
    functionName: xmlCheckUTF8
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlCheckUTF8(const unsigned char *utf)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - utf
    - len
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 925
    functionDepth: 0
    functionLinenumber: 925
    functionLinenumberEnd: 949
    functionName: xmlUTF8Strsize
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlUTF8Strsize(const xmlChar *utf, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlUTF8Strsize
      Src: /src/libxml2/xmlstring.c:965,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:966,1
    - Dst: memcpy
      Src: /src/libxml2/xmlstring.c:970,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - utf
    - len
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 973
    functionName: xmlUTF8Strndup
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - memcpy
    - xmlUTF8Strsize
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlUTF8Strndup(const xmlChar *utf, int len)'
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - utf
    - pos
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 1005
    functionName: xmlUTF8Strpos
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlUTF8Strpos(const xmlChar *utf, int pos)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlUTF8Strsize
      Src: /src/libxml2/xmlstring.c:1022,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/xmlstring.c:1024,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - utf
    - utfchar
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1015
    functionDepth: 1
    functionLinenumber: 1015
    functionLinenumberEnd: 1039
    functionName: xmlUTF8Strloc
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 3
    functionsReached:
    - xmlStrncmp
    - xmlUTF8Strsize
    linkageType: ''
    returnType: int
    signature: int xmlUTF8Strloc(const xmlChar *utf, const xmlChar *utfchar)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlUTF8Strndup
      Src: /src/libxml2/xmlstring.c:1079,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 3
    argNames:
    - utf
    - start
    - len
    argTypes:
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 1052
    functionDepth: 2
    functionLinenumber: 1052
    functionLinenumberEnd: 1080
    functionName: xmlUTF8Strsub
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 2
    functionsReached:
    - xmlUTF8Strndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlUTF8Strsub(const xmlChar *utf, int start, int len)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlstring.c:1116,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlstring.c:1120,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlstring.c:1132,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - msg
    argTypes:
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1136
    functionName: xmlEscapeFormatString
    functionSourceFile: /src/libxml2/xmlstring.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlEscapeFormatString(xmlChar **msg)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - node
    - ','
    - elem
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: IS_SCHEMATRON
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_SCHEMATRON(node, elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - node
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: NEXT_SCHEMATRON
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEXT_SCHEMATRON(node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/schematron.c:225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 226
    functionName: xmlSchematronPErrMemory
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSchematronPErrMemory(xmlSchematronParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/schematron.c:259,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:264,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 6
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 239
    functionDepth: 5
    functionLinenumber: 239
    functionLinenumberEnd: 265
    functionName: xmlSchematronPErr
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlSchematronPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronPErr(xmlSchematronParserCtxtPtr ctxt, xmlNodePtr
      node, int error,\n              const char *msg, const xmlChar * str1, const
      xmlChar * str2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/schematron.c:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 272
    functionDepth: 2
    functionLinenumber: 272
    functionLinenumberEnd: 280
    functionName: xmlSchematronVErrMemory
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSchematronVErrMemory(xmlSchematronValidCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/schematron.c:311,1
    - Dst: xmlSchematronVErrMemory
      Src: /src/libxml2/schematron.c:316,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - str1
    argTypes:
    - xmlSchematronValidCtxtPtr
    - int
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 291
    functionDepth: 5
    functionLinenumber: 291
    functionLinenumberEnd: 317
    functionName: xmlSchematronVErr
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronVErrMemory
    - xmlRaiseError
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronVErr(xmlSchematronValidCtxtPtr ctxt, int error,\n
      \                 const char *msg, const xmlChar * str1)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/schematron.c:352,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:354,1
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:361,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:363,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:366,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 6
    argNames:
    - ctxt
    - type
    - rule
    - node
    - test
    - report
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlSchematronTestType
    - xmlSchematronRulePtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 336
    functionDepth: 19
    functionLinenumber: 336
    functionLinenumberEnd: 383
    functionName: xmlSchematronAddTest
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronPErr
    - xmlMalloc
    - xmlXPathCtxtCompile
    - xmlSchematronPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchematronTestPtr
    signature: "xmlSchematronTestPtr xmlSchematronAddTest(xmlSchematronParserCtxtPtr
      ctxt,\n                     xmlSchematronTestType type,\n                     xmlSchematronRulePtr
      rule,\n                     xmlNodePtr node, xmlChar *test, xmlChar *report)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:397,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/schematron.c:399,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:401,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:402,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - tests
    argTypes:
    - xmlSchematronTestPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 390
    functionDepth: 4
    functionLinenumber: 390
    functionLinenumberEnd: 405
    functionName: xmlSchematronFreeTests
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreeTests(xmlSchematronTestPtr tests)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:419,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/schematron.c:421,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:422,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - lets
    argTypes:
    - xmlSchematronLetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 412
    functionDepth: 4
    functionLinenumber: 412
    functionLinenumberEnd: 425
    functionName: xmlSchematronFreeLets
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeCompExpr
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreeLets(xmlSchematronLetPtr lets)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlPatterncompile
      Src: /src/libxml2/schematron.c:453,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:456,1
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:462,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:464,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:467,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 6
    argNames:
    - ctxt
    - schema
    - pat
    - node
    - context
    - report
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlSchematronPtr
    - xmlSchematronPatternPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 438
    functionDepth: 7
    functionLinenumber: 438
    functionLinenumberEnd: 494
    functionName: xmlSchematronAddRule
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronPErr
    - xmlPatterncompile
    - xmlMalloc
    - xmlSchematronPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchematronRulePtr
    signature: "xmlSchematronRulePtr xmlSchematronAddRule(xmlSchematronParserCtxtPtr
      ctxt, xmlSchematronPtr schema,\n                     xmlSchematronPatternPtr
      pat, xmlNodePtr node,\n                     xmlChar *context, xmlChar *report)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchematronFreeTests
      Src: /src/libxml2/schematron.c:508,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:510,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/schematron.c:512,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:514,1
    - Dst: xmlSchematronFreeLets
      Src: /src/libxml2/schematron.c:516,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:517,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - rules
    argTypes:
    - xmlSchematronRulePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 501
    functionDepth: 5
    functionLinenumber: 501
    functionLinenumberEnd: 520
    functionName: xmlSchematronFreeRules
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlFreePattern
    - xmlSchematronFreeTests
    - xmlSchematronFreeLets
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreeRules(xmlSchematronRulePtr rules)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:540,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:542,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:545,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - name
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlSchematronPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 531
    functionDepth: 3
    functionLinenumber: 531
    functionLinenumberEnd: 558
    functionName: xmlSchematronAddPattern
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlSchematronPErrMemory
    linkageType: ''
    returnType: xmlSchematronPatternPtr
    signature: "xmlSchematronPatternPtr xmlSchematronAddPattern(xmlSchematronParserCtxtPtr
      ctxt,\n                     xmlSchematronPtr schema, xmlNodePtr node, xmlChar
      *name)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:572,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:573,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - patterns
    argTypes:
    - xmlSchematronPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 576
    functionName: xmlSchematronFreePatterns
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreePatterns(xmlSchematronPatternPtr patterns)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:589,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:591,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:594,1
    - Dst: xmlDictReference
      Src: /src/libxml2/schematron.c:596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 584
    functionDepth: 3
    functionLinenumber: 584
    functionLinenumberEnd: 599
    functionName: xmlSchematronNewSchematron
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlDictReference
    - xmlSchematronPErrMemory
    linkageType: ''
    returnType: xmlSchematronPtr
    signature: xmlSchematronPtr xmlSchematronNewSchematron(xmlSchematronParserCtxtPtr
      ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:613,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:616,1
    - Dst: xmlSchematronFreeRules
      Src: /src/libxml2/schematron.c:618,1
    - Dst: xmlSchematronFreePatterns
      Src: /src/libxml2/schematron.c:619,1
    - Dst: xmlDictFree
      Src: /src/libxml2/schematron.c:620,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:621,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlSchematron*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 606
    functionDepth: 6
    functionLinenumber: 606
    functionLinenumberEnd: 622
    functionName: xmlSchematronFree
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 3
    functionsReached:
    - xmlDictFree
    - xmlSchematronFreeRules
    - xmlFree
    - xmlSchematronFreePatterns
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFree(xmlSchematron *schema)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:641,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:643,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:646,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/schematron.c:648,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/schematron.c:649,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/schematron.c:651,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:653,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/schematron.c:654,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - URL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 631
    functionDepth: 5
    functionLinenumber: 631
    functionLinenumberEnd: 659
    functionName: xmlSchematronNewParserCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 3
    functionsReached:
    - xmlXPathNewContext
    - xmlMalloc
    - xmlDictCreate
    - xmlSchematronPErrMemory
    - xmlDictLookup
    - xmlSchematronFreeParserCtxt
    - memset
    linkageType: ''
    returnType: xmlSchematronParserCtxt
    signature: 'xmlSchematronParserCtxt *

      xmlSchematronNewParserCtxt(const char *URL)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:679,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:681,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:684,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/schematron.c:687,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/schematron.c:688,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:690,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/schematron.c:691,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 669
    functionDepth: 5
    functionLinenumber: 669
    functionLinenumberEnd: 695
    functionName: xmlSchematronNewMemParserCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewContext
    - xmlMalloc
    - xmlDictCreate
    - xmlSchematronPErrMemory
    - xmlSchematronFreeParserCtxt
    - memset
    linkageType: ''
    returnType: xmlSchematronParserCtxt
    signature: 'xmlSchematronParserCtxt *

      xmlSchematronNewMemParserCtxt(const char *buffer, int size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:714,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:716,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:719,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/schematron.c:721,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/schematron.c:724,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:726,1
    - Dst: xmlSchematronFreeParserCtxt
      Src: /src/libxml2/schematron.c:727,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 704
    functionDepth: 5
    functionLinenumber: 704
    functionLinenumberEnd: 732
    functionName: xmlSchematronNewDocParserCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 1
    functionsReached:
    - xmlXPathNewContext
    - xmlMalloc
    - xmlDictCreate
    - xmlSchematronPErrMemory
    - xmlSchematronFreeParserCtxt
    - memset
    linkageType: ''
    returnType: xmlSchematronParserCtxt
    signature: 'xmlSchematronParserCtxt *

      xmlSchematronNewDocParserCtxt(xmlDoc *doc)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:745,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/schematron.c:747,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:750,1
    - Dst: xmlDictFree
      Src: /src/libxml2/schematron.c:751,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:752,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 739
    functionDepth: 4
    functionLinenumber: 739
    functionLinenumberEnd: 753
    functionName: xmlSchematronFreeParserCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 6
    functionsReached:
    - xmlDictFree
    - xmlXPathFreeContext
    - xmlFreeDoc
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreeParserCtxt(xmlSchematronParserCtxt *ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:770,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:772,1
    - Dst: xmlRealloc
      Src: /src/libxml2/schematron.c:780,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:783,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - ctxt
    - doc
    - cur
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 763
    functionDepth: 3
    functionLinenumber: 763
    functionLinenumberEnd: 792
    functionName: xmlSchematronPushInclude
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRealloc
    - xmlSchematronPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronPushInclude(xmlSchematronParserCtxtPtr ctxt,\n                        xmlDocPtr
      doc, xmlNodePtr cur)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:812,1
    - Dst: xmlSchematronPopInclude
      Src: /src/libxml2/schematron.c:816,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 818
    functionName: xmlSchematronPopInclude
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 1
    functionsReached:
    - xmlSchematronPopInclude
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSchematronPopInclude(xmlSchematronParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:835,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:837,1
    - Dst: xmlRealloc
      Src: /src/libxml2/schematron.c:845,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:848,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/schematron.c:855,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/schematron.c:857,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - prefix
    - ns
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 828
    functionDepth: 3
    functionLinenumber: 828
    functionLinenumberEnd: 862
    functionName: xmlSchematronAddNamespace
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlDictLookup
    - xmlRealloc
    - xmlSchematronPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronAddNamespace(xmlSchematronParserCtxtPtr ctxt,\n
      \                         const xmlChar *prefix, const xmlChar *ns)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:882,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:884,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:887,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:890,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/schematron.c:898,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:900,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/schematron.c:905,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:907,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - con
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 870
    functionDepth: 19
    functionLinenumber: 870
    functionLinenumberEnd: 911
    functionName: xmlSchematronParseTestReportMsg
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronPErr
    - xmlGetNoNsProp
    - xmlFree
    - xmlXPathFreeCompExpr
    - IS_SCHEMATRON
    - xmlXPathCtxtCompile
    linkageType: ''
    returnType: void
    signature: void xmlSchematronParseTestReportMsg(xmlSchematronParserCtxtPtr ctxt,
      xmlNodePtr con)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:937,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:939,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:945,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:949,1
    - Dst: xmlSchematronAddRule
      Src: /src/libxml2/schematron.c:952,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:955,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:961,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:963,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:967,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:969,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:975,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:979,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:982,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:984,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:990,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:994,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/schematron.c:998,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1000,1
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:1007,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1018,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1019,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1021,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1023,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1028,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1032,1
    - Dst: xmlSchematronParseTestReportMsg
      Src: /src/libxml2/schematron.c:1034,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/schematron.c:1035,1
    - Dst: xmlSchematronAddTest
      Src: /src/libxml2/schematron.c:1037,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1040,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1042,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1044,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1046,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1051,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1055,1
    - Dst: xmlSchematronParseTestReportMsg
      Src: /src/libxml2/schematron.c:1057,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/schematron.c:1058,1
    - Dst: xmlSchematronAddTest
      Src: /src/libxml2/schematron.c:1060,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1063,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1066,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1072,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1075,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 100
    argCount: 3
    argNames:
    - ctxt
    - pattern
    - rule
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlSchematronPatternPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 920
    functionDepth: 20
    functionLinenumber: 920
    functionLinenumberEnd: 1079
    functionName: xmlSchematronParseRule
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronPErr
    - xmlGetNoNsProp
    - xmlFree
    - IS_SCHEMATRON
    - xmlNodeGetContent
    - xmlSchematronAddRule
    - xmlSchematronParseTestReportMsg
    - NEXT_SCHEMATRON
    - xmlMalloc
    - xmlXPathCtxtCompile
    - xmlSchematronAddTest
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronParseRule(xmlSchematronParserCtxtPtr ctxt,\n                       xmlSchematronPatternPtr
      pattern,\n                       xmlNodePtr rule)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1097,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1099,1
    - Dst: xmlSchematronAddPattern
      Src: /src/libxml2/schematron.c:1101,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1104,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1108,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1110,1
    - Dst: xmlSchematronParseRule
      Src: /src/libxml2/schematron.c:1111,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1114,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1119,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1122,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - pat
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1087
    functionDepth: 21
    functionLinenumber: 1087
    functionLinenumberEnd: 1126
    functionName: xmlSchematronParsePattern
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlGetNoNsProp
    - xmlSchematronPErr
    - xmlFree
    - IS_SCHEMATRON
    - xmlSchematronAddPattern
    - NEXT_SCHEMATRON
    - xmlSchematronParseRule
    linkageType: ''
    returnType: void
    signature: void xmlSchematronParsePattern(xmlSchematronParserCtxtPtr ctxt, xmlNodePtr
      pat)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1148,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1150,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/schematron.c:1157,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/schematron.c:1158,1
    - Dst: xmlReadFile
      Src: /src/libxml2/schematron.c:1159,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1161,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/schematron.c:1167,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1169,1
    - Dst: xmlSchematronPushInclude
      Src: /src/libxml2/schematron.c:1177,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:1182,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1184,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1186,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1188,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSchematronParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1136
    functionDepth: 14
    functionLinenumber: 1136
    functionLinenumberEnd: 1190
    functionName: xmlSchematronLoadInclude
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetBase
    - xmlSchematronPErr
    - xmlGetNoNsProp
    - xmlFree
    - xmlBuildURI
    - xmlReadFile
    - xmlSchematronPushInclude
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSchematronLoadInclude(xmlSchematronParserCtxtPtr ctxt,
      xmlNodePtr cur)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/schematron.c:1218,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1221,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/schematron.c:1229,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1232,1
    - Dst: xmlStrdup
      Src: /src/libxml2/schematron.c:1238,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/schematron.c:1239,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1246,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/schematron.c:1256,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1258,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:1262,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1267,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1268,1
    - Dst: xmlSchematronNewSchematron
      Src: /src/libxml2/schematron.c:1274,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1283,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1284,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/schematron.c:1285,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/schematron.c:1287,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1288,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1291,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1293,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1294,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1295,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1297,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1302,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/schematron.c:1307,1
    - Dst: xmlSchematronAddNamespace
      Src: /src/libxml2/schematron.c:1308,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1312,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1314,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1316,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1319,1
    - Dst: xmlSchematronParsePattern
      Src: /src/libxml2/schematron.c:1320,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1323,1
    - Dst: NEXT_SCHEMATRON
      Src: /src/libxml2/schematron.c:1328,1
    - Dst: xmlSchematronPErr
      Src: /src/libxml2/schematron.c:1331,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/schematron.c:1346,1
    - Dst: xmlSchematronFree
      Src: /src/libxml2/schematron.c:1350,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 113
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1201
    functionDepth: 22
    functionLinenumber: 1201
    functionLinenumberEnd: 1359
    functionName: xmlSchematronParse
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlSchematronParsePattern
    - xmlSchematronPErr
    - xmlGetNoNsProp
    - xmlFree
    - xmlXPathRegisterNs
    - xmlSchematronFree
    - IS_SCHEMATRON
    - xmlSchematronNewSchematron
    - xmlNodeGetContent
    - xmlSchematronAddNamespace
    - xmlReadMemory
    - NEXT_SCHEMATRON
    - xmlReadFile
    - xmlDictLookup
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlSchematron
    signature: 'xmlSchematron *

      xmlSchematronParse(xmlSchematronParserCtxt *ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathEval
      Src: /src/libxml2/schematron.c:1375,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctxt
    - cur
    - xpath
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1367
    functionDepth: 20
    functionLinenumber: 1367
    functionLinenumberEnd: 1376
    functionName: xmlSchematronGetNode
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlXPathEval
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: "xmlXPathObjectPtr xmlSchematronGetNode(xmlSchematronValidCtxtPtr ctxt,\n
      \                    xmlNodePtr cur, const xmlChar *xpath)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlPrintErrorMessage
      Src: /src/libxml2/schematron.c:1390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - msg
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1385
    functionDepth: 2
    functionLinenumber: 1385
    functionLinenumberEnd: 1391
    functionName: xmlSchematronReportOutput
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlPrintErrorMessage
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronReportOutput(xmlSchematronValidCtxtPtr ctxt ATTRIBUTE_UNUSED,\n
      \                         xmlNodePtr cur ATTRIBUTE_UNUSED,\n                          const
      char *msg)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1416,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1417,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1421,1
    - Dst: xmlSchematronGetNode
      Src: /src/libxml2/schematron.c:1425,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1431,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1438,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1440,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1441,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1442,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/schematron.c:1451,1
    - Dst: IS_SCHEMATRON
      Src: /src/libxml2/schematron.c:1452,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/schematron.c:1456,1
    - Dst: xmlXPathCtxtCompile
      Src: /src/libxml2/schematron.c:1457,1
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/schematron.c:1458,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/schematron.c:1460,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1461,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1473,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1474,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1481,1
    - Dst: snprintf
      Src: /src/libxml2/schematron.c:1488,1
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:1489,1
    - Dst: snprintf
      Src: /src/libxml2/schematron.c:1491,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1492,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1493,1
    - Dst: xmlStrcat
      Src: /src/libxml2/schematron.c:1498,1
    - Dst: xmlSchematronVErr
      Src: /src/libxml2/schematron.c:1501,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/schematron.c:1504,1
    - Dst: xmlXPathFreeCompExpr
      Src: /src/libxml2/schematron.c:1505,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1506,1
    - Dst: xmlStrlen
      Src: /src/libxml2/schematron.c:1516,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 96
    argCount: 3
    argNames:
    - ctxt
    - test
    - cur
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1402
    functionDepth: 21
    functionLinenumber: 1402
    functionLinenumberEnd: 1538
    functionName: xmlSchematronFormatReport
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlXPathCompiledEval
    - xmlGetNoNsProp
    - xmlSchematronGetNode
    - xmlFree
    - xmlStrlen
    - xmlXPathFreeCompExpr
    - IS_SCHEMATRON
    - xmlMalloc
    - xmlXPathCtxtCompile
    - snprintf
    - xmlSchematronVErr
    - xmlStrcat
    - xmlXPathFreeObject
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchematronFormatReport(xmlSchematronValidCtxtPtr ctxt,\n
      \                         xmlNodePtr test, xmlNodePtr cur)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNo
      Src: /src/libxml2/schematron.c:1571,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/schematron.c:1572,1
    - Dst: xmlSchematronFormatReport
      Src: /src/libxml2/schematron.c:1580,1
    - Dst: xmlStrdup
      Src: /src/libxml2/schematron.c:1583,1
    - Dst: xmlStrdup
      Src: /src/libxml2/schematron.c:1585,1
    - Dst: snprintf
      Src: /src/libxml2/schematron.c:1588,1
    - Dst: xmlRaiseError
      Src: /src/libxml2/schematron.c:1606,1
    - Dst: xmlSchematronVErrMemory
      Src: /src/libxml2/schematron.c:1618,1
    - Dst: xmlSchematronReportOutput
      Src: /src/libxml2/schematron.c:1620,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1623,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1626,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 43
    argCount: 5
    argNames:
    - ctxt
    - test
    - cur
    - pattern
    - success
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlSchematronTestPtr
    - xmlNodePtr
    - xmlSchematronPatternPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1550
    functionDepth: 22
    functionLinenumber: 1550
    functionLinenumberEnd: 1628
    functionName: xmlSchematronReportSuccess
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlGetNodePath
    - xmlStrdup
    - xmlRaiseError
    - xmlFree
    - xmlGetLineNo
    - snprintf
    - xmlSchematronReportOutput
    - xmlSchematronVErrMemory
    - xmlSchematronFormatReport
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronReportSuccess(xmlSchematronValidCtxtPtr ctxt,\n
      \                  xmlSchematronTestPtr test, xmlNodePtr cur, xmlSchematronPatternPtr
      pattern, int success)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxml2/schematron.c:1650,1
    - Dst: xmlSchematronReportOutput
      Src: /src/libxml2/schematron.c:1651,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - pattern
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlSchematronPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1653
      start: 1636
    functionDepth: 3
    functionLinenumber: 1636
    functionLinenumberEnd: 1653
    functionName: xmlSchematronReportPattern
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronReportOutput
    - snprintf
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronReportPattern(xmlSchematronValidCtxtPtr ctxt,\n
      \                          xmlSchematronPatternPtr pattern)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - serror
    - ctx
    argTypes:
    - xmlSchematronValidCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1669
    functionDepth: 0
    functionLinenumber: 1669
    functionLinenumberEnd: 1679
    functionName: xmlSchematronSetValidStructuredErrors
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchematronSetValidStructuredErrors(xmlSchematronValidCtxt
      *ctxt,\n                                      xmlStructuredErrorFunc serror,
      void *ctx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/schematron.c:1697,1
    - Dst: xmlSchematronVErrMemory
      Src: /src/libxml2/schematron.c:1699,1
    - Dst: memset
      Src: /src/libxml2/schematron.c:1702,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/schematron.c:1705,1
    - Dst: xmlSchematronPErrMemory
      Src: /src/libxml2/schematron.c:1708,1
    - Dst: xmlSchematronFreeValidCtxt
      Src: /src/libxml2/schematron.c:1709,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/schematron.c:1716,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - schema
    - options
    argTypes:
    - xmlSchematron*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1720
      start: 1688
    functionDepth: 6
    functionLinenumber: 1688
    functionLinenumberEnd: 1720
    functionName: xmlSchematronNewValidCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 3
    functionsReached:
    - xmlXPathRegisterNs
    - xmlXPathNewContext
    - xmlMalloc
    - xmlSchematronFreeValidCtxt
    - xmlSchematronPErrMemory
    - xmlSchematronVErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchematronValidCtxt
    signature: 'xmlSchematronValidCtxt *

      xmlSchematronNewValidCtxt(xmlSchematron *schema, int options)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/schematron.c:1733,1
    - Dst: xmlDictFree
      Src: /src/libxml2/schematron.c:1735,1
    - Dst: xmlFree
      Src: /src/libxml2/schematron.c:1736,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchematronValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1727
    functionDepth: 4
    functionLinenumber: 1727
    functionLinenumberEnd: 1737
    functionName: xmlSchematronFreeValidCtxt
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 4
    functionsReached:
    - xmlDictFree
    - xmlXPathFreeContext
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchematronFreeValidCtxt(xmlSchematronValidCtxt *ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1772
    functionName: xmlSchematronNextNode
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSchematronNextNode(xmlNodePtr cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/schematron.c:1794,1
    - Dst: xmlXPathIsNaN
      Src: /src/libxml2/schematron.c:1809,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/schematron.c:1823,1
    - Dst: xmlSchematronReportSuccess
      Src: /src/libxml2/schematron.c:1830,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 5
    argNames:
    - ctxt
    - test
    - instance
    - cur
    - pattern
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlSchematronTestPtr
    - xmlDocPtr
    - xmlNodePtr
    - xmlSchematronPatternPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1833
      start: 1784
    functionDepth: 23
    functionLinenumber: 1784
    functionLinenumberEnd: 1833
    functionName: xmlSchematronRunTest
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronReportSuccess
    - xmlXPathCompiledEval
    - xmlXPathFreeObject
    - xmlXPathIsNaN
    linkageType: ''
    returnType: int
    signature: "int xmlSchematronRunTest(xmlSchematronValidCtxtPtr ctxt,\n     xmlSchematronTestPtr
      test, xmlDocPtr instance, xmlNodePtr cur, xmlSchematronPatternPtr pattern)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathCompiledEval
      Src: /src/libxml2/schematron.c:1856,1
    - Dst: xmlSchematronVErr
      Src: /src/libxml2/schematron.c:1858,1
    - Dst: xmlXPathRegisterVariableNS
      Src: /src/libxml2/schematron.c:1863,1
    - Dst: xmlSchematronVErr
      Src: /src/libxml2/schematron.c:1864,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 5
    argNames:
    - vctxt
    - ctxt
    - let
    - instance
    - cur
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlXPathContextPtr
    - xmlSchematronLetPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1845
    functionDepth: 15
    functionLinenumber: 1845
    functionLinenumberEnd: 1871
    functionName: xmlSchematronRegisterVariables
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlSchematronVErr
    - xmlXPathRegisterVariableNS
    - xmlXPathCompiledEval
    linkageType: ''
    returnType: int
    signature: "int xmlSchematronRegisterVariables(xmlSchematronValidCtxtPtr vctxt,\n
      \                              xmlXPathContextPtr ctxt,\n                               xmlSchematronLetPtr
      let,\n                               xmlDocPtr instance, xmlNodePtr cur)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathRegisterVariableNS
      Src: /src/libxml2/schematron.c:1887,1
    - Dst: xmlSchematronVErr
      Src: /src/libxml2/schematron.c:1888,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - vctxt
    - ctxt
    - let
    argTypes:
    - xmlSchematronValidCtxtPtr
    - xmlXPathContextPtr
    - xmlSchematronLetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1881
    functionDepth: 6
    functionLinenumber: 1881
    functionLinenumberEnd: 1895
    functionName: xmlSchematronUnregisterVariables
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 0
    functionsReached:
    - xmlXPathRegisterVariableNS
    - xmlSchematronVErr
    linkageType: ''
    returnType: int
    signature: "int xmlSchematronUnregisterVariables(xmlSchematronValidCtxtPtr vctxt,\n
      \                                xmlXPathContextPtr ctxt,\n                                 xmlSchematronLetPtr
      let)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/schematron.c:1917,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/schematron.c:1933,1
    - Dst: xmlSchematronRegisterVariables
      Src: /src/libxml2/schematron.c:1936,1
    - Dst: xmlSchematronRunTest
      Src: /src/libxml2/schematron.c:1941,1
    - Dst: xmlSchematronUnregisterVariables
      Src: /src/libxml2/schematron.c:1945,1
    - Dst: xmlSchematronNextNode
      Src: /src/libxml2/schematron.c:1953,1
    - Dst: xmlSchematronReportPattern
      Src: /src/libxml2/schematron.c:1962,1
    - Dst: xmlPatternMatch
      Src: /src/libxml2/schematron.c:1974,1
    - Dst: xmlSchematronRegisterVariables
      Src: /src/libxml2/schematron.c:1976,1
    - Dst: xmlSchematronRunTest
      Src: /src/libxml2/schematron.c:1980,1
    - Dst: xmlSchematronUnregisterVariables
      Src: /src/libxml2/schematron.c:1984,1
    - Dst: xmlSchematronNextNode
      Src: /src/libxml2/schematron.c:1990,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 2
    argNames:
    - ctxt
    - instance
    argTypes:
    - xmlSchematronValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1996
      start: 1905
    functionDepth: 24
    functionLinenumber: 1905
    functionLinenumberEnd: 1996
    functionName: xmlSchematronValidateDoc
    functionSourceFile: /src/libxml2/schematron.c
    functionUses: 3
    functionsReached:
    - xmlSchematronRunTest
    - xmlSchematronUnregisterVariables
    - xmlSchematronReportPattern
    - xmlSchematronRegisterVariables
    - xmlDocGetRootElement
    - xmlPatternMatch
    - xmlSchematronNextNode
    linkageType: ''
    returnType: int
    signature: int xmlSchematronValidateDoc(xmlSchematronValidCtxt *ctxt, xmlDoc *instance)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlDebugCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 64
    functionName: xmlCtxtDumpInitCtxt
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpInitCtxt(xmlDebugCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDebugCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: xmlCtxtDumpCleanCtxt
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpCleanCtxt(xmlDebugCtxtPtr ctxt ATTRIBUTE_UNUSED)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/debugXML.c:108,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 23
    argCount: 2
    argNames:
    - node
    - ns
    argTypes:
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 124
    functionName: xmlNsCheckScope
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlNsCheckScope(xmlNodePtr node, xmlNsPtr ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:133,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlDebugCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: xmlCtxtDumpSpaces
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpSpaces(xmlDebugCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctxt
    - error
    - msg
    argTypes:
    - xmlDebugCtxtPtr
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: xmlDebugErr
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlDebugErr(xmlDebugCtxtPtr ctxt, int error, const char *msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:156,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - extra
    argTypes:
    - xmlDebugCtxtPtr
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: xmlDebugErr2
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlDebugErr2(xmlDebugCtxtPtr ctxt, int error, const char *msg,
      int extra)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:163,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - extra
    argTypes:
    - xmlDebugCtxtPtr
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: xmlDebugErr3
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlDebugErr3(xmlDebugCtxtPtr ctxt, int error, const char *msg,
      const char *extra)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNsCheckScope
      Src: /src/libxml2/debugXML.c:179,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:182,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:185,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:191,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:194,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - node
    - ns
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 198
    functionName: xmlCtxtNsCheckScope
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlNsCheckScope
    - xmlDebugErr3
    linkageType: ''
    returnType: void
    signature: void xmlCtxtNsCheckScope(xmlDebugCtxtPtr ctxt, xmlNodePtr node, xmlNsPtr
      ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCheckUTF8
      Src: /src/libxml2/debugXML.c:211,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:212,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlDebugCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 206
    functionDepth: 1
    functionLinenumber: 206
    functionLinenumberEnd: 216
    functionName: xmlCtxtCheckString
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCheckUTF8
    - xmlDebugErr3
    linkageType: ''
    returnType: void
    signature: void xmlCtxtCheckString(xmlDebugCtxtPtr ctxt, const xmlChar * str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:230,1
    - Dst: xmlValidateName
      Src: /src/libxml2/debugXML.c:233,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:234,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/debugXML.c:238,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:241,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - name
    argTypes:
    - xmlDebugCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 246
    functionName: xmlCtxtCheckName
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlValidateName
    - xmlDictOwns
    - xmlDebugErr3
    linkageType: ''
    returnType: void
    signature: void xmlCtxtCheckName(xmlDebugCtxtPtr ctxt, const xmlChar * name)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:256,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:259,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/debugXML.c:275,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:276,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:282,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:286,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:290,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:297,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:301,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:304,1
    - Dst: xmlCtxtNsCheckScope
      Src: /src/libxml2/debugXML.c:312,1
    - Dst: xmlCtxtNsCheckScope
      Src: /src/libxml2/debugXML.c:316,1
    - Dst: xmlCtxtNsCheckScope
      Src: /src/libxml2/debugXML.c:319,1
    - Dst: xmlCtxtCheckString
      Src: /src/libxml2/debugXML.c:330,1
    - Dst: xmlCtxtCheckName
      Src: /src/libxml2/debugXML.c:335,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:341,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:348,1
    - Dst: xmlCtxtCheckName
      Src: /src/libxml2/debugXML.c:353,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:358,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 96
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 378
    functionName: xmlCtxtGenericNodeCheck
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlStrEqual
    - xmlCtxtCheckName
    - xmlCtxtNsCheckScope
    - xmlCtxtCheckString
    - xmlDebugErr3
    linkageType: ''
    returnType: void
    signature: void xmlCtxtGenericNodeCheck(xmlDebugCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:390,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/debugXML.c:396,1
    - Dst: fputc
      Src: /src/libxml2/debugXML.c:397,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:399,1
    - Dst: fputc
      Src: /src/libxml2/debugXML.c:401,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:402,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - str
    argTypes:
    - xmlDebugCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 380
    functionDepth: 1
    functionLinenumber: 380
    functionLinenumberEnd: 403
    functionName: xmlCtxtDumpString
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    - IS_BLANK_CH
    - fputc
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpString(xmlDebugCtxtPtr ctxt, const xmlChar * str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:408,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:412,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:417,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:423,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:425,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:427,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:429,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:430,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:435,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - dtd
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDtdPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 405
    functionDepth: 4
    functionLinenumber: 405
    functionLinenumberEnd: 436
    functionName: xmlCtxtDumpDtdNode
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpSpaces
    - fprintf
    - xmlCtxtGenericNodeCheck
    - xmlDebugErr
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpDtdNode(xmlDebugCtxtPtr ctxt, xmlDtdPtr dtd)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:441,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:445,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:449,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:455,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:457,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:461,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:463,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:468,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:471,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:474,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:477,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:480,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:483,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:486,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:489,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:492,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:495,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:504,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:506,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:512,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:514,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:520,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:523,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:526,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:530,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:531,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:532,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:534,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:540,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 88
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlDebugCtxtPtr
    - xmlAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 438
    functionDepth: 4
    functionLinenumber: 438
    functionLinenumberEnd: 541
    functionName: xmlCtxtDumpAttrDecl
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlCtxtDumpString
    - xmlCtxtGenericNodeCheck
    - xmlCtxtDumpSpaces
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpAttrDecl(xmlDebugCtxtPtr ctxt, xmlAttributePtr attr)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:546,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:550,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:554,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:560,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:561,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:562,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:565,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:570,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:573,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:576,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:579,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:582,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/debugXML.c:589,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:591,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:593,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:599,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 2
    argNames:
    - ctxt
    - elem
    argTypes:
    - xmlDebugCtxtPtr
    - xmlElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 543
    functionDepth: 4
    functionLinenumber: 543
    functionLinenumberEnd: 600
    functionName: xmlCtxtDumpElemDecl
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlSnprintfElementContent
    - xmlCtxtDumpString
    - xmlCtxtGenericNodeCheck
    - xmlCtxtDumpSpaces
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpElemDecl(xmlDebugCtxtPtr ctxt, xmlElementPtr elem)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:605,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:609,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:613,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:619,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:620,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:621,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:624,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:629,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:632,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:635,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:638,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:641,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:644,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:648,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:649,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:653,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:654,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:658,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:659,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:662,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:663,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:664,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:665,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:672,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 2
    argNames:
    - ctxt
    - ent
    argTypes:
    - xmlDebugCtxtPtr
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 602
    functionDepth: 4
    functionLinenumber: 602
    functionLinenumberEnd: 673
    functionName: xmlCtxtDumpEntityDecl
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlCtxtDumpString
    - xmlCtxtGenericNodeCheck
    - xmlCtxtDumpSpaces
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpEntityDecl(xmlDebugCtxtPtr ctxt, xmlEntityPtr ent)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:678,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:682,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:686,1
    - Dst: xmlDebugErr3
      Src: /src/libxml2/debugXML.c:692,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:696,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:701,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:704,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:706,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:707,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - ctxt
    - ns
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 675
    functionDepth: 2
    functionLinenumber: 675
    functionLinenumberEnd: 710
    functionName: xmlCtxtDumpNamespace
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlCtxtDumpString
    - xmlCtxtDumpSpaces
    - fprintf
    - xmlDebugErr3
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpNamespace(xmlDebugCtxtPtr ctxt, xmlNsPtr ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpNamespace
      Src: /src/libxml2/debugXML.c:716,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - ns
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 712
    functionDepth: 3
    functionLinenumber: 712
    functionLinenumberEnd: 719
    functionName: xmlCtxtDumpNamespaceList
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpNamespace
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpNamespaceList(xmlDebugCtxtPtr ctxt, xmlNsPtr ns)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:724,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:728,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:734,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:737,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:740,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:743,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:746,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:749,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:751,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:753,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:754,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:758,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:759,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:762,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:763,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:766,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:767,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:768,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:769,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - ctxt
    - ent
    argTypes:
    - xmlDebugCtxtPtr
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 721
    functionDepth: 2
    functionLinenumber: 721
    functionLinenumberEnd: 772
    functionName: xmlCtxtDumpEntity
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpSpaces
    - fprintf
    - xmlCtxtDumpString
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpEntity(xmlDebugCtxtPtr ctxt, xmlEntityPtr ent)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:783,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:787,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:791,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:792,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:793,1
    - Dst: xmlCtxtDumpNodeList
      Src: /src/libxml2/debugXML.c:796,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:801,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:807,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlDebugCtxtPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 780
    functionDepth: 4
    functionLinenumber: 780
    functionLinenumberEnd: 808
    functionName: xmlCtxtDumpAttr
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - xmlCtxtDumpNodeList
    - xmlCtxtDumpString
    - xmlCtxtGenericNodeCheck
    - xmlCtxtDumpSpaces
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpAttr(xmlDebugCtxtPtr ctxt, xmlAttrPtr attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpAttr
      Src: /src/libxml2/debugXML.c:820,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlDebugCtxtPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 816
    functionDepth: 5
    functionLinenumber: 816
    functionLinenumberEnd: 823
    functionName: xmlCtxtDumpAttrList
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpAttr
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpAttrList(xmlDebugCtxtPtr ctxt, xmlAttrPtr attr)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:836,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:837,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:846,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:847,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:849,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:850,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:852,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:853,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:858,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:859,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:860,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:864,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:866,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:868,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:871,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/debugXML.c:872,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:873,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:875,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:877,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:882,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:883,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:888,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:889,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:895,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:896,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:901,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:902,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:907,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:908,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:914,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:916,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:917,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:921,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:922,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:927,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:928,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:933,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:934,1
    - Dst: xmlCtxtDumpDtdNode
      Src: /src/libxml2/debugXML.c:938,1
    - Dst: xmlCtxtDumpElemDecl
      Src: /src/libxml2/debugXML.c:941,1
    - Dst: xmlCtxtDumpAttrDecl
      Src: /src/libxml2/debugXML.c:944,1
    - Dst: xmlCtxtDumpEntityDecl
      Src: /src/libxml2/debugXML.c:947,1
    - Dst: xmlCtxtDumpNamespace
      Src: /src/libxml2/debugXML.c:950,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:954,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:955,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:960,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:961,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:966,1
    - Dst: xmlDebugErr2
      Src: /src/libxml2/debugXML.c:967,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:973,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:975,1
    - Dst: xmlCtxtDumpNamespaceList
      Src: /src/libxml2/debugXML.c:979,1
    - Dst: xmlCtxtDumpAttrList
      Src: /src/libxml2/debugXML.c:981,1
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:985,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:986,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:987,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:988,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/debugXML.c:994,1
    - Dst: xmlCtxtDumpEntity
      Src: /src/libxml2/debugXML.c:996,1
    - Dst: xmlCtxtGenericNodeCheck
      Src: /src/libxml2/debugXML.c:1003,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 160
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 831
    functionDepth: 6
    functionLinenumber: 831
    functionLinenumberEnd: 1004
    functionName: xmlCtxtDumpOneNode
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpAttrDecl
    - xmlCtxtDumpString
    - xmlCtxtDumpDtdNode
    - xmlCtxtGenericNodeCheck
    - xmlCtxtDumpElemDecl
    - xmlCtxtDumpAttrList
    - xmlCtxtDumpEntity
    - xmlGetDocEntity
    - xmlCtxtDumpNamespace
    - xmlCtxtDumpSpaces
    - fprintf
    - xmlCtxtDumpNamespaceList
    - xmlDebugErr2
    - xmlDictOwns
    - xmlCtxtDumpEntityDecl
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpOneNode(xmlDebugCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpSpaces
      Src: /src/libxml2/debugXML.c:1017,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1018,1
    - Dst: xmlCtxtDumpOneNode
      Src: /src/libxml2/debugXML.c:1022,1
    - Dst: xmlCtxtDumpNodeList
      Src: /src/libxml2/debugXML.c:1026,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1012
    functionDepth: 7
    functionLinenumber: 1012
    functionLinenumberEnd: 1029
    functionName: xmlCtxtDumpNode
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpSpaces
    - fprintf
    - xmlCtxtDumpOneNode
    - xmlCtxtDumpNodeList
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpNode(xmlDebugCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpNode
      Src: /src/libxml2/debugXML.c:1041,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlDebugCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1037
    functionDepth: 8
    functionLinenumber: 1037
    functionLinenumberEnd: 1044
    functionName: xmlCtxtDumpNodeList
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 2
    functionsReached:
    - xmlCtxtDumpNode
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpNodeList(xmlDebugCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1051,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1058,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1062,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1066,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1070,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1074,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1078,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1082,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1086,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1091,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1095,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1098,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1102,1
    - Dst: xmlDebugErr
      Src: /src/libxml2/debugXML.c:1106,1
    - Dst: xmlDebugErr2
      Src: /src/libxml2/debugXML.c:1110,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 52
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1046
    functionDepth: 1
    functionLinenumber: 1046
    functionLinenumberEnd: 1113
    functionName: xmlCtxtDumpDocHead
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlDebugErr
    - fprintf
    - xmlDebugErr2
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpDocHead(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpDocHead
      Src: /src/libxml2/debugXML.c:1125,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1128,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1130,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1133,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:1134,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1135,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1138,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:1139,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1140,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1143,1
    - Dst: xmlCtxtDumpString
      Src: /src/libxml2/debugXML.c:1144,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1145,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1148,1
    - Dst: xmlCtxtDumpNamespaceList
      Src: /src/libxml2/debugXML.c:1151,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1121
    functionDepth: 4
    functionLinenumber: 1121
    functionLinenumberEnd: 1152
    functionName: xmlCtxtDumpDocumentHead
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlCtxtDumpString
    - xmlCtxtDumpNamespaceList
    - xmlCtxtDumpDocHead
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpDocumentHead(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1165,1
    - Dst: xmlCtxtDumpDocumentHead
      Src: /src/libxml2/debugXML.c:1168,1
    - Dst: xmlCtxtDumpNodeList
      Src: /src/libxml2/debugXML.c:1173,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1160
    functionDepth: 9
    functionLinenumber: 1160
    functionLinenumberEnd: 1176
    functionName: xmlCtxtDumpDocument
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlCtxtDumpDocumentHead
    - xmlCtxtDumpNodeList
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpDocument(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1186,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1190,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1193,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1196,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1199,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1202,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1205,1
    - Dst: xmlDebugErr2
      Src: /src/libxml2/debugXML.c:1208,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1212,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1214,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1216,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1218,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1220,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1178
    functionDepth: 1
    functionLinenumber: 1178
    functionLinenumberEnd: 1222
    functionName: xmlCtxtDumpEntityCallback
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlDebugErr2
    linkageType: ''
    returnType: void
    signature: "void xmlCtxtDumpEntityCallback(void *payload, void *data,\n                          const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpDocHead
      Src: /src/libxml2/debugXML.c:1234,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1240,1
    - Dst: xmlHashScan
      Src: /src/libxml2/debugXML.c:1241,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1243,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1249,1
    - Dst: xmlHashScan
      Src: /src/libxml2/debugXML.c:1250,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1252,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1253
      start: 1230
    functionDepth: 2
    functionLinenumber: 1230
    functionLinenumberEnd: 1253
    functionName: xmlCtxtDumpEntities
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlHashScan
    - xmlCtxtDumpDocHead
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpEntities(xmlDebugCtxtPtr ctxt, xmlDocPtr doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1266,1
    - Dst: xmlCtxtDumpDtdNode
      Src: /src/libxml2/debugXML.c:1269,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1271,1
    - Dst: xmlCtxtDumpNodeList
      Src: /src/libxml2/debugXML.c:1274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - dtd
    argTypes:
    - xmlDebugCtxtPtr
    - xmlDtdPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1261
    functionDepth: 9
    functionLinenumber: 1261
    functionLinenumberEnd: 1277
    functionName: xmlCtxtDumpDTD
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpDtdNode
    - fprintf
    - xmlCtxtDumpNodeList
    linkageType: ''
    returnType: void
    signature: void xmlCtxtDumpDTD(xmlDebugCtxtPtr ctxt, xmlDtdPtr dtd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1299,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/debugXML.c:1305,1
    - Dst: fputc
      Src: /src/libxml2/debugXML.c:1306,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1308,1
    - Dst: fputc
      Src: /src/libxml2/debugXML.c:1310,1
    - Dst: fprintf
      Src: /src/libxml2/debugXML.c:1311,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - output
    - str
    argTypes:
    - FILE*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1291
    functionDepth: 1
    functionLinenumber: 1291
    functionLinenumberEnd: 1312
    functionName: xmlDebugDumpString
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 2
    functionsReached:
    - fprintf
    - IS_BLANK_CH
    - fputc
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpString(FILE * output, const xmlChar * str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1326,1
    - Dst: xmlCtxtDumpAttr
      Src: /src/libxml2/debugXML.c:1329,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - output
    - attr
    - depth
    argTypes:
    - FILE*
    - xmlAttr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1321
    functionDepth: 5
    functionLinenumber: 1321
    functionLinenumberEnd: 1331
    functionName: xmlDebugDumpAttr
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 3
    functionsReached:
    - xmlCtxtDumpAttr
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpAttr(FILE *output, xmlAttr *attr, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1346,1
    - Dst: xmlCtxtDumpEntities
      Src: /src/libxml2/debugXML.c:1348,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1349,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - output
    - doc
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1350
      start: 1340
    functionDepth: 3
    functionLinenumber: 1340
    functionLinenumberEnd: 1350
    functionName: xmlDebugDumpEntities
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 1
    functionsReached:
    - xmlCtxtDumpEntities
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpEntities(FILE * output, xmlDoc *doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1365,1
    - Dst: xmlCtxtDumpAttrList
      Src: /src/libxml2/debugXML.c:1368,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - output
    - attr
    - depth
    argTypes:
    - FILE*
    - xmlAttr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1359
    functionDepth: 6
    functionLinenumber: 1359
    functionLinenumberEnd: 1370
    functionName: xmlDebugDumpAttrList
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 1
    functionsReached:
    - xmlCtxtDumpAttrList
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpAttrList(FILE * output, xmlAttr *attr, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1385,1
    - Dst: xmlCtxtDumpOneNode
      Src: /src/libxml2/debugXML.c:1388,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1389,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - output
    - node
    - depth
    argTypes:
    - FILE*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1379
    functionDepth: 7
    functionLinenumber: 1379
    functionLinenumberEnd: 1390
    functionName: xmlDebugDumpOneNode
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 4
    functionsReached:
    - xmlCtxtDumpOneNode
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpOneNode(FILE * output, xmlNode *node, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1406,1
    - Dst: xmlCtxtDumpNode
      Src: /src/libxml2/debugXML.c:1409,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - output
    - node
    - depth
    argTypes:
    - FILE*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1399
    functionDepth: 8
    functionLinenumber: 1399
    functionLinenumberEnd: 1411
    functionName: xmlDebugDumpNode
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpNode
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpNode(FILE * output, xmlNode *node, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1427,1
    - Dst: xmlCtxtDumpNodeList
      Src: /src/libxml2/debugXML.c:1430,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - output
    - node
    - depth
    argTypes:
    - FILE*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1432
      start: 1420
    functionDepth: 9
    functionLinenumber: 1420
    functionLinenumberEnd: 1432
    functionName: xmlDebugDumpNodeList
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 1
    functionsReached:
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpNodeList
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpNodeList(FILE * output, xmlNode *node, int depth)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1447,1
    - Dst: xmlCtxtDumpDocumentHead
      Src: /src/libxml2/debugXML.c:1450,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - output
    - doc
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1440
    functionDepth: 5
    functionLinenumber: 1440
    functionLinenumberEnd: 1452
    functionName: xmlDebugDumpDocumentHead
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 2
    functionsReached:
    - xmlCtxtDumpDocumentHead
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpDocumentHead(FILE * output, xmlDoc *doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1467,1
    - Dst: xmlCtxtDumpDocument
      Src: /src/libxml2/debugXML.c:1470,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - output
    - doc
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1472
      start: 1460
    functionDepth: 10
    functionLinenumber: 1460
    functionLinenumberEnd: 1472
    functionName: xmlDebugDumpDocument
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 2
    functionsReached:
    - xmlCtxtDumpDocument
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpDocument(FILE * output, xmlDoc *doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1487,1
    - Dst: xmlCtxtDumpDTD
      Src: /src/libxml2/debugXML.c:1490,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1491,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - output
    - dtd
    argTypes:
    - FILE*
    - xmlDtd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1480
    functionDepth: 10
    functionLinenumber: 1480
    functionLinenumberEnd: 1492
    functionName: xmlDebugDumpDTD
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 0
    functionsReached:
    - xmlCtxtDumpDTD
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: void
    signature: void xmlDebugDumpDTD(FILE * output, xmlDtd *dtd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtDumpInitCtxt
      Src: /src/libxml2/debugXML.c:1515,1
    - Dst: xmlCtxtDumpDocument
      Src: /src/libxml2/debugXML.c:1518,1
    - Dst: xmlCtxtDumpCleanCtxt
      Src: /src/libxml2/debugXML.c:1519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - output
    - doc
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1508
    functionDepth: 10
    functionLinenumber: 1508
    functionLinenumberEnd: 1521
    functionName: xmlDebugCheckDocument
    functionSourceFile: /src/libxml2/debugXML.c
    functionUses: 1
    functionsReached:
    - xmlCtxtDumpDocument
    - xmlCtxtDumpCleanCtxt
    - xmlCtxtDumpInitCtxt
    linkageType: ''
    returnType: int
    signature: int xmlDebugCheckDocument(FILE * output, xmlDoc *doc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: IS_STR_XML
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_STR_XML(str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dtd
    - name
    argTypes:
    - xmlDtd*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 128
    functionName: xmlGetEntityFromDtd
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr xmlGetEntityFromDtd(const xmlDtd *dtd, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dtd
    - name
    argTypes:
    - xmlDtd*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionName: xmlGetParameterEntityFromDtd
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr xmlGetParameterEntityFromDtd(const xmlDtd *dtd, const
      xmlChar *name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/tree.c:183,1
    - Dst: strlen
      Src: /src/libxml2/tree.c:184,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:189,1
    - Dst: memcpy
      Src: /src/libxml2/tree.c:195,1
    - Dst: memcpy
      Src: /src/libxml2/tree.c:197,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ncname
    - prefix
    - memory
    - len
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 200
    functionName: xmlBuildQName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 8
    functionsReached:
    - xmlMalloc
    - memcpy
    - strlen
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlBuildQName(const xmlChar *ncname, const xmlChar *prefix,\n\t
      \     xmlChar *memory, int len)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:242,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:245,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:248,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - name
    - prefix
    argTypes:
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 255
    functionName: xmlSplitQName2
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlStrdup
    - xmlStrndup
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSplitQName2(const xmlChar *name, xmlChar **prefix)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - name
    - len
    argTypes:
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 291
    functionName: xmlSplitQName3
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSplitQName3(const xmlChar *name, int *len)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:332,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 2
    argNames:
    - name
    - prefixPtr
    argTypes:
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 338
    functionName: xmlSplitQName4
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 6
    functionsReached:
    - xmlStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSplitQName4(const xmlChar *name, xmlChar **prefixPtr)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:364,1
    - Dst: xmlScanName
      Src: /src/libxml2/tree.c:369,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:374,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - value
    - space
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 354
    functionDepth: 4
    functionLinenumber: 354
    functionLinenumberEnd: 379
    functionName: xmlValidateNCName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 10
    functionsReached:
    - IS_BLANK_CH
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNCName(const xmlChar *value, int space)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:399,1
    - Dst: xmlScanName
      Src: /src/libxml2/tree.c:404,1
    - Dst: xmlScanName
      Src: /src/libxml2/tree.c:411,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:417,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - value
    - space
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 389
    functionDepth: 4
    functionLinenumber: 389
    functionLinenumberEnd: 422
    functionName: xmlValidateQName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 10
    functionsReached:
    - IS_BLANK_CH
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateQName(const xmlChar *value, int space)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:442,1
    - Dst: xmlScanName
      Src: /src/libxml2/tree.c:447,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:452,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - value
    - space
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 432
    functionDepth: 4
    functionLinenumber: 432
    functionLinenumberEnd: 457
    functionName: xmlValidateName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - IS_BLANK_CH
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateName(const xmlChar *value, int space)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:477,1
    - Dst: xmlScanName
      Src: /src/libxml2/tree.c:482,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:487,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - value
    - space
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 467
    functionDepth: 4
    functionLinenumber: 467
    functionLinenumberEnd: 492
    functionName: xmlValidateNMToken
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - IS_BLANK_CH
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNMToken(const xmlChar *value, int space)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:526,1
    - Dst: memset
      Src: /src/libxml2/tree.c:529,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:533,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:538,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:553,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:558,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:568,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 41
    argCount: 3
    argNames:
    - node
    - href
    - prefix
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 516
    functionDepth: 2
    functionLinenumber: 516
    functionLinenumberEnd: 570
    functionName: xmlNewNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 17
    functionsReached:
    - xmlStrdup
    - xmlStrEqual
    - xmlMalloc
    - xmlFreeNs
    - memset
    linkageType: ''
    returnType: xmlNs
    signature: 'xmlNs *

      xmlNewNs(xmlNode *node, const xmlChar *href, const xmlChar *prefix)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - node
    - ns
    argTypes:
    - xmlNode*
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 587
    functionName: xmlSetNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetNs(xmlNode *node, xmlNs *ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:599,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:600,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:601,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 602
    functionName: xmlFreeNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeNs(xmlNs *cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:617,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 609
    functionDepth: 1
    functionLinenumber: 609
    functionLinenumberEnd: 620
    functionName: xmlFreeNsList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlFreeNs
    linkageType: ''
    returnType: void
    signature: void xmlFreeNsList(xmlNs *cur)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:650,1
    - Dst: memset
      Src: /src/libxml2/tree.c:653,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:657,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:662,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:667,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:676,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:680,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 4
    argNames:
    - doc
    - name
    - publicId
    - systemId
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 682
    functionName: xmlNewDtd
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 5
    functionsReached:
    - xmlStrdup
    - xmlFreeDtd
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlDtd
    signature: "xmlDtd *\nxmlNewDtd(xmlDoc *doc, const xmlChar *name, const xmlChar
      *publicId,\n          const xmlChar *systemId)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 703
    functionName: xmlGetIntSubset
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: xmlDtd
    signature: 'xmlDtd *

      xmlGetIntSubset(const xmlDoc *doc)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/tree.c:726,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:734,1
    - Dst: memset
      Src: /src/libxml2/tree.c:737,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:741,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:746,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:751,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:795,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:799,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 69
    argCount: 4
    argNames:
    - doc
    - name
    - publicId
    - systemId
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 720
    functionDepth: 2
    functionLinenumber: 720
    functionLinenumberEnd: 801
    functionName: xmlCreateIntSubset
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 6
    functionsReached:
    - xmlStrdup
    - xmlGetIntSubset
    - xmlFreeDtd
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlDtd
    signature: "xmlDtd *\nxmlCreateIntSubset(xmlDoc *doc, const xmlChar *name, const
      xmlChar *publicId,\n                   const xmlChar *systemId)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 809
    functionDepth: 0
    functionLinenumber: 809
    functionLinenumberEnd: 813
    functionName: DICT_FREE
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DICT_FREE(str)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/tree.c:829,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:843,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:844,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:850,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:853,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:855,1
    - Dst: xmlFreeNotationTable
      Src: /src/libxml2/tree.c:859,1
    - Dst: xmlFreeElementTable
      Src: /src/libxml2/tree.c:862,1
    - Dst: xmlFreeAttributeTable
      Src: /src/libxml2/tree.c:864,1
    - Dst: xmlFreeEntitiesTable
      Src: /src/libxml2/tree.c:866,1
    - Dst: xmlFreeEntitiesTable
      Src: /src/libxml2/tree.c:868,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:870,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlDtd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 819
    functionDepth: 1
    functionLinenumber: 819
    functionLinenumberEnd: 871
    functionName: xmlFreeDtd
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 10
    functionsReached:
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - xmlFreeEntitiesTable
    - xmlFreeNotationTable
    - xmlFreeAttributeTable
    - xmlFreeElementTable
    - DICT_FREE
    - xmlFreeNode
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: void
    signature: void xmlFreeDtd(xmlDtd *cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:889,1
    - Dst: memset
      Src: /src/libxml2/tree.c:892,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:895,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:897,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:913,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - version
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 879
    functionDepth: 2
    functionLinenumber: 879
    functionLinenumberEnd: 915
    functionName: xmlNewDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 15
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlNewDoc(const xmlChar *version)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/tree.c:934,1
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/tree.c:939,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/tree.c:941,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:948,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:950,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:953,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:955,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:958,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/tree.c:959,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:961,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:964,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:966,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:968,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:970,1
    - Dst: xmlDictFree
      Src: /src/libxml2/tree.c:971,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 41
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 922
    functionDepth: 2
    functionLinenumber: 922
    functionLinenumberEnd: 972
    functionName: xmlFreeDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 123
    functionsReached:
    - xmlFreeNodeList
    - xmlDictFree
    - xmlFreeIDTable
    - xmlFreeRefTable
    - xmlFreeNsList
    - xmlFreeDtd
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - DICT_FREE
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: void
    signature: void xmlFreeDoc(xmlDoc *cur)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCreate
      Src: /src/libxml2/tree.c:1016,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/tree.c:1029,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:1096,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:1099,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:1105,1
    - Dst: xmlBufIsEmpty
      Src: /src/libxml2/tree.c:1112,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:1113,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/tree.c:1116,1
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:1134,1
    - Dst: xmlNewEntityRef
      Src: /src/libxml2/tree.c:1146,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1165,1
    - Dst: xmlCopyCharMultiByte
      Src: /src/libxml2/tree.c:1179,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:1182,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/tree.c:1195,1
    - Dst: xmlBufIsEmpty
      Src: /src/libxml2/tree.c:1199,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:1200,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/tree.c:1204,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:1214,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:1221,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:1226,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:1237,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1239,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:1241,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 196
    argCount: 5
    argNames:
    - doc
    - attr
    - value
    - len
    - listPtr
    argTypes:
    - xmlDoc*
    - xmlAttr*
    - xmlChar*
    - size_t
    - xmlNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 996
    functionDepth: 5
    functionLinenumber: 996
    functionLinenumberEnd: 1243
    functionName: xmlNodeParseAttValue
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlFreeNodeList
    - xmlFree
    - xmlBufAdd
    - xmlStrndup
    - xmlBufIsEmpty
    - xmlBufDetach
    - xmlGetDocEntity
    - xmlBufCreate
    - xmlNodeParseAttValue
    - xmlNewDocText
    - xmlBufCat
    - xmlCopyCharMultiByte
    - xmlNewEntityRef
    - xmlBufFree
    linkageType: ''
    returnType: int
    signature: "int xmlNodeParseAttValue(const xmlDoc *doc, xmlAttr *attr,\n                     const
      xmlChar *value, size_t len, xmlNode **listPtr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:1261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - doc
    - value
    - len
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1256
    functionDepth: 6
    functionLinenumber: 1256
    functionLinenumberEnd: 1263
    functionName: xmlStringLenGetNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNodeParseAttValue
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlStringLenGetNodeList(const xmlDoc *doc, const xmlChar *value, int len)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:1286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - doc
    - value
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1282
    functionDepth: 6
    functionLinenumber: 1282
    functionLinenumberEnd: 1288
    functionName: xmlStringGetNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNodeParseAttValue
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlStringGetNodeList(const xmlDoc *doc, const xmlChar *value)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1302,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1309,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1310,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/tree.c:1313,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:1322,1
    - Dst: xmlEscapeText
      Src: /src/libxml2/tree.c:1326,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:1329,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1330,1
    - Dst: xmlBufGetNodeContent
      Src: /src/libxml2/tree.c:1335,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/tree.c:1337,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:1338,1
    - Dst: xmlBufAdd
      Src: /src/libxml2/tree.c:1339,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/tree.c:1346,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:1347,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:1351,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 3
    argNames:
    - node
    - escape
    - flags
    argTypes:
    - xmlNode*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1296
    functionDepth: 5
    functionLinenumber: 1296
    functionLinenumberEnd: 1353
    functionName: xmlNodeListGetStringInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlBufGetNodeContent
    - xmlFree
    - xmlEscapeText
    - xmlBufAdd
    - xmlBufDetach
    - xmlBufCreate
    - xmlBufCat
    - xmlBufFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNodeListGetStringInternal(const xmlNode *node, int escape, int flags)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeListGetStringInternal
      Src: /src/libxml2/tree.c:1395,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 3
    argNames:
    - doc
    - list
    - inLine
    argTypes:
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1372
    functionDepth: 6
    functionLinenumber: 1372
    functionLinenumberEnd: 1396
    functionName: xmlNodeListGetString
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 9
    functionsReached:
    - xmlNodeListGetStringInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNodeListGetString(xmlDoc *doc, const xmlNode *list, int inLine)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeListGetStringInternal
      Src: /src/libxml2/tree.c:1428,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - list
    - inLine
    argTypes:
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1412
    functionDepth: 6
    functionLinenumber: 1412
    functionLinenumberEnd: 1429
    functionName: xmlNodeListGetRawString
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNodeListGetStringInternal
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlNodeListGetRawString(const xmlDoc *doc ATTRIBUTE_UNUSED,\n
      \                       const xmlNode *list, int inLine)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:1442,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1443,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:1450,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:1455,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1456,1
    - Dst: memset
      Src: /src/libxml2/tree.c:1459,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:1471,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1473,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:1482,1
    - Dst: xmlIsID
      Src: /src/libxml2/tree.c:1495,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/tree.c:1499,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:1521,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:1525,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 68
    argCount: 5
    argNames:
    - node
    - ns
    - name
    - value
    - eatname
    argTypes:
    - xmlNodePtr
    - xmlNsPtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1431
    functionDepth: 2
    functionLinenumber: 1431
    functionLinenumberEnd: 1527
    functionName: xmlNewPropInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlFreeProp
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlNewDocText
    - xmlAddIDSafe
    - xmlIsID
    - xmlDictOwns
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xmlNewPropInternal(xmlNodePtr node, xmlNsPtr ns,\n                   const
      xmlChar * name, const xmlChar * value,\n                   int eatname)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewPropInternal
      Src: /src/libxml2/tree.c:1551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - name
    - value
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1552
      start: 1544
    functionDepth: 3
    functionLinenumber: 1544
    functionLinenumberEnd: 1552
    functionName: xmlNewProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlNewPropInternal
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlNewProp(xmlNode *node, const xmlChar *name, const xmlChar *value)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewPropInternal
      Src: /src/libxml2/tree.c:1578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - node
    - ns
    - name
    - value
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1570
    functionDepth: 3
    functionLinenumber: 1570
    functionLinenumberEnd: 1579
    functionName: xmlNewNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 5
    functionsReached:
    - xmlNewPropInternal
    linkageType: ''
    returnType: xmlAttr
    signature: "xmlAttr *\nxmlNewNsProp(xmlNode *node, xmlNs *ns, const xmlChar *name,\n
      \          const xmlChar *value)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewPropInternal
      Src: /src/libxml2/tree.c:1603,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - node
    - ns
    - name
    - value
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1595
    functionDepth: 3
    functionLinenumber: 1595
    functionLinenumberEnd: 1604
    functionName: xmlNewNsPropEatName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewPropInternal
    linkageType: ''
    returnType: xmlAttr
    signature: "xmlAttr *\nxmlNewNsPropEatName(xmlNode *node, xmlNs *ns, xmlChar *name,\n
      \          const xmlChar *value)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:1631,1
    - Dst: memset
      Src: /src/libxml2/tree.c:1634,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:1638,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1640,1
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:1649,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:1654,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:1658,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - doc
    - name
    - value
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1660
      start: 1620
    functionDepth: 6
    functionLinenumber: 1620
    functionLinenumberEnd: 1660
    functionName: xmlNewDocProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlFreeProp
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlNodeParseAttValue
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlNewDocProp(xmlDoc *doc, const xmlChar *name, const xmlChar *value)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:1673,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1667
    functionDepth: 1
    functionLinenumber: 1667
    functionLinenumberEnd: 1676
    functionName: xmlFreePropList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFreeProp
    linkageType: ''
    returnType: void
    signature: void xmlFreePropList(xmlAttr *cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/tree.c:1691,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/tree.c:1695,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:1697,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:1698,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1699,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1700
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1700
    functionName: xmlFreeProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlFreeNodeList
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - DICT_FREE
    - xmlRemoveID
    linkageType: ''
    returnType: void
    signature: void xmlFreeProp(xmlAttr *cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:1727,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:1735,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1741
      start: 1713
    functionDepth: 2
    functionLinenumber: 1713
    functionLinenumberEnd: 1741
    functionName: xmlRemoveProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFreeProp
    linkageType: ''
    returnType: int
    signature: int xmlRemoveProp(xmlAttr *cur)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:1763,1
    - Dst: memset
      Src: /src/libxml2/tree.c:1766,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:1771,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1773,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1777,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:1783,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:1787,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - doc
    - name
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1752
    functionDepth: 2
    functionLinenumber: 1752
    functionLinenumberEnd: 1789
    functionName: xmlNewDocPI
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlStrdup
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlDictLookup
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewDocPI(xmlDoc *doc, const xmlChar *name, const xmlChar *content)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocPI
      Src: /src/libxml2/tree.c:1803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - content
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1801
    functionDepth: 3
    functionLinenumber: 1801
    functionLinenumberEnd: 1804
    functionName: xmlNewPI
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewDocPI
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewPI(const xmlChar *name, const xmlChar *content)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/tree.c:1818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ns
    - name
    argTypes:
    - xmlNs*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1819
      start: 1816
    functionDepth: 1
    functionLinenumber: 1816
    functionLinenumberEnd: 1819
    functionName: xmlNewNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewNode(xmlNs *ns, const xmlChar *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxml2/tree.c:1837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ns
    - name
    argTypes:
    - xmlNs*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1835
    functionDepth: 1
    functionLinenumber: 1835
    functionLinenumberEnd: 1838
    functionName: xmlNewNodeEatName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNodeEatName
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewNodeEatName(xmlNs *ns, xmlChar *name)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:1845,1
    - Dst: memset
      Src: /src/libxml2/tree.c:1848,1
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:1860,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1863,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:1869,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - doc
    - ns
    - name
    - content
    argTypes:
    - xmlDocPtr
    - xmlNsPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1872
      start: 1840
    functionDepth: 6
    functionLinenumber: 1840
    functionLinenumberEnd: 1872
    functionName: xmlNewElem
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlNodeParseAttValue
    - memset
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlNewElem(xmlDocPtr doc, xmlNsPtr ns, const xmlChar *name,\n
      \          const xmlChar *content)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:1908,1
    - Dst: xmlNewElem
      Src: /src/libxml2/tree.c:1912,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:1915,1
    - Dst: xmlNewElem
      Src: /src/libxml2/tree.c:1919,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1921,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 4
    argNames:
    - doc
    - ns
    - name
    - content
    argTypes:
    - xmlDoc*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1898
    functionDepth: 7
    functionLinenumber: 1898
    functionLinenumberEnd: 1926
    functionName: xmlNewDocNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 16
    functionsReached:
    - xmlStrdup
    - xmlDictLookup
    - xmlNewElem
    - xmlFree
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlNewDocNode(xmlDoc *doc, xmlNs *ns,\n              const
      xmlChar *name, const xmlChar *content)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewElem
      Src: /src/libxml2/tree.c:1950,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:1955,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:1956,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - doc
    - ns
    - name
    - content
    argTypes:
    - xmlDoc*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1942
    functionDepth: 7
    functionLinenumber: 1942
    functionLinenumberEnd: 1961
    functionName: xmlNewDocNodeEatName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlDictOwns
    - xmlNewElem
    - xmlFree
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlNewDocNodeEatName(xmlDoc *doc, xmlNs *ns,\n                     xmlChar
      *name, const xmlChar *content)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/tree.c:1980,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:1986,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:1988,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - doc
    - ns
    - name
    - content
    argTypes:
    - xmlDoc*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1975
    functionDepth: 8
    functionLinenumber: 1975
    functionLinenumberEnd: 1998
    functionName: xmlNewDocRawNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlNewDocNode
    - xmlNewDocText
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlNewDocRawNode(xmlDoc *doc, xmlNs *ns,\n                 const
      xmlChar *name, const xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2014,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2017,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2023,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2025
      start: 2007
    functionDepth: 0
    functionLinenumber: 2007
    functionLinenumberEnd: 2025
    functionName: xmlNewDocFragment
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlRegisterNodeDefaultValue
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewDocFragment(xmlDoc *doc)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2043,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2046,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2051,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2057,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2061,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - content
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2063
      start: 2036
    functionDepth: 2
    functionLinenumber: 2036
    functionLinenumberEnd: 2063
    functionName: xmlNewText
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlStrdup
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewText(const xmlChar *content)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocRawNode
      Src: /src/libxml2/tree.c:2104,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 4
    argNames:
    - parent
    - ns
    - name
    - content
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2123
      start: 2081
    functionDepth: 9
    functionLinenumber: 2081
    functionLinenumberEnd: 2123
    functionName: xmlNewTextChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlNewDocRawNode
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlNewTextChild(xmlNode *parent, xmlNs *ns,\n            const
      xmlChar *name, const xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2143,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:2145,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2148,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2154,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDocPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2157
      start: 2136
    functionDepth: 0
    functionLinenumber: 2136
    functionLinenumberEnd: 2157
    functionName: xmlNewEntityRef
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlRegisterNodeDefaultValue
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlNewEntityRef(xmlDocPtr doc, xmlChar *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/tree.c:2184,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2186,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2188,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2190,1
    - Dst: xmlNewEntityRef
      Src: /src/libxml2/tree.c:2194,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2195
      start: 2174
    functionDepth: 2
    functionLinenumber: 2174
    functionLinenumberEnd: 2195
    functionName: xmlNewCharRef
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlNewEntityRef
    - xmlStrndup
    - xmlStrlen
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewCharRef(xmlDoc *doc, const xmlChar *name)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2219,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2222,1
    - Dst: xmlStrlen
      Src: /src/libxml2/tree.c:2229,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2231,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2233,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2235,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:2239,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2252,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2256,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2258
      start: 2208
    functionDepth: 2
    functionLinenumber: 2208
    functionLinenumberEnd: 2258
    functionName: xmlNewReference
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlStrlen
    - xmlRegisterNodeDefaultValue
    - xmlStrndup
    - xmlGetDocEntity
    - xmlMalloc
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewReference(const xmlDoc *doc, const xmlChar *name)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewText
      Src: /src/libxml2/tree.c:2272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - doc
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2275
      start: 2268
    functionDepth: 3
    functionLinenumber: 2268
    functionLinenumberEnd: 2275
    functionName: xmlNewDocText
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 11
    functionsReached:
    - xmlNewText
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewDocText(const xmlDoc *doc, const xmlChar *content)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2294,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2297,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2302,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2304,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2310,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - content
    - len
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2312
      start: 2287
    functionDepth: 1
    functionLinenumber: 2287
    functionLinenumberEnd: 2312
    functionName: xmlNewTextLen
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlRegisterNodeDefaultValue
    - xmlStrndup
    - xmlMalloc
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewTextLen(const xmlChar *content, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewTextLen
      Src: /src/libxml2/tree.c:2327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - doc
    - content
    - len
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2330
      start: 2323
    functionDepth: 2
    functionLinenumber: 2323
    functionLinenumberEnd: 2330
    functionName: xmlNewDocTextLen
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewTextLen
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewDocTextLen(xmlDoc *doc, const xmlChar *content, int len)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2348,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2351,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2356,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2362,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2366,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - content
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2341
    functionDepth: 2
    functionLinenumber: 2341
    functionLinenumberEnd: 2368
    functionName: xmlNewComment
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 5
    functionsReached:
    - xmlStrdup
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewComment(const xmlChar *content)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:2386,1
    - Dst: memset
      Src: /src/libxml2/tree.c:2389,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:2394,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:2396,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:2402,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - doc
    - content
    - len
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2379
    functionDepth: 1
    functionLinenumber: 2379
    functionLinenumberEnd: 2404
    functionName: xmlNewCDataBlock
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlFree
    - xmlRegisterNodeDefaultValue
    - xmlStrndup
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewCDataBlock(xmlDoc *doc, const xmlChar *content, int len)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewComment
      Src: /src/libxml2/tree.c:2418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - doc
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2414
    functionDepth: 3
    functionLinenumber: 2414
    functionLinenumberEnd: 2421
    functionName: xmlNewDocComment
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlNewComment
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNewDocComment(xmlDoc *doc, const xmlChar *content)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:2437,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/tree.c:2438,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:2441,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/tree.c:2442,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:2447,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/tree.c:2448,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/tree.c:2451,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/tree.c:2452,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 25
    argCount: 1
    argNames:
    - ent
    argTypes:
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2423
    functionDepth: 2
    functionLinenumber: 2423
    functionLinenumberEnd: 2455
    functionName: xmlRemoveEntity
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlHashRemoveEntry
    linkageType: ''
    returnType: void
    signature: void xmlRemoveEntity(xmlEntityPtr ent)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:2477,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:2479,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2481,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:2489,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:2490,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/tree.c:2507,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:2527,1
    - Dst: xmlRemoveEntity
      Src: /src/libxml2/tree.c:2548,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 53
    argCount: 2
    argNames:
    - node
    - doc
    argTypes:
    - xmlNodePtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2567
      start: 2457
    functionDepth: 3
    functionLinenumber: 2457
    functionLinenumberEnd: 2567
    functionName: xmlNodeSetDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRemoveEntity
    - xmlGetDocEntity
    - xmlDictOwns
    - xmlDictLookup
    - xmlRemoveID
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetDoc(xmlNodePtr node, xmlDocPtr doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetListDoc
      Src: /src/libxml2/tree.c:2600,1
    - Dst: xmlNodeSetDoc
      Src: /src/libxml2/tree.c:2604,1
    - Dst: xmlSetListDoc
      Src: /src/libxml2/tree.c:2613,1
    - Dst: xmlNodeSetDoc
      Src: /src/libxml2/tree.c:2617,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 23
    argCount: 2
    argNames:
    - tree
    - doc
    argTypes:
    - xmlNode*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2621
      start: 2586
    functionDepth: 4
    functionLinenumber: 2586
    functionLinenumberEnd: 2621
    functionName: xmlSetTreeDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlNodeSetDoc
    - xmlSetListDoc
    linkageType: ''
    returnType: int
    signature: int xmlSetTreeDoc(xmlNode *tree, xmlDoc *doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:2645,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - list
    - doc
    argTypes:
    - xmlNode*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2652
      start: 2634
    functionDepth: 5
    functionLinenumber: 2634
    functionLinenumberEnd: 2652
    functionName: xmlSetListDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlSetTreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSetListDoc(xmlNode *list, xmlDoc *doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/tree.c:2695,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 4
    argNames:
    - parent
    - ns
    - name
    - content
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2714
      start: 2672
    functionDepth: 8
    functionLinenumber: 2672
    functionLinenumberEnd: 2714
    functionName: xmlNewChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlNewDocNode
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlNewChild(xmlNode *parent, xmlNs *ns,\n            const
      xmlChar *name, const xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:2724,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:2725,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 2
    argNames:
    - text
    - content
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2730
      start: 2716
    functionDepth: 2
    functionLinenumber: 2716
    functionLinenumberEnd: 2730
    functionName: xmlTextSetContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlDictOwns
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlTextSetContent(xmlNodePtr text, xmlChar *content)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrncatNew
      Src: /src/libxml2/tree.c:2739,1
    - Dst: xmlTextSetContent
      Src: /src/libxml2/tree.c:2743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - text
    - content
    - len
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2732
    functionDepth: 3
    functionLinenumber: 2732
    functionLinenumberEnd: 2745
    functionName: xmlTextAddContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlTextSetContent
    - xmlStrncatNew
    linkageType: ''
    returnType: int
    signature: int xmlTextAddContent(xmlNodePtr text, const xmlChar *content, int
      len)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:2757,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:2760,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:2763,1
    - Dst: xmlRemoveProp
      Src: /src/libxml2/tree.c:2783,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 5
    argNames:
    - doc
    - cur
    - parent
    - prev
    - next
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2787
      start: 2747
    functionDepth: 5
    functionLinenumber: 2747
    functionLinenumberEnd: 2787
    functionName: xmlInsertProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlRemoveProp
    - xmlGetPropNodeInternal
    - xmlSetTreeDoc
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlInsertProp(xmlDocPtr doc, xmlNodePtr cur, xmlNodePtr
      parent,\n              xmlNodePtr prev, xmlNodePtr next)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlInsertProp
      Src: /src/libxml2/tree.c:2795,1
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:2803,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:2805,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2806,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/tree.c:2815,1
    - Dst: xmlTextSetContent
      Src: /src/libxml2/tree.c:2818,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:2821,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:2822,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:2841,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 58
    argCount: 6
    argNames:
    - doc
    - cur
    - parent
    - prev
    - next
    - coalesce
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2874
      start: 2789
    functionDepth: 6
    functionLinenumber: 2789
    functionLinenumberEnd: 2874
    functionName: xmlInsertNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlInsertProp
    - xmlTextSetContent
    - xmlTextAddContent
    - xmlSetTreeDoc
    - xmlStrncatNew
    - xmlFreeNode
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlInsertNode(xmlDocPtr doc, xmlNodePtr cur, xmlNodePtr
      parent,\n              xmlNodePtr prev, xmlNodePtr next, int coalesce)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInsertNode
      Src: /src/libxml2/tree.c:2902,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 2
    argNames:
    - prev
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2903
      start: 2892
    functionDepth: 7
    functionLinenumber: 2892
    functionLinenumberEnd: 2903
    functionName: xmlAddNextSibling
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlInsertNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlAddNextSibling(xmlNode *prev, xmlNode *cur)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInsertNode
      Src: /src/libxml2/tree.c:2931,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 2
    argNames:
    - next
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2932
      start: 2921
    functionDepth: 7
    functionLinenumber: 2921
    functionLinenumberEnd: 2932
    functionName: xmlAddPrevSibling
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 5
    functionsReached:
    - xmlInsertNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlAddPrevSibling(xmlNode *next, xmlNode *cur)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInsertNode
      Src: /src/libxml2/tree.c:2974,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 13
    argCount: 2
    argNames:
    - node
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2975
      start: 2952
    functionDepth: 7
    functionLinenumber: 2952
    functionLinenumberEnd: 2975
    functionName: xmlAddSibling
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlInsertNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlAddSibling(xmlNode *node, xmlNode *cur)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:3003,1
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:3027,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:3030,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 2
    argNames:
    - parent
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3050
      start: 2986
    functionDepth: 5
    functionLinenumber: 2986
    functionLinenumberEnd: 3050
    functionName: xmlAddChildList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlSetTreeDoc
    - xmlTextAddContent
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlAddChildList(xmlNode *parent, xmlNode *cur)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:3111,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:3113,1
    - Dst: xmlInsertNode
      Src: /src/libxml2/tree.c:3130,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - parent
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3131
      start: 3097
    functionDepth: 7
    functionLinenumber: 3097
    functionLinenumberEnd: 3131
    functionName: xmlAddChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 14
    functionsReached:
    - xmlInsertNode
    - xmlTextAddContent
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlAddChild(xmlNode *parent, xmlNode *cur)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3145
      start: 3139
    functionDepth: 0
    functionLinenumber: 3139
    functionLinenumberEnd: 3145
    functionName: xmlGetLastChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlGetLastChild(const xmlNode *parent)'
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3184
      start: 3160
    functionDepth: 0
    functionLinenumber: 3160
    functionLinenumberEnd: 3184
    functionName: xmlChildElementCount
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long xmlChildElementCount(xmlNode *parent)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3217
      start: 3194
    functionDepth: 0
    functionLinenumber: 3194
    functionLinenumberEnd: 3217
    functionName: xmlFirstElementChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlFirstElementChild(xmlNode *parent)'
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - parent
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3227
    functionDepth: 0
    functionLinenumber: 3227
    functionLinenumberEnd: 3250
    functionName: xmlLastElementChild
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlLastElementChild(xmlNode *parent)'
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3284
      start: 3260
    functionDepth: 0
    functionLinenumber: 3260
    functionLinenumberEnd: 3284
    functionName: xmlPreviousElementSibling
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlPreviousElementSibling(xmlNode *node)'
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3319
      start: 3294
    functionDepth: 0
    functionLinenumber: 3294
    functionLinenumberEnd: 3319
    functionName: xmlNextElementSibling
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlNextElementSibling(xmlNode *node)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNsList
      Src: /src/libxml2/tree.c:3335,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/tree.c:3353,1
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/tree.c:3363,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/tree.c:3369,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:3375,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/tree.c:3381,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:3392,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:3393,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 46
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3406
      start: 3326
    functionDepth: 3
    functionLinenumber: 3326
    functionLinenumberEnd: 3406
    functionName: xmlFreeNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 19
    functionsReached:
    - xmlFreeNsList
    - xmlFree
    - xmlDeregisterNodeDefaultValue
    - xmlFreePropList
    - DICT_FREE
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlFreeNodeList(xmlNode *cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:3424,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:3428,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:3432,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/tree.c:3436,1
    - Dst: xmlDeregisterNodeDefaultValue
      Src: /src/libxml2/tree.c:3441,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:3447,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/tree.c:3453,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/tree.c:3455,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:3459,1
    - Dst: DICT_FREE
      Src: /src/libxml2/tree.c:3470,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:3472,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 37
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3473
      start: 3416
    functionDepth: 4
    functionLinenumber: 3416
    functionLinenumberEnd: 3473
    functionName: xmlFreeNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 30
    functionsReached:
    - xmlFreeNodeList
    - xmlFreeNsList
    - xmlFreeDtd
    - xmlFree
    - xmlFreeProp
    - xmlDeregisterNodeDefaultValue
    - xmlFreeEntity
    - xmlFreePropList
    - xmlFreeNs
    - DICT_FREE
    linkageType: ''
    returnType: void
    signature: void xmlFreeNode(xmlNode *cur)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3506
      start: 3483
    functionDepth: 0
    functionLinenumber: 3483
    functionLinenumberEnd: 3506
    functionName: xmlUnlinkNodeInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlUnlinkNodeInternal(xmlNodePtr cur)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRemoveEntity
      Src: /src/libxml2/tree.c:3536,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:3538,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3539
      start: 3516
    functionDepth: 3
    functionLinenumber: 3516
    functionLinenumberEnd: 3539
    functionName: xmlUnlinkNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 17
    functionsReached:
    - xmlRemoveEntity
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: void
    signature: void xmlUnlinkNode(xmlNode *cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/tree.c:3566,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:3575,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:3576,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 2
    argNames:
    - old
    - cur
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3599
      start: 3557
    functionDepth: 5
    functionLinenumber: 3557
    functionLinenumberEnd: 3599
    functionName: xmlReplaceNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlUnlinkNode
    - xmlSetTreeDoc
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlReplaceNode(xmlNode *old, xmlNode *cur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:3621,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3627
      start: 3614
    functionDepth: 3
    functionLinenumber: 3614
    functionLinenumberEnd: 3627
    functionName: xmlCopyNamespace
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewNs
    linkageType: ''
    returnType: xmlNs
    signature: 'xmlNs *

      xmlCopyNamespace(xmlNs *cur)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyNamespace
      Src: /src/libxml2/tree.c:3642,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/tree.c:3644,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3656
      start: 3636
    functionDepth: 4
    functionLinenumber: 3636
    functionLinenumberEnd: 3656
    functionName: xmlCopyNamespaceList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlCopyNamespace
    - xmlFreeNsList
    linkageType: ''
    returnType: xmlNs
    signature: 'xmlNs *

      xmlCopyNamespaceList(xmlNs *cur)'
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocProp
      Src: /src/libxml2/tree.c:3666,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/tree.c:3668,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/tree.c:3670,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/tree.c:3672,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/tree.c:3674,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:3682,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:3691,1
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:3706,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:3716,1
    - Dst: xmlNewReconciledNs
      Src: /src/libxml2/tree.c:3724,1
    - Dst: xmlStaticCopyNodeList
      Src: /src/libxml2/tree.c:3736,1
    - Dst: xmlIsID
      Src: /src/libxml2/tree.c:3755,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/tree.c:3762,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/tree.c:3765,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:3766,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:3774,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 86
    argCount: 3
    argNames:
    - doc
    - target
    - cur
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3776
      start: 3658
    functionDepth: 7
    functionLinenumber: 3658
    functionLinenumberEnd: 3776
    functionName: xmlCopyPropInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStaticCopyNodeList
    - xmlSearchNsSafe
    - xmlStrEqual
    - xmlFree
    - xmlFreeProp
    - xmlNodeGetContent
    - xmlNewReconciledNs
    - xmlNewNs
    - xmlNewDocProp
    - xmlIsID
    - xmlAddIDSafe
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr xmlCopyPropInternal(xmlDocPtr doc, xmlNodePtr target, xmlAttrPtr
      cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyPropInternal
      Src: /src/libxml2/tree.c:3792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - target
    - cur
    argTypes:
    - xmlNode*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3793
      start: 3790
    functionDepth: 8
    functionLinenumber: 3790
    functionLinenumberEnd: 3793
    functionName: xmlCopyProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlCopyPropInternal
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlCopyProp(xmlNode *target, xmlAttr *cur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyProp
      Src: /src/libxml2/tree.c:3813,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/tree.c:3815,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - target
    - cur
    argTypes:
    - xmlNode*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3828
      start: 3805
    functionDepth: 9
    functionLinenumber: 3805
    functionLinenumberEnd: 3828
    functionName: xmlCopyPropList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlCopyProp
    - xmlFreePropList
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlCopyPropList(xmlNode *target, xmlAttr *cur)'
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyPropInternal
      Src: /src/libxml2/tree.c:3876,1
    - Dst: xmlCopyNamespaceList
      Src: /src/libxml2/tree.c:3878,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/tree.c:3882,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:3890,1
    - Dst: memset
      Src: /src/libxml2/tree.c:3893,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:3906,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:3908,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:3917,1
    - Dst: xmlCopyNamespaceList
      Src: /src/libxml2/tree.c:3929,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:3938,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:3950,1
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:3957,1
    - Dst: xmlNewReconciledNs
      Src: /src/libxml2/tree.c:3959,1
    - Dst: xmlCopyPropList
      Src: /src/libxml2/tree.c:3971,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:3983,1
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/tree.c:3994,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/tree.c:4034,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:4038,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 145
    argCount: 4
    argNames:
    - node
    - doc
    - parent
    - extended
    argTypes:
    - xmlNode*
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4040
      start: 3858
    functionDepth: 10
    functionLinenumber: 3858
    functionLinenumberEnd: 4040
    functionName: xmlStaticCopyNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlSearchNsSafe
    - xmlRegisterNodeDefaultValue
    - xmlCopyPropList
    - xmlNewReconciledNs
    - xmlCopyNamespaceList
    - xmlMalloc
    - xmlCopyPropInternal
    - xmlNewNs
    - xmlGetDocEntity
    - xmlStaticCopyNode
    - xmlDictLookup
    - xmlCopyDoc
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: xmlNode
    signature: "xmlNode *\nxmlStaticCopyNode(xmlNode *node, xmlDoc *doc, xmlNode *parent,\n
      \                 int extended)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyDtd
      Src: /src/libxml2/tree.c:4068,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:4071,1
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/tree.c:4099,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:4116,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:4118,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 63
    argCount: 3
    argNames:
    - node
    - doc
    - parent
    argTypes:
    - xmlNode*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4124
      start: 4052
    functionDepth: 11
    functionLinenumber: 4052
    functionLinenumberEnd: 4124
    functionName: xmlStaticCopyNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFreeNodeList
    - xmlSetTreeDoc
    - xmlFreeDtd
    - xmlCopyDtd
    - xmlStaticCopyNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlStaticCopyNodeList(xmlNode *node, xmlDoc *doc, xmlNode *parent)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/tree.c:4147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - node
    - extended
    argTypes:
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4149
      start: 4143
    functionDepth: 11
    functionLinenumber: 4143
    functionLinenumberEnd: 4149
    functionName: xmlCopyNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStaticCopyNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlCopyNode(xmlNode *node, int extended)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/tree.c:4171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - node
    - doc
    - extended
    argTypes:
    - xmlNode*
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4173
      start: 4167
    functionDepth: 11
    functionLinenumber: 4167
    functionLinenumberEnd: 4173
    functionName: xmlDocCopyNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlStaticCopyNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlDocCopyNode(xmlNode *node, xmlDoc *doc, int extended)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStaticCopyNodeList
      Src: /src/libxml2/tree.c:4184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - doc
    - node
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4186
      start: 4183
    functionDepth: 12
    functionLinenumber: 4183
    functionLinenumberEnd: 4186
    functionName: xmlDocCopyNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStaticCopyNodeList
    linkageType: ''
    returnType: xmlNode
    signature: xmlNode *xmlDocCopyNodeList(xmlDoc *doc, xmlNode *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStaticCopyNodeList
      Src: /src/libxml2/tree.c:4198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4200
      start: 4197
    functionDepth: 12
    functionLinenumber: 4197
    functionLinenumberEnd: 4200
    functionName: xmlCopyNodeList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStaticCopyNodeList
    linkageType: ''
    returnType: xmlNode
    signature: xmlNode *xmlCopyNodeList(xmlNode *node)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDtd
      Src: /src/libxml2/tree.c:4214,1
    - Dst: xmlCopyEntitiesTable
      Src: /src/libxml2/tree.c:4217,1
    - Dst: xmlCopyNotationTable
      Src: /src/libxml2/tree.c:4223,1
    - Dst: xmlCopyElementTable
      Src: /src/libxml2/tree.c:4229,1
    - Dst: xmlCopyAttributeTable
      Src: /src/libxml2/tree.c:4235,1
    - Dst: xmlCopyEntitiesTable
      Src: /src/libxml2/tree.c:4241,1
    - Dst: xmlGetEntityFromDtd
      Src: /src/libxml2/tree.c:4257,1
    - Dst: xmlGetParameterEntityFromDtd
      Src: /src/libxml2/tree.c:4262,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/tree.c:4270,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:4274,1
    - Dst: xmlCopyNode
      Src: /src/libxml2/tree.c:4276,1
    - Dst: xmlFreeDtd
      Src: /src/libxml2/tree.c:4302,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 85
    argCount: 1
    argNames:
    - dtd
    argTypes:
    - xmlDtd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4304
      start: 4208
    functionDepth: 12
    functionLinenumber: 4208
    functionLinenumberEnd: 4304
    functionName: xmlCopyDtd
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlCopyNode
    - xmlNewDtd
    - xmlGetEntityFromDtd
    - xmlFreeDtd
    - xmlGetDtdQAttrDesc
    - xmlCopyElementTable
    - xmlCopyAttributeTable
    - xmlGetParameterEntityFromDtd
    - xmlCopyEntitiesTable
    - xmlCopyNotationTable
    - xmlGetDtdQElementDesc
    linkageType: ''
    returnType: xmlDtd
    signature: 'xmlDtd *

      xmlCopyDtd(xmlDtd *dtd)'
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/tree.c:4320,1
    - Dst: xmlMemStrdup
      Src: /src/libxml2/tree.c:4324,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:4329,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:4334,1
    - Dst: xmlCopyDtd
      Src: /src/libxml2/tree.c:4346,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:4350,1
    - Dst: xmlCopyNamespaceList
      Src: /src/libxml2/tree.c:4353,1
    - Dst: xmlStaticCopyNodeList
      Src: /src/libxml2/tree.c:4360,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/tree.c:4375,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 63
    argCount: 2
    argNames:
    - doc
    - recursive
    argTypes:
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4377
      start: 4315
    functionDepth: 13
    functionLinenumber: 4315
    functionLinenumberEnd: 4377
    functionName: xmlCopyDoc
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlStrdup
    - xmlStaticCopyNodeList
    - xmlSetTreeDoc
    - xmlNewDoc
    - xmlCopyNamespaceList
    - xmlCopyDtd
    - xmlMemStrdup
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      xmlCopyDoc(xmlDoc *doc, int recursive)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: XML_PTR_TO_INT
      Src: /src/libxml2/tree.c:4410,1
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4413,1
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4415,1
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4417,1
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4426,1
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4429,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 24
    argCount: 2
    argNames:
    - node
    - depth
    argTypes:
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4432
      start: 4394
    functionDepth: 1
    functionLinenumber: 4394
    functionLinenumberEnd: 4432
    functionName: xmlGetLineNoInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlGetLineNoInternal
    - XML_PTR_TO_INT
    linkageType: ''
    returnType: long
    signature: long xmlGetLineNoInternal(const xmlNode *node, int depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetLineNoInternal
      Src: /src/libxml2/tree.c:4445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4446
      start: 4442
    functionDepth: 2
    functionLinenumber: 4442
    functionLinenumberEnd: 4446
    functionName: xmlGetLineNo
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 12
    functionsReached:
    - xmlGetLineNoInternal
    linkageType: ''
    returnType: long
    signature: long xmlGetLineNo(const xmlNode *node)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCreate
      Src: /src/libxml2/tree.c:4467,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:4479,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4498,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4502,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4506,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4507,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4508,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4515,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4518,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4529,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4532,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4541,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4544,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4553,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4577,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4607,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4608,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4609,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4617,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4625,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4635,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4637,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4638,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:4640,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:4648,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/tree.c:4653,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:4656,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4657,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 142
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4659
      start: 4455
    functionDepth: 5
    functionLinenumber: 4455
    functionLinenumberEnd: 4659
    functionName: xmlGetNodePath
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 6
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlBufDetach
    - xmlBufCreate
    - xmlMalloc
    - snprintf
    - xmlBufCat
    - xmlBufFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetNodePath(const xmlNode *node)'
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4683
      start: 4671
    functionDepth: 0
    functionLinenumber: 4671
    functionLinenumberEnd: 4683
    functionName: xmlDocGetRootElement
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 44
    functionsReached: []
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlDocGetRootElement(const xmlDoc *doc)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:4714,1
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:4715,1
    - Dst: xmlAddSibling
      Src: /src/libxml2/tree.c:4723,1
    - Dst: xmlReplaceNode
      Src: /src/libxml2/tree.c:4726,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - doc
    - root
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4729
      start: 4699
    functionDepth: 8
    functionLinenumber: 4699
    functionLinenumberEnd: 4729
    functionName: xmlDocSetRootElement
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlAddSibling
    - xmlSetTreeDoc
    - xmlUnlinkNodeInternal
    - xmlReplaceNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlDocSetRootElement(xmlDoc *doc, xmlNode *root)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSearchNsByHrefSafe
      Src: /src/libxml2/tree.c:4748,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/tree.c:4751,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - cur
    - lang
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4756
      start: 4739
    functionDepth: 1
    functionLinenumber: 4739
    functionLinenumberEnd: 4756
    functionName: xmlNodeSetLang
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlSetNsProp
    - xmlSearchNsByHrefSafe
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetLang(xmlNode *cur, const xmlChar *lang)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/tree.c:4777,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4788
      start: 4768
    functionDepth: 1
    functionLinenumber: 4768
    functionLinenumberEnd: 4788
    functionName: xmlNodeGetLang
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlNodeGetAttrValue
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNodeGetLang(const xmlNode *cur)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSearchNsByHrefSafe
      Src: /src/libxml2/tree.c:4809,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/tree.c:4818,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - cur
    - val
    argTypes:
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4823
      start: 4799
    functionDepth: 1
    functionLinenumber: 4799
    functionLinenumberEnd: 4823
    functionName: xmlNodeSetSpacePreserve
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlSetNsProp
    - xmlSearchNsByHrefSafe
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetSpacePreserve(xmlNode *cur, int val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/tree.c:4843,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4848,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4849,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:4852,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4853,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4856,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4863
      start: 4834
    functionDepth: 1
    functionLinenumber: 4834
    functionLinenumberEnd: 4863
    functionName: xmlNodeGetSpacePreserve
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlNodeGetAttrValue
    - xmlFree
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlNodeGetSpacePreserve(const xmlNode *cur)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:4897,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:4899,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/tree.c:4906,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4907,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - cur
    - name
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4908
      start: 4871
    functionDepth: 2
    functionLinenumber: 4871
    functionLinenumberEnd: 4908
    functionName: xmlNodeSetName
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlDictOwns
    - xmlStrdup
    - xmlDictLookup
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlNodeSetName(xmlNode *cur, const xmlChar *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4934,1
    - Dst: xmlPathToURI
      Src: /src/libxml2/tree.c:4938,1
    - Dst: xmlSearchNsByHrefSafe
      Src: /src/libxml2/tree.c:4948,1
    - Dst: xmlPathToURI
      Src: /src/libxml2/tree.c:4951,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/tree.c:4954,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4955,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:4958,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 2
    argNames:
    - cur
    - uri
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4961
      start: 4918
    functionDepth: 4
    functionLinenumber: 4918
    functionLinenumberEnd: 4961
    functionName: xmlNodeSetBase
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlPathToURI
    - xmlSetNsProp
    - xmlFree
    - xmlSearchNsByHrefSafe
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetBase(xmlNode *cur, const xmlChar* uri)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/tree.c:5002,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/tree.c:5006,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/tree.c:5010,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/tree.c:5011,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5028,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5029,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/tree.c:5035,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5037,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/tree.c:5042,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5043,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5044,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/tree.c:5051,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/tree.c:5052,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/tree.c:5053,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5062,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/tree.c:5066,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5067,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 88
    argCount: 3
    argNames:
    - doc
    - cur
    - baseOut
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5077
      start: 4979
    functionDepth: 9
    functionLinenumber: 4979
    functionLinenumberEnd: 5077
    functionName: xmlNodeGetBaseSafe
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlNodeGetAttrValue
    - xmlBuildURISafe
    - xmlStrcasecmp
    - xmlStrncmp
    linkageType: ''
    returnType: int
    signature: int xmlNodeGetBaseSafe(const xmlDoc *doc, const xmlNode *cur, xmlChar
      **baseOut)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/tree.c:5092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - doc
    - cur
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5094
      start: 5088
    functionDepth: 10
    functionLinenumber: 5088
    functionLinenumberEnd: 5094
    functionName: xmlNodeGetBase
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 11
    functionsReached:
    - xmlNodeGetBaseSafe
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNodeGetBase(const xmlDoc *doc, const xmlNode *cur)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufFromBuffer
      Src: /src/libxml2/tree.c:5115,1
    - Dst: xmlBufGetNodeContent
      Src: /src/libxml2/tree.c:5116,1
    - Dst: xmlBufBackToBuffer
      Src: /src/libxml2/tree.c:5117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - buffer
    - cur
    argTypes:
    - xmlBuffer*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5121
      start: 5108
    functionDepth: 3
    functionLinenumber: 5108
    functionLinenumberEnd: 5121
    functionName: xmlNodeBufGetContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlBufGetNodeContent
    - xmlBufBackToBuffer
    - xmlBufFromBuffer
    linkageType: ''
    returnType: int
    signature: int xmlNodeBufGetContent(xmlBuffer *buffer, const xmlNode *cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:5131,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:5142,1
    - Dst: xmlBufGetChildContent
      Src: /src/libxml2/tree.c:5150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - buf
    - ref
    argTypes:
    - xmlBufPtr
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5152
      start: 5123
    functionDepth: 5
    functionLinenumber: 5123
    functionLinenumberEnd: 5152
    functionName: xmlBufGetEntityRefContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlBufGetChildContent
    - xmlBufCat
    - xmlGetDocEntity
    linkageType: ''
    returnType: void
    signature: void xmlBufGetEntityRefContent(xmlBufPtr buf, const xmlNode *ref)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:5162,1
    - Dst: xmlBufGetEntityRefContent
      Src: /src/libxml2/tree.c:5166,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - buf
    - tree
    argTypes:
    - xmlBufPtr
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5154
    functionDepth: 6
    functionLinenumber: 5154
    functionLinenumberEnd: 5184
    functionName: xmlBufGetChildContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlBufGetEntityRefContent
    - xmlBufCat
    linkageType: ''
    returnType: void
    signature: void xmlBufGetChildContent(xmlBufPtr buf, const xmlNode *tree)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufGetChildContent
      Src: /src/libxml2/tree.c:5211,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:5218,1
    - Dst: xmlBufGetEntityRefContent
      Src: /src/libxml2/tree.c:5222,1
    - Dst: xmlBufCat
      Src: /src/libxml2/tree.c:5226,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - buf
    - cur
    argTypes:
    - xmlBuf*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5234
      start: 5198
    functionDepth: 7
    functionLinenumber: 5198
    functionLinenumberEnd: 5234
    functionName: xmlBufGetNodeContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlBufGetEntityRefContent
    - xmlBufCat
    - xmlBufGetChildContent
    linkageType: ''
    returnType: int
    signature: int xmlBufGetNodeContent(xmlBuf *buf, const xmlNode *cur)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5271,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5278,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5279,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5290,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5292,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5295,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/tree.c:5301,1
    - Dst: xmlBufGetNodeContent
      Src: /src/libxml2/tree.c:5304,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/tree.c:5305,1
    - Dst: xmlBufFree
      Src: /src/libxml2/tree.c:5306,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5309
      start: 5249
    functionDepth: 8
    functionLinenumber: 5249
    functionLinenumberEnd: 5309
    functionName: xmlNodeGetContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 15
    functionsReached:
    - xmlStrdup
    - xmlBufGetNodeContent
    - xmlBufDetach
    - xmlBufCreate
    - xmlBufFree
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlNodeGetContent(const xmlNode *cur)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeParseAttValue
      Src: /src/libxml2/tree.c:5326,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5340,1
    - Dst: xmlStrndup
      Src: /src/libxml2/tree.c:5342,1
    - Dst: xmlTextSetContent
      Src: /src/libxml2/tree.c:5347,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - cur
    - content
    - len
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5356
      start: 5311
    functionDepth: 6
    functionLinenumber: 5311
    functionLinenumberEnd: 5356
    functionName: xmlNodeSetContentInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlTextSetContent
    - xmlNodeParseAttValue
    - xmlStrdup
    - xmlStrndup
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetContentInternal(xmlNodePtr cur, const xmlChar *content,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeSetContentInternal
      Src: /src/libxml2/tree.c:5381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cur
    - content
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5382
      start: 5379
    functionDepth: 7
    functionLinenumber: 5379
    functionLinenumberEnd: 5382
    functionName: xmlNodeSetContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlNodeSetContentInternal
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetContent(xmlNode *cur, const xmlChar *content)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeSetContentInternal
      Src: /src/libxml2/tree.c:5394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cur
    - content
    - len
    argTypes:
    - xmlNode*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5395
      start: 5392
    functionDepth: 7
    functionLinenumber: 5392
    functionLinenumberEnd: 5395
    functionName: xmlNodeSetContentLen
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNodeSetContentInternal
    linkageType: ''
    returnType: int
    signature: int xmlNodeSetContentLen(xmlNode *cur, const xmlChar *content, int
      len)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocTextLen
      Src: /src/libxml2/tree.c:5424,1
    - Dst: xmlAddChild
      Src: /src/libxml2/tree.c:5427,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:5429,1
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:5439,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - cur
    - content
    - len
    argTypes:
    - xmlNode*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5445
      start: 5411
    functionDepth: 8
    functionLinenumber: 5411
    functionLinenumberEnd: 5445
    functionName: xmlNodeAddContentLen
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlNewDocTextLen
    - xmlAddChild
    - xmlFreeNode
    - xmlTextAddContent
    linkageType: ''
    returnType: int
    signature: int xmlNodeAddContentLen(xmlNode *cur, const xmlChar *content, int
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeAddContentLen
      Src: /src/libxml2/tree.c:5462,1
    - Dst: xmlStrlen
      Src: /src/libxml2/tree.c:5462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cur
    - content
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5463
      start: 5460
    functionDepth: 9
    functionLinenumber: 5460
    functionLinenumberEnd: 5463
    functionName: xmlNodeAddContent
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlNodeAddContentLen
    - xmlStrlen
    linkageType: ''
    returnType: int
    signature: int xmlNodeAddContent(xmlNode *cur, const xmlChar *content)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:5487,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:5490,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/tree.c:5491,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - first
    - second
    argTypes:
    - xmlNode*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5493
      start: 5474
    functionDepth: 5
    functionLinenumber: 5474
    functionLinenumberEnd: 5493
    functionName: xmlTextMerge
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlTextAddContent
    - xmlUnlinkNodeInternal
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      xmlTextMerge(xmlNode *first, xmlNode *second)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5530,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/tree.c:5538,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5541,1
    - Dst: xmlRealloc
      Src: /src/libxml2/tree.c:5548,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:5551,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 41
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - node
    - out
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlNs***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5569
      start: 5508
    functionDepth: 1
    functionLinenumber: 5508
    functionLinenumberEnd: 5569
    functionName: xmlGetNsListSafe
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlRealloc
    - xmlGrowCapacity
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlGetNsListSafe(const xmlDoc *doc ATTRIBUTE_UNUSED, const xmlNode
      *node,\n                 xmlNs ***out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNsListSafe
      Src: /src/libxml2/tree.c:5587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5589
      start: 5582
    functionDepth: 2
    functionLinenumber: 5582
    functionLinenumberEnd: 5589
    functionName: xmlGetNsList
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 8
    functionsReached:
    - xmlGetNsListSafe
    linkageType: ''
    returnType: xmlNs
    signature: 'xmlNs **

      xmlGetNsList(const xmlDoc *doc, const xmlNode *node)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:5595,1
    - Dst: memset
      Src: /src/libxml2/tree.c:5598,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5600,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:5602,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:5605,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:5607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5612
      start: 5591
    functionDepth: 2
    functionLinenumber: 5591
    functionLinenumberEnd: 5612
    functionName: xmlNewXmlNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFreeNs
    - memset
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xmlNewXmlNs(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewXmlNs
      Src: /src/libxml2/tree.c:5631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5635
      start: 5622
    functionDepth: 3
    functionLinenumber: 5622
    functionLinenumberEnd: 5635
    functionName: xmlTreeEnsureXMLDecl
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlNewXmlNs
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xmlTreeEnsureXMLDecl(xmlDocPtr doc)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: IS_STR_XML
      Src: /src/libxml2/tree.c:5662,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:5663,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5681,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5691,1
    - Dst: IS_STR_XML
      Src: /src/libxml2/tree.c:5706,1
    - Dst: xmlNewXmlNs
      Src: /src/libxml2/tree.c:5707,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 47
    argCount: 3
    argNames:
    - node
    - prefix
    - out
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlNs**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5716
      start: 5646
    functionDepth: 4
    functionLinenumber: 5646
    functionLinenumberEnd: 5716
    functionName: xmlSearchNsSafe
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 8
    functionsReached:
    - IS_STR_XML
    - xmlTreeEnsureXMLDecl
    - xmlNewXmlNs
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSearchNsSafe(xmlNode *node, const xmlChar *prefix,\n                xmlNs
      **out)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5772,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 19
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - node
    - ancestor
    - prefix
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5782
      start: 5754
    functionDepth: 1
    functionLinenumber: 5754
    functionLinenumberEnd: 5782
    functionName: xmlNsInScope
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlNsInScope(xmlDocPtr doc ATTRIBUTE_UNUSED, xmlNodePtr node,\n
      \            xmlNodePtr ancestor, const xmlChar * prefix)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5810,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:5811,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5831,1
    - Dst: xmlNsInScope
      Src: /src/libxml2/tree.c:5833,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5843,1
    - Dst: xmlNsInScope
      Src: /src/libxml2/tree.c:5845,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:5862,1
    - Dst: xmlNewXmlNs
      Src: /src/libxml2/tree.c:5863,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 54
    argCount: 3
    argNames:
    - node
    - href
    - out
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlNs**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5872
      start: 5793
    functionDepth: 4
    functionLinenumber: 5793
    functionLinenumberEnd: 5872
    functionName: xmlSearchNsByHrefSafe
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlNsInScope
    - xmlStrEqual
    - xmlNewXmlNs
    - xmlTreeEnsureXMLDecl
    linkageType: ''
    returnType: int
    signature: "int xmlSearchNsByHrefSafe(xmlNode *node, const xmlChar *href,\n                      xmlNs
      **out)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSearchNsByHrefSafe
      Src: /src/libxml2/tree.c:5922,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:5933,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:5935,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:5937,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:5943,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:5945,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:5947,1
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:5955,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 2
    argNames:
    - tree
    - ns
    argTypes:
    - xmlNodePtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5957
      start: 5906
    functionDepth: 5
    functionLinenumber: 5906
    functionLinenumberEnd: 5957
    functionName: xmlNewReconciledNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlNewNs
    - xmlSearchNsSafe
    - snprintf
    - xmlSearchNsByHrefSafe
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xmlNewReconciledNs(xmlNodePtr tree, xmlNsPtr ns)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/tree.c:5969,1
    - Dst: xmlRealloc
      Src: /src/libxml2/tree.c:5973,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - cache
    - capacity
    argTypes:
    - xmlNsCache**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5980
      start: 5964
    functionDepth: 1
    functionLinenumber: 5964
    functionLinenumberEnd: 5980
    functionName: xmlGrowNsCache
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlGrowNsCache(xmlNsCache **cache, int *capacity)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewReconciledNs
      Src: /src/libxml2/tree.c:6023,1
    - Dst: xmlGrowNsCache
      Src: /src/libxml2/tree.c:6031,1
    - Dst: xmlNewReconciledNs
      Src: /src/libxml2/tree.c:6058,1
    - Dst: xmlGrowNsCache
      Src: /src/libxml2/tree.c:6066,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6110,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 83
    argCount: 2
    argNames:
    - doc
    - tree
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6112
      start: 5995
    functionDepth: 6
    functionLinenumber: 5995
    functionLinenumberEnd: 6112
    functionName: xmlReconciliateNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlGrowNsCache
    - xmlFree
    - xmlNewReconciledNs
    linkageType: ''
    returnType: int
    signature: int xmlReconciliateNs(xmlDoc *doc, xmlNode *tree)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6133,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6143,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6145,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:6169,1
    - Dst: xmlStrcat
      Src: /src/libxml2/tree.c:6172,1
    - Dst: xmlStrcat
      Src: /src/libxml2/tree.c:6175,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6185,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6188,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6191,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6195,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6198,1
    - Dst: xmlGetNsList
      Src: /src/libxml2/tree.c:6208,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6211,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6216,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6217,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/tree.c:6222,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6230,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6233,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 78
    argCount: 4
    argNames:
    - node
    - name
    - nsName
    - useDTD
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6242
      start: 6114
    functionDepth: 3
    functionLinenumber: 6114
    functionLinenumberEnd: 6242
    functionName: xmlGetPropNodeInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xmlGetDtdQAttrDesc
    - xmlGetNsList
    - xmlStrcat
    linkageType: ''
    returnType: xmlAttrPtr
    signature: "xmlAttrPtr xmlGetPropNodeInternal(const xmlNode *node, const xmlChar
      *name,\n\t\t       const xmlChar *nsName, int useDTD)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/tree.c:6250,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:6252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - prop
    argTypes:
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6255
      start: 6244
    functionDepth: 9
    functionLinenumber: 6244
    functionLinenumberEnd: 6255
    functionName: xmlGetPropNodeValueInternal
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlNodeGetContent
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetPropNodeValueInternal(const xmlAttr *prop)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6281,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/tree.c:6295,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/tree.c:6297,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6305
      start: 6269
    functionDepth: 1
    functionLinenumber: 6269
    functionLinenumberEnd: 6305
    functionName: xmlHasProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlGetDtdAttrDesc
    - xmlStrEqual
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlHasProp(const xmlNode *node, const xmlChar *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - name
    - nameSpace
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6327
      start: 6323
    functionDepth: 4
    functionLinenumber: 6323
    functionLinenumberEnd: 6327
    functionName: xmlHasNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached:
    - xmlGetPropNodeInternal
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlHasNsProp(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6356,1
    - Dst: xmlGetPropNodeValueInternal
      Src: /src/libxml2/tree.c:6360,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - node
    - name
    - nsUri
    - out
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6364
      start: 6347
    functionDepth: 10
    functionLinenumber: 6347
    functionLinenumberEnd: 6364
    functionName: xmlNodeGetAttrValue
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlGetPropNodeValueInternal
    - xmlGetPropNodeInternal
    linkageType: ''
    returnType: int
    signature: "int xmlNodeGetAttrValue(const xmlNode *node, const xmlChar *name,\n
      \                   const xmlChar *nsUri, xmlChar **out)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHasProp
      Src: /src/libxml2/tree.c:6390,1
    - Dst: xmlGetPropNodeValueInternal
      Src: /src/libxml2/tree.c:6393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6394
      start: 6386
    functionDepth: 10
    functionLinenumber: 6386
    functionLinenumberEnd: 6394
    functionName: xmlGetProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 24
    functionsReached:
    - xmlGetPropNodeValueInternal
    - xmlHasProp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetProp(const xmlNode *node, const xmlChar *name)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6420,1
    - Dst: xmlGetPropNodeValueInternal
      Src: /src/libxml2/tree.c:6423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6424
      start: 6416
    functionDepth: 10
    functionLinenumber: 6416
    functionLinenumberEnd: 6424
    functionName: xmlGetNoNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlGetPropNodeValueInternal
    - xmlGetPropNodeInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetNoNsProp(const xmlNode *node, const xmlChar *name)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6451,1
    - Dst: xmlGetPropNodeValueInternal
      Src: /src/libxml2/tree.c:6454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - name
    - nameSpace
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6455
      start: 6447
    functionDepth: 10
    functionLinenumber: 6447
    functionLinenumberEnd: 6455
    functionName: xmlGetNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 22
    functionsReached:
    - xmlGetPropNodeValueInternal
    - xmlGetPropNodeInternal
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlGetNsProp(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6469,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:6472,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:6473,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6475
      start: 6465
    functionDepth: 4
    functionLinenumber: 6465
    functionLinenumberEnd: 6475
    functionName: xmlUnsetProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 3
    functionsReached:
    - xmlFreeProp
    - xmlGetPropNodeInternal
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: int
    signature: int xmlUnsetProp(xmlNode *node, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6489,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:6493,1
    - Dst: xmlFreeProp
      Src: /src/libxml2/tree.c:6494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - node
    - ns
    - name
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6496
      start: 6485
    functionDepth: 4
    functionLinenumber: 6485
    functionLinenumberEnd: 6496
    functionName: xmlUnsetNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFreeProp
    - xmlGetPropNodeInternal
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: int
    signature: int xmlUnsetNsProp(xmlNode *node, xmlNs *ns, const xmlChar *name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/tree.c:6521,1
    - Dst: xmlSearchNsSafe
      Src: /src/libxml2/tree.c:6526,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6527,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/tree.c:6531,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/tree.c:6534,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - node
    - name
    - value
    argTypes:
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6535
      start: 6508
    functionDepth: 5
    functionLinenumber: 6508
    functionLinenumberEnd: 6535
    functionName: xmlSetProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 7
    functionsReached:
    - xmlSplitQName4
    - xmlSetNsProp
    - xmlSearchNsSafe
    - xmlFree
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlSetProp(xmlNode *node, const xmlChar *name, const xmlChar *value)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPropNodeInternal
      Src: /src/libxml2/tree.c:6558,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/tree.c:6567,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/tree.c:6573,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/tree.c:6577,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/tree.c:6595,1
    - Dst: xmlNewPropInternal
      Src: /src/libxml2/tree.c:6603,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 4
    argNames:
    - node
    - ns
    - name
    - value
    argTypes:
    - xmlNode*
    - xmlNs*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6604
      start: 6548
    functionDepth: 4
    functionLinenumber: 6548
    functionLinenumberEnd: 6604
    functionName: xmlSetNsProp
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 9
    functionsReached:
    - xmlFreeNodeList
    - xmlGetPropNodeInternal
    - xmlNewPropInternal
    - xmlNewDocText
    - xmlAddIDSafe
    - xmlRemoveID
    linkageType: ''
    returnType: xmlAttr
    signature: "xmlAttr *\nxmlSetNsProp(xmlNode *node, xmlNs *ns, const xmlChar *name,\n\t
      \    const xmlChar *value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6618
      start: 6612
    functionDepth: 0
    functionLinenumber: 6612
    functionLinenumberEnd: 6618
    functionName: xmlNodeIsText
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlNodeIsText(const xmlNode *node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/tree.c:6638,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6643
      start: 6627
    functionDepth: 1
    functionLinenumber: 6627
    functionLinenumberEnd: 6643
    functionName: xmlIsBlankNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 5
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlIsBlankNode(const xmlNode *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextAddContent
      Src: /src/libxml2/tree.c:6667,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 3
    argNames:
    - node
    - content
    - len
    argTypes:
    - xmlNode*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6668
      start: 6656
    functionDepth: 4
    functionLinenumber: 6656
    functionLinenumberEnd: 6668
    functionName: xmlTextConcat
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlTextAddContent
    linkageType: ''
    returnType: int
    signature: int xmlTextConcat(xmlNode *node, const xmlChar *content, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6680
      start: 6676
    functionDepth: 0
    functionLinenumber: 6676
    functionLinenumberEnd: 6680
    functionName: xmlGetDocCompressMode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlGetDocCompressMode (const xmlDoc *doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - doc
    - mode
    argTypes:
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6696
      start: 6690
    functionDepth: 0
    functionLinenumber: 6690
    functionLinenumberEnd: 6696
    functionName: xmlSetDocCompressMode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetDocCompressMode (xmlDoc *doc, int mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6709
      start: 6705
    functionDepth: 0
    functionLinenumber: 6705
    functionLinenumberEnd: 6709
    functionName: xmlGetCompressMode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlGetCompressMode(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - mode
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6725
      start: 6720
    functionDepth: 0
    functionLinenumber: 6720
    functionLinenumberEnd: 6725
    functionName: xmlSetCompressMode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSetCompressMode(int mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - m
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6758
      start: 6757
    functionDepth: 0
    functionLinenumber: 6757
    functionLinenumberEnd: 6758
    functionName: XML_NSMAP_NOTEMPTY
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_NSMAP_NOTEMPTY(m)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6759
      start: 6758
    functionDepth: 0
    functionLinenumber: 6758
    functionLinenumberEnd: 6759
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_NSMAP_FOREACH(m, i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - m
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6768
      start: 6759
    functionDepth: 0
    functionLinenumber: 6759
    functionLinenumberEnd: 6768
    functionName: XML_NSMAP_POP
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_NSMAP_POP(m, i)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6785,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6791,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6793,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - nsmap
    argTypes:
    - xmlNsMapPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6794
      start: 6774
    functionDepth: 0
    functionLinenumber: 6774
    functionLinenumberEnd: 6794
    functionName: xmlDOMWrapNsMapFree
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlDOMWrapNsMapFree(xmlNsMapPtr nsmap)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:6823,1
    - Dst: memset
      Src: /src/libxml2/tree.c:6826,1
    - Dst: memset
      Src: /src/libxml2/tree.c:6836,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:6841,1
    - Dst: memset
      Src: /src/libxml2/tree.c:6844,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 5
    argNames:
    - nsmap
    - position
    - oldNs
    - newNs
    - depth
    argTypes:
    - xmlNsMapPtr*
    - int
    - xmlNsPtr
    - xmlNsPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6874
      start: 6806
    functionDepth: 0
    functionLinenumber: 6806
    functionLinenumberEnd: 6874
    functionName: xmlDOMWrapNsMapAddItem
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlNsMapItemPtr
    signature: "xmlNsMapItemPtr xmlDOMWrapNsMapAddItem(xmlNsMapPtr *nsmap, int position,\n\t\t
      \      xmlNsPtr oldNs, xmlNsPtr newNs, int depth)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:6895,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6903,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6904,1
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:6914,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 3
    argNames:
    - doc
    - nsName
    - prefix
    argTypes:
    - xmlDocPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6918
      start: 6886
    functionDepth: 4
    functionLinenumber: 6886
    functionLinenumberEnd: 6918
    functionName: xmlDOMWrapStoreNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlNewNs
    - xmlTreeEnsureXMLDecl
    - xmlStrEqual
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xmlDOMWrapStoreNs(xmlDocPtr doc,\n\t\t   const xmlChar *nsName,\n\t\t
      \  const xmlChar *prefix)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:6930,1
    - Dst: memset
      Src: /src/libxml2/tree.c:6933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6935
      start: 6925
    functionDepth: 0
    functionLinenumber: 6925
    functionLinenumberEnd: 6935
    functionName: xmlDOMWrapNewCtxt
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlDOMWrapCtxt
    signature: 'xmlDOMWrapCtxt *

      xmlDOMWrapNewCtxt(void)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDOMWrapNsMapFree
      Src: /src/libxml2/tree.c:6948,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:6952,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlDOMWrapCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6953
      start: 6942
    functionDepth: 1
    functionLinenumber: 6942
    functionLinenumberEnd: 6953
    functionName: xmlDOMWrapFreeCtxt
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlDOMWrapNsMapFree
    linkageType: ''
    returnType: void
    signature: void xmlDOMWrapFreeCtxt(xmlDOMWrapCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:6973,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - nsList
    - prefix
    argTypes:
    - xmlNsPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6980
      start: 6963
    functionDepth: 1
    functionLinenumber: 6963
    functionLinenumberEnd: 6980
    functionName: xmlTreeNSListLookupByPrefix
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr xmlTreeNSListLookupByPrefix(xmlNsPtr nsList, const xmlChar
      *prefix)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:7012,1
    - Dst: XML_NSMAP_FOREACH
      Src: /src/libxml2/tree.c:7016,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7018,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:7027,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 2
    argNames:
    - map
    - node
    argTypes:
    - xmlNsMapPtr*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7040
      start: 6989
    functionDepth: 1
    functionLinenumber: 6989
    functionLinenumberEnd: 7040
    functionName: xmlDOMWrapNSNormGatherInScopeNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - XML_NSMAP_NOTEMPTY
    - xmlDOMWrapNsMapAddItem
    - xmlStrEqual
    - XML_NSMAP_FOREACH
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapNSNormGatherInScopeNs(xmlNsMapPtr *map,\n\t\t\t\txmlNodePtr
      node)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/tree.c:7055,1
    - Dst: xmlRealloc
      Src: /src/libxml2/tree.c:7058,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - list
    - size
    - number
    - oldNs
    - newNs
    argTypes:
    - xmlNsPtr**
    - int*
    - int*
    - xmlNsPtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7069
      start: 7047
    functionDepth: 1
    functionLinenumber: 7047
    functionLinenumberEnd: 7069
    functionName: xmlDOMWrapNSNormAddNsMapItem2
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapNSNormAddNsMapItem2(xmlNsPtr **list, int *size, int
      *number,\n\t\t\txmlNsPtr oldNs, xmlNsPtr newNs)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:7108,1
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:7116,1
    - Dst: xmlDOMWrapNSNormAddNsMapItem2
      Src: /src/libxml2/tree.c:7126,1
    - Dst: xmlDOMWrapStoreNs
      Src: /src/libxml2/tree.c:7155,1
    - Dst: xmlDOMWrapNSNormAddNsMapItem2
      Src: /src/libxml2/tree.c:7164,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:7205,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 88
    argCount: 4
    argNames:
    - ctxt
    - doc
    - node
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDOMWrapCtxt*
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7207
      start: 7087
    functionDepth: 5
    functionLinenumber: 7087
    functionLinenumberEnd: 7207
    functionName: xmlDOMWrapRemoveNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlDOMWrapStoreNs
    - xmlUnlinkNodeInternal
    - xmlDOMWrapNSNormAddNsMapItem2
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapRemoveNode(xmlDOMWrapCtxt *ctxt, xmlDoc *doc,\n\t\t
      \    xmlNode *node, int options ATTRIBUTE_UNUSED)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7236,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:7237,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7259,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7274,1
    - Dst: xmlNsInScope
      Src: /src/libxml2/tree.c:7283,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 51
    argCount: 5
    argNames:
    - doc
    - node
    - nsName
    - retNs
    - prefixed
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlChar*
    - xmlNsPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7308
      start: 7222
    functionDepth: 4
    functionLinenumber: 7222
    functionLinenumberEnd: 7308
    functionName: xmlSearchNsByNamespaceStrict
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlNsInScope
    - xmlStrEqual
    - xmlTreeEnsureXMLDecl
    linkageType: ''
    returnType: int
    signature: "int xmlSearchNsByNamespaceStrict(xmlDocPtr doc, xmlNodePtr node,\n\t\t\t
      \    const xmlChar* nsName,\n\t\t\t     xmlNsPtr *retNs, int prefixed)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: IS_STR_XML
      Src: /src/libxml2/tree.c:7334,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:7336,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7349,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 35
    argCount: 4
    argNames:
    - doc
    - node
    - prefix
    - retNs
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlChar*
    - xmlNsPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7368
      start: 7321
    functionDepth: 4
    functionLinenumber: 7321
    functionLinenumberEnd: 7368
    functionName: xmlSearchNsByPrefixStrict
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - IS_STR_XML
    - xmlTreeEnsureXMLDecl
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSearchNsByPrefixStrict(xmlDocPtr doc, xmlNodePtr node,\n\t\t\t
      \ const xmlChar* prefix,\n\t\t\t  xmlNsPtr *retNs)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlTreeNSListLookupByPrefix
      Src: /src/libxml2/tree.c:7408,1
    - Dst: xmlSearchNsByPrefixStrict
      Src: /src/libxml2/tree.c:7415,1
    - Dst: xmlNewNs
      Src: /src/libxml2/tree.c:7418,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:7435,1
    - Dst: snprintf
      Src: /src/libxml2/tree.c:7438,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 34
    argCount: 5
    argNames:
    - doc
    - elem
    - nsName
    - prefix
    - checkShadow
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7442
      start: 7384
    functionDepth: 5
    functionLinenumber: 7384
    functionLinenumberEnd: 7442
    functionName: xmlDOMWrapNSNormDeclareNsForced
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlNewNs
    - xmlSearchNsByPrefixStrict
    - xmlTreeNSListLookupByPrefix
    - snprintf
    linkageType: ''
    returnType: xmlNsPtr
    signature: "xmlNsPtr xmlDOMWrapNSNormDeclareNsForced(xmlDocPtr doc,\n\t\t\t\txmlNodePtr
      elem,\n\t\t\t\tconst xmlChar *nsName,\n\t\t\t\tconst xmlChar *prefix,\n\t\t\t\tint
      checkShadow)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: IS_STR_XML
      Src: /src/libxml2/tree.c:7483,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:7487,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:7496,1
    - Dst: XML_NSMAP_FOREACH
      Src: /src/libxml2/tree.c:7502,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7520,1
    - Dst: xmlDOMWrapStoreNs
      Src: /src/libxml2/tree.c:7537,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:7543,1
    - Dst: xmlDOMWrapNSNormDeclareNsForced
      Src: /src/libxml2/tree.c:7551,1
    - Dst: XML_NSMAP_FOREACH
      Src: /src/libxml2/tree.c:7560,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7564,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:7573,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 45
    argCount: 8
    argNames:
    - doc
    - elem
    - ns
    - retNs
    - nsMap
    - depth
    - ancestorsOnly
    - prefixed
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlNsPtr
    - xmlNsPtr*
    - xmlNsMapPtr*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7579
      start: 7462
    functionDepth: 6
    functionLinenumber: 7462
    functionLinenumberEnd: 7579
    functionName: xmlDOMWrapNSNormAcquireNormalizedNs
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlTreeEnsureXMLDecl
    - xmlStrEqual
    - XML_NSMAP_NOTEMPTY
    - xmlDOMWrapStoreNs
    - xmlDOMWrapNSNormDeclareNsForced
    - XML_NSMAP_FOREACH
    - xmlDOMWrapNsMapAddItem
    - IS_STR_XML
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapNSNormAcquireNormalizedNs(xmlDocPtr doc,\n\t\t\t\t   xmlNodePtr
      elem,\n\t\t\t\t   xmlNsPtr ns,\n\t\t\t\t   xmlNsPtr *retNs,\n\t\t\t\t   xmlNsMapPtr
      *nsMap,\n\n\t\t\t\t   int depth,\n\t\t\t\t   int ancestorsOnly,\n\t\t\t\t   int
      prefixed)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7659,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7661,1
    - Dst: xmlDOMWrapNSNormAddNsMapItem2
      Src: /src/libxml2/tree.c:7667,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7681
      start: 7655
    functionDepth: 2
    functionLinenumber: 7655
    functionLinenumberEnd: 7681
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    - xmlDOMWrapNSNormAddNsMapItem2
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7698,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7702
      start: 7694
    functionDepth: 1
    functionLinenumber: 7694
    functionLinenumberEnd: 7702
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7758
      start: 7751
    functionDepth: 0
    functionLinenumber: 7751
    functionLinenumberEnd: 7758
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7812
      start: 7809
    functionDepth: 0
    functionLinenumber: 7809
    functionLinenumberEnd: 7812
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeSetDoc
      Src: /src/libxml2/tree.c:7901,1
    - Dst: xmlDOMWrapNSNormGatherInScopeNs
      Src: /src/libxml2/tree.c:7931,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:7943,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7948,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:7958,1
    - Dst: xmlDOMWrapNSNormGatherInScopeNs
      Src: /src/libxml2/tree.c:7970,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:7978,1
    - Dst: xmlDOMWrapCtxtPtr::getNsForNodeFunc
      Src: /src/libxml2/tree.c:7998,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:8004,1
    - Dst: xmlDOMWrapNSNormAcquireNormalizedNs
      Src: /src/libxml2/tree.c:8012,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:8068,1
    - Dst: XML_NSMAP_POP
      Src: /src/libxml2/tree.c:8075,1
    - Dst: xmlDOMWrapNsMapFree
      Src: /src/libxml2/tree.c:8114,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 129
    argCount: 6
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - node
    - destDoc
    - destParent
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDOMWrapCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    - xmlDocPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8117
      start: 7860
    functionDepth: 7
    functionLinenumber: 7860
    functionLinenumberEnd: 8117
    functionName: xmlDOMWrapAdoptBranch
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlDOMWrapNSNormAcquireNormalizedNs
    - XML_NSMAP_NOTEMPTY
    - XML_NSMAP_POP
    - xmlDOMWrapNsMapAddItem
    - xmlDOMWrapNSNormGatherInScopeNs
    - xmlNodeSetDoc
    - xmlDOMWrapNsMapFree
    - xmlDOMWrapCtxtPtr::getNsForNodeFunc
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapAdoptBranch(xmlDOMWrapCtxtPtr ctxt,\n\t\t      xmlDocPtr
      sourceDoc ATTRIBUTE_UNUSED,\n\t\t      xmlNodePtr node,\n\t\t      xmlDocPtr
      destDoc,\n\t\t      xmlNodePtr destParent,\n\t\t      int options ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:7948,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7953
      start: 7944
    functionDepth: 1
    functionLinenumber: 7944
    functionLinenumberEnd: 7953
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7989
      start: 7982
    functionDepth: 0
    functionLinenumber: 7982
    functionLinenumberEnd: 7989
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8083
      start: 8080
    functionDepth: 0
    functionLinenumber: 8080
    functionLinenumberEnd: 8083
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:8238,1
    - Dst: memset
      Src: /src/libxml2/tree.c:8241,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:8261,1
    - Dst: memset
      Src: /src/libxml2/tree.c:8264,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/tree.c:8305,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:8307,1
    - Dst: xmlDOMWrapNSNormGatherInScopeNs
      Src: /src/libxml2/tree.c:8331,1
    - Dst: xmlMalloc
      Src: /src/libxml2/tree.c:8345,1
    - Dst: memset
      Src: /src/libxml2/tree.c:8348,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:8352,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:8354,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:8359,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/tree.c:8361,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:8380,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8385,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:8398,1
    - Dst: xmlStrdup
      Src: /src/libxml2/tree.c:8418,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/tree.c:8430,1
    - Dst: xmlDOMWrapNSNormGatherInScopeNs
      Src: /src/libxml2/tree.c:8462,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:8470,1
    - Dst: xmlDOMWrapCtxt*::getNsForNodeFunc
      Src: /src/libxml2/tree.c:8492,1
    - Dst: xmlDOMWrapNsMapAddItem
      Src: /src/libxml2/tree.c:8497,1
    - Dst: xmlDOMWrapNSNormAcquireNormalizedNs
      Src: /src/libxml2/tree.c:8505,1
    - Dst: xmlIsID
      Src: /src/libxml2/tree.c:8530,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/tree.c:8536,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/tree.c:8539,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:8540,1
    - Dst: xmlFree
      Src: /src/libxml2/tree.c:8543,1
    - Dst: XML_NSMAP_NOTEMPTY
      Src: /src/libxml2/tree.c:8585,1
    - Dst: XML_NSMAP_POP
      Src: /src/libxml2/tree.c:8592,1
    - Dst: xmlDOMWrapNsMapFree
      Src: /src/libxml2/tree.c:8648,1
    CyclomaticComplexity: 126
    EdgeCount: 126
    ICount: 299
    argCount: 8
    argNames:
    - ctxt
    - sourceDoc
    - node
    - resNode
    - destDoc
    - destParent
    - deep
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDOMWrapCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlNode**
    - xmlDoc*
    - xmlNode*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8656
      start: 8146
    functionDepth: 9
    functionLinenumber: 8146
    functionLinenumberEnd: 8656
    functionName: xmlDOMWrapCloneNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlStrEqual
    - xmlFree
    - xmlDOMWrapNSNormAcquireNormalizedNs
    - XML_NSMAP_NOTEMPTY
    - xmlNodeGetContent
    - XML_NSMAP_POP
    - xmlGetDocEntity
    - xmlMalloc
    - xmlDOMWrapNsMapAddItem
    - xmlDOMWrapNSNormGatherInScopeNs
    - xmlAddIDSafe
    - xmlIsID
    - xmlFreeNs
    - xmlDictLookup
    - xmlDOMWrapCtxt*::getNsForNodeFunc
    - xmlDOMWrapNsMapFree
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapCloneNode(xmlDOMWrapCtxt *ctxt,\n\t\t      xmlDoc *sourceDoc,\n\t\t
      \     xmlNode *node,\n\t\t      xmlNode **resNode,\n\t\t      xmlDoc *destDoc,\n\t\t
      \     xmlNode *destParent,\n\t\t      int deep,\n\t\t      int options ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8385,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8393
      start: 8381
    functionDepth: 1
    functionLinenumber: 8381
    functionLinenumberEnd: 8393
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8483
      start: 8474
    functionDepth: 0
    functionLinenumber: 8474
    functionLinenumberEnd: 8483
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8600
      start: 8597
    functionDepth: 0
    functionLinenumber: 8597
    functionLinenumberEnd: 8600
    functionName: XML_NSMAP_FOREACH
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XML_NSMAP_FOREACH(nsMap, mi)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetTreeDoc
      Src: /src/libxml2/tree.c:8686,1
    - Dst: IS_STR_XML
      Src: /src/libxml2/tree.c:8697,1
    - Dst: xmlTreeEnsureXMLDecl
      Src: /src/libxml2/tree.c:8698,1
    - Dst: xmlDOMWrapStoreNs
      Src: /src/libxml2/tree.c:8703,1
    - Dst: xmlSearchNsByNamespaceStrict
      Src: /src/libxml2/tree.c:8708,1
    - Dst: xmlDOMWrapNSNormDeclareNsForced
      Src: /src/libxml2/tree.c:8712,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 6
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - attr
    - destDoc
    - destParent
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlDOMWrapCtxtPtr
    - xmlDocPtr
    - xmlAttrPtr
    - xmlDocPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8722
      start: 8672
    functionDepth: 6
    functionLinenumber: 8672
    functionLinenumberEnd: 8722
    functionName: xmlDOMWrapAdoptAttr
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 0
    functionsReached:
    - xmlTreeEnsureXMLDecl
    - xmlSetTreeDoc
    - xmlDOMWrapStoreNs
    - xmlDOMWrapNSNormDeclareNsForced
    - xmlSearchNsByNamespaceStrict
    - IS_STR_XML
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapAdoptAttr(xmlDOMWrapCtxtPtr ctxt,\n\t\t    xmlDocPtr
      sourceDoc ATTRIBUTE_UNUSED,\n\t\t    xmlAttrPtr attr,\n\t\t    xmlDocPtr destDoc,\n\t\t
      \   xmlNodePtr destParent,\n\t\t    int options ATTRIBUTE_UNUSED)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNodeInternal
      Src: /src/libxml2/tree.c:8800,1
    - Dst: xmlDOMWrapAdoptBranch
      Src: /src/libxml2/tree.c:8803,1
    - Dst: xmlDOMWrapAdoptAttr
      Src: /src/libxml2/tree.c:8806,1
    - Dst: xmlNodeSetDoc
      Src: /src/libxml2/tree.c:8810,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 6
    argNames:
    - ctxt
    - sourceDoc
    - node
    - destDoc
    - destParent
    - options
    argTypes:
    - xmlDOMWrapCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlDoc*
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8815
      start: 8752
    functionDepth: 8
    functionLinenumber: 8752
    functionLinenumberEnd: 8815
    functionName: xmlDOMWrapAdoptNode
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlDOMWrapAdoptBranch
    - xmlNodeSetDoc
    - xmlDOMWrapAdoptAttr
    - xmlUnlinkNodeInternal
    linkageType: ''
    returnType: int
    signature: "int xmlDOMWrapAdoptNode(xmlDOMWrapCtxt *ctxt,\n\t\t    xmlDoc *sourceDoc,\n\t\t
      \   xmlNode *node,\n\t\t    xmlDoc *destDoc,\n\t\t    xmlNode *destParent,\n\t\t
      \   int options)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8848,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8849,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8850,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8853,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8854,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/tree.c:8855,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 2
    argNames:
    - systemID
    - publicID
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8858
      start: 8843
    functionDepth: 1
    functionLinenumber: 8843
    functionLinenumberEnd: 8858
    functionName: xmlIsXHTML
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlIsXHTML(const xmlChar *systemID, const xmlChar *publicID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlRegisterNodeFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8882
      start: 8874
    functionDepth: 0
    functionLinenumber: 8874
    functionLinenumberEnd: 8882
    functionName: xmlRegisterNodeDefault
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlRegisterNodeFunc
    signature: xmlRegisterNodeFunc xmlRegisterNodeDefault(xmlRegisterNodeFunc func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlDeregisterNodeFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8900
      start: 8892
    functionDepth: 0
    functionLinenumber: 8892
    functionLinenumberEnd: 8900
    functionName: xmlDeregisterNodeDefault
    functionSourceFile: /src/libxml2/tree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlDeregisterNodeFunc
    signature: xmlDeregisterNodeFunc xmlDeregisterNodeDefault(xmlDeregisterNodeFunc
      func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xinclude.c:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXIncludeCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 147
    functionName: xmlXIncludeErrMemory
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlXIncludeErrMemory(xmlXIncludeCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:168,1
    - Dst: xmlRaiseError
      Src: /src/libxml2/xinclude.c:184,1
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/xinclude.c:199,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - ctxt
    - node
    - error
    - msg
    - extra
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 159
    functionDepth: 5
    functionLinenumber: 159
    functionLinenumberEnd: 202
    functionName: xmlXIncludeErr
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlXIncludeErrMemory
    - xmlIsCatastrophicError
    linkageType: ''
    returnType: void
    signature: "void xmlXIncludeErr(xmlXIncludeCtxtPtr ctxt, xmlNodePtr node, int
      error,\n               const char *msg, const xmlChar *extra)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xinclude.c:217,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:218,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xinclude.c:223,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:224,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xinclude.c:229,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:230,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - ctxt
    - cur
    - name
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 212
    functionDepth: 11
    functionLinenumber: 212
    functionLinenumberEnd: 232
    functionName: xmlXIncludeGetProp
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetAttrValue
    - xmlXIncludeErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlXIncludeGetProp(xmlXIncludeCtxtPtr ctxt, xmlNodePtr
      cur,\n                   const xmlChar *name)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:243,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:245,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:247,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:248,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ref
    argTypes:
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 249
    functionName: xmlXIncludeFreeRef
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXIncludeFreeRef(xmlXIncludeRefPtr ref)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xinclude.c:263,1
    - Dst: memset
      Src: /src/libxml2/xinclude.c:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 273
    functionName: xmlXIncludeNewContext
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 4
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlXIncludeCtxt
    signature: 'xmlXIncludeCtxt *

      xmlXIncludeNewContext(xmlDoc *doc)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xinclude.c:288,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:289,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:291,1
    - Dst: xmlXIncludeFreeRef
      Src: /src/libxml2/xinclude.c:295,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:298,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:301,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:302,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:304,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/xinclude.c:308,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:310,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXIncludeCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 280
    functionDepth: 4
    functionLinenumber: 280
    functionLinenumberEnd: 311
    functionName: xmlXIncludeFreeContext
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 5
    functionsReached:
    - xmlXIncludeFreeRef
    - xmlFreeDoc
    - xmlXPathFreeContext
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlXIncludeFreeContext(xmlXIncludeCtxt *ctxt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xinclude.c:325,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xinclude.c:327,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:329,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xinclude.c:333,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xinclude.c:335,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xinclude.c:349,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xinclude.c:351,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/xinclude.c:358,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/xinclude.c:360,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/xinclude.c:364,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/xinclude.c:365,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/xinclude.c:369,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xinclude.c:377,1
    - Dst: xmlCtxtIsCatastrophicError
      Src: /src/libxml2/xinclude.c:382,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:383,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xinclude.c:384,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 2
    argNames:
    - ctxt
    - URL
    argTypes:
    - xmlXIncludeCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 319
    functionDepth: 12
    functionLinenumber: 319
    functionLinenumberEnd: 387
    functionName: xmlXIncludeParseFile
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlDictFree
    - xmlLoadResource
    - xmlCtxtPushInput
    - xmlXIncludeErr
    - xmlCtxtUseOptions
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlNewParserCtxt
    - xmlDictReference
    - xmlFreeParserCtxt
    - xmlCtxtIsCatastrophicError
    - xmlInitParser
    - xmlFreeDoc
    - xmlXIncludeErrMemory
    - xmlParseDocument
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlXIncludeParseFile(xmlXIncludeCtxtPtr ctxt, const char
      *URL)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeGetProp
      Src: /src/libxml2/xinclude.c:418,1
    - Dst: xmlXIncludeGetProp
      Src: /src/libxml2/xinclude.c:420,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:423,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:428,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:430,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xinclude.c:433,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:434,1
    - Dst: xmlXIncludeGetProp
      Src: /src/libxml2/xinclude.c:439,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:441,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:443,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:446,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/xinclude.c:455,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:458,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:460,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:470,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:473,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/xinclude.c:480,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:482,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:485,1
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/xinclude.c:492,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:493,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/xinclude.c:498,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:499,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:503,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:507,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:510,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:521,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xinclude.c:527,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:529,1
    - Dst: memset
      Src: /src/libxml2/xinclude.c:532,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:551,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:553,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xinclude.c:563,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:566,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xinclude.c:569,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:571,1
    - Dst: xmlXIncludeFreeRef
      Src: /src/libxml2/xinclude.c:583,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/xinclude.c:584,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:585,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:586,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:587,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:588,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 148
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 395
    functionDepth: 12
    functionLinenumber: 395
    functionLinenumberEnd: 590
    functionName: xmlXIncludeAddNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXIncludeErr
    - xmlSaveUri
    - xmlStrEqual
    - xmlFree
    - xmlStrlen
    - xmlRealloc
    - xmlXIncludeFreeRef
    - xmlXIncludeGetProp
    - xmlParseURISafe
    - xmlMalloc
    - xmlNodeGetBaseSafe
    - xmlBuildURISafe
    - xmlFreeURI
    - xmlGrowCapacity
    - xmlXIncludeErrMemory
    - memset
    linkageType: ''
    returnType: xmlXIncludeRefPtr
    signature: xmlXIncludeRefPtr xmlXIncludeAddNode(xmlXIncludeCtxtPtr ctxt, xmlNodePtr
      cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeDoProcess
      Src: /src/libxml2/xinclude.c:616,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xinclude.c:616,1
    - Dst: xmlXIncludeFreeRef
      Src: /src/libxml2/xinclude.c:620,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 598
    functionDepth: 1
    functionLinenumber: 598
    functionLinenumberEnd: 629
    functionName: xmlXIncludeRecurseDoc
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlDocGetRootElement
    - xmlXIncludeDoProcess
    - xmlXIncludeFreeRef
    linkageType: ''
    returnType: void
    signature: void xmlXIncludeRecurseDoc(xmlXIncludeCtxtPtr ctxt, xmlDocPtr doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/xinclude.c:648,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:649,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:651,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xinclude.c:652,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xinclude.c:653,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:654,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:656,1
    - Dst: xmlBuildRelativeURISafe
      Src: /src/libxml2/xinclude.c:659,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:660,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:664,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xinclude.c:674,1
    - Dst: xmlNodeSetBase
      Src: /src/libxml2/xinclude.c:675,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:677,1
    - Dst: memset
      Src: /src/libxml2/xinclude.c:685,1
    - Dst: xmlUnsetNsProp
      Src: /src/libxml2/xinclude.c:687,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:690,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:691,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 4
    argNames:
    - ctxt
    - cur
    - copy
    - targetBase
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 637
    functionDepth: 10
    functionLinenumber: 637
    functionLinenumberEnd: 692
    functionName: xmlXIncludeBaseFixup
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXIncludeErr
    - xmlNodeSetBase
    - xmlStrEqual
    - xmlBuildRelativeURISafe
    - xmlStrlen
    - xmlUnsetNsProp
    - xmlFree
    - xmlStrchr
    - xmlNodeGetBaseSafe
    - xmlXIncludeErrMemory
    - memset
    linkageType: ''
    returnType: void
    signature: "void xmlXIncludeBaseFixup(xmlXIncludeCtxtPtr ctxt, xmlNodePtr cur,
      xmlNodePtr copy,\n                     const xmlChar *targetBase)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:730,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:731,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:732,1
    - Dst: xmlXIncludeExpandNode
      Src: /src/libxml2/xinclude.c:733,1
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/xinclude.c:741,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:743,1
    - Dst: xmlXIncludeBaseFixup
      Src: /src/libxml2/xinclude.c:758,1
    - Dst: xmlStaticCopyNode
      Src: /src/libxml2/xinclude.c:761,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:763,1
    - Dst: xmlXIncludeBaseFixup
      Src: /src/libxml2/xinclude.c:778,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/xinclude.c:810,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 82
    argCount: 4
    argNames:
    - ctxt
    - elem
    - copyChildren
    - targetBase
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 703
    functionDepth: 11
    functionLinenumber: 703
    functionLinenumberEnd: 812
    functionName: xmlXIncludeCopyNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlStrEqual
    - xmlXIncludeBaseFixup
    - xmlXIncludeExpandNode
    - xmlStaticCopyNode
    - xmlXIncludeErrMemory
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlXIncludeCopyNode(xmlXIncludeCtxtPtr ctxt, xmlNodePtr
      elem,\n                    int copyChildren, const xmlChar *targetBase)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xinclude.c:846,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:849,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:863,1
    - Dst: xmlXIncludeCopyNode
      Src: /src/libxml2/xinclude.c:875,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/xinclude.c:877,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 3
    argNames:
    - ctxt
    - obj
    - targetBase
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlXPathObjectPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 825
    functionDepth: 12
    functionLinenumber: 825
    functionLinenumberEnd: 896
    functionName: xmlXIncludeCopyXPointer
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlXIncludeCopyNode
    - xmlXIncludeErr
    - xmlDocGetRootElement
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlXIncludeCopyXPointer(xmlXIncludeCtxtPtr ctxt, xmlXPathObjectPtr
      obj,\n                        const xmlChar *targetBase)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/xinclude.c:944,1
    - Dst: xmlAddDocEntity
      Src: /src/libxml2/xinclude.c:946,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:949,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:953,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:955,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:962,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:966,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:969,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:987,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 66
    argCount: 3
    argNames:
    - payload
    - vdata
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 919
    functionDepth: 6
    functionLinenumber: 919
    functionLinenumberEnd: 990
    functionName: xmlXIncludeMergeEntity
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlXIncludeErr
    - xmlStrEqual
    - xmlAddDocEntity
    - xmlGetDocEntity
    - xmlXIncludeErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlXIncludeMergeEntity(void *payload, void *vdata,\n\t               const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xinclude.c:1014,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/xinclude.c:1017,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1019,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xinclude.c:1031,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1044,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1045,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xinclude.c:1046,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - ctxt
    - doc
    - from
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlDocPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 1000
    functionDepth: 3
    functionLinenumber: 1000
    functionLinenumberEnd: 1051
    functionName: xmlXIncludeMergeEntities
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlCreateIntSubset
    - xmlDocGetRootElement
    - xmlXIncludeErrMemory
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: "int xmlXIncludeMergeEntities(xmlXIncludeCtxtPtr ctxt, xmlDocPtr doc,\n\t
      \                xmlDocPtr from)"
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1078,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1087,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1089,1
    - Dst: xmlXIncludeParseFile
      Src: /src/libxml2/xinclude.c:1115,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xinclude.c:1125,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1128,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xinclude.c:1129,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xinclude.c:1132,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1134,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xinclude.c:1135,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:1143,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1145,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xinclude.c:1146,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1160,1
    - Dst: xmlXIncludeMergeEntities
      Src: /src/libxml2/xinclude.c:1166,1
    - Dst: xmlXIncludeRecurseDoc
      Src: /src/libxml2/xinclude.c:1182,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xinclude.c:1191,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1193,1
    - Dst: xmlDocCopyNode
      Src: /src/libxml2/xinclude.c:1198,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1200,1
    - Dst: xmlXIncludeBaseFixup
      Src: /src/libxml2/xinclude.c:1205,1
    - Dst: xmlNodeSetPtr
      Src: /src/libxml2/xinclude.c:1214,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1217,1
    - Dst: if
      Src: /src/libxml2/xinclude.c:1223,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/xinclude.c:1224,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1226,1
    - Dst: if
      Src: /src/libxml2/xinclude.c:1229,1
    - Dst: xmlXPathSetErrorHandler
      Src: /src/libxml2/xinclude.c:1230,1
    - Dst: xmlXPtrEval
      Src: /src/libxml2/xinclude.c:1238,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1241,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1243,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1257,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xinclude.c:1260,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1284,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1290,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1305,1
    - Dst: xmlXIncludeCopyXPointer
      Src: /src/libxml2/xinclude.c:1313,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/xinclude.c:1315,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 159
    argCount: 2
    argNames:
    - ctxt
    - ref
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1060
    functionDepth: 13
    functionLinenumber: 1060
    functionLinenumberEnd: 1325
    functionName: xmlXIncludeLoadDoc
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlDocCopyNode
    - xmlXPathFreeObject
    - xmlXIncludeErr
    - xmlRealloc
    - xmlXPathNewContext
    - xmlDocGetRootElement
    - xmlGrowCapacity
    - xmlXIncludeErrMemory
    - xmlStrEqual
    - xmlXIncludeRecurseDoc
    - xmlNodeSetPtr
    - xmlXPathSetErrorHandler
    - xmlXIncludeMergeEntities
    - xmlXIncludeBaseFixup
    - xmlXIncludeCopyXPointer
    - xmlXIncludeParseFile
    - xmlXPtrEval
    - if
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeLoadDoc(xmlXIncludeCtxtPtr ctxt, xmlXIncludeRefPtr ref)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1354,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1363,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xinclude.c:1364,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1366,1
    - Dst: xmlXIncludeGetProp
      Src: /src/libxml2/xinclude.c:1375,1
    - Dst: xmlOpenCharEncodingHandler
      Src: /src/libxml2/xinclude.c:1380,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1385,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1387,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1391,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xinclude.c:1401,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1403,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xinclude.c:1407,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xinclude.c:1409,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/xinclude.c:1412,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1419,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1423,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xinclude.c:1430,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xinclude.c:1434,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1436,1
    - Dst: xmlParserInputBufferRead
      Src: /src/libxml2/xinclude.c:1444,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1448,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1450,1
    - Dst: xmlBufContent
      Src: /src/libxml2/xinclude.c:1454,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xinclude.c:1455,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xinclude.c:1461,1
    - Dst: IS_CHAR
      Src: /src/libxml2/xinclude.c:1462,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1463,1
    - Dst: xmlNodeAddContentLen
      Src: /src/libxml2/xinclude.c:1471,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1472,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xinclude.c:1478,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1481,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xinclude.c:1484,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1486,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:1492,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1495,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xinclude.c:1498,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1500,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:1501,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1515,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/xinclude.c:1516,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xinclude.c:1517,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xinclude.c:1518,1
    - Dst: xmlFree
      Src: /src/libxml2/xinclude.c:1519,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 135
    argCount: 2
    argNames:
    - ctxt
    - ref
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1334
    functionDepth: 12
    functionLinenumber: 1334
    functionLinenumberEnd: 1521
    functionName: xmlXIncludeLoadTxt
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlNodeAddContentLen
    - xmlStrdup
    - xmlNewParserCtxt
    - xmlXIncludeErr
    - xmlParserInputBufferRead
    - xmlRealloc
    - IS_CHAR
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlFree
    - xmlGrowCapacity
    - xmlXIncludeErrMemory
    - xmlFreeNode
    - xmlStrEqual
    - xmlBufUse
    - xmlXIncludeGetProp
    - xmlNewDocText
    - xmlFreeParserCtxt
    - xmlOpenCharEncodingHandler
    - xmlBufContent
    - xmlLoadResource
    - xmlGetUTF8Char
    - xmlCharEncCloseFunc
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeLoadTxt(xmlXIncludeCtxtPtr ctxt, xmlXIncludeRefPtr ref)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeCopyNode
      Src: /src/libxml2/xinclude.c:1547,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - fallback
    - ref
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1555
      start: 1532
    functionDepth: 12
    functionLinenumber: 1532
    functionLinenumberEnd: 1555
    functionName: xmlXIncludeLoadFallback
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlXIncludeCopyNode
    linkageType: ''
    returnType: int
    signature: "int xmlXIncludeLoadFallback(xmlXIncludeCtxtPtr ctxt, xmlNodePtr fallback,\n
      \                       xmlXIncludeRefPtr ref)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1579,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1613,1
    - Dst: xmlXIncludeAddNode
      Src: /src/libxml2/xinclude.c:1621,1
    - Dst: xmlXIncludeLoadNode
      Src: /src/libxml2/xinclude.c:1626,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1571
    functionDepth: 13
    functionLinenumber: 1571
    functionLinenumberEnd: 1631
    functionName: xmlXIncludeExpandNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeAddNode
    - xmlXIncludeErr
    - xmlXIncludeLoadNode
    linkageType: ''
    returnType: xmlXIncludeRefPtr
    signature: xmlXIncludeRefPtr xmlXIncludeExpandNode(xmlXIncludeCtxtPtr ctxt, xmlNodePtr
      node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeLoadDoc
      Src: /src/libxml2/xinclude.c:1652,1
    - Dst: xmlXIncludeLoadTxt
      Src: /src/libxml2/xinclude.c:1655,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1668,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1669,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1670,1
    - Dst: xmlXIncludeLoadFallback
      Src: /src/libxml2/xinclude.c:1671,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1678,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 25
    argCount: 2
    argNames:
    - ctxt
    - ref
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1684
      start: 1640
    functionDepth: 14
    functionLinenumber: 1640
    functionLinenumberEnd: 1684
    functionName: xmlXIncludeLoadNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeErr
    - xmlStrEqual
    - xmlXIncludeLoadFallback
    - xmlXIncludeLoadDoc
    - xmlXIncludeLoadTxt
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeLoadNode(xmlXIncludeCtxtPtr ctxt, xmlXIncludeRefPtr
      ref)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1721,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1725,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/xinclude.c:1728,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/xinclude.c:1743,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xinclude.c:1744,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1745,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xinclude.c:1749,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1750,1
    - Dst: xmlUnsetProp
      Src: /src/libxml2/xinclude.c:1759,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xinclude.c:1764,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1765,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/xinclude.c:1767,1
    - Dst: xmlAddNextSibling
      Src: /src/libxml2/xinclude.c:1771,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1772,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/xinclude.c:1783,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/xinclude.c:1784,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/xinclude.c:1785,1
    - Dst: xmlXIncludeErrMemory
      Src: /src/libxml2/xinclude.c:1795,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/xinclude.c:1796,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 2
    argNames:
    - ctxt
    - ref
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlXIncludeRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1798
      start: 1693
    functionDepth: 8
    functionLinenumber: 1693
    functionLinenumberEnd: 1798
    functionName: xmlXIncludeIncludeNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFreeNodeList
    - xmlNewDocNode
    - xmlXIncludeErr
    - xmlUnlinkNode
    - xmlAddNextSibling
    - xmlAddPrevSibling
    - xmlUnsetProp
    - xmlXIncludeErrMemory
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeIncludeNode(xmlXIncludeCtxtPtr ctxt, xmlXIncludeRefPtr
      ref)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1815,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1816,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1817,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1822,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1829,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1830,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1831,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1832,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1838,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1845,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1852,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1856,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1857,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xinclude.c:1858,1
    - Dst: xmlXIncludeErr
      Src: /src/libxml2/xinclude.c:1859,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 39
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1807
    functionDepth: 6
    functionLinenumber: 1807
    functionLinenumberEnd: 1867
    functionName: xmlXIncludeTestNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlXIncludeErr
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeTestNode(xmlXIncludeCtxtPtr ctxt, xmlNodePtr node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeTestNode
      Src: /src/libxml2/xinclude.c:1891,1
    - Dst: xmlXIncludeExpandNode
      Src: /src/libxml2/xinclude.c:1892,1
    - Dst: xmlXIncludeIncludeNode
      Src: /src/libxml2/xinclude.c:1920,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/xinclude.c:1928,1
    - Dst: xmlXIncludeFreeRef
      Src: /src/libxml2/xinclude.c:1942,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - tree
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1877
    functionDepth: 14
    functionLinenumber: 1877
    functionLinenumberEnd: 1948
    functionName: xmlXIncludeDoProcess
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlFreeNodeList
    - xmlXIncludeFreeRef
    - xmlXIncludeTestNode
    - xmlXIncludeIncludeNode
    - xmlXIncludeExpandNode
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeDoProcess(xmlXIncludeCtxtPtr ctxt, xmlNodePtr tree)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeDoProcess
      Src: /src/libxml2/xinclude.c:1965,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - tree
    argTypes:
    - xmlXIncludeCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1958
    functionDepth: 15
    functionLinenumber: 1958
    functionLinenumberEnd: 1966
    functionName: xmlXIncludeDoProcessRoot
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlXIncludeDoProcess
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeDoProcessRoot(xmlXIncludeCtxtPtr ctxt, xmlNodePtr tree)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXIncludeCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1974
    functionDepth: 0
    functionLinenumber: 1974
    functionLinenumberEnd: 1979
    functionName: xmlXIncludeGetLastError
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeGetLastError(xmlXIncludeCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - handler
    - data
    argTypes:
    - xmlXIncludeCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1997
      start: 1990
    functionDepth: 0
    functionLinenumber: 1990
    functionLinenumberEnd: 1997
    functionName: xmlXIncludeSetErrorHandler
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlXIncludeSetErrorHandler(xmlXIncludeCtxt *ctxt,\n                           xmlStructuredErrorFunc
      handler, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - loader
    - data
    argTypes:
    - xmlXIncludeCtxt*
    - xmlResourceLoader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2015
      start: 2008
    functionDepth: 0
    functionLinenumber: 2008
    functionLinenumberEnd: 2015
    functionName: xmlXIncludeSetResourceLoader
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlXIncludeSetResourceLoader(xmlXIncludeCtxt *ctxt,\n                             xmlResourceLoader
      loader, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - flags
    argTypes:
    - xmlXIncludeCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2030
      start: 2024
    functionDepth: 0
    functionLinenumber: 2024
    functionLinenumberEnd: 2030
    functionName: xmlXIncludeSetFlags
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeSetFlags(xmlXIncludeCtxt *ctxt, int flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - mode
    argTypes:
    - xmlXIncludeCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2045
      start: 2039
    functionDepth: 0
    functionLinenumber: 2039
    functionLinenumberEnd: 2045
    functionName: xmlXIncludeSetStreamingMode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeSetStreamingMode(xmlXIncludeCtxt *ctxt, int mode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/xinclude.c:2067,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/xinclude.c:2071,1
    - Dst: xmlXIncludeDoProcessRoot
      Src: /src/libxml2/xinclude.c:2072,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/xinclude.c:2076,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - tree
    - flags
    - data
    argTypes:
    - xmlNode*
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2078
      start: 2058
    functionDepth: 16
    functionLinenumber: 2058
    functionLinenumberEnd: 2078
    functionName: xmlXIncludeProcessTreeFlagsData
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeSetFlags
    - xmlXIncludeDoProcessRoot
    - xmlXIncludeNewContext
    - xmlXIncludeFreeContext
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessTreeFlagsData(xmlNode *tree, int flags, void
      *data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xinclude.c:2096,1
    - Dst: xmlXIncludeProcessTreeFlagsData
      Src: /src/libxml2/xinclude.c:2099,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - doc
    - flags
    - data
    argTypes:
    - xmlDoc*
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2090
    functionDepth: 17
    functionLinenumber: 2090
    functionLinenumberEnd: 2100
    functionName: xmlXIncludeProcessFlagsData
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeProcessTreeFlagsData
    - xmlDocGetRootElement
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessFlagsData(xmlDoc *doc, int flags, void *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeProcessFlagsData
      Src: /src/libxml2/xinclude.c:2112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - doc
    - flags
    argTypes:
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2110
    functionDepth: 18
    functionLinenumber: 2110
    functionLinenumberEnd: 2113
    functionName: xmlXIncludeProcessFlags
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 4
    functionsReached:
    - xmlXIncludeProcessFlagsData
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessFlags(xmlDoc *doc, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeProcessFlags
      Src: /src/libxml2/xinclude.c:2124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2125
      start: 2122
    functionDepth: 19
    functionLinenumber: 2122
    functionLinenumberEnd: 2125
    functionName: xmlXIncludeProcess
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 4
    functionsReached:
    - xmlXIncludeProcessFlags
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcess(xmlDoc *doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/xinclude.c:2143,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/xinclude.c:2146,1
    - Dst: xmlXIncludeDoProcessRoot
      Src: /src/libxml2/xinclude.c:2147,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/xinclude.c:2151,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - tree
    - flags
    argTypes:
    - xmlNode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2153
      start: 2135
    functionDepth: 16
    functionLinenumber: 2135
    functionLinenumberEnd: 2153
    functionName: xmlXIncludeProcessTreeFlags
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeSetFlags
    - xmlXIncludeDoProcessRoot
    - xmlXIncludeNewContext
    - xmlXIncludeFreeContext
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessTreeFlags(xmlNode *tree, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeProcessTreeFlags
      Src: /src/libxml2/xinclude.c:2164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tree
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2165
      start: 2162
    functionDepth: 17
    functionLinenumber: 2162
    functionLinenumberEnd: 2165
    functionName: xmlXIncludeProcessTree
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 1
    functionsReached:
    - xmlXIncludeProcessTreeFlags
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessTree(xmlNode *tree)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlXIncludeDoProcessRoot
      Src: /src/libxml2/xinclude.c:2183,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlXIncludeCtxt*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2187
      start: 2176
    functionDepth: 16
    functionLinenumber: 2176
    functionLinenumberEnd: 2187
    functionName: xmlXIncludeProcessNode
    functionSourceFile: /src/libxml2/xinclude.c
    functionUses: 4
    functionsReached:
    - xmlXIncludeDoProcessRoot
    linkageType: ''
    returnType: int
    signature: int xmlXIncludeProcessNode(xmlXIncludeCtxt *ctxt, xmlNode *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/valid.c:57,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/valid.c:59,1
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/valid.c:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: xmlVErrMemory
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlVErrMemory(xmlValidCtxtPtr ctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/valid.c:85,1
    - Dst: xmlCtxtVErr
      Src: /src/libxml2/valid.c:87,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/valid.c:100,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:106,1
    - Dst: va_end
      Src: /src/libxml2/valid.c:110,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 9
    argNames:
    - ctxt
    - node
    - code
    - level
    - str1
    - str2
    - str3
    - int1
    - msg
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    - xmlParserErrors
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 70
    functionDepth: 5
    functionLinenumber: 70
    functionLinenumberEnd: 113
    functionName: xmlDoErrValid
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlCtxtVErr
    - va_end
    - xmlVErrMemory
    - va_start
    - xmlVRaiseError
    linkageType: ''
    returnType: int
    signature: "int xmlDoErrValid(xmlValidCtxtPtr ctxt, xmlNodePtr node,\n              xmlParserErrors
      code, int level,\n              const xmlChar *str1, const xmlChar *str2, const
      xmlChar *str3,\n              int int1,\n              const char *msg, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDoErrValid
      Src: /src/libxml2/valid.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - str2
    - str3
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 127
    functionDepth: 6
    functionLinenumber: 127
    functionLinenumberEnd: 134
    functionName: xmlErrValidNode
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlDoErrValid
    linkageType: ''
    returnType: void
    signature: "void xmlErrValidNode(xmlValidCtxtPtr ctxt,\n                xmlNodePtr
      node, xmlParserErrors error,\n                const char *msg, const xmlChar
      * str1,\n                const xmlChar * str2, const xmlChar * str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDoErrValid
      Src: /src/libxml2/valid.c:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - error
    - msg
    - extra
    argTypes:
    - xmlValidCtxtPtr
    - xmlParserErrors
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 6
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: xmlErrValid
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlDoErrValid
    linkageType: ''
    returnType: void
    signature: "void xmlErrValid(xmlValidCtxtPtr ctxt, xmlParserErrors error,\n            const
      char *msg, const char *extra)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDoErrValid
      Src: /src/libxml2/valid.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - int2
    - str3
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 165
    functionDepth: 6
    functionLinenumber: 165
    functionLinenumberEnd: 172
    functionName: xmlErrValidNodeNr
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlDoErrValid
    linkageType: ''
    returnType: void
    signature: "void xmlErrValidNodeNr(xmlValidCtxtPtr ctxt,\n                xmlNodePtr
      node, xmlParserErrors error,\n                const char *msg, const xmlChar
      * str1,\n                int int2, const xmlChar * str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDoErrValid
      Src: /src/libxml2/valid.c:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - ctxt
    - node
    - error
    - msg
    - str1
    - str2
    - str3
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 6
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: xmlErrValidWarning
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlDoErrValid
    linkageType: ''
    returnType: void
    signature: "void xmlErrValidWarning(xmlValidCtxtPtr ctxt,\n                xmlNodePtr
      node, xmlParserErrors error,\n                const char *msg, const xmlChar
      * str1,\n                const xmlChar * str2, const xmlChar * str3)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/valid.c:221,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:224,1
    - Dst: xmlRealloc
      Src: /src/libxml2/valid.c:227,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:229,1
    - Dst: xmlValidBuildContentModel
      Src: /src/libxml2/valid.c:240,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/valid.c:243,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:245,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:250,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 3
    argNames:
    - ctxt
    - elemDecl
    - node
    argTypes:
    - xmlValidCtxtPtr
    - xmlElementPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 215
    functionDepth: 7
    functionLinenumber: 215
    functionLinenumberEnd: 257
    functionName: vstateVPush
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlValidBuildContentModel
    - xmlGrowCapacity
    - xmlRegNewExecCtxt
    linkageType: ''
    returnType: int
    signature: int vstateVPush(xmlValidCtxtPtr ctxt, xmlElementPtr elemDecl, xmlNodePtr
      node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/valid.c:269,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 277
    functionName: vstateVPop
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: int
    signature: int vstateVPop(xmlValidCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/valid.c:325,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:328,1
    - Dst: xmlRealloc
      Src: /src/libxml2/valid.c:331,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:333,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 6
    argNames:
    - ctxt
    - cont
    - node
    - depth
    - occurs
    - state
    argTypes:
    - xmlValidCtxtPtr
    - xmlElementContentPtr
    - xmlNodePtr
    - unsigned char
    - long
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 315
    functionDepth: 4
    functionLinenumber: 315
    functionLinenumberEnd: 355
    functionName: vstateVPush
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlVErrMemory
    linkageType: ''
    returnType: int
    signature: "int vstateVPush(xmlValidCtxtPtr ctxt, xmlElementContentPtr cont,\n\t
      \   xmlNodePtr node, unsigned char depth, long occurs,\n\t    unsigned char
      state)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 368
    functionName: vstateVPop
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int vstateVPop(xmlValidCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/valid.c:379,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:382,1
    - Dst: xmlRealloc
      Src: /src/libxml2/valid.c:385,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:387,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 372
    functionDepth: 4
    functionLinenumber: 372
    functionLinenumberEnd: 396
    functionName: nodeVPush
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlVErrMemory
    linkageType: ''
    returnType: int
    signature: int nodeVPush(xmlValidCtxtPtr ctxt, xmlNodePtr value)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 412
    functionName: nodeVPop
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr nodeVPop(xmlValidCtxtPtr ctxt)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:443,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:450,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:460,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:462,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/valid.c:468,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/valid.c:472,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:474,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/valid.c:477,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/valid.c:479,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:483,1
    - Dst: xmlAutomataNewTransition
      Src: /src/libxml2/valid.c:485,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:490,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:503,1
    - Dst: xmlValidBuildAContentModel
      Src: /src/libxml2/valid.c:507,1
    - Dst: xmlValidBuildAContentModel
      Src: /src/libxml2/valid.c:512,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:515,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:520,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:523,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:524,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:527,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:539,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/valid.c:543,1
    - Dst: xmlValidBuildAContentModel
      Src: /src/libxml2/valid.c:551,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:553,1
    - Dst: xmlValidBuildAContentModel
      Src: /src/libxml2/valid.c:558,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:560,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:561,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:566,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:569,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:570,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/valid.c:573,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:579,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 109
    argCount: 3
    argNames:
    - content
    - ctxt
    - name
    argTypes:
    - xmlElementContentPtr
    - xmlValidCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 438
    functionDepth: 7
    functionLinenumber: 438
    functionLinenumberEnd: 585
    functionName: xmlValidBuildAContentModel
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBuildQName
    - xmlAutomataNewEpsilon
    - xmlFree
    - xmlVErrMemory
    - xmlAutomataNewState
    - xmlErrValidNode
    - xmlValidBuildAContentModel
    - xmlErrValid
    - xmlAutomataNewTransition
    linkageType: ''
    returnType: int
    signature: "int xmlValidBuildAContentModel(xmlElementContentPtr content,\n\t\t
      \          xmlValidCtxtPtr ctxt,\n\t\t           const xmlChar *name)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/valid.c:608,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/valid.c:615,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:617,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/valid.c:620,1
    - Dst: xmlValidBuildAContentModel
      Src: /src/libxml2/valid.c:621,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/valid.c:623,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/valid.c:624,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:626,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/valid.c:629,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:632,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:633,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/valid.c:645,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 45
    argCount: 2
    argNames:
    - ctxt
    - elem
    argTypes:
    - xmlValidCtxt*
    - xmlElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 596
    functionDepth: 8
    functionLinenumber: 596
    functionLinenumberEnd: 648
    functionName: xmlValidBuildContentModel
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlFreeAutomata
    - xmlRegexpIsDeterminist
    - xmlAutomataGetInitState
    - xmlVErrMemory
    - xmlAutomataCompile
    - xmlValidBuildAContentModel
    - xmlErrValidNode
    - xmlNewAutomata
    - xmlSnprintfElementContent
    - xmlAutomataSetFinalState
    linkageType: ''
    returnType: int
    signature: int xmlValidBuildContentModel(xmlValidCtxt *ctxt, xmlElement *elem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:667,1
    - Dst: memset
      Src: /src/libxml2/valid.c:671,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 675
    functionName: xmlNewValidCtxt
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlValidCtxt
    signature: xmlValidCtxt *xmlNewValidCtxt(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:687,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:689,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:690,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 691
    functionName: xmlFreeValidCtxt
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeValidCtxt(xmlValidCtxt *cur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:715,1
    - Dst: memset
      Src: /src/libxml2/valid.c:718,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/valid.c:725,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:728,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:730,1
    - Dst: xmlStrndup
      Src: /src/libxml2/valid.c:733,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:734,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:736,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:737,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/valid.c:748,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 3
    argNames:
    - doc
    - name
    - type
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlElementContentType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 706
    functionDepth: 2
    functionLinenumber: 706
    functionLinenumberEnd: 750
    functionName: xmlNewDocElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlStrndup
    - xmlFreeDocElementContent
    - xmlMalloc
    - xmlDictLookup
    - xmlSplitQName3
    - memset
    linkageType: ''
    returnType: xmlElementContent
    signature: "xmlElementContent *\nxmlNewDocElementContent(xmlDoc *doc, const xmlChar
      *name,\n                        xmlElementContentType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocElementContent
      Src: /src/libxml2/valid.c:765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - type
    argTypes:
    - xmlChar*
    - xmlElementContentType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 763
    functionDepth: 3
    functionLinenumber: 763
    functionLinenumberEnd: 766
    functionName: xmlNewElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlNewDocElementContent
    linkageType: ''
    returnType: xmlElementContent
    signature: 'xmlElementContent *

      xmlNewElementContent(const xmlChar *name, xmlElementContentType type)'
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:787,1
    - Dst: memset
      Src: /src/libxml2/valid.c:790,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:795,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:797,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:804,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:806,1
    - Dst: xmlCopyDocElementContent
      Src: /src/libxml2/valid.c:811,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:820,1
    - Dst: memset
      Src: /src/libxml2/valid.c:823,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:830,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:832,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:839,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:841,1
    - Dst: xmlCopyDocElementContent
      Src: /src/libxml2/valid.c:846,1
    - Dst: xmlFreeElementContent
      Src: /src/libxml2/valid.c:858,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 79
    argCount: 2
    argNames:
    - doc
    - cur
    argTypes:
    - xmlDoc*
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 777
    functionDepth: 2
    functionLinenumber: 777
    functionLinenumberEnd: 860
    functionName: xmlCopyDocElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlFreeElementContent
    - xmlStrdup
    - xmlCopyDocElementContent
    - xmlMalloc
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlElementContent
    signature: 'xmlElementContent *

      xmlCopyDocElementContent(xmlDoc *doc, xmlElementContent *cur)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCopyDocElementContent
      Src: /src/libxml2/valid.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 3
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: xmlCopyElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlCopyDocElementContent
    linkageType: ''
    returnType: xmlElementContent
    signature: 'xmlElementContent *

      xmlCopyElementContent(xmlElementContent *cur)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictOwns
      Src: /src/libxml2/valid.c:903,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:904,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/valid.c:905,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:906,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:908,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:909,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:913,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:920,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - doc
    - cur
    argTypes:
    - xmlDoc*
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 884
    functionDepth: 2
    functionLinenumber: 884
    functionLinenumberEnd: 929
    functionName: xmlFreeDocElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 5
    functionsReached:
    - xmlDictOwns
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeDocElementContent(xmlDoc *doc, xmlElementContent *cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/valid.c:941,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 939
    functionDepth: 3
    functionLinenumber: 939
    functionLinenumberEnd: 942
    functionName: xmlFreeElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlFreeDocElementContent
    linkageType: ''
    returnType: void
    signature: void xmlFreeElementContent(xmlElementContent *cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - xmlElementContent*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 958
    functionName: xmlSprintfElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSprintfElementContent(char *buf ATTRIBUTE_UNUSED,\n\t                 xmlElementContent
      *content ATTRIBUTE_UNUSED,\n\t\t\t int englob ATTRIBUTE_UNUSED)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/valid.c:977,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:980,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:983,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:986,1
    - Dst: xmlStrlen
      Src: /src/libxml2/valid.c:989,1
    - Dst: xmlStrlen
      Src: /src/libxml2/valid.c:992,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:994,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:998,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:999,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1002,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1008,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1010,1
    - Dst: strlen
      Src: /src/libxml2/valid.c:1011,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1014,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1017,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1021,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1023,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1028,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1030,1
    - Dst: strlen
      Src: /src/libxml2/valid.c:1031,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1034,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1037,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1041,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:1043,1
    - Dst: strlen
      Src: /src/libxml2/valid.c:1046,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1048,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1053,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1056,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:1059,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 78
    argCount: 4
    argNames:
    - buf
    - size
    - content
    - englob
    argTypes:
    - char*
    - int
    - xmlElementContent*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 972
    functionDepth: 1
    functionLinenumber: 972
    functionLinenumberEnd: 1062
    functionName: xmlSnprintfElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 4
    functionsReached:
    - xmlSnprintfElementContent
    - strlen
    - xmlStrlen
    - strcat
    linkageType: ''
    returnType: void
    signature: void xmlSnprintfElementContent(char *buf, int size, xmlElementContent
      *content, int englob)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/valid.c:1078,1
    - Dst: xmlFreeDocElementContent
      Src: /src/libxml2/valid.c:1079,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1081,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1083,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/valid.c:1086,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1088,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xmlElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1089
      start: 1075
    functionDepth: 4
    functionLinenumber: 1075
    functionLinenumberEnd: 1089
    functionName: xmlFreeElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlUnlinkNode
    - xmlFreeDocElementContent
    - xmlRegFreeRegexp
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeElement(xmlElementPtr elem)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:1134,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/valid.c:1147,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:1158,1
    - Dst: xmlHashRemoveEntry2
      Src: /src/libxml2/valid.c:1162,1
    - Dst: xmlFreeElement
      Src: /src/libxml2/valid.c:1164,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:1172,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:1180,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1185,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1189,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1195,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1198,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1204,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1206,1
    - Dst: xmlHashAdd2
      Src: /src/libxml2/valid.c:1216,1
    - Dst: xmlFreeElement
      Src: /src/libxml2/valid.c:1218,1
    - Dst: xmlCopyDocElementContent
      Src: /src/libxml2/valid.c:1242,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1261,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:1265,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1267,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 107
    argCount: 5
    argNames:
    - ctxt
    - dtd
    - name
    - type
    - content
    argTypes:
    - xmlValidCtxt*
    - xmlDtd*
    - xmlChar*
    - xmlElementTypeVal
    - xmlElementContent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1102
    functionDepth: 7
    functionLinenumber: 1102
    functionLinenumberEnd: 1269
    functionName: xmlAddElementDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlFreeElement
    - xmlStrdup
    - xmlCopyDocElementContent
    - xmlFree
    - xmlVErrMemory
    - xmlHashAdd2
    - xmlErrValidNode
    - xmlHashCreateDict
    - xmlMalloc
    - xmlHashRemoveEntry2
    - memset
    linkageType: ''
    returnType: xmlElement
    signature: "xmlElement *\nxmlAddElementDecl(xmlValidCtxt *ctxt,\n                  xmlDtd
      *dtd, const xmlChar *name,\n                  xmlElementTypeVal type,\n\t\t
      \ xmlElementContent *content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeElement
      Src: /src/libxml2/valid.c:1273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - elem
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1271
    functionDepth: 5
    functionLinenumber: 1271
    functionLinenumberEnd: 1274
    functionName: xmlFreeElementTableEntry
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFreeElement
    linkageType: ''
    returnType: void
    signature: void xmlFreeElementTableEntry(void *elem, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/valid.c:1285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlElementTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1286
      start: 1283
    functionDepth: 2
    functionLinenumber: 1283
    functionLinenumberEnd: 1286
    functionName: xmlFreeElementTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeElementTable(xmlElementTable *table)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1300,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1303,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1307,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1312,1
    - Dst: xmlCopyElementContent
      Src: /src/libxml2/valid.c:1317,1
    - Dst: xmlFreeElement
      Src: /src/libxml2/valid.c:1326,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1295
    functionDepth: 5
    functionLinenumber: 1295
    functionLinenumberEnd: 1328
    functionName: xmlCopyElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFreeElement
    - xmlStrdup
    - xmlMalloc
    - xmlCopyElementContent
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCopyElement(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/valid.c:1340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlElementTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 6
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: xmlCopyElementTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashCopySafe
    linkageType: ''
    returnType: xmlElementTable
    signature: 'xmlElementTable *

      xmlCopyElementTable(xmlElementTable *table)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:1360,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/valid.c:1361,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:1362,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1363,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:1363,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - elem
    argTypes:
    - xmlBuffer*
    - xmlElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1353
    functionDepth: 2
    functionLinenumber: 1353
    functionLinenumberEnd: 1364
    functionName: xmlDumpElementDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveTree
    - xmlSaveFinish
    - xmlSaveToBuffer
    linkageType: ''
    returnType: void
    signature: void xmlDumpElementDecl(xmlBuffer *buf, xmlElement *elem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveTree
      Src: /src/libxml2/valid.c:1377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - elem
    - save
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1374
    functionDepth: 1
    functionLinenumber: 1374
    functionLinenumberEnd: 1378
    functionName: xmlDumpElementDeclScan
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlSaveTree
    linkageType: ''
    returnType: void
    signature: "void xmlDumpElementDeclScan(void *elem, void *save,\n                       const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:1396,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:1397,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:1398,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1399,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:1399,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - table
    argTypes:
    - xmlBuffer*
    - xmlElementTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1389
    functionDepth: 2
    functionLinenumber: 1389
    functionLinenumberEnd: 1400
    functionName: xmlDumpElementTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveFinish
    - xmlSaveToBuffer
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: void xmlDumpElementTable(xmlBuffer *buf, xmlElementTable *table)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1416,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1419,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1422,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1424,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1412
    functionDepth: 2
    functionLinenumber: 1412
    functionLinenumberEnd: 1430
    functionName: xmlCreateEnumeration
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlEnumeration
    signature: 'xmlEnumeration *

      xmlCreateEnumeration(const xmlChar *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1442,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlEnumeration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1447
    functionName: xmlFreeEnumeration
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 7
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeEnumeration(xmlEnumeration *cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateEnumeration
      Src: /src/libxml2/valid.c:1464,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1467,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlEnumeration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1482
      start: 1458
    functionDepth: 3
    functionLinenumber: 1458
    functionLinenumberEnd: 1482
    functionName: xmlCopyEnumeration
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlFreeEnumeration
    - xmlCreateEnumeration
    linkageType: ''
    returnType: xmlEnumeration
    signature: 'xmlEnumeration *

      xmlCopyEnumeration(xmlEnumeration *cur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:1505,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - ctxt
    - elem
    - err
    argTypes:
    - xmlValidCtxtPtr
    - xmlElementPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1494
    functionDepth: 7
    functionLinenumber: 1494
    functionLinenumberEnd: 1512
    functionName: xmlScanIDAttributeDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlErrValidNode
    linkageType: ''
    returnType: int
    signature: int xmlScanIDAttributeDecl(xmlValidCtxtPtr ctxt, xmlElementPtr elem,
      int err)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/valid.c:1529,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1531,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/valid.c:1533,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1534,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/valid.c:1535,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1536,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/valid.c:1537,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1538,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1541,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1543,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1545,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1548,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1549,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 27
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1520
    functionDepth: 4
    functionLinenumber: 1520
    functionLinenumberEnd: 1550
    functionName: xmlFreeAttribute
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlDictOwns
    - xmlUnlinkNode
    - xmlFree
    - xmlFreeEnumeration
    linkageType: ''
    returnType: void
    signature: void xmlFreeAttribute(xmlAttributePtr attr)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1580,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1584,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1588,1
    - Dst: xmlValidateAttributeValueInternal
      Src: /src/libxml2/valid.c:1597,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:1598,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:1614,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1616,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/valid.c:1626,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1632,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1635,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:1649,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:1650,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1652,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1653,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/valid.c:1659,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1661,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1669,1
    - Dst: xmlGetDtdElementDesc2
      Src: /src/libxml2/valid.c:1674,1
    - Dst: xmlHashAdd3
      Src: /src/libxml2/valid.c:1682,1
    - Dst: xmlErrValidWarning
      Src: /src/libxml2/valid.c:1691,1
    - Dst: xmlFreeAttribute
      Src: /src/libxml2/valid.c:1696,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:1704,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:1706,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:1713,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:1715,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:1743,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/valid.c:1744,1
    - Dst: xmlFreeAttribute
      Src: /src/libxml2/valid.c:1745,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 117
    argCount: 9
    argNames:
    - ctxt
    - dtd
    - elem
    - name
    - ns
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - xmlValidCtxt*
    - xmlDtd*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlAttributeType
    - xmlAttributeDefault
    - xmlChar*
    - xmlEnumeration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1747
      start: 1567
    functionDepth: 7
    functionLinenumber: 1567
    functionLinenumberEnd: 1747
    functionName: xmlAddAttributeDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlGetDtdElementDesc2
    - xmlStrEqual
    - xmlHashLookup3
    - xmlVErrMemory
    - xmlErrValidWarning
    - xmlValidateAttributeValueInternal
    - xmlErrValidNode
    - xmlFreeEnumeration
    - xmlHashCreateDict
    - xmlMalloc
    - xmlHashAdd3
    - xmlFreeAttribute
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlAttribute
    signature: "xmlAttribute *\nxmlAddAttributeDecl(xmlValidCtxt *ctxt,\n                    xmlDtd
      *dtd, const xmlChar *elem,\n                    const xmlChar *name, const xmlChar
      *ns,\n\t\t    xmlAttributeType type, xmlAttributeDefault def,\n\t\t    const
      xmlChar *defaultValue, xmlEnumeration *tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeAttribute
      Src: /src/libxml2/valid.c:1751,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - attr
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1749
    functionDepth: 5
    functionLinenumber: 1749
    functionLinenumberEnd: 1752
    functionName: xmlFreeAttributeTableEntry
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFreeAttribute
    linkageType: ''
    returnType: void
    signature: void xmlFreeAttributeTableEntry(void *attr, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/valid.c:1763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlAttributeTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1764
      start: 1761
    functionDepth: 2
    functionLinenumber: 1761
    functionLinenumberEnd: 1764
    functionName: xmlFreeAttributeTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeAttributeTable(xmlAttributeTable *table)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1778,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1781,1
    - Dst: xmlCopyEnumeration
      Src: /src/libxml2/valid.c:1786,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1791,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1796,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1801,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1806,1
    - Dst: xmlFreeAttribute
      Src: /src/libxml2/valid.c:1813,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1815
      start: 1773
    functionDepth: 5
    functionLinenumber: 1773
    functionLinenumberEnd: 1815
    functionName: xmlCopyAttribute
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCopyEnumeration
    - xmlMalloc
    - xmlFreeAttribute
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCopyAttribute(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/valid.c:1827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlAttributeTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1825
    functionDepth: 6
    functionLinenumber: 1825
    functionLinenumberEnd: 1829
    functionName: xmlCopyAttributeTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashCopySafe
    linkageType: ''
    returnType: xmlAttributeTable
    signature: 'xmlAttributeTable *

      xmlCopyAttributeTable(xmlAttributeTable *table)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:1848,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/valid.c:1849,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:1850,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1851,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:1851,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - attr
    argTypes:
    - xmlBuffer*
    - xmlAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1852
      start: 1841
    functionDepth: 2
    functionLinenumber: 1841
    functionLinenumberEnd: 1852
    functionName: xmlDumpAttributeDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveTree
    - xmlSaveFinish
    - xmlSaveToBuffer
    linkageType: ''
    returnType: void
    signature: void xmlDumpAttributeDecl(xmlBuffer *buf, xmlAttribute *attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveTree
      Src: /src/libxml2/valid.c:1865,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - attr
    - save
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1866
      start: 1862
    functionDepth: 1
    functionLinenumber: 1862
    functionLinenumberEnd: 1866
    functionName: xmlDumpAttributeDeclScan
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlSaveTree
    linkageType: ''
    returnType: void
    signature: "void xmlDumpAttributeDeclScan(void *attr, void *save,\n                         const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:1884,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:1885,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:1886,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1887,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:1887,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - table
    argTypes:
    - xmlBuffer*
    - xmlAttributeTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1877
    functionDepth: 2
    functionLinenumber: 1877
    functionLinenumberEnd: 1888
    functionName: xmlDumpAttributeTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveFinish
    - xmlSaveToBuffer
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: void xmlDumpAttributeTable(xmlBuffer *buf, xmlAttributeTable *table)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1905,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1907,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1909,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:1910,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - nota
    argTypes:
    - xmlNotationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1901
    functionDepth: 0
    functionLinenumber: 1901
    functionLinenumberEnd: 1911
    functionName: xmlFreeNotation
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeNotation(xmlNotationPtr nota)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/valid.c:1950,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:1955,1
    - Dst: memset
      Src: /src/libxml2/valid.c:1958,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1963,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1967,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:1972,1
    - Dst: xmlHashAdd
      Src: /src/libxml2/valid.c:1981,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:1987,1
    - Dst: xmlFreeNotation
      Src: /src/libxml2/valid.c:1991,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:1997,1
    - Dst: xmlFreeNotation
      Src: /src/libxml2/valid.c:1998,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 56
    argCount: 5
    argNames:
    - ctxt
    - dtd
    - name
    - publicId
    - systemId
    argTypes:
    - xmlValidCtxt*
    - xmlDtd*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2000
      start: 1924
    functionDepth: 6
    functionLinenumber: 1924
    functionLinenumberEnd: 2000
    functionName: xmlAddNotationDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlVErrMemory
    - xmlHashCreateDict
    - xmlMalloc
    - xmlErrValid
    - xmlHashAdd
    - xmlFreeNotation
    - memset
    linkageType: ''
    returnType: xmlNotation
    signature: "xmlNotation *\nxmlAddNotationDecl(xmlValidCtxt *ctxt, xmlDtd *dtd,
      const xmlChar *name,\n                   const xmlChar *publicId, const xmlChar
      *systemId)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNotation
      Src: /src/libxml2/valid.c:2004,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - nota
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2005
      start: 2002
    functionDepth: 1
    functionLinenumber: 2002
    functionLinenumberEnd: 2005
    functionName: xmlFreeNotationTableEntry
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFreeNotation
    linkageType: ''
    returnType: void
    signature: void xmlFreeNotationTableEntry(void *nota, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/valid.c:2016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlNotationTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2017
      start: 2014
    functionDepth: 2
    functionLinenumber: 2014
    functionLinenumberEnd: 2017
    functionName: xmlFreeNotationTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeNotationTable(xmlNotationTable *table)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:2031,1
    - Dst: memset
      Src: /src/libxml2/valid.c:2034,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2036,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2041,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2046,1
    - Dst: xmlFreeNotation
      Src: /src/libxml2/valid.c:2053,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2055
      start: 2026
    functionDepth: 2
    functionLinenumber: 2026
    functionLinenumberEnd: 2055
    functionName: xmlCopyNotation
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFreeNotation
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCopyNotation(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/valid.c:2067,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlNotationTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 2065
    functionDepth: 6
    functionLinenumber: 2065
    functionLinenumberEnd: 2068
    functionName: xmlCopyNotationTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlHashCopySafe
    linkageType: ''
    returnType: xmlNotationTable
    signature: 'xmlNotationTable *

      xmlCopyNotationTable(xmlNotationTable *table)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:2087,1
    - Dst: xmlSaveNotationDecl
      Src: /src/libxml2/valid.c:2088,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:2089,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2090,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:2090,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - nota
    argTypes:
    - xmlBuffer*
    - xmlNotation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2091
      start: 2080
    functionDepth: 2
    functionLinenumber: 2080
    functionLinenumberEnd: 2091
    functionName: xmlDumpNotationDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveFinish
    - xmlSaveNotationDecl
    - xmlSaveToBuffer
    linkageType: ''
    returnType: void
    signature: void xmlDumpNotationDecl(xmlBuffer *buf, xmlNotation *nota)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/valid.c:2109,1
    - Dst: xmlSaveNotationTable
      Src: /src/libxml2/valid.c:2110,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/valid.c:2111,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2112,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/valid.c:2112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - table
    argTypes:
    - xmlBuffer*
    - xmlNotationTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2102
    functionDepth: 2
    functionLinenumber: 2102
    functionLinenumberEnd: 2113
    functionName: xmlDumpNotationTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveNotationTable
    - xmlSaveFinish
    - xmlSaveToBuffer
    linkageType: ''
    returnType: void
    signature: void xmlDumpNotationTable(xmlBuffer *buf, xmlNotationTable *table)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2128
    functionDepth: 0
    functionLinenumber: 2128
    functionLinenumberEnd: 2132
    functionName: DICT_FREE
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DICT_FREE(str)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2143
      start: 2133
    functionDepth: 0
    functionLinenumber: 2133
    functionLinenumberEnd: 2143
    functionName: xmlIsStreaming
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlIsStreaming(xmlValidCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2160,1
    - Dst: DICT_FREE
      Src: /src/libxml2/valid.c:2162,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2168,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlIDPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2169
      start: 2150
    functionDepth: 0
    functionLinenumber: 2150
    functionLinenumberEnd: 2169
    functionName: xmlFreeID
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - DICT_FREE
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeID(xmlIDPtr id)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/valid.c:2204,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2208,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:2213,1
    - Dst: memset
      Src: /src/libxml2/valid.c:2216,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2222,1
    - Dst: xmlFreeID
      Src: /src/libxml2/valid.c:2224,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/valid.c:2229,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/valid.c:2231,1
    - Dst: xmlFreeID
      Src: /src/libxml2/valid.c:2232,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/valid.c:2241,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 3
    argNames:
    - attr
    - value
    - idPtr
    argTypes:
    - xmlAttrPtr
    - xmlChar*
    - xmlIDPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2246
      start: 2181
    functionDepth: 5
    functionLinenumber: 2181
    functionLinenumberEnd: 2246
    functionName: xmlAddIDInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRemoveID
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlMalloc
    - xmlGetLineNo
    - xmlHashCreate
    - xmlFreeID
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlAddIDInternal(xmlAttrPtr attr, const xmlChar *value, xmlIDPtr
      *idPtr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddIDInternal
      Src: /src/libxml2/valid.c:2260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - attr
    - value
    argTypes:
    - xmlAttr*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2261
      start: 2258
    functionDepth: 6
    functionLinenumber: 2258
    functionLinenumberEnd: 2261
    functionName: xmlAddIDSafe
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 5
    functionsReached:
    - xmlAddIDInternal
    linkageType: ''
    returnType: int
    signature: int xmlAddIDSafe(xmlAttr *attr, const xmlChar *value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddIDInternal
      Src: /src/libxml2/valid.c:2281,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:2283,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:2290,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctxt
    - doc
    - value
    - attr
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlChar*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2296
      start: 2272
    functionDepth: 7
    functionLinenumber: 2272
    functionLinenumberEnd: 2296
    functionName: xmlAddID
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 6
    functionsReached:
    - xmlAddIDInternal
    - xmlErrValidNode
    - xmlVErrMemory
    linkageType: ''
    returnType: xmlID
    signature: "xmlID *\nxmlAddID(xmlValidCtxt *ctxt, xmlDoc *doc, const xmlChar *value,\n
      \        xmlAttr *attr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeID
      Src: /src/libxml2/valid.c:2300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - id
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2301
      start: 2298
    functionDepth: 1
    functionLinenumber: 2298
    functionLinenumberEnd: 2301
    functionName: xmlFreeIDTableEntry
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlFreeID
    linkageType: ''
    returnType: void
    signature: void xmlFreeIDTableEntry(void *id, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/valid.c:2310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlIDTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2311
      start: 2308
    functionDepth: 2
    functionLinenumber: 2308
    functionLinenumberEnd: 2311
    functionName: xmlFreeIDTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 4
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeIDTable(xmlIDTable *table)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:2331,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:2337,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:2338,1
    - Dst: strcmp
      Src: /src/libxml2/valid.c:2347,1
    - Dst: strcmp
      Src: /src/libxml2/valid.c:2348,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:2361,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:2369,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:2372,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2377,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 32
    argCount: 3
    argNames:
    - doc
    - elem
    - attr
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2384
      start: 2325
    functionDepth: 1
    functionLinenumber: 2325
    functionLinenumberEnd: 2384
    functionName: xmlIsID
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 9
    functionsReached:
    - xmlBuildQName
    - xmlStrEqual
    - xmlFree
    - xmlGetDtdQAttrDesc
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlIsID(xmlDoc *doc, xmlNode *elem, xmlAttr *attr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/valid.c:2404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - doc
    - attr
    argTypes:
    - xmlDoc*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2393
    functionDepth: 2
    functionLinenumber: 2393
    functionLinenumberEnd: 2408
    functionName: xmlRemoveID
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 5
    functionsReached:
    - xmlHashRemoveEntry
    linkageType: ''
    returnType: int
    signature: int xmlRemoveID(xmlDoc *doc, xmlAttr *attr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2435,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - doc
    - ID
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2446
      start: 2418
    functionDepth: 2
    functionLinenumber: 2418
    functionLinenumberEnd: 2446
    functionName: xmlGetID
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 5
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlAttr
    signature: 'xmlAttr *

      xmlGetID(xmlDoc *doc, const xmlChar *ID)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlLinkGetData
      Src: /src/libxml2/valid.c:2476,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2479,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2481,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - lk
    argTypes:
    - xmlLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2483
      start: 2474
    functionDepth: 1
    functionLinenumber: 2474
    functionLinenumberEnd: 2483
    functionName: xmlFreeRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlLinkGetData
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeRef(xmlLinkPtr lk)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListDelete
      Src: /src/libxml2/valid.c:2495,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2496
      start: 2491
    functionDepth: 2
    functionLinenumber: 2491
    functionLinenumberEnd: 2496
    functionName: xmlFreeRefTableEntry
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlListDelete
    linkageType: ''
    returnType: void
    signature: void xmlFreeRefTableEntry(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListRemoveFirst
      Src: /src/libxml2/valid.c:2511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - data
    - user
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2515
      start: 2503
    functionDepth: 3
    functionLinenumber: 2503
    functionLinenumberEnd: 2515
    functionName: xmlWalkRemoveRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlListRemoveFirst
    linkageType: ''
    returnType: int
    signature: int xmlWalkRemoveRef(const void *data, void *user)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2529
      start: 2524
    functionDepth: 0
    functionLinenumber: 2524
    functionLinenumberEnd: 2529
    functionName: xmlDummyCompare
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlDummyCompare(const void *data0 ATTRIBUTE_UNUSED,\n                const
      void *data1 ATTRIBUTE_UNUSED)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/valid.c:2565,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:2570,1
    - Dst: memset
      Src: /src/libxml2/valid.c:2573,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2578,1
    - Dst: xmlIsStreaming
      Src: /src/libxml2/valid.c:2581,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2585,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/valid.c:2593,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2602,1
    - Dst: xmlListCreate
      Src: /src/libxml2/valid.c:2606,1
    - Dst: xmlHashAdd
      Src: /src/libxml2/valid.c:2609,1
    - Dst: xmlListDelete
      Src: /src/libxml2/valid.c:2611,1
    - Dst: xmlListAppend
      Src: /src/libxml2/valid.c:2615,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:2620,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2623,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2625,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2626,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 65
    argCount: 4
    argNames:
    - ctxt
    - doc
    - value
    - attr
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlChar*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2629
      start: 2543
    functionDepth: 5
    functionLinenumber: 2543
    functionLinenumberEnd: 2629
    functionName: xmlAddRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlVErrMemory
    - xmlIsStreaming
    - xmlHashLookup
    - xmlListAppend
    - xmlListCreate
    - xmlMalloc
    - xmlHashAdd
    - xmlGetLineNo
    - xmlListDelete
    - xmlHashCreate
    - memset
    linkageType: ''
    returnType: xmlRef
    signature: "xmlRef *\nxmlAddRef(xmlValidCtxt *ctxt, xmlDoc *doc, const xmlChar
      *value,\n    xmlAttr *attr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/valid.c:2641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlRefTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2642
      start: 2639
    functionDepth: 2
    functionLinenumber: 2639
    functionLinenumberEnd: 2642
    functionName: xmlFreeRefTable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeRefTable(xmlRefTable *table)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:2677,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:2680,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 24
    argCount: 3
    argNames:
    - doc
    - elem
    - attr
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2689
      start: 2657
    functionDepth: 1
    functionLinenumber: 2657
    functionLinenumberEnd: 2689
    functionName: xmlIsRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlGetDtdQAttrDesc
    linkageType: ''
    returnType: int
    signature: int xmlIsRef(xmlDoc *doc, xmlNode *elem, xmlAttr *attr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/valid.c:2715,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2719,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2721,1
    - Dst: xmlListWalk
      Src: /src/libxml2/valid.c:2739,1
    - Dst: xmlListEmpty
      Src: /src/libxml2/valid.c:2742,1
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/valid.c:2743,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2744,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - doc
    - attr
    argTypes:
    - xmlDoc*
    - xmlAttr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2701
    functionDepth: 7
    functionLinenumber: 2701
    functionLinenumberEnd: 2746
    functionName: xmlRemoveRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlListEmpty
    - xmlFree
    - xmlListWalk
    - xmlHashLookup
    - xmlHashRemoveEntry
    - xmlNodeListGetString
    linkageType: ''
    returnType: int
    signature: int xmlRemoveRef(xmlDoc *doc, xmlAttr *attr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2774,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - doc
    - ID
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2758
    functionDepth: 2
    functionLinenumber: 2758
    functionLinenumberEnd: 2775
    functionName: xmlGetRefs
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlList
    signature: 'xmlList *

      xmlGetRefs(xmlDoc *doc, const xmlChar *ID)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:2808,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:2811,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2813,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - dtd
    - name
    argTypes:
    - xmlDtd*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2793
    functionDepth: 2
    functionLinenumber: 2793
    functionLinenumberEnd: 2815
    functionName: xmlGetDtdElementDesc
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlFree
    linkageType: ''
    returnType: xmlElement
    signature: 'xmlElement *

      xmlGetDtdElementDesc(xmlDtd *dtd, const xmlChar *name)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/valid.c:2844,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:2850,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:2853,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:2855,1
    - Dst: memset
      Src: /src/libxml2/valid.c:2858,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:2865,1
    - Dst: xmlHashAdd2
      Src: /src/libxml2/valid.c:2872,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2877,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:2881,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2882,1
    - Dst: xmlFreeElement
      Src: /src/libxml2/valid.c:2883,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 3
    argNames:
    - ctxt
    - dtd
    - name
    argTypes:
    - xmlValidCtxtPtr
    - xmlDtdPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2885
      start: 2826
    functionDepth: 6
    functionLinenumber: 2826
    functionLinenumberEnd: 2885
    functionName: xmlGetDtdElementDesc2
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlStrdup
    - xmlFreeElement
    - xmlFree
    - xmlVErrMemory
    - xmlHashAdd2
    - xmlHashCreateDict
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlElementPtr
    signature: xmlElementPtr xmlGetDtdElementDesc2(xmlValidCtxtPtr ctxt, xmlDtdPtr
      dtd, const xmlChar *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:2905,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dtd
    - name
    - prefix
    argTypes:
    - xmlDtd*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2896
    functionDepth: 2
    functionLinenumber: 2896
    functionLinenumberEnd: 2906
    functionName: xmlGetDtdQElementDesc
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlHashLookup2
    linkageType: ''
    returnType: xmlElement
    signature: "xmlElement *\nxmlGetDtdQElementDesc(xmlDtd *dtd, const xmlChar *name,\n\t
      \             const xmlChar *prefix)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:2933,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:2936,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:2938,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 3
    argNames:
    - dtd
    - elem
    - name
    argTypes:
    - xmlDtd*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2940
      start: 2918
    functionDepth: 3
    functionLinenumber: 2918
    functionLinenumberEnd: 2940
    functionName: xmlGetDtdAttrDesc
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 4
    functionsReached:
    - xmlSplitQName4
    - xmlFree
    - xmlHashLookup3
    linkageType: ''
    returnType: xmlAttribute
    signature: 'xmlAttribute *

      xmlGetDtdAttrDesc(xmlDtd *dtd, const xmlChar *elem, const xmlChar *name)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:2962,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - dtd
    - elem
    - name
    - prefix
    argTypes:
    - xmlDtd*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2963
      start: 2953
    functionDepth: 3
    functionLinenumber: 2953
    functionLinenumberEnd: 2963
    functionName: xmlGetDtdQAttrDesc
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 6
    functionsReached:
    - xmlHashLookup3
    linkageType: ''
    returnType: xmlAttribute
    signature: "xmlAttribute *\nxmlGetDtdQAttrDesc(xmlDtd *dtd, const xmlChar *elem,
      const xmlChar *name,\n\t          const xmlChar *prefix)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/valid.c:2981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dtd
    - name
    argTypes:
    - xmlDtd*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2982
      start: 2973
    functionDepth: 2
    functionLinenumber: 2973
    functionLinenumberEnd: 2982
    functionName: xmlGetDtdNotationDesc
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlNotation
    signature: 'xmlNotation *

      xmlGetDtdNotationDesc(xmlDtd *dtd, const xmlChar *name)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3004,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3006,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3009,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - ctxt
    - doc
    - notationName
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3015
      start: 2997
    functionDepth: 7
    functionLinenumber: 2997
    functionLinenumberEnd: 3015
    functionName: xmlValidateNotationUse
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlErrValidNode
    - xmlGetDtdNotationDesc
    linkageType: ''
    returnType: int
    signature: "int xmlValidateNotationUse(xmlValidCtxt *ctxt, xmlDoc *doc,\n                       const
      xmlChar *notationName)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/valid.c:3036,1
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/valid.c:3038,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3055
      start: 3030
    functionDepth: 3
    functionLinenumber: 3030
    functionLinenumberEnd: 3055
    functionName: xmlIsMixedElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlGetDtdElementDesc
    linkageType: ''
    returnType: int
    signature: int xmlIsMixedElement(xmlDoc *doc, const xmlChar *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3064
    functionDepth: 0
    functionLinenumber: 3064
    functionLinenumberEnd: 3085
    functionName: xmlValidNormalizeString
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlValidNormalizeString(xmlChar *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3100,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - value
    - flags
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3102
      start: 3095
    functionDepth: 4
    functionLinenumber: 3095
    functionLinenumberEnd: 3102
    functionName: xmlValidateNameValueInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNameValueInternal(const xmlChar *value, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNameValueInternal
      Src: /src/libxml2/valid.c:3113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3114
      start: 3111
    functionDepth: 5
    functionLinenumber: 3111
    functionLinenumberEnd: 3114
    functionName: xmlValidateNameValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateNameValueInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateNameValue(const xmlChar *value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3131,1
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3141,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - value
    - flags
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3147
      start: 3124
    functionDepth: 4
    functionLinenumber: 3124
    functionLinenumberEnd: 3147
    functionName: xmlValidateNamesValueInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNamesValueInternal(const xmlChar *value, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNamesValueInternal
      Src: /src/libxml2/valid.c:3158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3159
      start: 3156
    functionDepth: 5
    functionLinenumber: 3156
    functionLinenumberEnd: 3159
    functionName: xmlValidateNamesValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateNamesValueInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateNamesValue(const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - value
    - flags
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3178
      start: 3171
    functionDepth: 4
    functionLinenumber: 3171
    functionLinenumberEnd: 3178
    functionName: xmlValidateNmtokenValueInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNmtokenValueInternal(const xmlChar *value, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNmtokenValueInternal
      Src: /src/libxml2/valid.c:3191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3192
      start: 3189
    functionDepth: 5
    functionLinenumber: 3189
    functionLinenumberEnd: 3192
    functionName: xmlValidateNmtokenValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateNmtokenValueInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateNmtokenValue(const xmlChar *value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:3212,1
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3216,1
    - Dst: xmlScanName
      Src: /src/libxml2/valid.c:3228,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - value
    - flags
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3234
      start: 3204
    functionDepth: 4
    functionLinenumber: 3204
    functionLinenumberEnd: 3234
    functionName: xmlValidateNmtokensValueInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlScanName
    linkageType: ''
    returnType: int
    signature: int xmlValidateNmtokensValueInternal(const xmlChar *value, int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNmtokensValueInternal
      Src: /src/libxml2/valid.c:3247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3248
      start: 3245
    functionDepth: 5
    functionLinenumber: 3245
    functionLinenumberEnd: 3248
    functionName: xmlValidateNmtokensValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateNmtokensValueInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateNmtokensValue(const xmlChar *value)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNamesValueInternal
      Src: /src/libxml2/valid.c:3292,1
    - Dst: xmlValidateNameValueInternal
      Src: /src/libxml2/valid.c:3297,1
    - Dst: xmlValidateNmtokensValueInternal
      Src: /src/libxml2/valid.c:3300,1
    - Dst: xmlValidateNmtokenValueInternal
      Src: /src/libxml2/valid.c:3302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - doc
    - type
    - value
    argTypes:
    - xmlDocPtr
    - xmlAttributeType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3307
      start: 3281
    functionDepth: 5
    functionLinenumber: 3281
    functionLinenumberEnd: 3307
    functionName: xmlValidateAttributeValueInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateNmtokensValueInternal
    - xmlValidateNameValueInternal
    - xmlValidateNmtokenValueInternal
    - xmlValidateNamesValueInternal
    linkageType: ''
    returnType: int
    signature: "int xmlValidateAttributeValueInternal(xmlDocPtr doc, xmlAttributeType
      type,\n                                  const xmlChar *value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateAttributeValueInternal
      Src: /src/libxml2/valid.c:3335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - xmlAttributeType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3336
      start: 3333
    functionDepth: 6
    functionLinenumber: 3333
    functionLinenumberEnd: 3336
    functionName: xmlValidateAttributeValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateAttributeValueInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateAttributeValue(xmlAttributeType type, const xmlChar
      *value)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/valid.c:3381,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/valid.c:3385,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3388,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3394,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:3406,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:3408,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:3414,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/valid.c:3417,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3419,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3425,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:3434,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3436,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3442,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3444,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3447,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 69
    argCount: 5
    argNames:
    - ctxt
    - doc
    - name
    - type
    - value
    argTypes:
    - xmlValidCtxtPtr
    - xmlDocPtr
    - xmlChar*
    - xmlAttributeType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3457
      start: 3365
    functionDepth: 7
    functionLinenumber: 3365
    functionLinenumberEnd: 3457
    functionName: xmlValidateAttributeValue2
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - IS_BLANK_CH
    - xmlFree
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlGetDocEntity
    - xmlGetDtdNotationDesc
    linkageType: ''
    returnType: int
    signature: "int xmlValidateAttributeValue2(xmlValidCtxtPtr ctxt, xmlDocPtr doc,\n
      \     const xmlChar *name, xmlAttributeType type, const xmlChar *value)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:3496,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:3504,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:3508,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:3511,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3517,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:3520,1
    - Dst: xmlHashLookup3
      Src: /src/libxml2/valid.c:3523,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:3534,1
    - Dst: xmlValidNormalizeString
      Src: /src/libxml2/valid.c:3537,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3538,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3539,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3545,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:3549,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3552,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 59
    argCount: 5
    argNames:
    - ctxt
    - doc
    - elem
    - name
    - value
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3554
      start: 3482
    functionDepth: 7
    functionLinenumber: 3482
    functionLinenumberEnd: 3554
    functionName: xmlValidCtxtNormalizeAttributeValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlSplitQName4
    - xmlStrdup
    - xmlBuildQName
    - xmlStrEqual
    - xmlFree
    - xmlHashLookup3
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlValidNormalizeString
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlValidCtxtNormalizeAttributeValue(xmlValidCtxt *ctxt,
      xmlDoc *doc,\n\t     xmlNode *elem, const xmlChar *name, const xmlChar *value)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:3590,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3594,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/valid.c:3596,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/valid.c:3598,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:3605,1
    - Dst: xmlValidNormalizeString
      Src: /src/libxml2/valid.c:3608,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 4
    argNames:
    - doc
    - elem
    - name
    - value
    argTypes:
    - xmlDoc*
    - xmlNode*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3610
      start: 3575
    functionDepth: 4
    functionLinenumber: 3575
    functionLinenumberEnd: 3610
    functionName: xmlValidNormalizeAttributeValue
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlBuildQName
    - xmlStrdup
    - xmlFree
    - xmlGetDtdAttrDesc
    - xmlValidNormalizeString
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlValidNormalizeAttributeValue(xmlDoc *doc, xmlNode *elem,\n\t\t\t
      \       const xmlChar *name, const xmlChar *value)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3618
      start: 3612
    functionDepth: 0
    functionLinenumber: 3612
    functionLinenumberEnd: 3618
    functionName: xmlValidateAttributeIdCallback
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlValidateAttributeIdCallback(void *payload, void *data,\n\t
      \                      const xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateAttributeValueInternal
      Src: /src/libxml2/valid.c:3650,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3653,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3664,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:3677,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:3679,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:3685,1
    - Dst: xmlScanIDAttributeDecl
      Src: /src/libxml2/valid.c:3688,1
    - Dst: xmlHashScan3
      Src: /src/libxml2/valid.c:3699,1
    - Dst: xmlErrValidNodeNr
      Src: /src/libxml2/valid.c:3705,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:3711,1
    - Dst: xmlScanIDAttributeDecl
      Src: /src/libxml2/valid.c:3714,1
    - Dst: xmlErrValidNodeNr
      Src: /src/libxml2/valid.c:3717,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3722,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3729,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3736,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3740,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 3
    argNames:
    - ctxt
    - doc
    - attr
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3748
      start: 3639
    functionDepth: 8
    functionLinenumber: 3639
    functionLinenumberEnd: 3748
    functionName: xmlValidateAttributeDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlStrEqual
    - xmlFree
    - xmlVErrMemory
    - xmlScanIDAttributeDecl
    - xmlErrValidNodeNr
    - xmlValidateAttributeValueInternal
    - xmlErrValidNode
    - xmlHashScan3
    linkageType: ''
    returnType: int
    signature: "int xmlValidateAttributeDecl(xmlValidCtxt *ctxt, xmlDoc *doc,\n                         xmlAttribute
      *attr)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3793,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3794,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3796,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3800,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3810,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3811,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3813,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3817,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:3830,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:3832,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:3838,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3842,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3844,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:3851,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3855,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3857,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3864,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 65
    argCount: 3
    argNames:
    - ctxt
    - doc
    - elem
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3866
      start: 3767
    functionDepth: 7
    functionLinenumber: 3767
    functionLinenumberEnd: 3866
    functionName: xmlValidateElementDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlStrEqual
    - xmlFree
    - xmlVErrMemory
    - xmlErrValidNode
    linkageType: ''
    returnType: int
    signature: "int xmlValidateElementDecl(xmlValidCtxt *ctxt, xmlDoc *doc,\n                       xmlElement
      *elem)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:3913,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:3915,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:3918,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:3921,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:3924,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:3927,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:3930,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3937,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/valid.c:3943,1
    - Dst: xmlValidateAttributeValueInternal
      Src: /src/libxml2/valid.c:3946,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3948,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3956,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3957,1
    - Dst: xmlAddID
      Src: /src/libxml2/valid.c:3967,1
    - Dst: xmlAddRef
      Src: /src/libxml2/valid.c:3973,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3983,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:3985,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:3988,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:3996,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4000,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4011,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4015,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4024,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4025,1
    - Dst: xmlValidateAttributeValue2
      Src: /src/libxml2/valid.c:4032,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 85
    argCount: 5
    argNames:
    - ctxt
    - doc
    - elem
    - attr
    - value
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlAttr*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4036
      start: 3894
    functionDepth: 8
    functionLinenumber: 3894
    functionLinenumberEnd: 4036
    functionName: xmlValidateOneAttribute
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlBuildQName
    - xmlAddRef
    - xmlStrEqual
    - xmlFree
    - xmlGetDtdNotationDesc
    - xmlVErrMemory
    - xmlGetDtdQAttrDesc
    - xmlAddID
    - xmlValidateAttributeValueInternal
    - xmlErrValidNode
    - xmlValidateAttributeValue2
    - xmlRemoveID
    linkageType: ''
    returnType: int
    signature: "int xmlValidateOneAttribute(xmlValidCtxt *ctxt, xmlDoc *doc,\n                        xmlNode
      *elem, xmlAttr *attr, const xmlChar *value)"
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:4081,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4083,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4087,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4090,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4093,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4096,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:4100,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4104,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4107,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4110,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/valid.c:4113,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4122,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4126,1
    - Dst: xmlValidateAttributeValueInternal
      Src: /src/libxml2/valid.c:4133,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4136,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4140,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4149,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4151,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4155,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:4169,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/valid.c:4171,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4175,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4179,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4188,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4193,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4197,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4209,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4214,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4218,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4228,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4230,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4234,1
    - Dst: xmlValidateAttributeValue2
      Src: /src/libxml2/valid.c:4243,1
    - Dst: xmlValidateAttributeValue2
      Src: /src/libxml2/valid.c:4246,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 117
    argCount: 6
    argNames:
    - ctxt
    - doc
    - elem
    - prefix
    - ns
    - value
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlChar*
    - xmlNs*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4251
      start: 4065
    functionDepth: 8
    functionLinenumber: 4065
    functionLinenumberEnd: 4251
    functionName: xmlValidateOneNamespace
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlBuildQName
    - xmlStrEqual
    - xmlFree
    - xmlVErrMemory
    - xmlGetDtdQAttrDesc
    - xmlValidateAttributeValueInternal
    - xmlErrValidNode
    - xmlValidateAttributeValue2
    - xmlGetDtdNotationDesc
    linkageType: ''
    returnType: int
    signature: 'int xmlValidateOneNamespace(xmlValidCtxt *ctxt, xmlDoc *doc,

      xmlNode *elem, const xmlChar *prefix, xmlNs *ns, const xmlChar *value)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/valid.c:4274,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - child
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4285
      start: 4262
    functionDepth: 2
    functionLinenumber: 4262
    functionLinenumberEnd: 4285
    functionName: xmlValidateSkipIgnorable
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlIsBlankNode
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlValidateSkipIgnorable(xmlNodePtr child)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateSkipIgnorable
      Src: /src/libxml2/valid.c:4301,1
    - Dst: vstateVPush
      Src: /src/libxml2/valid.c:4338,1
    - Dst: xmlValidateSkipIgnorable
      Src: /src/libxml2/valid.c:4359,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4380,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4387,1
    - Dst: xmlValidateSkipIgnorable
      Src: /src/libxml2/valid.c:4397,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4416,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4426,1
    - Dst: vstateVPush
      Src: /src/libxml2/valid.c:4438,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4452,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:4462,1
    - Dst: vstateVPop
      Src: /src/libxml2/valid.c:4493,1
    - Dst: vstateVPop
      Src: /src/libxml2/valid.c:4502,1
    - Dst: vstateVPop
      Src: /src/libxml2/valid.c:4591,1
    - Dst: vstateVPop
      Src: /src/libxml2/valid.c:4602,1
    CyclomaticComplexity: 115
    EdgeCount: 115
    ICount: 251
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4610
      start: 4296
    functionDepth: 8
    functionLinenumber: 4296
    functionLinenumberEnd: 4610
    functionName: xmlValidateElementType
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - vstateVPop
    - vstateVPush
    - xmlStrEqual
    - xmlValidateSkipIgnorable
    linkageType: ''
    returnType: int
    signature: int xmlValidateElementType(xmlValidCtxtPtr ctxt)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: strcat
      Src: /src/libxml2/valid.c:4628,1
    - Dst: strlen
      Src: /src/libxml2/valid.c:4631,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4634,1
    - Dst: xmlStrlen
      Src: /src/libxml2/valid.c:4639,1
    - Dst: xmlStrlen
      Src: /src/libxml2/valid.c:4642,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4645,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4649,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4650,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4653,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4655,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/valid.c:4659,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4664,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4666,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4675,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4677,1
    - Dst: strcat
      Src: /src/libxml2/valid.c:4692,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 67
    argCount: 4
    argNames:
    - buf
    - size
    - node
    - glob
    argTypes:
    - char*
    - int
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4693
      start: 4622
    functionDepth: 2
    functionLinenumber: 4622
    functionLinenumberEnd: 4693
    functionName: xmlSnprintfElements
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlIsBlankNode
    - strlen
    - xmlStrlen
    - strcat
    linkageType: ''
    returnType: void
    signature: void xmlSnprintfElements(char *buf, int size, xmlNodePtr node, int
      glob)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidBuildContentModel
      Src: /src/libxml2/valid.c:4725,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/valid.c:4731,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/valid.c:4737,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4739,1
    - Dst: nodeVPush
      Src: /src/libxml2/valid.c:4752,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/valid.c:4761,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:4774,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4777,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/valid.c:4781,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:4783,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/valid.c:4785,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4792,1
    - Dst: nodeVPop
      Src: /src/libxml2/valid.c:4798,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/valid.c:4804,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4806,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/valid.c:4808,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:4819,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4821,1
    - Dst: xmlValidateElementType
      Src: /src/libxml2/valid.c:4837,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:4841,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4842,1
    - Dst: nodeVPush
      Src: /src/libxml2/valid.c:4862,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/valid.c:4863,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/valid.c:4872,1
    - Dst: xmlMalloc
      Src: /src/libxml2/valid.c:4881,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:4883,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/valid.c:4884,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:4904,1
    - Dst: nodeVPop
      Src: /src/libxml2/valid.c:4915,1
    - Dst: xmlValidateElementType
      Src: /src/libxml2/valid.c:4932,1
    - Dst: xmlSnprintfElementContent
      Src: /src/libxml2/valid.c:4941,1
    - Dst: xmlSnprintfElements
      Src: /src/libxml2/valid.c:4945,1
    - Dst: xmlSnprintfElements
      Src: /src/libxml2/valid.c:4948,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4951,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4955,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4961,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:4965,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:4982,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:4987,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:4994,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 210
    argCount: 5
    argNames:
    - ctxt
    - child
    - elemDecl
    - warn
    - parent
    argTypes:
    - xmlValidCtxtPtr
    - xmlNodePtr
    - xmlElementPtr
    - int
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4999
      start: 4706
    functionDepth: 9
    functionLinenumber: 4706
    functionLinenumberEnd: 4999
    functionName: xmlValidateElementContent
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlBuildQName
    - xmlFreeNodeList
    - xmlStrdup
    - xmlRegexpIsDeterminist
    - xmlFree
    - xmlIsBlankNode
    - xmlVErrMemory
    - xmlSnprintfElements
    - xmlValidateElementType
    - xmlErrValidNode
    - xmlRegNewExecCtxt
    - xmlMalloc
    - xmlValidBuildContentModel
    - xmlRegExecPushString
    - nodeVPop
    - xmlSnprintfElementContent
    - nodeVPush
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlValidateElementContent(xmlValidCtxtPtr ctxt, xmlNodePtr child,\n
      \      xmlElementPtr elemDecl, int warn, xmlNodePtr parent)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: nodeVPush
      Src: /src/libxml2/valid.c:5031,1
    - Dst: nodeVPop
      Src: /src/libxml2/valid.c:5053,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5063,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 3
    argNames:
    - ctxt
    - doc
    - elem
    argTypes:
    - xmlValidCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5067
      start: 5009
    functionDepth: 5
    functionLinenumber: 5009
    functionLinenumberEnd: 5067
    functionName: xmlValidateOneCdataElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - nodeVPop
    - nodeVPush
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlValidateOneCdataElement(xmlValidCtxtPtr ctxt, xmlDocPtr doc,\n
      \                          xmlNodePtr elem)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName3
      Src: /src/libxml2/valid.c:5083,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5088,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5094,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:5099,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/valid.c:5110,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5111,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/valid.c:5117,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5118,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:5123,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 36
    argCount: 3
    argNames:
    - ctxt
    - cont
    - qname
    argTypes:
    - xmlValidCtxtPtr
    - xmlElementContentPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5132
      start: 5078
    functionDepth: 1
    functionLinenumber: 5078
    functionLinenumberEnd: 5132
    functionName: xmlValidateCheckMixed
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName3
    - xmlStrncmp
    - xmlStrEqual
    - xmlErrValid
    linkageType: ''
    returnType: int
    signature: "int xmlValidateCheckMixed(xmlValidCtxtPtr ctxt,\n\t              xmlElementContentPtr
      cont, const xmlChar *qname)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/valid.c:5164,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/valid.c:5167,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/valid.c:5180,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/valid.c:5182,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5188,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 27
    argCount: 4
    argNames:
    - ctxt
    - doc
    - elem
    - extsubset
    argTypes:
    - xmlValidCtxtPtr
    - xmlDocPtr
    - xmlNodePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5194
      start: 5145
    functionDepth: 7
    functionLinenumber: 5145
    functionLinenumberEnd: 5194
    functionName: xmlValidGetElemDecl
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlErrValidNode
    - xmlGetDtdQElementDesc
    linkageType: ''
    returnType: xmlElementPtr
    signature: "xmlElementPtr xmlValidGetElemDecl(xmlValidCtxtPtr ctxt, xmlDocPtr
      doc,\n\t            xmlNodePtr elem, int *extsubset)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5233,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5247,1
    - Dst: xmlValidateCheckMixed
      Src: /src/libxml2/valid.c:5253,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5256,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/valid.c:5271,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5273,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5277,1
    - Dst: xmlValidGetElemDecl
      Src: /src/libxml2/valid.c:5290,1
    - Dst: vstateVPush
      Src: /src/libxml2/valid.c:5291,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 48
    argCount: 4
    argNames:
    - ctxt
    - doc
    - elem
    - qname
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5293
      start: 5208
    functionDepth: 8
    functionLinenumber: 5208
    functionLinenumberEnd: 5293
    functionName: xmlValidatePushElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlValidateCheckMixed
    - vstateVPush
    - xmlValidGetElemDecl
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlRegExecPushString
    linkageType: ''
    returnType: int
    signature: "int xmlValidatePushElement(xmlValidCtxt *ctxt, xmlDoc *doc,\n                       xmlNode
      *elem, const xmlChar *qname)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5328,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5342,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5343,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 3
    argNames:
    - ctxt
    - data
    - len
    argTypes:
    - xmlValidCtxt*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5364
      start: 5305
    functionDepth: 7
    functionLinenumber: 5305
    functionLinenumberEnd: 5364
    functionName: xmlValidatePushCData
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - IS_BLANK_CH
    - xmlErrValidNode
    linkageType: ''
    returnType: int
    signature: int xmlValidatePushCData(xmlValidCtxt *ctxt, const xmlChar *data, int
      len)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/valid.c:5398,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5401,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5403,1
    - Dst: vstateVPop
      Src: /src/libxml2/valid.c:5418,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5421
      start: 5377
    functionDepth: 7
    functionLinenumber: 5377
    functionLinenumberEnd: 5421
    functionName: xmlValidatePopElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - vstateVPop
    - xmlRegExecPushString
    - xmlErrValidNode
    - xmlVErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlValidatePopElement(xmlValidCtxt *ctxt, xmlDoc *doc ATTRIBUTE_UNUSED,\n
      \                     xmlNode *elem ATTRIBUTE_UNUSED,\n\t\t      const xmlChar
      *qname ATTRIBUTE_UNUSED)"
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5470,1
    - Dst: xmlValidGetElemDecl
      Src: /src/libxml2/valid.c:5478,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5490,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5496,1
    - Dst: xmlValidateOneCdataElement
      Src: /src/libxml2/valid.c:5510,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5512,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:5527,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5530,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5536,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5541,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:5546,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5554,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5561,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5565,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:5569,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5577,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5600,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5603,1
    - Dst: xmlValidateElementContent
      Src: /src/libxml2/valid.c:5616,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5630,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5639,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5644,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5653,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5665,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5686,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5691,1
    - Dst: xmlErrValidWarning
      Src: /src/libxml2/valid.c:5697,1
    - Dst: xmlErrValidWarning
      Src: /src/libxml2/valid.c:5704,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 191
    argCount: 3
    argNames:
    - ctxt
    - doc
    - elem
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5716
      start: 5444
    functionDepth: 10
    functionLinenumber: 5444
    functionLinenumberEnd: 5716
    functionName: xmlValidateOneElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlBuildQName
    - IS_BLANK_CH
    - xmlStrEqual
    - xmlValidGetElemDecl
    - xmlFree
    - xmlVErrMemory
    - xmlValidateElementContent
    - xmlErrValidWarning
    - xmlErrValidNode
    - xmlErrValid
    - xmlValidateOneCdataElement
    linkageType: ''
    returnType: int
    signature: "int xmlValidateOneElement(xmlValidCtxt *ctxt, xmlDoc *doc,\n                      xmlNode
      *elem)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/valid.c:5741,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:5743,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5757,1
    - Dst: xmlBuildQName
      Src: /src/libxml2/valid.c:5762,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5764,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5767,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5769,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5773,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:5774,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5776,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 33
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5784
      start: 5734
    functionDepth: 7
    functionLinenumber: 5734
    functionLinenumberEnd: 5784
    functionName: xmlValidateRoot
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 4
    functionsReached:
    - xmlBuildQName
    - xmlStrEqual
    - xmlFree
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlErrValid
    - xmlDocGetRootElement
    linkageType: ''
    returnType: int
    signature: int xmlValidateRoot(xmlValidCtxt *ctxt, xmlDoc *doc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateOneElement
      Src: /src/libxml2/valid.c:5810,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:5816,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/valid.c:5818,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5820,1
    - Dst: xmlValidateOneAttribute
      Src: /src/libxml2/valid.c:5823,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5824,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/valid.c:5832,1
    - Dst: xmlValidateOneNamespace
      Src: /src/libxml2/valid.c:5835,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 3
    argNames:
    - ctxt
    - doc
    - root
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5859
      start: 5796
    functionDepth: 11
    functionLinenumber: 5796
    functionLinenumberEnd: 5859
    functionName: xmlValidateElement
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlValidateOneElement
    - xmlFree
    - xmlValidateOneAttribute
    - xmlVErrMemory
    - xmlValidateOneNamespace
    - xmlNodeListGetString
    linkageType: ''
    returnType: int
    signature: int xmlValidateElement(xmlValidCtxt *ctxt, xmlDoc *doc, xmlNode *root)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:5880,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5882,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5888,1
    - Dst: xmlGetID
      Src: /src/libxml2/valid.c:5891,1
    - Dst: xmlErrValidNodeNr
      Src: /src/libxml2/valid.c:5893,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5901,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5903,1
    - Dst: xmlGetID
      Src: /src/libxml2/valid.c:5905,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5907,1
    - Dst: xmlStrdup
      Src: /src/libxml2/valid.c:5915,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:5917,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5924,1
    - Dst: xmlGetID
      Src: /src/libxml2/valid.c:5927,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:5929,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/valid.c:5937,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:5939,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 66
    argCount: 3
    argNames:
    - ref
    - ctxt
    - name
    argTypes:
    - xmlRefPtr
    - xmlValidCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5941
      start: 5866
    functionDepth: 7
    functionLinenumber: 5866
    functionLinenumberEnd: 5941
    functionName: xmlValidateRef
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - IS_BLANK_CH
    - xmlFree
    - xmlVErrMemory
    - xmlErrValidNodeNr
    - xmlErrValidNode
    - xmlGetID
    linkageType: ''
    returnType: void
    signature: "void xmlValidateRef(xmlRefPtr ref, xmlValidCtxtPtr ctxt,\n\t                   const
      xmlChar *name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateRef
      Src: /src/libxml2/valid.c:5952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - user
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5954
      start: 5948
    functionDepth: 8
    functionLinenumber: 5948
    functionLinenumberEnd: 5954
    functionName: xmlWalkValidateList
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlValidateRef
    linkageType: ''
    returnType: int
    signature: int xmlWalkValidateList(const void *data, void *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlListWalk
      Src: /src/libxml2/valid.c:5972,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - payload
    - data
    - name
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5974
      start: 5961
    functionDepth: 1
    functionLinenumber: 5961
    functionLinenumberEnd: 5974
    functionName: xmlValidateCheckRefCallback
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlListWalk
    linkageType: ''
    returnType: void
    signature: void xmlValidateCheckRefCallback(void *payload, void *data, const xmlChar
      *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6000,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:6027,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6033
      start: 5991
    functionDepth: 2
    functionLinenumber: 5991
    functionLinenumberEnd: 6033
    functionName: xmlValidateDocumentFinal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlHashScan
    - xmlErrValid
    linkageType: ''
    returnType: int
    signature: int xmlValidateDocumentFinal(xmlValidCtxt *ctxt, xmlDoc *doc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/valid.c:6064,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/valid.c:6068,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/valid.c:6072,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/valid.c:6074,1
    - Dst: xmlValidateElement
      Src: /src/libxml2/valid.c:6075,1
    - Dst: xmlValidateDocumentFinal
      Src: /src/libxml2/valid.c:6076,1
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/valid.c:6082,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/valid.c:6086,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 3
    argNames:
    - ctxt
    - doc
    - dtd
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    - xmlDtd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6091
      start: 6048
    functionDepth: 12
    functionLinenumber: 6048
    functionLinenumberEnd: 6091
    functionName: xmlValidateDtd
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlValidateElement
    - xmlFreeIDTable
    - xmlFreeRefTable
    - xmlValidateRoot
    - xmlDocGetRootElement
    - xmlValidateDocumentFinal
    linkageType: ''
    returnType: int
    signature: int xmlValidateDtd(xmlValidCtxt *ctxt, xmlDoc *doc, xmlDtd *dtd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/valid.c:6110,1
    - Dst: xmlValidateDtd
      Src: /src/libxml2/valid.c:6112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - doc
    - dtd
    argTypes:
    - xmlParserCtxt*
    - xmlDoc*
    - xmlDtd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6113
      start: 6105
    functionDepth: 13
    functionLinenumber: 6105
    functionLinenumberEnd: 6113
    functionName: xmlCtxtValidateDtd
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateDtd
    - xmlCtxtReset
    linkageType: ''
    returnType: int
    signature: int xmlCtxtValidateDtd(xmlParserCtxt *ctxt, xmlDoc *doc, xmlDtd *dtd)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateNotationUse
      Src: /src/libxml2/valid.c:6128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6134
      start: 6115
    functionDepth: 8
    functionLinenumber: 6115
    functionLinenumberEnd: 6134
    functionName: xmlValidateNotationCallback
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlValidateNotationUse
    linkageType: ''
    returnType: void
    signature: "void xmlValidateNotationCallback(void *payload, void *data,\n\t                    const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6152,1
    - Dst: xmlSplitQName4
      Src: /src/libxml2/valid.c:6158,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:6160,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:6165,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:6168,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/valid.c:6172,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:6175,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:6178,1
    - Dst: xmlErrValidNode
      Src: /src/libxml2/valid.c:6184,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6190
      start: 6136
    functionDepth: 7
    functionLinenumber: 6136
    functionLinenumberEnd: 6190
    functionName: xmlValidateAttributeCallback
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName4
    - xmlHashLookup2
    - xmlFree
    - xmlVErrMemory
    - xmlErrValidNode
    - xmlErrValid
    linkageType: ''
    returnType: void
    signature: "void xmlValidateAttributeCallback(void *payload, void *data,\n\t                     const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:6224,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:6228,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:6233,1
    - Dst: xmlHashScan
      Src: /src/libxml2/valid.c:6237,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6240
      start: 6210
    functionDepth: 2
    functionLinenumber: 6210
    functionLinenumberEnd: 6240
    functionName: xmlValidateDtdFinal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: int xmlValidateDtdFinal(xmlValidCtxt *ctxt, xmlDoc *doc)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6259,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/valid.c:6271,1
    - Dst: xmlVErrMemory
      Src: /src/libxml2/valid.c:6273,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6276,1
    - Dst: xmlLoadResource
      Src: /src/libxml2/valid.c:6286,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:6290,1
    - Dst: xmlCtxtParseDtd
      Src: /src/libxml2/valid.c:6294,1
    - Dst: xmlParseDTD
      Src: /src/libxml2/valid.c:6298,1
    - Dst: xmlFree
      Src: /src/libxml2/valid.c:6302,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6305,1
    - Dst: xmlErrValid
      Src: /src/libxml2/valid.c:6309,1
    - Dst: xmlFreeIDTable
      Src: /src/libxml2/valid.c:6318,1
    - Dst: xmlFreeRefTable
      Src: /src/libxml2/valid.c:6322,1
    - Dst: xmlValidateDtdFinal
      Src: /src/libxml2/valid.c:6325,1
    - Dst: xmlValidateRoot
      Src: /src/libxml2/valid.c:6326,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/valid.c:6328,1
    - Dst: xmlValidateElement
      Src: /src/libxml2/valid.c:6329,1
    - Dst: xmlValidateDocumentFinal
      Src: /src/libxml2/valid.c:6330,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 55
    argCount: 3
    argNames:
    - ctxt
    - vctxt
    - doc
    argTypes:
    - xmlParserCtxtPtr
    - xmlValidCtxtPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6332
      start: 6250
    functionDepth: 14
    functionLinenumber: 6250
    functionLinenumberEnd: 6332
    functionName: xmlValidateDocumentInternal
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached:
    - xmlLoadResource
    - xmlValidateElement
    - xmlFreeIDTable
    - xmlFreeRefTable
    - xmlFree
    - xmlValidateDtdFinal
    - xmlVErrMemory
    - xmlErrValid
    - xmlBuildURISafe
    - xmlValidateRoot
    - xmlDocGetRootElement
    - xmlValidateDocumentFinal
    - xmlCtxtParseDtd
    - xmlParseDTD
    linkageType: ''
    returnType: int
    signature: "int xmlValidateDocumentInternal(xmlParserCtxtPtr ctxt, xmlValidCtxtPtr
      vctxt,\n                            xmlDocPtr doc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateDocumentInternal
      Src: /src/libxml2/valid.c:6350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vctxt
    - doc
    argTypes:
    - xmlValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6351
      start: 6348
    functionDepth: 15
    functionLinenumber: 6348
    functionLinenumberEnd: 6351
    functionName: xmlValidateDocument
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 3
    functionsReached:
    - xmlValidateDocumentInternal
    linkageType: ''
    returnType: int
    signature: int xmlValidateDocument(xmlValidCtxt *vctxt, xmlDoc *doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/valid.c:6372,1
    - Dst: xmlValidateDocumentInternal
      Src: /src/libxml2/valid.c:6374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlParserCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6375
      start: 6367
    functionDepth: 15
    functionLinenumber: 6367
    functionLinenumberEnd: 6375
    functionName: xmlCtxtValidateDocument
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 1
    functionsReached:
    - xmlValidateDocumentInternal
    - xmlCtxtReset
    linkageType: ''
    returnType: int
    signature: int xmlCtxtValidateDocument(xmlParserCtxt *ctxt, xmlDoc *doc)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:6406,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:6411,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/valid.c:6415,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/valid.c:6416,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/valid.c:6419,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/valid.c:6420,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 4
    argNames:
    - ctree
    - names
    - len
    - max
    argTypes:
    - xmlElementContent*
    - xmlChar**
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6425
      start: 6393
    functionDepth: 1
    functionLinenumber: 6393
    functionLinenumberEnd: 6425
    functionName: xmlValidGetPotentialChildren
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    - xmlValidGetPotentialChildren
    linkageType: ''
    returnType: int
    signature: "int xmlValidGetPotentialChildren(xmlElementContent *ctree,\n                             const
      xmlChar **names,\n                             int *len, int max)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6432
      start: 6430
    functionDepth: 0
    functionLinenumber: 6430
    functionLinenumberEnd: 6432
    functionName: xmlNoValidityErr
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlNoValidityErr(void *ctx ATTRIBUTE_UNUSED,\n                                const
      char *msg ATTRIBUTE_UNUSED, ...)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/valid.c:6485,1
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/valid.c:6495,1
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/valid.c:6498,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/valid.c:6513,1
    - Dst: xmlValidGetPotentialChildren
      Src: /src/libxml2/valid.c:6532,1
    - Dst: xmlValidateOneElement
      Src: /src/libxml2/valid.c:6537,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/valid.c:6541,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/valid.c:6559,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 4
    argNames:
    - prev
    - next
    - names
    - max
    argTypes:
    - xmlNode*
    - xmlNode*
    - xmlChar**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6562
      start: 6459
    functionDepth: 11
    functionLinenumber: 6459
    functionLinenumberEnd: 6562
    functionName: xmlValidGetValidElements
    functionSourceFile: /src/libxml2/valid.c
    functionUses: 2
    functionsReached:
    - xmlGetDtdElementDesc
    - xmlNewDocNode
    - xmlValidateOneElement
    - xmlStrEqual
    - xmlValidGetPotentialChildren
    - xmlFreeNode
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlValidGetValidElements(xmlNode *prev, xmlNode *next, const xmlChar
      **names,\n                         int max)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: isnan
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: isnan(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: IS_WSP_REPLACE_CH
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_WSP_REPLACE_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: IS_WSP_SPACE_CH
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_WSP_SPACE_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: IS_WSP_BLANK_CH
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_WSP_BLANK_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlschemastypes.c:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 199
    functionName: xmlSchemaTypeErrMemory
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSchemaTypeErrMemory(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:217,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaValType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 224
    functionName: xmlSchemaNewValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlSchemaValPtr
    signature: xmlSchemaValPtr xmlSchemaNewValue(xmlSchemaValType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewFacet
      Src: /src/libxml2/xmlschemastypes.c:233,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:238,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:240,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:243,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:245,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/xmlschemastypes.c:248,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:251,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - value
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 255
    functionName: xmlSchemaNewMinLengthFacet
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeFacet
    - xmlFree
    - xmlSchemaNewValue
    - xmlMalloc
    - snprintf
    - xmlSchemaNewFacet
    linkageType: ''
    returnType: xmlSchemaFacetPtr
    signature: xmlSchemaFacetPtr xmlSchemaNewMinLengthFacet(int value)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:268,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:270,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:273,1
    - Dst: xmlSchemaNewMinLengthFacet
      Src: /src/libxml2/xmlschemastypes.c:318,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/xmlschemastypes.c:325,1
    - Dst: xmlSchemaFreeType
      Src: /src/libxml2/xmlschemastypes.c:327,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 58
    argCount: 3
    argNames:
    - name
    - type
    - baseType
    argTypes:
    - char*
    - xmlSchemaValType
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 263
    functionDepth: 4
    functionLinenumber: 263
    functionLinenumberEnd: 332
    functionName: xmlSchemaInitBasicType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeType
    - xmlMalloc
    - xmlSchemaTypeErrMemory
    - xmlSchemaNewMinLengthFacet
    - xmlHashAddEntry2
    - memset
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaInitBasicType(const char *name, xmlSchemaValType
      type,\n\t\t       xmlSchemaTypePtr baseType)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - decimal
    argTypes:
    - xmlSchemaValDecimal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 339
    functionName: xmlSchemaValDecimalGetFractionalPart
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaValDecimalGetFractionalPart(const xmlSchemaValDecimal *decimal)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValDecimalGetFractionalPart
      Src: /src/libxml2/xmlschemastypes.c:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - decimal
    argTypes:
    - xmlSchemaValDecimal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 345
    functionName: xmlSchemaValDecimalIsInteger
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValDecimalGetFractionalPart
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValDecimalIsInteger(const xmlSchemaValDecimal *decimal)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValDecimalIsInteger
      Src: /src/libxml2/xmlschemastypes.c:350,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - decimal
    argTypes:
    - xmlSchemaValDecimal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 362
    functionName: xmlSchemaValDecimalGetSignificantDigitCount
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValDecimalIsInteger
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long xmlSchemaValDecimalGetSignificantDigitCount(const xmlSchemaValDecimal
      *decimal)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmlschemastypes.c:375,1
    - Dst: strcmp
      Src: /src/libxml2/xmlschemastypes.c:376,1
    - Dst: strcmp
      Src: /src/libxml2/xmlschemastypes.c:403,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - xmlSchemaValDecimal*
    - xmlSchemaValDecimal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 404
    functionName: xmlSchemaValDecimalCompare
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValDecimalCompare(const xmlSchemaValDecimal *lhs, const
      xmlSchemaValDecimal *rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:412,1
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - xmlSchemaValDecimal*
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 416
    functionName: xmlSchemaValDecimalCompareWithInteger
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - snprintf
    - xmlSchemaValDecimalCompare
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValDecimalCompareWithInteger(const xmlSchemaValDecimal
      *lhs, long rhs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:463,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:465,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 457
    functionDepth: 3
    functionLinenumber: 457
    functionLinenumberEnd: 473
    functionName: xmlSchemaAddParticle
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlSchemaTypeErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaParticlePtr
    signature: xmlSchemaParticlePtr xmlSchemaAddParticle(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeType
      Src: /src/libxml2/xmlschemastypes.c:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - type
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 475
    functionDepth: 1
    functionLinenumber: 475
    functionLinenumberEnd: 478
    functionName: xmlSchemaFreeTypeEntry
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeType
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeTypeEntry(void *type, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeWildcard
      Src: /src/libxml2/xmlschemastypes.c:492,1
    - Dst: xmlSchemaFreeWildcard
      Src: /src/libxml2/xmlschemastypes.c:499,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:501,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:505,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:507,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemastypes.c:513,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 483
    functionDepth: 2
    functionLinenumber: 483
    functionLinenumberEnd: 516
    functionName: xmlSchemaCleanupTypesInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeWildcard
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaCleanupTypesInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/xmlschemastypes.c:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 520
    functionDepth: 1
    functionLinenumber: 520
    functionLinenumberEnd: 524
    functionName: xmlInitSchemasTypesInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlInitMutex
    linkageType: ''
    returnType: void
    signature: void xmlInitSchemasTypesInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/xmlschemastypes.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 530
    functionName: xmlCleanupSchemasTypesInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupSchemasTypesInternal(void)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlschemastypes.c:540,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlschemastypes.c:542,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlschemastypes.c:544,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/xmlschemastypes.c:562,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:564,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:571,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemastypes.c:587,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:593,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:595,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:598,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemastypes.c:602,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:609,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:611,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:614,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:622,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:624,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:627,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:632,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:640,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:645,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:650,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:655,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:660,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:665,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:670,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:675,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:680,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:685,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:690,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:695,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:700,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:705,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:710,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:715,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:721,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:725,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:730,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:739,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:745,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:751,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:756,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:760,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:764,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:769,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:775,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:781,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:786,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:791,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:796,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:801,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:805,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:810,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:815,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:820,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:825,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:830,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:835,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:839,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:844,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:853,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:860,1
    - Dst: xmlSchemaInitBasicType
      Src: /src/libxml2/xmlschemastypes.c:868,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlschemastypes.c:876,1
    - Dst: xmlSchemaCleanupTypesInternal
      Src: /src/libxml2/xmlschemastypes.c:880,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlschemastypes.c:881,1
    CyclomaticComplexity: 106
    EdgeCount: 106
    ICount: 261
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 537
    functionDepth: 5
    functionLinenumber: 537
    functionLinenumberEnd: 883
    functionName: xmlSchemaInitTypes
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 3
    functionsReached:
    - xmlMutexUnlock
    - xmlSchemaCleanupTypesInternal
    - xmlSchemaAddParticle
    - xmlMalloc
    - xmlSchemaTypeErrMemory
    - xmlMutexLock
    - xmlSchemaInitBasicType
    - xmlInitParser
    - xmlHashCreate
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSchemaInitTypes(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/xmlschemastypes.c:896,1
    - Dst: xmlSchemaCleanupTypesInternal
      Src: /src/libxml2/xmlschemastypes.c:898,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/xmlschemastypes.c:901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 894
    functionDepth: 3
    functionLinenumber: 894
    functionLinenumberEnd: 902
    functionName: xmlSchemaCleanupTypes
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 3
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    - xmlSchemaCleanupTypesInternal
    linkageType: ''
    returnType: void
    signature: void xmlSchemaCleanupTypes(void)
  - BBCount: 27
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 41
    argCount: 2
    argNames:
    - type
    - facetType
    argTypes:
    - xmlSchemaType*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 913
    functionDepth: 0
    functionLinenumber: 913
    functionLinenumberEnd: 980
    functionName: xmlSchemaIsBuiltInTypeFacet
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsBuiltInTypeFacet(xmlSchemaType *type, int facetType)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/xmlschemastypes.c:992,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 99
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaValType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 989
    functionDepth: 6
    functionLinenumber: 989
    functionLinenumberEnd: 1091
    functionName: xmlSchemaGetBuiltInType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaInitTypes
    linkageType: ''
    returnType: xmlSchemaType
    signature: 'xmlSchemaType *

      xmlSchemaGetBuiltInType(xmlSchemaValType type)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - prev
    - cur
    argTypes:
    - xmlSchemaVal*
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1107
    functionName: xmlSchemaValueAppend
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValueAppend(xmlSchemaVal *prev, xmlSchemaVal *cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1116
    functionDepth: 0
    functionLinenumber: 1116
    functionLinenumberEnd: 1122
    functionName: xmlSchemaValueGetNext
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaVal
    signature: 'xmlSchemaVal *

      xmlSchemaValueGetNext(xmlSchemaVal *cur)'
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1131
    functionDepth: 0
    functionLinenumber: 1131
    functionLinenumberEnd: 1154
    functionName: xmlSchemaValueGetAsString
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaValueGetAsString(xmlSchemaVal *val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1162
    functionDepth: 0
    functionLinenumber: 1162
    functionLinenumberEnd: 1168
    functionName: xmlSchemaValueGetAsBoolean
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValueGetAsBoolean(xmlSchemaVal *val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:1189,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:1193,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - xmlSchemaValType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1181
    functionDepth: 0
    functionLinenumber: 1181
    functionLinenumberEnd: 1197
    functionName: xmlSchemaNewStringValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlSchemaVal
    signature: "xmlSchemaVal *\nxmlSchemaNewStringValue(xmlSchemaValType type,\n\t\t\tconst
      xmlChar *value)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:1213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - name
    - ns
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1207
    functionDepth: 1
    functionLinenumber: 1207
    functionLinenumberEnd: 1221
    functionName: xmlSchemaNewNOTATIONValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaNewValue
    linkageType: ''
    returnType: xmlSchemaVal
    signature: "xmlSchemaVal *\nxmlSchemaNewNOTATIONValue(const xmlChar *name,\n\t\t\t
      \ const xmlChar *ns)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:1237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - namespaceName
    - localName
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1231
    functionDepth: 1
    functionLinenumber: 1231
    functionLinenumberEnd: 1244
    functionName: xmlSchemaNewQNameValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaNewValue
    linkageType: ''
    returnType: xmlSchemaVal
    signature: "xmlSchemaVal *\nxmlSchemaNewQNameValue(const xmlChar *namespaceName,\n\t\t
      \      const xmlChar *localName)"
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1273,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1278,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1280,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1284,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1288,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1305,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:1312,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 60
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1251
    functionDepth: 0
    functionLinenumber: 1251
    functionLinenumberEnd: 1314
    functionName: xmlSchemaFreeValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 3
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeValue(xmlSchemaVal *value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/xmlschemastypes.c:1325,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/xmlschemastypes.c:1329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - name
    - ns
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1323
    functionDepth: 6
    functionLinenumber: 1323
    functionLinenumberEnd: 1330
    functionName: xmlSchemaGetPredefinedType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 5
    functionsReached:
    - xmlHashLookup2
    - xmlSchemaInitTypes
    linkageType: ''
    returnType: xmlSchemaType
    signature: 'xmlSchemaType *

      xmlSchemaGetPredefinedType(const xmlChar *name, const xmlChar *ns)'
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1339
    functionDepth: 0
    functionLinenumber: 1339
    functionLinenumberEnd: 1354
    functionName: xmlSchemaGetBuiltInListSimpleTypeItemType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaType
    signature: 'xmlSchemaType *

      xmlSchemaGetBuiltInListSimpleTypeItemType(xmlSchemaType *type)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1362
    functionDepth: 0
    functionLinenumber: 1362
    functionLinenumberEnd: 1364
    functionName: IS_TZO_CHAR
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_TZO_CHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - yr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1365
    functionDepth: 0
    functionLinenumber: 1365
    functionLinenumberEnd: 1366
    functionName: VALID_YEAR
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_YEAR(yr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mon
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1366
    functionDepth: 0
    functionLinenumber: 1366
    functionLinenumberEnd: 1367
    functionName: VALID_MONTH
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MONTH(mon)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - day
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1369
    functionName: VALID_DAY
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DAY(day)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - hr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1369
    functionDepth: 0
    functionLinenumber: 1369
    functionLinenumberEnd: 1370
    functionName: VALID_HOUR
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_HOUR(hr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - min
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1370
    functionDepth: 0
    functionLinenumber: 1370
    functionLinenumberEnd: 1371
    functionName: VALID_MIN
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MIN(min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - sec
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1371
    functionDepth: 0
    functionLinenumber: 1371
    functionLinenumberEnd: 1372
    functionName: VALID_SEC
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_SEC(sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - tzo
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1372
    functionDepth: 0
    functionLinenumber: 1372
    functionLinenumberEnd: 1373
    functionName: VALID_TZO
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_TZO(tzo)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1373
    functionDepth: 0
    functionLinenumber: 1373
    functionLinenumberEnd: 1375
    functionName: IS_LEAP
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_LEAP(y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - yr
    - ','
    - mon
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1381
    functionDepth: 0
    functionLinenumber: 1381
    functionLinenumberEnd: 1383
    functionName: MAX_DAYINMONTH
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX_DAYINMONTH(yr,mon)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1388
    functionName: VALID_MDAY
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_MDAY(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1389
    functionDepth: 0
    functionLinenumber: 1389
    functionLinenumberEnd: 1391
    functionName: VALID_DATE
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DATE(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1392
    functionDepth: 0
    functionLinenumber: 1392
    functionLinenumberEnd: 1394
    functionName: VALID_END_OF_DAY
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_END_OF_DAY(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1399
    functionName: VALID_TIME
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_TIME(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1400
    functionDepth: 0
    functionLinenumber: 1400
    functionLinenumberEnd: 1402
    functionName: VALID_DATETIME
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALID_DATETIME(dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - day
    - ','
    - month
    - ','
    - year
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1415
    functionDepth: 0
    functionLinenumber: 1415
    functionLinenumberEnd: 1419
    functionName: DAY_IN_YEAR
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DAY_IN_YEAR(day, month, year)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VALID_YEAR
      Src: /src/libxml2/xmlschemastypes.c:1467,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 26
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - xmlSchemaValDatePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1472
      start: 1430
    functionDepth: 1
    functionLinenumber: 1430
    functionLinenumberEnd: 1472
    functionName: _xmlSchemaParseGYear
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - VALID_YEAR
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaParseGYear (xmlSchemaValDatePtr dt, const xmlChar **str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - invalid
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1491
    functionName: PARSE_2_DIGITS
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_2_DIGITS(num, cur, invalid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - invalid
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1516
      start: 1503
    functionDepth: 0
    functionLinenumber: 1503
    functionLinenumberEnd: 1516
    functionName: PARSE_FLOAT
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_FLOAT(num, cur, invalid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1532,1
    - Dst: VALID_MONTH
      Src: /src/libxml2/xmlschemastypes.c:1536,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - xmlSchemaValDatePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1526
    functionDepth: 0
    functionLinenumber: 1526
    functionLinenumberEnd: 1543
    functionName: _xmlSchemaParseGMonth
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - PARSE_2_DIGITS
    - VALID_MONTH
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaParseGMonth (xmlSchemaValDatePtr dt, const xmlChar **str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1560,1
    - Dst: VALID_DAY
      Src: /src/libxml2/xmlschemastypes.c:1564,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - xmlSchemaValDatePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1570
      start: 1554
    functionDepth: 0
    functionLinenumber: 1554
    functionLinenumberEnd: 1570
    functionName: _xmlSchemaParseGDay
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - VALID_DAY
    - PARSE_2_DIGITS
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaParseGDay (xmlSchemaValDatePtr dt, const xmlChar **str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1588,1
    - Dst: VALID_HOUR
      Src: /src/libxml2/xmlschemastypes.c:1593,1
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1600,1
    - Dst: VALID_MIN
      Src: /src/libxml2/xmlschemastypes.c:1603,1
    - Dst: PARSE_FLOAT
      Src: /src/libxml2/xmlschemastypes.c:1611,1
    - Dst: VALID_TIME
      Src: /src/libxml2/xmlschemastypes.c:1615,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - xmlSchemaValDatePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1582
    functionDepth: 0
    functionLinenumber: 1582
    functionLinenumberEnd: 1620
    functionName: _xmlSchemaParseTime
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - VALID_HOUR
    - VALID_TIME
    - VALID_MIN
    - PARSE_2_DIGITS
    - PARSE_FLOAT
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaParseTime (xmlSchemaValDatePtr dt, const xmlChar **str)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1659,1
    - Dst: VALID_HOUR
      Src: /src/libxml2/xmlschemastypes.c:1662,1
    - Dst: PARSE_2_DIGITS
      Src: /src/libxml2/xmlschemastypes.c:1671,1
    - Dst: VALID_MIN
      Src: /src/libxml2/xmlschemastypes.c:1674,1
    - Dst: VALID_TZO
      Src: /src/libxml2/xmlschemastypes.c:1681,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 2
    argNames:
    - dt
    - str
    argTypes:
    - xmlSchemaValDatePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1693
      start: 1631
    functionDepth: 0
    functionLinenumber: 1631
    functionLinenumberEnd: 1693
    functionName: _xmlSchemaParseTimeZone
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - VALID_TZO
    - VALID_HOUR
    - PARSE_2_DIGITS
    - VALID_MIN
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaParseTimeZone (xmlSchemaValDatePtr dt, const xmlChar
      **str)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 1
    argNames:
    - ch
    argTypes:
    - xmlChar
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1701
    functionDepth: 0
    functionLinenumber: 1701
    functionLinenumberEnd: 1710
    functionName: _xmlSchemaBase64Decode
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int _xmlSchemaBase64Decode (const xmlChar ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - num_type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1736
      start: 1728
    functionDepth: 0
    functionLinenumber: 1728
    functionLinenumberEnd: 1736
    functionName: PARSE_DIGITS
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_DIGITS(num, cur, num_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - num
    - ','
    - cur
    - ','
    - num_type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1765
      start: 1749
    functionDepth: 0
    functionLinenumber: 1749
    functionLinenumberEnd: 1765
    functionName: PARSE_NUM
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSE_NUM(num, cur, num_type)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:1800,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:1805,1
    - Dst: _xmlSchemaParseGDay
      Src: /src/libxml2/xmlschemastypes.c:1821,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1825,1
    - Dst: _xmlSchemaParseGMonth
      Src: /src/libxml2/xmlschemastypes.c:1833,1
    - Dst: _xmlSchemaParseGDay
      Src: /src/libxml2/xmlschemastypes.c:1849,1
    - Dst: VALID_MDAY
      Src: /src/libxml2/xmlschemastypes.c:1859,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1861,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1874,1
    - Dst: _xmlSchemaParseTime
      Src: /src/libxml2/xmlschemastypes.c:1884,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1887,1
    - Dst: _xmlSchemaParseGYear
      Src: /src/libxml2/xmlschemastypes.c:1894,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1899,1
    - Dst: _xmlSchemaParseGMonth
      Src: /src/libxml2/xmlschemastypes.c:1905,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1910,1
    - Dst: _xmlSchemaParseGDay
      Src: /src/libxml2/xmlschemastypes.c:1916,1
    - Dst: VALID_DATE
      Src: /src/libxml2/xmlschemastypes.c:1917,1
    - Dst: RETURN_TYPE_IF_VALID
      Src: /src/libxml2/xmlschemastypes.c:1921,1
    - Dst: _xmlSchemaParseTime
      Src: /src/libxml2/xmlschemastypes.c:1928,1
    - Dst: _xmlSchemaParseTimeZone
      Src: /src/libxml2/xmlschemastypes.c:1932,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:1934,1
    - Dst: VALID_DATETIME
      Src: /src/libxml2/xmlschemastypes.c:1935,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:1978,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:1984,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 122
    argCount: 4
    argNames:
    - type
    - dateTime
    - val
    - collapse
    argTypes:
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaValPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1777
    functionDepth: 2
    functionLinenumber: 1777
    functionLinenumberEnd: 1986
    functionName: xmlSchemaValidateDates
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - _xmlSchemaParseGYear
    - IS_WSP_BLANK_CH
    - VALID_DATETIME
    - xmlSchemaNewValue
    - _xmlSchemaParseGDay
    - _xmlSchemaParseGMonth
    - VALID_DATE
    - _xmlSchemaParseTimeZone
    - VALID_MDAY
    - xmlSchemaFreeValue
    - _xmlSchemaParseTime
    - RETURN_TYPE_IF_VALID
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateDates (xmlSchemaValType type,\n\t                const
      xmlChar *dateTime, xmlSchemaValPtr *val,\n\t\t\tint collapse)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1785
    functionDepth: 0
    functionLinenumber: 1785
    functionLinenumberEnd: 1795
    functionName: RETURN_TYPE_IF_VALID
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RETURN_TYPE_IF_VALID(t)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2014,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2028,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2151,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2157,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 125
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - duration
    - val
    - collapse
    argTypes:
    - xmlSchemaTypePtr
    - xmlChar*
    - xmlSchemaValPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 1999
    functionDepth: 1
    functionLinenumber: 1999
    functionLinenumberEnd: 2159
    functionName: xmlSchemaValidateDuration
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_BLANK_CH
    - xmlSchemaFreeValue
    - xmlSchemaNewValue
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateDuration (xmlSchemaTypePtr type ATTRIBUTE_UNUSED,\n\t
      \                  const xmlChar *duration, xmlSchemaValPtr *val,\n\t\t\t   int
      collapse)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2172,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2177,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemastypes.c:2180,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2181
      start: 2167
    functionDepth: 1
    functionLinenumber: 2167
    functionLinenumberEnd: 2181
    functionName: xmlSchemaStrip
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaStrip(const xmlChar *value)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2203,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2214
      start: 2189
    functionDepth: 2
    functionLinenumber: 2189
    functionLinenumberEnd: 2214
    functionName: xmlSchemaWhiteSpaceReplace
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaWhiteSpaceReplace(const xmlChar *value)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2229,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2232,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2244,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemastypes.c:2247,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2249,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2254,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2256,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 44
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2264
      start: 2222
    functionDepth: 2
    functionLinenumber: 2222
    functionLinenumberEnd: 2264
    functionName: xmlSchemaCollapseString
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - IS_BLANK_CH
    - xmlStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaCollapseString(const xmlChar *value)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2287,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2298,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2300,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2303,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2307,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2311,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/xmlschemastypes.c:2318,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2328,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 4
    argNames:
    - type
    - value
    - ret
    - node
    argTypes:
    - xmlSchemaTypePtr
    - xmlChar*
    - xmlSchemaValPtr*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2332
      start: 2277
    functionDepth: 2
    functionLinenumber: 2277
    functionLinenumberEnd: 2332
    functionName: xmlSchemaValAtomicListNode
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - IS_BLANK_CH
    - xmlSchemaValPredefTypeNode
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValAtomicListNode(xmlSchemaTypePtr type, const xmlChar
      *value,\n\t                   xmlSchemaValPtr *ret, xmlNodePtr node)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2365,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:2368,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:2374,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - xmlChar**
    - xmlSchemaValDecimalPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2378
      start: 2342
    functionDepth: 0
    functionLinenumber: 2342
    functionLinenumberEnd: 2378
    functionName: xmlSchemaParseUInt
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlFree
    - snprintf
    linkageType: ''
    returnType: int
    signature: int xmlSchemaParseUInt(const xmlChar **str, xmlSchemaValDecimalPtr
      val)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsDigit_ch
      Src: /src/libxml2/xmlschemastypes.c:2398,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 18
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2387
    functionDepth: 1
    functionLinenumber: 2387
    functionLinenumberEnd: 2414
    functionName: xmlSchemaCheckLanguageType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlIsDigit_ch
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCheckLanguageType(const xmlChar* value)
  - BBCount: 284
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/xmlschemastypes.c:2443,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:2463,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:2465,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2477,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2479,1
    - Dst: IS_WSP_SPACE_CH
      Src: /src/libxml2/xmlschemastypes.c:2502,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:2515,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:2517,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2521,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2523,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:2534,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:2536,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2551,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2553,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:2567,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2576,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2631,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2635,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:2653,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2656,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:2659,1
    - Dst: xmlSchemaValidateDates
      Src: /src/libxml2/xmlschemastypes.c:2679,1
    - Dst: xmlSchemaValidateDuration
      Src: /src/libxml2/xmlschemastypes.c:2683,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2694,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2702,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2706,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2710,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2714,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2732,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2739,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2743,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2750,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2783,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2789,1
    - Dst: sscanf
      Src: /src/libxml2/xmlschemastypes.c:2796,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2800,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2807,1
    - Dst: sscanf
      Src: /src/libxml2/xmlschemastypes.c:2813,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:2817,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2876,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2905,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2907,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:2917,1
    - Dst: xmlSchemaCheckLanguageType
      Src: /src/libxml2/xmlschemastypes.c:2922,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2924,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2926,1
    - Dst: xmlValidateNMToken
      Src: /src/libxml2/xmlschemastypes.c:2936,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2938,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:2940,1
    - Dst: xmlSchemaValAtomicListNode
      Src: /src/libxml2/xmlschemastypes.c:2950,1
    - Dst: xmlValidateName
      Src: /src/libxml2/xmlschemastypes.c:2958,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2960,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2963,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:2965,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemastypes.c:2966,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemastypes.c:2977,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemastypes.c:2984,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemastypes.c:2985,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2987,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2989,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:2995,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:2998,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3001,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3007,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3009,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3013,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/xmlschemastypes.c:3017,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3019,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3021,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/xmlschemastypes.c:3029,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3031,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3033,1
    - Dst: xmlSchemaStrip
      Src: /src/libxml2/xmlschemastypes.c:3050,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/xmlschemastypes.c:3052,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3053,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/xmlschemastypes.c:3055,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/xmlschemastypes.c:3065,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3067,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3070,1
    - Dst: xmlSchemaStrip
      Src: /src/libxml2/xmlschemastypes.c:3078,1
    - Dst: xmlAddRef
      Src: /src/libxml2/xmlschemastypes.c:3080,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3081,1
    - Dst: xmlAddRef
      Src: /src/libxml2/xmlschemastypes.c:3083,1
    - Dst: xmlSchemaValAtomicListNode
      Src: /src/libxml2/xmlschemastypes.c:3088,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/xmlschemastypes.c:3104,1
    - Dst: xmlSchemaStrip
      Src: /src/libxml2/xmlschemastypes.c:3110,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/xmlschemastypes.c:3112,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3113,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/xmlschemastypes.c:3115,1
    - Dst: xmlSchemaValAtomicListNode
      Src: /src/libxml2/xmlschemastypes.c:3136,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemastypes.c:3153,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemastypes.c:3157,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemastypes.c:3161,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3165,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3168,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3170,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/xmlschemastypes.c:3177,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/xmlschemastypes.c:3179,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3187,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3192,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3199,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3201,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:3212,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3216,1
    - Dst: xmlParseURI
      Src: /src/libxml2/xmlschemastypes.c:3227,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3228,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/xmlschemastypes.c:3231,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3235,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3238,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:3252,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:3262,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3271,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemastypes.c:3278,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:3280,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3281,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3326,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3336,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3374,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3376,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3388,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3390,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3401,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:3405,1
    - Dst: xmlSchemaTypeErrMemory
      Src: /src/libxml2/xmlschemastypes.c:3407,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3408,1
    - Dst: _xmlSchemaBase64Decode
      Src: /src/libxml2/xmlschemastypes.c:3413,1
    - Dst: memset
      Src: /src/libxml2/xmlschemastypes.c:3440,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:3445,1
    - Dst: xmlSchemaParseUInt
      Src: /src/libxml2/xmlschemastypes.c:3451,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:3457,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3462,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3469,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3474,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3479,1
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:3491,1
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:3494,1
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:3504,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3506,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3511,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3513,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3518,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3520,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3524,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3526,1
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:3536,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3538,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3543,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3545,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3550,1
    - Dst: xmlSchemaValDecimalCompareWithInteger
      Src: /src/libxml2/xmlschemastypes.c:3552,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3556,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3558,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3566,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemastypes.c:3572,1
    CyclomaticComplexity: 479
    EdgeCount: 479
    ICount: 1007
    argCount: 9
    argNames:
    - type
    - value
    - val
    - node
    - flags
    - ws
    - normOnTheFly
    - applyNorm
    - createStringValue
    argTypes:
    - xmlSchemaTypePtr
    - xmlChar*
    - xmlSchemaValPtr*
    - xmlNodePtr
    - int
    - xmlSchemaWhitespaceValueType
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3576
      start: 2433
    functionDepth: 9
    functionLinenumber: 2433
    functionLinenumberEnd: 3576
    functionName: xmlSchemaValAtomicType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlSchemaInitTypes
    - xmlSchemaValDecimalCompare
    - xmlSchemaCheckLanguageType
    - xmlValidateQName
    - xmlSchemaCollapseString
    - snprintf
    - xmlSchemaFreeValue
    - sscanf
    - xmlGetDtdNotationDesc
    - xmlValidateNCName
    - xmlFree
    - xmlGetDocEntity
    - xmlMalloc
    - xmlFreeURI
    - xmlValidateName
    - xmlSchemaStrip
    - xmlAddRef
    - xmlSchemaValAtomicListNode
    - IS_WSP_BLANK_CH
    - xmlSchemaTypeErrMemory
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaValidateDuration
    - IS_WSP_SPACE_CH
    - memset
    - xmlParseURI
    - _xmlSchemaBase64Decode
    - IS_BLANK_CH
    - xmlSchemaValDecimalCompareWithInteger
    - xmlStrndup
    - xmlSchemaNewValue
    - xmlSchemaValidateDates
    - xmlValidateNMToken
    - xmlSearchNs
    - xmlAddIDSafe
    - xmlSchemaParseUInt
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValAtomicType(xmlSchemaTypePtr type, const xmlChar *
      value,\n                       xmlSchemaValPtr * val, xmlNodePtr node, int flags,\n\t\t
      \      xmlSchemaWhitespaceValueType ws,\n\t\t       int normOnTheFly, int applyNorm,
      int createStringValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValAtomicType
      Src: /src/libxml2/xmlschemastypes.c:3614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - value
    - val
    - node
    argTypes:
    - xmlSchemaType*
    - xmlChar*
    - xmlSchemaVal**
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3616
      start: 3611
    functionDepth: 10
    functionLinenumber: 3611
    functionLinenumberEnd: 3616
    functionName: xmlSchemaValPredefTypeNode
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 4
    functionsReached:
    - xmlSchemaValAtomicType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValPredefTypeNode(xmlSchemaType *type, const xmlChar
      *value,\n\t                   xmlSchemaVal **val, xmlNode *node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValAtomicType
      Src: /src/libxml2/xmlschemastypes.c:3633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - type
    - value
    - val
    - node
    argTypes:
    - xmlSchemaType*
    - xmlChar*
    - xmlSchemaVal**
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3635
      start: 3630
    functionDepth: 10
    functionLinenumber: 3630
    functionLinenumberEnd: 3635
    functionName: xmlSchemaValPredefTypeNodeNoNorm
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValAtomicType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValPredefTypeNodeNoNorm(xmlSchemaType *type, const xmlChar
      *value,\n\t\t\t\t xmlSchemaVal **val, xmlNode *node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/xmlschemastypes.c:3650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - value
    - val
    argTypes:
    - xmlSchemaType*
    - xmlChar*
    - xmlSchemaVal**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3651
      start: 3647
    functionDepth: 11
    functionLinenumber: 3647
    functionLinenumberEnd: 3651
    functionName: xmlSchemaValidatePredefinedType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValPredefTypeNode
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidatePredefinedType(xmlSchemaType *type, const xmlChar
      *value,\n\t                        xmlSchemaVal **val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValDecimalCompare
      Src: /src/libxml2/xmlschemastypes.c:3663,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3673
      start: 3660
    functionDepth: 1
    functionLinenumber: 3660
    functionLinenumberEnd: 3673
    functionName: xmlSchemaCompareDecimals
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValDecimalCompare
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCompareDecimals(xmlSchemaValPtr x, xmlSchemaValPtr y)
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3765
      start: 3683
    functionDepth: 0
    functionLinenumber: 3683
    functionLinenumberEnd: 3765
    functionName: xmlSchemaCompareDurations
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCompareDurations(xmlSchemaValPtr x, xmlSchemaValPtr y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3771
      start: 3770
    functionDepth: 0
    functionLinenumber: 3770
    functionLinenumberEnd: 3771
    functionName: FQUOTIENT
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FQUOTIENT(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3772
      start: 3771
    functionDepth: 0
    functionLinenumber: 3771
    functionLinenumberEnd: 3772
    functionName: MODULO
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MODULO(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - low
    - ','
    - high
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3773
      start: 3772
    functionDepth: 0
    functionLinenumber: 3772
    functionLinenumberEnd: 3773
    functionName: FQUOTIENT_RANGE
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FQUOTIENT_RANGE(a,low,high)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - low
    - ','
    - high
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3774
      start: 3773
    functionDepth: 0
    functionLinenumber: 3773
    functionLinenumberEnd: 3774
    functionName: MODULO_RANGE
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MODULO_RANGE(a,low,high)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3785,1
    - Dst: memcpy
      Src: /src/libxml2/xmlschemastypes.c:3789,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3792
      start: 3782
    functionDepth: 1
    functionLinenumber: 3782
    functionLinenumberEnd: 3792
    functionName: xmlSchemaDupVal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - memcpy
    - xmlSchemaNewValue
    linkageType: ''
    returnType: xmlSchemaValPtr
    signature: xmlSchemaValPtr xmlSchemaDupVal (xmlSchemaValPtr v)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3827,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3831,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3835,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3840,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3843,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3846,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3850,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3853,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3858,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3874,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:3878,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3881,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:3896,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 94
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3898
      start: 3800
    functionDepth: 2
    functionLinenumber: 3800
    functionLinenumberEnd: 3898
    functionName: xmlSchemaCopyValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlSchemaDupVal
    - xmlSchemaFreeValue
    linkageType: ''
    returnType: xmlSchemaVal
    signature: 'xmlSchemaVal *

      xmlSchemaCopyValue(xmlSchemaVal *val)'
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:3921,1
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:3926,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:3928,1
    - Dst: MODULO_RANGE
      Src: /src/libxml2/xmlschemastypes.c:3950,1
    - Dst: FQUOTIENT_RANGE
      Src: /src/libxml2/xmlschemastypes.c:3951,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:3968,1
    - Dst: MODULO
      Src: /src/libxml2/xmlschemastypes.c:3970,1
    - Dst: MODULO
      Src: /src/libxml2/xmlschemastypes.c:3975,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:3976,1
    - Dst: MODULO
      Src: /src/libxml2/xmlschemastypes.c:3980,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:3981,1
    - Dst: VALID_YEAR
      Src: /src/libxml2/xmlschemastypes.c:3988,1
    - Dst: VALID_MONTH
      Src: /src/libxml2/xmlschemastypes.c:3988,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxml2/xmlschemastypes.c:3989,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxml2/xmlschemastypes.c:3990,1
    - Dst: MODULO_RANGE
      Src: /src/libxml2/xmlschemastypes.c:4000,1
    - Dst: FQUOTIENT_RANGE
      Src: /src/libxml2/xmlschemastypes.c:4001,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxml2/xmlschemastypes.c:4012,1
    - Dst: VALID_YEAR
      Src: /src/libxml2/xmlschemastypes.c:4014,1
    - Dst: VALID_MONTH
      Src: /src/libxml2/xmlschemastypes.c:4014,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxml2/xmlschemastypes.c:4015,1
    - Dst: MAX_DAYINMONTH
      Src: /src/libxml2/xmlschemastypes.c:4016,1
    - Dst: MODULO_RANGE
      Src: /src/libxml2/xmlschemastypes.c:4022,1
    - Dst: FQUOTIENT_RANGE
      Src: /src/libxml2/xmlschemastypes.c:4023,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4048,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 86
    argCount: 2
    argNames:
    - dt
    - dur
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4051
      start: 3910
    functionDepth: 2
    functionLinenumber: 3910
    functionLinenumberEnd: 4051
    functionName: _xmlSchemaDateAdd
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - MAX_DAYINMONTH
    - xmlSchemaNewValue
    - FQUOTIENT_RANGE
    - VALID_MONTH
    - xmlSchemaDupVal
    - MODULO
    - FQUOTIENT
    - xmlSchemaFreeValue
    - VALID_YEAR
    - MODULO_RANGE
    linkageType: ''
    returnType: xmlSchemaValPtr
    signature: xmlSchemaValPtr _xmlSchemaDateAdd (xmlSchemaValPtr dt, xmlSchemaValPtr
      dur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaDupVal
      Src: /src/libxml2/xmlschemastypes.c:4072,1
    - Dst: xmlSchemaNewValue
      Src: /src/libxml2/xmlschemastypes.c:4074,1
    - Dst: _xmlSchemaDateAdd
      Src: /src/libxml2/xmlschemastypes.c:4080,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4082,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 2
    argNames:
    - dt
    - offset
    argTypes:
    - xmlSchemaValPtr
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4089
      start: 4061
    functionDepth: 3
    functionLinenumber: 4061
    functionLinenumberEnd: 4089
    functionName: xmlSchemaDateNormalize
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - _xmlSchemaDateAdd
    - xmlSchemaDupVal
    - xmlSchemaNewValue
    - xmlSchemaFreeValue
    linkageType: ''
    returnType: xmlSchemaValPtr
    signature: xmlSchemaValPtr xmlSchemaDateNormalize (xmlSchemaValPtr dt, double
      offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DAY_IN_YEAR
      Src: /src/libxml2/xmlschemastypes.c:4113,1
    - Dst: DAY_IN_YEAR
      Src: /src/libxml2/xmlschemastypes.c:4118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - dt
    argTypes:
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4121
      start: 4100
    functionDepth: 0
    functionLinenumber: 4100
    functionLinenumberEnd: 4121
    functionName: _xmlSchemaDateCastYMToDays
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - DAY_IN_YEAR
    linkageType: ''
    returnType: long
    signature: long _xmlSchemaDateCastYMToDays (const xmlSchemaValPtr dt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - dt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4134
      start: 4129
    functionDepth: 0
    functionLinenumber: 4129
    functionLinenumberEnd: 4134
    functionName: TIME_TO_NUMBER
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIME_TO_NUMBER(dt)
  - BBCount: 71
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4164,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4167,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4169,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4171,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4175,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4177,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4178,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4183,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4183,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4185,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4186,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4191,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4193,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4194,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4197,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4201,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4201,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4207,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4208,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4209,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4214,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4215,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4219,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4222,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4225,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4227,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4230,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4233,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4234,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4239,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4239,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4241,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4242,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4247,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4249,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4250,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4253,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4258,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4258,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4264,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4265,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4266,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4271,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4272,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4281,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4284,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:4286,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4288,1
    - Dst: _xmlSchemaDateCastYMToDays
      Src: /src/libxml2/xmlschemastypes.c:4291,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4300,1
    - Dst: TIME_TO_NUMBER
      Src: /src/libxml2/xmlschemastypes.c:4300,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4307,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:4308,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 235
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4424
      start: 4143
    functionDepth: 4
    functionLinenumber: 4143
    functionLinenumberEnd: 4424
    functionName: xmlSchemaCompareDates
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - TIME_TO_NUMBER
    - xmlSchemaFreeValue
    - xmlSchemaDateNormalize
    - _xmlSchemaDateCastYMToDays
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCompareDates (xmlSchemaValPtr x, xmlSchemaValPtr y)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_REPLACE_CH
      Src: /src/libxml2/xmlschemastypes.c:4446,1
    - Dst: IS_WSP_SPACE_CH
      Src: /src/libxml2/xmlschemastypes.c:4447,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 41
    argCount: 3
    argNames:
    - x
    - y
    - invert
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4491
      start: 4438
    functionDepth: 1
    functionLinenumber: 4438
    functionLinenumberEnd: 4491
    functionName: xmlSchemaComparePreserveReplaceStrings
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_REPLACE_CH
    - IS_WSP_SPACE_CH
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaComparePreserveReplaceStrings(const xmlChar *x,\n\t\t\t\t
      \      const xmlChar *y,\n\t\t\t\t       int invert)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_SPACE_CH
      Src: /src/libxml2/xmlschemastypes.c:4520,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - x
    - y
    - invert
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4558
      start: 4505
    functionDepth: 1
    functionLinenumber: 4505
    functionLinenumberEnd: 4558
    functionName: xmlSchemaComparePreserveCollapseStrings
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_SPACE_CH
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaComparePreserveCollapseStrings(const xmlChar *x,\n\t\t\t\t
      \       const xmlChar *y,\n\t\t\t\t\tint invert)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_SPACE_CH
      Src: /src/libxml2/xmlschemastypes.c:4520,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4543
      start: 4519
    functionDepth: 1
    functionLinenumber: 4519
    functionLinenumberEnd: 4543
    functionName: (*y)
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_SPACE_CH
    linkageType: ''
    returnType: IS_WSP_BLANK_CH
    signature: IS_WSP_BLANK_CH (*y)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4608,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4632,1
    - Dst: if
      Src: /src/libxml2/xmlschemastypes.c:4636,1
    - Dst: if
      Src: /src/libxml2/xmlschemastypes.c:4637,1
    - Dst: return
      Src: /src/libxml2/xmlschemastypes.c:4638,1
    - Dst: if
      Src: /src/libxml2/xmlschemastypes.c:4642,1
    - Dst: return
      Src: /src/libxml2/xmlschemastypes.c:4643,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - x
    - y
    - invert
    argTypes:
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4654
      start: 4593
    functionDepth: 1
    functionLinenumber: 4593
    functionLinenumberEnd: 4654
    functionName: xmlSchemaCompareReplaceCollapseStrings
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - if
    - return
    - IS_WSP_BLANK_CH
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareReplaceCollapseStrings(const xmlChar *x,\n\t\t\t\t
      \      const xmlChar *y,\n\t\t\t\t       int invert)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4608,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4631
      start: 4607
    functionDepth: 1
    functionLinenumber: 4607
    functionLinenumberEnd: 4631
    functionName: (*y)
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_BLANK_CH
    linkageType: ''
    returnType: IS_WSP_BLANK_CH
    signature: IS_WSP_BLANK_CH (*y)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4694,1
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4701,1
    - Dst: if
      Src: /src/libxml2/xmlschemastypes.c:4702,1
    - Dst: return
      Src: /src/libxml2/xmlschemastypes.c:4703,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4712
      start: 4686
    functionDepth: 1
    functionLinenumber: 4686
    functionLinenumberEnd: 4712
    functionName: xmlSchemaCompareReplacedStrings
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - if
    - return
    - IS_WSP_BLANK_CH
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareReplacedStrings(const xmlChar *x,\n\t\t\t\tconst
      xmlChar *y)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_WSP_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4694,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4700
      start: 4693
    functionDepth: 1
    functionLinenumber: 4693
    functionLinenumberEnd: 4700
    functionName: (*y)
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_WSP_BLANK_CH
    linkageType: ''
    returnType: IS_WSP_BLANK_CH
    signature: IS_WSP_BLANK_CH (*y)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4736,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4737,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4739,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4740,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4744,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4745,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4755,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:4760,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 36
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4765
      start: 4731
    functionDepth: 1
    functionLinenumber: 4731
    functionLinenumberEnd: 4765
    functionName: xmlSchemaCompareNormStrings
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareNormStrings(const xmlChar *x,\n\t\t\t    const
      xmlChar *y)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: isnan
      Src: /src/libxml2/xmlschemastypes.c:4802,1
    - Dst: isnan
      Src: /src/libxml2/xmlschemastypes.c:4803,1
    - Dst: isnan
      Src: /src/libxml2/xmlschemastypes.c:4807,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4822
      start: 4775
    functionDepth: 1
    functionLinenumber: 4775
    functionLinenumberEnd: 4822
    functionName: xmlSchemaCompareFloats
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - isnan
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCompareFloats(xmlSchemaValPtr x, xmlSchemaValPtr y)
  - BBCount: 94
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCompareDecimals
      Src: /src/libxml2/xmlschemastypes.c:4869,1
    - Dst: xmlSchemaCompareDecimals
      Src: /src/libxml2/xmlschemastypes.c:4884,1
    - Dst: xmlSchemaCompareDurations
      Src: /src/libxml2/xmlschemastypes.c:4890,1
    - Dst: xmlSchemaCompareDates
      Src: /src/libxml2/xmlschemastypes.c:4910,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemastypes.c:4965,1
    - Dst: xmlSchemaComparePreserveReplaceStrings
      Src: /src/libxml2/xmlschemastypes.c:4970,1
    - Dst: xmlSchemaComparePreserveCollapseStrings
      Src: /src/libxml2/xmlschemastypes.c:4972,1
    - Dst: xmlSchemaComparePreserveReplaceStrings
      Src: /src/libxml2/xmlschemastypes.c:4977,1
    - Dst: xmlSchemaCompareReplacedStrings
      Src: /src/libxml2/xmlschemastypes.c:4979,1
    - Dst: xmlSchemaCompareReplaceCollapseStrings
      Src: /src/libxml2/xmlschemastypes.c:4981,1
    - Dst: xmlSchemaComparePreserveCollapseStrings
      Src: /src/libxml2/xmlschemastypes.c:4986,1
    - Dst: xmlSchemaCompareReplaceCollapseStrings
      Src: /src/libxml2/xmlschemastypes.c:4988,1
    - Dst: xmlSchemaCompareNormStrings
      Src: /src/libxml2/xmlschemastypes.c:4990,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemastypes.c:5003,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemastypes.c:5004,1
    - Dst: xmlSchemaCompareFloats
      Src: /src/libxml2/xmlschemastypes.c:5015,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/xmlschemastypes.c:5033,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/xmlschemastypes.c:5050,1
    CyclomaticComplexity: 90
    EdgeCount: 90
    ICount: 165
    argCount: 8
    argNames:
    - xtype
    - x
    - xvalue
    - xws
    - ytype
    - y
    - yvalue
    - yws
    argTypes:
    - xmlSchemaValType
    - xmlSchemaValPtr
    - xmlChar*
    - xmlSchemaWhitespaceValueType
    - xmlSchemaValType
    - xmlSchemaValPtr
    - xmlChar*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5072
      start: 4838
    functionDepth: 5
    functionLinenumber: 4838
    functionLinenumberEnd: 5072
    functionName: xmlSchemaCompareValuesInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaComparePreserveReplaceStrings
    - xmlStrEqual
    - xmlSchemaCompareDates
    - xmlSchemaCompareFloats
    - xmlSchemaCompareReplacedStrings
    - xmlStrcmp
    - xmlSchemaCompareNormStrings
    - xmlSchemaComparePreserveCollapseStrings
    - xmlSchemaCompareReplaceCollapseStrings
    - xmlSchemaCompareDurations
    - xmlSchemaCompareDecimals
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareValuesInternal(xmlSchemaValType xtype,\n\t\t\t
      \      xmlSchemaValPtr x,\n\t\t\t       const xmlChar *xvalue,\n\t\t\t       xmlSchemaWhitespaceValueType
      xws,\n\t\t\t       xmlSchemaValType ytype,\n\t\t\t       xmlSchemaValPtr y,\n\t\t\t
      \      const xmlChar *yvalue,\n\t\t\t       xmlSchemaWhitespaceValueType yws)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCompareValuesInternal
      Src: /src/libxml2/xmlschemastypes.c:5102,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaVal*
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5104
      start: 5082
    functionDepth: 6
    functionLinenumber: 5082
    functionLinenumberEnd: 5104
    functionName: xmlSchemaCompareValues
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCompareValuesInternal
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCompareValues(xmlSchemaVal *x, xmlSchemaVal *y)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCompareValuesInternal
      Src: /src/libxml2/xmlschemastypes.c:5124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 4
    argNames:
    - x
    - xws
    - y
    - yws
    argTypes:
    - xmlSchemaVal*
    - xmlSchemaWhitespaceValueType
    - xmlSchemaVal*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5126
      start: 5116
    functionDepth: 6
    functionLinenumber: 5116
    functionLinenumberEnd: 5126
    functionName: xmlSchemaCompareValuesWhtsp
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCompareValuesInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareValuesWhtsp(xmlSchemaVal *x,\n\t\t\t    xmlSchemaWhitespaceValueType
      xws,\n\t\t\t    xmlSchemaVal *y,\n\t\t\t    xmlSchemaWhitespaceValueType yws)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCompareValuesInternal
      Src: /src/libxml2/xmlschemastypes.c:5152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - xtype
    - x
    - xvalue
    - xws
    - ytype
    - y
    - yvalue
    - yws
    argTypes:
    - xmlSchemaValType
    - xmlSchemaValPtr
    - xmlChar*
    - xmlSchemaWhitespaceValueType
    - xmlSchemaValType
    - xmlSchemaValPtr
    - xmlChar*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5154
      start: 5142
    functionDepth: 6
    functionLinenumber: 5142
    functionLinenumberEnd: 5154
    functionName: xmlSchemaCompareValuesWhtspExt
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCompareValuesInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCompareValuesWhtspExt(xmlSchemaValType xtype,\n\t\t\t
      \      xmlSchemaValPtr x,\n\t\t\t       const xmlChar *xvalue,\n\t\t\t       xmlSchemaWhitespaceValueType
      xws,\n\t\t\t       xmlSchemaValType ytype,\n\t\t\t       xmlSchemaValPtr y,\n\t\t\t
      \      const xmlChar *yvalue,\n\t\t\t       xmlSchemaWhitespaceValueType yws)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:5170,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:5188,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemastypes.c:5189,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5198
      start: 5162
    functionDepth: 1
    functionLinenumber: 5162
    functionLinenumberEnd: 5198
    functionName: xmlSchemaNormLen
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlSchemaNormLen(const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/libxml2/xmlschemastypes.c:5215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - facet
    argTypes:
    - xmlSchemaFacet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5216
      start: 5206
    functionDepth: 0
    functionLinenumber: 5206
    functionLinenumberEnd: 5216
    functionName: xmlSchemaGetFacetValueAsULong
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - strtoul
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long xmlSchemaGetFacetValueAsULong(xmlSchemaFacet *facet)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5241,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5243,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5247,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5249,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5253,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5255,1
    - Dst: xmlSchemaValidateFacet
      Src: /src/libxml2/xmlschemastypes.c:5264,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 4
    argNames:
    - facet
    - value
    - actualLen
    - expectedLen
    argTypes:
    - xmlSchemaFacet*
    - xmlChar*
    - unsigned long
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5266
      start: 5228
    functionDepth: 1
    functionLinenumber: 5228
    functionLinenumberEnd: 5266
    functionName: xmlSchemaValidateListSimpleTypeFacet
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetFacetValueAsULong
    - xmlSchemaValidateFacet
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateListSimpleTypeFacet(xmlSchemaFacet *facet,\n\t\t\t\t
      \    const xmlChar *value,\n\t\t\t\t     unsigned long actualLen,\n\t\t\t\t
      \    unsigned long *expectedLen)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValDecimalIsInteger
      Src: /src/libxml2/xmlschemastypes.c:5306,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xmlschemastypes.c:5326,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5328,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5331,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xmlschemastypes.c:5336,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5351,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5370,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5373,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5376,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 58
    argCount: 6
    argNames:
    - facet
    - valType
    - value
    - val
    - length
    - ws
    argTypes:
    - xmlSchemaFacetPtr
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaValPtr
    - unsigned long*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5381
      start: 5281
    functionDepth: 2
    functionLinenumber: 5281
    functionLinenumberEnd: 5381
    functionName: xmlSchemaValidateLengthFacetInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValDecimalIsInteger
    - xmlSchemaNormLen
    - xmlUTF8Strlen
    - xmlSchemaGetFacetValueAsULong
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateLengthFacetInternal(xmlSchemaFacetPtr facet,\n\t\t\t\t
      \    xmlSchemaValType valType,\n\t\t\t\t     const xmlChar *value,\n\t\t\t\t
      \    xmlSchemaValPtr val,\n\t\t\t\t     unsigned long *length,\n\t\t\t\t     xmlSchemaWhitespaceValueType
      ws)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidateLengthFacetInternal
      Src: /src/libxml2/xmlschemastypes.c:5404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 5
    argNames:
    - type
    - facet
    - value
    - val
    - length
    argTypes:
    - xmlSchemaType*
    - xmlSchemaFacet*
    - xmlChar*
    - xmlSchemaVal*
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5407
      start: 5395
    functionDepth: 3
    functionLinenumber: 5395
    functionLinenumberEnd: 5407
    functionName: xmlSchemaValidateLengthFacet
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValidateLengthFacetInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateLengthFacet(xmlSchemaType *type,\n\t\t\t     xmlSchemaFacet
      *facet,\n\t\t\t     const xmlChar *value,\n\t\t\t     xmlSchemaVal *val,\n\t\t\t
      \    unsigned long *length)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidateLengthFacetInternal
      Src: /src/libxml2/xmlschemastypes.c:5430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - facet
    - valType
    - value
    - val
    - length
    - ws
    argTypes:
    - xmlSchemaFacet*
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaVal*
    - unsigned long*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5432
      start: 5422
    functionDepth: 3
    functionLinenumber: 5422
    functionLinenumberEnd: 5432
    functionName: xmlSchemaValidateLengthFacetWhtsp
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValidateLengthFacetInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateLengthFacetWhtsp(xmlSchemaFacet *facet,\n\t\t\t\t
      \ xmlSchemaValType valType,\n\t\t\t\t  const xmlChar *value,\n\t\t\t\t  xmlSchemaVal
      *val,\n\t\t\t\t  unsigned long *length,\n\t\t\t\t  xmlSchemaWhitespaceValueType
      ws)"
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegexpExec
      Src: /src/libxml2/xmlschemastypes.c:5481,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemastypes.c:5488,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemastypes.c:5495,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemastypes.c:5502,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemastypes.c:5509,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemastypes.c:5531,1
    - Dst: xmlSchemaCompareValuesWhtspExt
      Src: /src/libxml2/xmlschemastypes.c:5534,1
    - Dst: xmlSchemaValDecimalIsInteger
      Src: /src/libxml2/xmlschemastypes.c:5566,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xmlschemastypes.c:5585,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5587,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5590,1
    - Dst: xmlUTF8Strlen
      Src: /src/libxml2/xmlschemastypes.c:5595,1
    - Dst: xmlSchemaNormLen
      Src: /src/libxml2/xmlschemastypes.c:5607,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5615,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5618,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5620,1
    - Dst: xmlSchemaValDecimalIsInteger
      Src: /src/libxml2/xmlschemastypes.c:5631,1
    - Dst: xmlSchemaValDecimalGetSignificantDigitCount
      Src: /src/libxml2/xmlschemastypes.c:5652,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5652,1
    - Dst: xmlSchemaValDecimalIsInteger
      Src: /src/libxml2/xmlschemastypes.c:5656,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemastypes.c:5656,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 135
    argCount: 6
    argNames:
    - facet
    - fws
    - valType
    - value
    - val
    - ws
    argTypes:
    - xmlSchemaFacetPtr
    - xmlSchemaWhitespaceValueType
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaValPtr
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5666
      start: 5446
    functionDepth: 7
    functionLinenumber: 5446
    functionLinenumberEnd: 5666
    functionName: xmlSchemaValidateFacetInternal
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlSchemaValDecimalGetSignificantDigitCount
    - xmlSchemaCompareValues
    - xmlUTF8Strlen
    - xmlSchemaGetFacetValueAsULong
    - xmlSchemaCompareValuesWhtspExt
    - xmlSchemaValDecimalIsInteger
    - xmlSchemaNormLen
    - xmlRegexpExec
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateFacetInternal(xmlSchemaFacetPtr facet,\n\t\t\t
      \      xmlSchemaWhitespaceValueType fws,\n\t\t\t       xmlSchemaValType valType,\n\t\t\t
      \      const xmlChar *value,\n\t\t\t       xmlSchemaValPtr val,\n\t\t\t       xmlSchemaWhitespaceValueType
      ws)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidateFacetInternal
      Src: /src/libxml2/xmlschemastypes.c:5690,1
    - Dst: xmlSchemaValidateFacetInternal
      Src: /src/libxml2/xmlschemastypes.c:5694,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - base
    - facet
    - value
    - val
    argTypes:
    - xmlSchemaType*
    - xmlSchemaFacet*
    - xmlChar*
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5698
      start: 5678
    functionDepth: 8
    functionLinenumber: 5678
    functionLinenumberEnd: 5698
    functionName: xmlSchemaValidateFacet
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 3
    functionsReached:
    - xmlSchemaValidateFacetInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateFacet(xmlSchemaType *base,\n\t               xmlSchemaFacet
      *facet,\n\t               const xmlChar *value,\n\t\t       xmlSchemaVal *val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidateFacetInternal
      Src: /src/libxml2/xmlschemastypes.c:5723,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - facet
    - fws
    - valType
    - value
    - val
    - ws
    argTypes:
    - xmlSchemaFacet*
    - xmlSchemaWhitespaceValueType
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaVal*
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5725
      start: 5715
    functionDepth: 8
    functionLinenumber: 5715
    functionLinenumberEnd: 5725
    functionName: xmlSchemaValidateFacetWhtsp
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValidateFacetInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateFacetWhtsp(xmlSchemaFacet *facet,\n\t\t\t    xmlSchemaWhitespaceValueType
      fws,\n\t\t\t    xmlSchemaValType valType,\n\t\t\t    const xmlChar *value,\n\t\t\t
      \   xmlSchemaVal *val,\n\t\t\t    xmlSchemaWhitespaceValueType ws)"
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5753,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5756,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5760,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:5762,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5765,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:5782,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5785,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5790,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5793,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemastypes.c:5794,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemastypes.c:5796,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemastypes.c:5798,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5808,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:5832,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5835,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5841,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5843,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:5859,1
    - Dst: labs
      Src: /src/libxml2/xmlschemastypes.c:5859,1
    - Dst: labs
      Src: /src/libxml2/xmlschemastypes.c:5860,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:5862,1
    - Dst: fabs
      Src: /src/libxml2/xmlschemastypes.c:5862,1
    - Dst: fabs
      Src: /src/libxml2/xmlschemastypes.c:5863,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:5865,1
    - Dst: FQUOTIENT
      Src: /src/libxml2/xmlschemastypes.c:5868,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5873,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5876,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5878,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5885,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5886,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:5892,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5895,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:5902,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5905,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemastypes.c:5912,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5915,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5924,1
    - Dst: labs
      Src: /src/libxml2/xmlschemastypes.c:5925,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5928,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5930,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:5940,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5946,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:5951,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5953,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5959,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:5969,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5976,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:5980,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:5982,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:5987,1
    - Dst: xmlSchemaDateNormalize
      Src: /src/libxml2/xmlschemastypes.c:5997,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:6003,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemastypes.c:6008,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:6010,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6016,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6020,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6029,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:6039,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6040,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemastypes.c:6051,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6052,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6056,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 194
    argCount: 2
    argNames:
    - val
    - retValue
    argTypes:
    - xmlSchemaVal*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6062
      start: 5744
    functionDepth: 4
    functionLinenumber: 5744
    functionLinenumberEnd: 6062
    functionName: xmlSchemaGetCanonValue
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - labs
    - FQUOTIENT
    - xmlMalloc
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaDateNormalize
    - xmlSchemaCollapseString
    - snprintf
    - xmlStrcat
    - xmlSchemaFreeValue
    - fabs
    linkageType: ''
    returnType: int
    signature: int xmlSchemaGetCanonValue(xmlSchemaVal *val, const xmlChar **retValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6089,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:6091,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:6093,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6095,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6099,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemastypes.c:6102,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemastypes.c:6104,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemastypes.c:6106,1
    - Dst: xmlSchemaGetCanonValue
      Src: /src/libxml2/xmlschemastypes.c:6110,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 3
    argNames:
    - val
    - retValue
    - ws
    argTypes:
    - xmlSchemaVal*
    - xmlChar**
    - xmlSchemaWhitespaceValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6113
      start: 6074
    functionDepth: 5
    functionLinenumber: 6074
    functionLinenumberEnd: 6113
    functionName: xmlSchemaGetCanonValueWhtsp
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaGetCanonValue
    - xmlSchemaCollapseString
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetCanonValueWhtsp(xmlSchemaVal *val,\n\t\t\t    const
      xmlChar **retValue,\n\t\t\t    xmlSchemaWhitespaceValueType ws)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlSchemaVal*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6127
      start: 6121
    functionDepth: 0
    functionLinenumber: 6121
    functionLinenumberEnd: 6127
    functionName: xmlSchemaGetValType
    functionSourceFile: /src/libxml2/xmlschemastypes.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaValType
    signature: xmlSchemaValType xmlSchemaGetValType(xmlSchemaVal *val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: WXS_ITEM_NODE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ITEM_NODE(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: WXS_ITEM_TYPE_NAME
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ITEM_TYPE_NAME(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: WXS_ELEM_TYPEDEF
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ELEM_TYPEDEF(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: WXS_SUBST_HEAD
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_SUBST_HEAD(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 152
    functionName: WXS_ATTR_TYPEDEF
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTR_TYPEDEF(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - au
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: WXS_ATTRUSE_DECL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTRUSE_DECL(au)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - au
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: WXS_ATTRUSE_TYPEDEF
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTRUSE_TYPEDEF(au)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - au
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: WXS_ATTRUSE_DECL_NAME
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTRUSE_DECL_NAME(au)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - au
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: WXS_ATTRUSE_DECL_TNS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTRUSE_DECL_TNS(au)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ag
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: WXS_ATTR_GROUP_HAS_REFS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTR_GROUP_HAS_REFS(ag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ag
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: WXS_ATTR_GROUP_EXPANDED
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ATTR_GROUP_EXPANDED(ag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: WXS_PARTICLE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_PARTICLE(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 173
    functionName: WXS_PARTICLE_TERM
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_PARTICLE_TERM(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: WXS_PARTICLE_TERM_AS_ELEM
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_PARTICLE_TERM_AS_ELEM(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 177
    functionName: WXS_PARTICLE_MODEL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_PARTICLE_MODEL(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mgd
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 181
    functionName: WXS_MODELGROUPDEF_MODEL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_MODELGROUPDEF_MODEL(mgd)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 188
    functionName: WXS_IS_MODEL_GROUP
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_MODEL_GROUP(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - mg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: WXS_MODELGROUP_PARTICLE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_MODELGROUP_PARTICLE(mg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionName: WXS_IS_BUCKET_INCREDEF
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_BUCKET_INCREDEF(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionName: WXS_IS_BUCKET_IMPMAIN
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_BUCKET_IMPMAIN(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: WXS_IMPBUCKET
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IMPBUCKET(b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 202
    functionName: WXS_INCBUCKET
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_INCBUCKET(b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: WXS_IS_ANYTYPE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_ANYTYPE(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionName: WXS_IS_COMPLEX
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_COMPLEX(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: WXS_IS_SIMPLE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_SIMPLE(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionName: WXS_IS_ANY_SIMPLE_TYPE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_ANY_SIMPLE_TYPE(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: WXS_IS_RESTRICTION
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_RESTRICTION(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionName: WXS_IS_EXTENSION
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_EXTENSION(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionName: WXS_IS_TYPE_NOT_FIXED
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_TYPE_NOT_FIXED(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 235
    functionName: WXS_IS_TYPE_NOT_FIXED_1
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_TYPE_NOT_FIXED_1(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 237
    functionName: WXS_TYPE_IS_GLOBAL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_TYPE_IS_GLOBAL(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 239
    functionName: WXS_TYPE_IS_LOCAL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_TYPE_IS_LOCAL(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 246
    functionName: WXS_HAS_COMPLEX_CONTENT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_HAS_COMPLEX_CONTENT(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: WXS_HAS_SIMPLE_CONTENT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_HAS_SIMPLE_CONTENT(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionName: WXS_HAS_MIXED_CONTENT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_HAS_MIXED_CONTENT(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionName: WXS_EMPTIABLE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_EMPTIABLE(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 258
    functionName: WXS_TYPE_CONTENTTYPE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_TYPE_CONTENTTYPE(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 260
    functionName: WXS_TYPE_PARTICLE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_TYPE_PARTICLE(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 262
    functionName: WXS_TYPE_PARTICLE_TERM
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_TYPE_PARTICLE_TERM(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 266
    functionName: WXS_LIST_ITEMTYPE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_LIST_ITEMTYPE(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 268
    functionName: WXS_IS_ATOMIC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_ATOMIC(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 270
    functionName: WXS_IS_LIST
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_LIST(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 272
    functionName: WXS_IS_UNION
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_IS_UNION(t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 276
    functionName: WXS_CONSTRUCTOR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_CONSTRUCTOR(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: WXS_HAS_BUCKETS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_HAS_BUCKETS(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 282
    functionName: WXS_SUBST_GROUPS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_SUBST_GROUPS(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 284
    functionName: WXS_BUCKET
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_BUCKET(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 286
    functionName: WXS_SCHEMA
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_SCHEMA(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 297
    functionName: WXS_ADD_LOCAL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ADD_LOCAL(ctx, item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 308
    functionName: WXS_ADD_GLOBAL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ADD_GLOBAL(ctx, item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 317
    functionName: WXS_ADD_PENDING
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ADD_PENDING(ctx, item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 321
    functionName: WXS_ILIST_IS_EMPTY
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ILIST_IS_EMPTY(l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - node
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 328
    functionName: IS_SCHEMA
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_SCHEMA(node, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 330
    functionName: FREE_AND_NULL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FREE_AND_NULL(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - v1
    - ','
    - v2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 337
    functionName: WXS_ARE_DEFAULT_STR_EQUAL
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ARE_DEFAULT_STR_EQUAL(v1, v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 339
    functionName: INODE_NILLED
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INODE_NILLED(item)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 341
    functionName: CAN_PARSE_SCHEMA
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CAN_PARSE_SCHEMA(b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 347
    functionName: HSTOP
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HSTOP(ctx)
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 43
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1090
    functionDepth: 0
    functionLinenumber: 1090
    functionLinenumberEnd: 1138
    functionName: xmlSchemaItemTypeToStr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaItemTypeToStr(xmlSchemaTypeType type)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:1149,1
    - Dst: xmlSchemaItemTypeToStr
      Src: /src/libxml2/xmlschemas.c:1154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaBasicItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1144
    functionDepth: 1
    functionLinenumber: 1144
    functionLinenumberEnd: 1156
    functionName: xmlSchemaGetComponentTypeStr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaItemTypeToStr
    - WXS_IS_COMPLEX
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetComponentTypeStr(xmlSchemaBasicItemPtr item)'
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaBasicItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1166
    functionDepth: 0
    functionLinenumber: 1166
    functionLinenumberEnd: 1205
    functionName: xmlSchemaGetComponentNode
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSchemaGetComponentNode(xmlSchemaBasicItemPtr item)
  - BBCount: 17
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 29
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaBasicItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1212
    functionDepth: 0
    functionLinenumber: 1212
    functionLinenumberEnd: 1243
    functionName: xmlSchemaGetNextComponent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaBasicItemPtr
    signature: xmlSchemaBasicItemPtr xmlSchemaGetNextComponent(xmlSchemaBasicItemPtr
      item)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1264,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1265,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1266,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1271,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1273,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - buf
    - namespaceName
    - localName
    argTypes:
    - xmlChar**
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1257
    functionDepth: 3
    functionLinenumber: 1257
    functionLinenumberEnd: 1276
    functionName: xmlSchemaFormatQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrcat
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatQName(xmlChar **buf,\n\t\t     const xmlChar
      *namespaceName,\n\t\t     const xmlChar *localName)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1282,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - buf
    - ns
    - localName
    argTypes:
    - xmlChar**
    - xmlNsPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1285
      start: 1278
    functionDepth: 4
    functionLinenumber: 1278
    functionLinenumberEnd: 1285
    functionName: xmlSchemaFormatQNameNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaFormatQNameNs(xmlChar **buf, xmlNsPtr ns, const xmlChar *localName)'
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:1311,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaBasicItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1327
      start: 1287
    functionDepth: 1
    functionLinenumber: 1287
    functionLinenumberEnd: 1327
    functionName: xmlSchemaGetComponentName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ATTRUSE_DECL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetComponentName(xmlSchemaBasicItemPtr item)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1330
      start: 1329
    functionDepth: 0
    functionLinenumber: 1329
    functionLinenumberEnd: 1330
    functionName: xmlSchemaGetQNameRefName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSchemaGetQNameRefName(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1330
    functionDepth: 0
    functionLinenumber: 1330
    functionLinenumberEnd: 1331
    functionName: xmlSchemaGetQNameRefTargetNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSchemaGetQNameRefTargetNs(r)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:1370,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaBasicItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1345
    functionDepth: 1
    functionLinenumber: 1345
    functionLinenumberEnd: 1387
    functionName: xmlSchemaGetComponentTargetNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ATTRUSE_DECL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetComponentTargetNs(xmlSchemaBasicItemPtr item)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1393,1
    - Dst: xmlSchemaGetComponentTargetNs
      Src: /src/libxml2/xmlschemas.c:1394,1
    - Dst: xmlSchemaGetComponentName
      Src: /src/libxml2/xmlschemas.c:1395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - item
    argTypes:
    - xmlChar**
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1389
    functionDepth: 4
    functionLinenumber: 1389
    functionLinenumberEnd: 1396
    functionName: xmlSchemaGetComponentQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatQName
    - xmlSchemaGetComponentName
    - xmlSchemaGetComponentTargetNs
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaGetComponentQName(xmlChar **buf,\n\t\t\t   void
      *item)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1403,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:1403,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1404,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1405,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:1405,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1407,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - item
    argTypes:
    - xmlChar**
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1398
    functionDepth: 5
    functionLinenumber: 1398
    functionLinenumberEnd: 1410
    functionName: xmlSchemaGetComponentDesignation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ITEM_TYPE_NAME
    - xmlStrcat
    - xmlSchemaGetComponentQName
    - FREE_AND_NULL
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetComponentDesignation(xmlChar **buf, void *item)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:1415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - idc
    argTypes:
    - xmlChar**
    - xmlSchemaIDCPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1416
      start: 1412
    functionDepth: 6
    functionLinenumber: 1412
    functionLinenumberEnd: 1416
    functionName: xmlSchemaGetIDCDesignation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetComponentDesignation
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetIDCDesignation(xmlChar **buf, xmlSchemaIDCPtr idc)'
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - pc
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1423
    functionDepth: 0
    functionLinenumber: 1423
    functionLinenumberEnd: 1436
    functionName: xmlSchemaWildcardPCToString
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaWildcardPCToString(int pc)'
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:1462,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:1466,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/xmlschemas.c:1471,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:1474,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemas.c:1476,1
    - Dst: xmlSchemaGetCanonValue
      Src: /src/libxml2/xmlschemas.c:1482,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1484,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlschemas.c:1497,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1506,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1508,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1511,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1512,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1514,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:1515,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1521,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1523,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 55
    argCount: 4
    argNames:
    - val
    - ws
    - retValue
    - for_hash
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaWhitespaceValueType
    - xmlChar**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1525
      start: 1449
    functionDepth: 5
    functionLinenumber: 1449
    functionLinenumberEnd: 1525
    functionName: xmlSchemaGetCanonValueWhtspExt_1
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSchemaValueGetNext
    - xmlSchemaValueGetAsString
    - xmlFree
    - xmlStrlen
    - FREE_AND_NULL
    - xmlSchemaGetValType
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaGetCanonValue
    - xmlSchemaCollapseString
    - xmlStrcat
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetCanonValueWhtspExt_1(xmlSchemaValPtr val,\n\t\t\t
      \        xmlSchemaWhitespaceValueType ws,\n\t\t\t         xmlChar **retValue,\n\t\t\t\t
      int for_hash)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetCanonValueWhtspExt_1
      Src: /src/libxml2/xmlschemas.c:1532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - val
    - ws
    - retValue
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaWhitespaceValueType
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1527
    functionDepth: 6
    functionLinenumber: 1527
    functionLinenumberEnd: 1533
    functionName: xmlSchemaGetCanonValueWhtspExt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetCanonValueWhtspExt_1
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetCanonValueWhtspExt(xmlSchemaValPtr val,\n\t\t\t       xmlSchemaWhitespaceValueType
      ws,\n\t\t\t       xmlChar **retValue)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetCanonValueWhtspExt_1
      Src: /src/libxml2/xmlschemas.c:1539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - val
    - retValue
    argTypes:
    - xmlSchemaValPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1541
      start: 1535
    functionDepth: 6
    functionLinenumber: 1535
    functionLinenumberEnd: 1541
    functionName: xmlSchemaGetCanonValueHash
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetCanonValueWhtspExt_1
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetCanonValueHash(xmlSchemaValPtr val,\n\t\t\t   xmlChar
      **retValue)"
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1574,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1579,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:1585,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1586,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:1587,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1588,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:1589,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1590,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1592,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1593,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1594,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1601,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1603,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:1605,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1606,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:1607,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1608,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:1609,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1610,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1612,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1614,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1615,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1616,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1624,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1626,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1627,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1629,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1630,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1631,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1639,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:1640,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1641,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1642,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:1643,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:1643,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1644,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1645,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1647,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1655,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1656,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1657,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1657,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1659,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1660,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:1664,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1670,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1671,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1672,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1672,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1674,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1681,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1683,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1685,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1686,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1687,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1691,1
    - Dst: xmlSchemaWildcardPCToString
      Src: /src/libxml2/xmlschemas.c:1691,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1693,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1707,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1708,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:1708,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1709,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1712,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1713,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1714,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:1714,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1715,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1716,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1723,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:1723,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1726,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:1726,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1727,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1728,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:1728,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1729,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1730,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1746,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1748,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1749,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1750,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1752,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1753,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1757,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1759,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:1759,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1761,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1763,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1764,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:1766,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:1768,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 165
    argCount: 4
    argNames:
    - buf
    - itemDes
    - item
    - itemNode
    argTypes:
    - xmlChar**
    - xmlChar*
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1564
    functionDepth: 6
    functionLinenumber: 1564
    functionLinenumberEnd: 1769
    functionName: xmlSchemaFormatItemForReport
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSchemaGetComponentDesignation
    - xmlFree
    - xmlSchemaGetComponentQName
    - FREE_AND_NULL
    - WXS_IS_LIST
    - WXS_ITEM_TYPE_NAME
    - xmlSchemaWildcardPCToString
    - xmlSchemaFacetTypeToString
    - WXS_IS_ATOMIC
    - xmlStrcat
    - WXS_ATTRUSE_DECL
    - xmlSchemaFormatQName
    - xmlEscapeFormatString
    - WXS_IS_UNION
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatItemForReport(xmlChar **buf,\n\t\t     const
      xmlChar *itemDes,\n\t\t     xmlSchemaBasicItemPtr item,\n\t\t     xmlNodePtr
      itemNode)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1789,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:1796,1
    - Dst: xmlSchemaGetCanonValueWhtspExt
      Src: /src/libxml2/xmlschemas.c:1801,1
    - Dst: xmlSchemaInternalErr
      Src: /src/libxml2/xmlschemas.c:1804,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1808,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:1813,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1815,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1816,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:1817,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:1819,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 3
    argNames:
    - actxt
    - buf
    - type
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlChar**
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1835
      start: 1779
    functionDepth: 7
    functionLinenumber: 1779
    functionLinenumberEnd: 1835
    functionName: xmlSchemaFormatFacetEnumSet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSchemaInternalErr
    - xmlSchemaGetCanonValueWhtspExt
    - xmlFree
    - xmlSchemaGetWhiteSpaceFacetValue
    - xmlStrcat
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatFacetEnumSet(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \   xmlChar **buf, xmlSchemaTypePtr type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlschemas.c:1863,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1848
    functionDepth: 2
    functionLinenumber: 1848
    functionLinenumberEnd: 1864
    functionName: xmlSchemaPErrMemory
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSchemaPErrMemory(xmlSchemaParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlschemas.c:1898,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/xmlschemas.c:1899,1
    - Dst: va_end
      Src: /src/libxml2/xmlschemas.c:1905,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:1908,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 11
    argNames:
    - ctxt
    - node
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - col
    - msg
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - xmlErrorLevel
    - char*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1867
    functionDepth: 4
    functionLinenumber: 1867
    functionLinenumberEnd: 1909
    functionName: xmlSchemaPErrFull
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVRaiseError
    - va_start
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPErrFull(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node,
      int code,\n                  xmlErrorLevel level, const char *file, int line,\n
      \                 const xmlChar *str1, const xmlChar *str2, const xmlChar *str3,\n
      \                 int col, const char *msg, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPErrFull
      Src: /src/libxml2/xmlschemas.c:1925,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctxt
    - node
    - code
    - msg
    - str1
    - str2
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1922
    functionDepth: 5
    functionLinenumber: 1922
    functionLinenumberEnd: 1927
    functionName: xmlSchemaPErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrFull
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPErr(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node, int
      code,\n              const char *msg, const xmlChar * str1, const xmlChar *
      str2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:1946,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:1948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 7
    argNames:
    - ctxt
    - node
    - child
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1941
    functionDepth: 6
    functionLinenumber: 1941
    functionLinenumberEnd: 1949
    functionName: xmlSchemaPErr2
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErr
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPErr2(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node,\n
      \              xmlNodePtr child, int error,\n               const char *msg,
      const xmlChar * str1, const xmlChar * str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPErrFull
      Src: /src/libxml2/xmlschemas.c:1975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 12
    argNames:
    - ctxt
    - node
    - code
    - strData1
    - strData2
    - strData3
    - msg
    - str1
    - str2
    - str3
    - str4
    - str5
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1978
      start: 1969
    functionDepth: 5
    functionLinenumber: 1969
    functionLinenumberEnd: 1978
    functionName: xmlSchemaPErrExt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrFull
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPErrExt(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node,
      int code,\n\t\tconst xmlChar * strData1, const xmlChar * strData2,\n\t\tconst
      xmlChar * strData3, const char *msg, const xmlChar * str1,\n\t\tconst xmlChar
      * str2, const xmlChar * str3, const xmlChar * str4,\n\t\tconst xmlChar * str5)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlschemas.c:2006,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2007
      start: 1991
    functionDepth: 2
    functionLinenumber: 1991
    functionLinenumberEnd: 2007
    functionName: xmlSchemaVErrMemory
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSchemaVErrMemory(xmlSchemaValidCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/xmlschemas.c:2041,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/xmlschemas.c:2042,1
    - Dst: va_end
      Src: /src/libxml2/xmlschemas.c:2048,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:2051,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 11
    argNames:
    - ctxt
    - node
    - code
    - level
    - file
    - line
    - str1
    - str2
    - str3
    - col
    - msg
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlNodePtr
    - int
    - xmlErrorLevel
    - char*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2010
    functionDepth: 4
    functionLinenumber: 2010
    functionLinenumberEnd: 2052
    functionName: xmlSchemaVErrFull
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlVRaiseError
    - xmlSchemaVErrMemory
    - va_start
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaVErrFull(xmlSchemaValidCtxtPtr ctxt, xmlNodePtr node,
      int code,\n                  xmlErrorLevel level, const char *file, int line,\n
      \                 const xmlChar *str1, const xmlChar *str2, const xmlChar *str3,\n
      \                 int col, const char *msg, ...)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidCtxtPtr::locFunc
      Src: /src/libxml2/xmlschemas.c:2128,1
    - Dst: xmlSchemaVErrFull
      Src: /src/libxml2/xmlschemas.c:2138,1
    - Dst: xmlSchemaPErrFull
      Src: /src/libxml2/xmlschemas.c:2144,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 41
    argCount: 10
    argNames:
    - ctxt
    - errorLevel
    - code
    - node
    - line
    - msg
    - str1
    - str2
    - str3
    - str4
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlErrorLevel
    - int
    - xmlNodePtr
    - int
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2149
      start: 2071
    functionDepth: 5
    functionLinenumber: 2071
    functionLinenumberEnd: 2149
    functionName: xmlSchemaErr4Line
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaVErrFull
    - xmlSchemaPErrFull
    - xmlSchemaValidCtxtPtr::locFunc
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaErr4Line(xmlSchemaAbstractCtxtPtr ctxt,\n\t\t  xmlErrorLevel
      errorLevel,\n\t\t  int code, xmlNodePtr node, int line, const char *msg,\n\t\t
      \ const xmlChar *str1, const xmlChar *str2,\n\t\t  const xmlChar *str3, const
      xmlChar *str4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaErr4Line
      Src: /src/libxml2/xmlschemas.c:2167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - actxt
    - error
    - node
    - msg
    - str1
    - str2
    - str3
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - int
    - xmlNodePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2169
      start: 2163
    functionDepth: 6
    functionLinenumber: 2163
    functionLinenumberEnd: 2169
    functionName: xmlSchemaErr3
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaErr4Line
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaErr3(xmlSchemaAbstractCtxtPtr actxt,\n\t      int error,
      xmlNodePtr node, const char *msg,\n\t      const xmlChar *str1, const xmlChar
      *str2, const xmlChar *str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaErr4Line
      Src: /src/libxml2/xmlschemas.c:2177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 8
    argNames:
    - actxt
    - error
    - node
    - msg
    - str1
    - str2
    - str3
    - str4
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - int
    - xmlNodePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2172
    functionDepth: 6
    functionLinenumber: 2172
    functionLinenumberEnd: 2179
    functionName: xmlSchemaErr4
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaErr4Line
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaErr4(xmlSchemaAbstractCtxtPtr actxt,\n\t      int error,
      xmlNodePtr node, const char *msg,\n\t      const xmlChar *str1, const xmlChar
      *str2,\n\t      const xmlChar *str3, const xmlChar *str4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaErr4
      Src: /src/libxml2/xmlschemas.c:2186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - actxt
    - error
    - node
    - msg
    - str1
    - str2
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - int
    - xmlNodePtr
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2187
      start: 2182
    functionDepth: 7
    functionLinenumber: 2182
    functionLinenumberEnd: 2187
    functionName: xmlSchemaErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaErr4
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaErr(xmlSchemaAbstractCtxtPtr actxt,\n\t     int error,
      xmlNodePtr node, const char *msg,\n\t     const xmlChar *str1, const xmlChar
      *str2)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2206,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2216,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2218,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2218,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2221,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2221,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2223,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2224,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2225,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2227,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2230,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2230,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2233,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2233,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2235,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2236,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2246,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2247,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2247,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2249,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2250,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2251,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2253,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2255,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2255,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2257,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2258,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2264,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:2274,1
    - Dst: xmlSchemaIsGlobalItem
      Src: /src/libxml2/xmlschemas.c:2281,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2282,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2283,1
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2283,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2285,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2286,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 3
    argNames:
    - msg
    - actxt
    - node
    argTypes:
    - xmlChar**
    - xmlSchemaAbstractCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2290
      start: 2189
    functionDepth: 7
    functionLinenumber: 2189
    functionLinenumberEnd: 2290
    functionName: xmlSchemaFormatNodeForError
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    - xmlSchemaIsGlobalItem
    - xmlStrcat
    - xmlSchemaFormatQName
    - xmlEscapeFormatString
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatNodeForError(xmlChar ** msg,\n\t\t\t    xmlSchemaAbstractCtxtPtr
      actxt,\n\t\t\t    xmlNodePtr node)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2303,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2304,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2305,1
    - Dst: xmlSchemaErr3
      Src: /src/libxml2/xmlschemas.c:2308,1
    - Dst: xmlSchemaErr3
      Src: /src/libxml2/xmlschemas.c:2311,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - actxt
    - funcName
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - char*
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2315
      start: 2293
    functionDepth: 7
    functionLinenumber: 2293
    functionLinenumberEnd: 2315
    functionName: xmlSchemaInternalErr2
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrcat
    - FREE_AND_NULL
    - xmlSchemaErr3
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaInternalErr2(xmlSchemaAbstractCtxtPtr actxt,\n\t\t     const
      char *funcName,\n\t\t     const char *message,\n\t\t     const xmlChar *str1,\n\t\t
      \    const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaInternalErr2
      Src: /src/libxml2/xmlschemas.c:2322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - actxt
    - funcName
    - message
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2323
      start: 2318
    functionDepth: 8
    functionLinenumber: 2318
    functionLinenumberEnd: 2323
    functionName: xmlSchemaInternalErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaInternalErr2
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaInternalErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t     const
      char *funcName,\n\t\t     const char *message)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - pctxt
    - funcName
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaParserCtxtPtr
    - char*
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 2327
    functionDepth: 0
    functionLinenumber: 2327
    functionLinenumberEnd: 2335
    functionName: xmlSchemaPInternalErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPInternalErr(xmlSchemaParserCtxtPtr pctxt,\n\t\t     const
      char *funcName,\n\t\t     const char *message,\n\t\t     const xmlChar *str1,\n\t\t
      \    const xmlChar *str2)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:2351,1
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2352,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2353,1
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2355,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2356,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2357,1
    - Dst: xmlSchemaErr4
      Src: /src/libxml2/xmlschemas.c:2358,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2360,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 9
    argNames:
    - actxt
    - error
    - node
    - item
    - message
    - str1
    - str2
    - str3
    - str4
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlSchemaBasicItemPtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2361
      start: 2339
    functionDepth: 8
    functionLinenumber: 2339
    functionLinenumberEnd: 2361
    functionName: xmlSchemaCustomErr4
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaErr4
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    - WXS_ITEM_NODE
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCustomErr4(xmlSchemaAbstractCtxtPtr actxt,\n\t\t   xmlParserErrors
      error,\n\t\t   xmlNodePtr node,\n\t\t   xmlSchemaBasicItemPtr item,\n\t\t   const
      char *message,\n\t\t   const xmlChar *str1, const xmlChar *str2,\n\t\t   const
      xmlChar *str3, const xmlChar *str4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCustomErr4
      Src: /src/libxml2/xmlschemas.c:2372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - actxt
    - error
    - node
    - item
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlSchemaBasicItemPtr
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2374
      start: 2364
    functionDepth: 9
    functionLinenumber: 2364
    functionLinenumberEnd: 2374
    functionName: xmlSchemaCustomErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCustomErr4
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCustomErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t   xmlParserErrors
      error,\n\t\t   xmlNodePtr node,\n\t\t   xmlSchemaBasicItemPtr item,\n\t\t   const
      char *message,\n\t\t   const xmlChar *str1,\n\t\t   const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2390,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2391,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2392,1
    - Dst: xmlSchemaErr4Line
      Src: /src/libxml2/xmlschemas.c:2395,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 8
    argNames:
    - actxt
    - error
    - node
    - ATTRIBUTE_UNUSED
    - message
    - str1
    - str2
    - str3
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlSchemaTypePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2399
      start: 2379
    functionDepth: 8
    functionLinenumber: 2379
    functionLinenumberEnd: 2399
    functionName: xmlSchemaCustomWarning
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaErr4Line
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCustomWarning(xmlSchemaAbstractCtxtPtr actxt,\n\t\t
      \  xmlParserErrors error,\n\t\t   xmlNodePtr node,\n\t\t   xmlSchemaTypePtr
      type ATTRIBUTE_UNUSED,\n\t\t   const char *message,\n\t\t   const xmlChar *str1,\n\t\t
      \  const xmlChar *str2,\n\t\t   const xmlChar *str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2414,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2415,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2416,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2419,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2423,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 7
    argNames:
    - vctxt
    - error
    - idcNode
    - ATTRIBUTE_UNUSED
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlParserErrors
    - xmlSchemaPSVIIDCNodePtr
    - xmlSchemaTypePtr
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2425
      start: 2404
    functionDepth: 4
    functionLinenumber: 2404
    functionLinenumberEnd: 2425
    functionName: xmlSchemaKeyrefErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrcat
    - xmlSchemaFormatQName
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaKeyrefErr(xmlSchemaValidCtxtPtr vctxt,\n\t\t   xmlParserErrors
      error,\n\t\t   xmlSchemaPSVIIDCNodePtr idcNode,\n\t\t   xmlSchemaTypePtr type
      ATTRIBUTE_UNUSED,\n\t\t   const char *message,\n\t\t   const xmlChar *str1,\n\t\t
      \  const xmlChar *str2)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - actxt
    - node
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2437
      start: 2427
    functionDepth: 0
    functionLinenumber: 2427
    functionLinenumberEnd: 2437
    functionName: xmlSchemaEvalErrorNodeType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaEvalErrorNodeType(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \  xmlNodePtr node)"
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2465
      start: 2439
    functionDepth: 0
    functionLinenumber: 2439
    functionLinenumberEnd: 2465
    functionName: xmlSchemaIsGlobalItem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsGlobalItem(xmlSchemaTypePtr item)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2477,1
    - Dst: xmlSchemaEvalErrorNodeType
      Src: /src/libxml2/xmlschemas.c:2479,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2481,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2483,1
    - Dst: xmlSchemaIsGlobalItem
      Src: /src/libxml2/xmlschemas.c:2486,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2487,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2489,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:2491,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2492,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:2493,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2494,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:2495,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2496,1
    - Dst: xmlSchemaIsGlobalItem
      Src: /src/libxml2/xmlschemas.c:2498,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2500,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2502,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2503,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2505,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2507,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2509,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:2509,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2510,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2511,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2513,1
    - Dst: xmlSchemaEvalErrorNodeType
      Src: /src/libxml2/xmlschemas.c:2514,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2516,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2518,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2519,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 6
    argNames:
    - actxt
    - error
    - node
    - value
    - type
    - displayValue
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlChar*
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2467
    functionDepth: 8
    functionLinenumber: 2467
    functionLinenumberEnd: 2520
    functionName: xmlSchemaSimpleTypeErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - FREE_AND_NULL
    - WXS_IS_LIST
    - xmlSchemaFormatQName
    - xmlSchemaIsGlobalItem
    - WXS_IS_ATOMIC
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - xmlSchemaEvalErrorNodeType
    - xmlEscapeFormatString
    - xmlSchemaErr
    - WXS_IS_UNION
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSimpleTypeErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t
      \      xmlParserErrors error,\n\t\t       xmlNodePtr node,\n\t\t       const
      xmlChar *value,\n\t\t       xmlSchemaTypePtr type,\n\t\t       int displayValue)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2529,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2531,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - str
    - ni
    - node
    argTypes:
    - xmlChar**
    - xmlSchemaNodeInfoPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2535
      start: 2522
    functionDepth: 4
    functionLinenumber: 2522
    functionLinenumberEnd: 2535
    functionName: xmlSchemaFormatErrorNodeQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatErrorNodeQName(xmlChar ** str,\n\t\t\t      xmlSchemaNodeInfoPtr
      ni,\n\t\t\t      xmlNodePtr node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2545,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2546,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2547,1
    - Dst: xmlSchemaFormatErrorNodeQName
      Src: /src/libxml2/xmlschemas.c:2548,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2550,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - actxt
    - error
    - ni
    - node
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlSchemaAttrInfoPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2552
      start: 2537
    functionDepth: 8
    functionLinenumber: 2537
    functionLinenumberEnd: 2552
    functionName: xmlSchemaIllegalAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - FREE_AND_NULL
    - xmlSchemaFormatErrorNodeQName
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - xmlSchemaErr
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaIllegalAttrErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\txmlParserErrors
      error,\n\t\t\txmlSchemaAttrInfoPtr ni,\n\t\t\txmlNodePtr node)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2569,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2570,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2571,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2579,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2581,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2591,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2600,1
    - Dst: xmlStrncat
      Src: /src/libxml2/xmlschemas.c:2605,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2619,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2625,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2627,1
    - Dst: xmlStrncat
      Src: /src/libxml2/xmlschemas.c:2629,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2630,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2632,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2633,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2635,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2639,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2640,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2643,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2645,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2646,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:2646,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2647,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2649,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2650,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:2651,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 8
    argNames:
    - actxt
    - error
    - node
    - ATTRIBUTE_UNUSED
    - message
    - nbval
    - nbneg
    - values
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlSchemaTypePtr
    - char*
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2652
      start: 2555
    functionDepth: 8
    functionLinenumber: 2555
    functionLinenumberEnd: 2652
    functionName: xmlSchemaComplexTypeErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - FREE_AND_NULL
    - xmlStrncat
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - xmlEscapeFormatString
    - xmlSchemaErr
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaComplexTypeErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t
      \       xmlParserErrors error,\n\t\t        xmlNodePtr node,\n\t\t\txmlSchemaTypePtr
      type ATTRIBUTE_UNUSED,\n\t\t\tconst char *message,\n\t\t\tint nbval,\n\t\t\tint
      nbneg,\n\t\t\txmlChar **values)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaEvalErrorNodeType
      Src: /src/libxml2/xmlschemas.c:2668,1
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2670,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2679,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2680,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2681,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:2681,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2682,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2697,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2699,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:2701,1
    - Dst: xmlSchemaGetFacetValueAsULong
      Src: /src/libxml2/xmlschemas.c:2701,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:2702,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2705,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2708,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2711,1
    - Dst: xmlSchemaErr3
      Src: /src/libxml2/xmlschemas.c:2715,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2718,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2722,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2724,1
    - Dst: xmlSchemaFormatFacetEnumSet
      Src: /src/libxml2/xmlschemas.c:2725,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2727,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2729,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2732,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2734,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2737,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2739,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2742,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2744,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2747,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2749,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2752,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2754,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2757,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2759,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2762,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2763,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2765,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2766,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2769,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2770,1
    - Dst: xmlSchemaErr
      Src: /src/libxml2/xmlschemas.c:2771,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2773,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:2774,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 10
    argNames:
    - actxt
    - error
    - node
    - value
    - length
    - type
    - facet
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlChar*
    - unsigned long
    - xmlSchemaTypePtr
    - xmlSchemaFacetPtr
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2655
    functionDepth: 8
    functionLinenumber: 2655
    functionLinenumberEnd: 2775
    functionName: xmlSchemaFacetErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSchemaFormatFacetEnumSet
    - FREE_AND_NULL
    - xmlSchemaFacetTypeToString
    - snprintf
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - xmlSchemaGetFacetValueAsULong
    - xmlSchemaEvalErrorNodeType
    - xmlSchemaErr
    - xmlSchemaErr3
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaFacetErr(xmlSchemaAbstractCtxtPtr actxt,\n\t\t  xmlParserErrors
      error,\n\t\t  xmlNodePtr node,\n\t\t  const xmlChar *value,\n\t\t  unsigned
      long length,\n\t\t  xmlSchemaTypePtr type,\n\t\t  xmlSchemaFacetPtr facet,\n\t\t
      \ const char *message,\n\t\t  const xmlChar *str1,\n\t\t  const xmlChar *str2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - err
    - ','
    - type
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2779
      start: 2777
    functionDepth: 0
    functionLinenumber: 2777
    functionLinenumberEnd: 2779
    functionName: VERROR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VERROR(err, type, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2781
      start: 2780
    functionDepth: 0
    functionLinenumber: 2780
    functionLinenumberEnd: 2781
    functionName: VERROR_INT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VERROR_INT(func, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2783
      start: 2782
    functionDepth: 0
    functionLinenumber: 2782
    functionLinenumberEnd: 2783
    functionName: PERROR_INT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PERROR_INT(func, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2784
      start: 2783
    functionDepth: 0
    functionLinenumber: 2783
    functionLinenumberEnd: 2784
    functionName: PERROR_INT2
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PERROR_INT2(func, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2786
      start: 2785
    functionDepth: 0
    functionLinenumber: 2785
    functionLinenumberEnd: 2786
    functionName: AERROR_INT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: AERROR_INT(func, msg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2808,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:2811,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:2813,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - ctxt
    - error
    - ownerItem
    - ownerElem
    - name
    - message
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2817
      start: 2798
    functionDepth: 7
    functionLinenumber: 2798
    functionLinenumberEnd: 2817
    functionName: xmlSchemaPMissingAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - FREE_AND_NULL
    - xmlSchemaFormatItemForReport
    - xmlSchemaPErr
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPMissingAttrErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      xmlParserErrors error,\n\t\t\t xmlSchemaBasicItemPtr ownerItem,\n\t\t\t xmlNodePtr
      ownerElem,\n\t\t\t const char *name,\n\t\t\t const char *message)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2847,1
    - Dst: xmlSchemaItemTypeToStr
      Src: /src/libxml2/xmlschemas.c:2849,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:2850,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:2854,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2856,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2857,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 9
    argNames:
    - ctxt
    - error
    - ownerItem
    - ownerElem
    - name
    - refName
    - refURI
    - refType
    - refTypeStr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlSchemaTypeType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2858
      start: 2834
    functionDepth: 7
    functionLinenumber: 2834
    functionLinenumberEnd: 2858
    functionName: xmlSchemaPResCompAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    - xmlSchemaItemTypeToStr
    - xmlSchemaPErrExt
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPResCompAttrErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      xmlParserErrors error,\n\t\t\t xmlSchemaBasicItemPtr ownerItem,\n\t\t\t xmlNodePtr
      ownerElem,\n\t\t\t const char *name,\n\t\t\t const xmlChar *refName,\n\t\t\t
      const xmlChar *refURI,\n\t\t\t xmlSchemaTypeType refType,\n\t\t\t const char
      *refTypeStr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2881,1
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2883,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:2888,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:2893,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2898,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 6
    argNames:
    - ctxt
    - error
    - ownerDes
    - ownerItem
    - attr
    - msg
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlChar**
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2899
      start: 2870
    functionDepth: 7
    functionLinenumber: 2870
    functionLinenumberEnd: 2899
    functionName: xmlSchemaPCustomAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrExt
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPCustomAttrErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\txmlParserErrors
      error,\n\t\t\txmlChar **ownerDes,\n\t\t\txmlSchemaBasicItemPtr ownerItem,\n\t\t\txmlAttrPtr
      attr,\n\t\t\tconst char *msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:2917,1
    - Dst: xmlSchemaFormatQNameNs
      Src: /src/libxml2/xmlschemas.c:2920,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2922,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - ctxt
    - error
    - ATTRIBUTE_UNUSED
    - attr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2909
    functionDepth: 8
    functionLinenumber: 2909
    functionLinenumberEnd: 2924
    functionName: xmlSchemaPIllegalAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatNodeForError
    - xmlSchemaFormatQNameNs
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPIllegalAttrErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      xmlParserErrors error,\n\t\t\t xmlSchemaBasicItemPtr ownerComp ATTRIBUTE_UNUSED,\n\t\t\t
      xmlAttrPtr attr)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:2950,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:2951,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2952,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:2953,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:2955,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:2956,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2958,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:2959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 8
    argNames:
    - ctxt
    - error
    - item
    - itemElem
    - message
    - str1
    - str2
    - str3
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2960
      start: 2939
    functionDepth: 7
    functionLinenumber: 2939
    functionLinenumberEnd: 2960
    functionName: xmlSchemaPCustomErrExt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    - xmlSchemaPErrExt
    - WXS_ITEM_NODE
    - xmlStrcat
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPCustomErrExt(xmlSchemaParserCtxtPtr ctxt,\n\t\t    xmlParserErrors
      error,\n\t\t    xmlSchemaBasicItemPtr item,\n\t\t    xmlNodePtr itemElem,\n\t\t
      \   const char *message,\n\t\t    const xmlChar *str1,\n\t\t    const xmlChar
      *str2,\n\t\t    const xmlChar *str3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:2980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctxt
    - error
    - item
    - itemElem
    - message
    - str1
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2982
      start: 2973
    functionDepth: 8
    functionLinenumber: 2973
    functionLinenumberEnd: 2982
    functionName: xmlSchemaPCustomErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPCustomErrExt
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPCustomErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t    xmlParserErrors
      error,\n\t\t    xmlSchemaBasicItemPtr item,\n\t\t    xmlNodePtr itemElem,\n\t\t
      \   const char *message,\n\t\t    const xmlChar *str1)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3010,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3011,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3012,1
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3013,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3015,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3016,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3017,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3018,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 10
    argNames:
    - ctxt
    - error
    - node
    - ownerItem
    - attruse
    - message
    - str1
    - str2
    - str3
    - str4
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlNodePtr
    - xmlSchemaBasicItemPtr
    - xmlSchemaAttributeUsePtr
    - char*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3022
      start: 2999
    functionDepth: 7
    functionLinenumber: 2999
    functionLinenumberEnd: 3022
    functionName: xmlSchemaPAttrUseErr4
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrcat
    - xmlSchemaFormatItemForReport
    - xmlFree
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPAttrUseErr4(xmlSchemaParserCtxtPtr ctxt,\n\t\t    xmlParserErrors
      error,\n\t\t    xmlNodePtr node,\n\t\t    xmlSchemaBasicItemPtr ownerItem,\n\t\t
      \   const xmlSchemaAttributeUsePtr attruse,\n\t\t    const char *message,\n\t\t
      \   const xmlChar *str1, const xmlChar *str2,\n\t\t    const xmlChar *str3,const
      xmlChar *str4)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3042,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:3043,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:3046,1
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3047,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3049,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3050,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - ctxt
    - error
    - type
    - baseType
    - facet
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    - xmlSchemaFacetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3051
      start: 3033
    functionDepth: 7
    functionLinenumber: 3033
    functionLinenumberEnd: 3051
    functionName: xmlSchemaPIllegalFacetAtomicErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrExt
    - xmlSchemaFacetTypeToString
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPIllegalFacetAtomicErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \ xmlParserErrors error,\n\t\t\t  xmlSchemaTypePtr type,\n\t\t\t  xmlSchemaTypePtr
      baseType,\n\t\t\t  xmlSchemaFacetPtr facet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3069,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:3071,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:3073,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3074,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctxt
    - error
    - type
    - facet
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaTypePtr
    - xmlSchemaFacetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3075
      start: 3061
    functionDepth: 7
    functionLinenumber: 3061
    functionLinenumberEnd: 3075
    functionName: xmlSchemaPIllegalFacetListUnionErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - FREE_AND_NULL
    - xmlSchemaFacetTypeToString
    - xmlSchemaFormatItemForReport
    - xmlSchemaPErr
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPIllegalFacetListUnionErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \ xmlParserErrors error,\n\t\t\t  xmlSchemaTypePtr type,\n\t\t\t  xmlSchemaFacetPtr
      facet)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3097,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:3098,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - ctxt
    - error
    - ownerItem
    - attr
    - name1
    - name2
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3102
      start: 3087
    functionDepth: 7
    functionLinenumber: 3087
    functionLinenumberEnd: 3102
    functionName: xmlSchemaPMutualExclAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrExt
    - xmlSchemaFormatItemForReport
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPMutualExclAttrErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      xmlParserErrors error,\n\t\t\t xmlSchemaBasicItemPtr ownerItem,\n\t\t\t xmlAttrPtr
      attr,\n\t\t\t const char *name1,\n\t\t\t const char *name2)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatNodeForError
      Src: /src/libxml2/xmlschemas.c:3133,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3140,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3142,1
    - Dst: xmlSchemaIsGlobalItem
      Src: /src/libxml2/xmlschemas.c:3144,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3145,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3147,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:3149,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3150,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:3151,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3152,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:3153,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3154,1
    - Dst: xmlSchemaIsGlobalItem
      Src: /src/libxml2/xmlschemas.c:3156,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3158,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3160,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:3161,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:3163,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:3165,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3167,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:3167,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3168,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3169,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3173,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3175,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/xmlschemas.c:3179,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3180,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3181,1
    - Dst: xmlEscapeFormatString
      Src: /src/libxml2/xmlschemas.c:3181,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3182,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3183,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3185,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:3187,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:3189,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3191,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:3192,1
    - Dst: xmlSchemaPErrExt
      Src: /src/libxml2/xmlschemas.c:3193,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3197,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 10
    argNames:
    - ctxt
    - error
    - ATTRIBUTE_UNUSED
    - node
    - type
    - expected
    - value
    - message
    - str1
    - str2
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - xmlSchemaTypePtr
    - char*
    - xmlChar*
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3198
      start: 3120
    functionDepth: 8
    functionLinenumber: 3120
    functionLinenumberEnd: 3198
    functionName: xmlSchemaPSimpleTypeErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlCharStrdup
    - FREE_AND_NULL
    - WXS_IS_LIST
    - xmlSchemaPErrExt
    - xmlSchemaIsGlobalItem
    - xmlSchemaPErr
    - WXS_IS_ATOMIC
    - xmlSchemaFormatNodeForError
    - xmlStrcat
    - xmlSchemaFormatQName
    - xmlEscapeFormatString
    - WXS_IS_UNION
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPSimpleTypeErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t\txmlParserErrors
      error,\n\t\t\txmlSchemaBasicItemPtr ownerItem ATTRIBUTE_UNUSED,\n\t\t\txmlNodePtr
      node,\n\t\t\txmlSchemaTypePtr type,\n\t\t\tconst char *expected,\n\t\t\tconst
      xmlChar *value,\n\t\t\tconst char *message,\n\t\t\tconst xmlChar *str1,\n\t\t\tconst
      xmlChar *str2)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatItemForReport
      Src: /src/libxml2/xmlschemas.c:3222,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:3224,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:3229,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:3233,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:3238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 7
    argNames:
    - ctxt
    - error
    - ownerItem
    - ownerElem
    - child
    - message
    - content
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlParserErrors
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - xmlNodePtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3239
      start: 3211
    functionDepth: 7
    functionLinenumber: 3211
    functionLinenumberEnd: 3239
    functionName: xmlSchemaPContentErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFormatItemForReport
    - xmlSchemaPErr2
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPContentErr(xmlSchemaParserCtxtPtr ctxt,\n\t\t     xmlParserErrors
      error,\n\t\t     xmlSchemaBasicItemPtr ownerItem,\n\t\t     xmlNodePtr ownerElem,\n\t\t
      \    xmlNodePtr child,\n\t\t     const char *message,\n\t\t     const char *content)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:3274,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3276,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:3279,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:3281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3284
      start: 3269
    functionDepth: 3
    functionLinenumber: 3269
    functionLinenumberEnd: 3284
    functionName: xmlSchemaNewSchema
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlDictReference
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaPtr
    signature: xmlSchemaPtr xmlSchemaNewSchema(xmlSchemaParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:3296,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:3300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3303
      start: 3291
    functionDepth: 0
    functionLinenumber: 3291
    functionLinenumberEnd: 3303
    functionName: xmlSchemaNewFacet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlSchemaFacet
    signature: 'xmlSchemaFacet *

      xmlSchemaNewFacet(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:3317,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3319,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:3322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3325
      start: 3312
    functionDepth: 3
    functionLinenumber: 3312
    functionLinenumberEnd: 3325
    functionName: xmlSchemaNewAnnot
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaAnnotPtr
    signature: xmlSchemaAnnotPtr xmlSchemaNewAnnot(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr
      node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:3332,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3334,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:3337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3339
      start: 3327
    functionDepth: 3
    functionLinenumber: 3327
    functionLinenumberEnd: 3339
    functionName: xmlSchemaItemListCreate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaItemListPtr
    signature: xmlSchemaItemListPtr xmlSchemaItemListCreate(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSchemaItemListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3350
    functionName: xmlSchemaItemListClear
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaItemListClear(xmlSchemaItemListPtr list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:3360,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:3364,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - list
    - initialSize
    argTypes:
    - xmlSchemaItemListPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3371
      start: 3352
    functionDepth: 1
    functionLinenumber: 3352
    functionLinenumberEnd: 3371
    functionName: xmlSchemaItemListGrow
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlSchemaItemListGrow(xmlSchemaItemListPtr list, int initialSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListGrow
      Src: /src/libxml2/xmlschemas.c:3379,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3380,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - list
    - initialSize
    - item
    argTypes:
    - xmlSchemaItemListPtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3387
      start: 3373
    functionDepth: 3
    functionLinenumber: 3373
    functionLinenumberEnd: 3387
    functionName: xmlSchemaItemListAddSize
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrMemory
    - xmlSchemaItemListGrow
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaItemListAddSize(xmlSchemaItemListPtr list,\n\t\t\t int
      initialSize,\n\t\t\t void *item)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:3392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - list
    - item
    argTypes:
    - xmlSchemaItemListPtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3393
      start: 3389
    functionDepth: 4
    functionLinenumber: 3389
    functionLinenumberEnd: 3393
    functionName: xmlSchemaItemListAdd
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaItemListAddSize
    linkageType: ''
    returnType: int
    signature: int xmlSchemaItemListAdd(xmlSchemaItemListPtr list, void *item)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListGrow
      Src: /src/libxml2/xmlschemas.c:3399,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3400,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - list
    - item
    - idx
    argTypes:
    - xmlSchemaItemListPtr
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3418
      start: 3395
    functionDepth: 3
    functionLinenumber: 3395
    functionLinenumberEnd: 3418
    functionName: xmlSchemaItemListInsert
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErrMemory
    - xmlSchemaItemListGrow
    linkageType: ''
    returnType: int
    signature: int xmlSchemaItemListInsert(xmlSchemaItemListPtr list, void *item,
      int idx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3429,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - list
    - idx
    argTypes:
    - xmlSchemaItemListPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3441
      start: 3420
    functionDepth: 0
    functionLinenumber: 3420
    functionLinenumberEnd: 3441
    functionName: xmlSchemaItemListRemove
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSchemaItemListRemove(xmlSchemaItemListPtr list, int idx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3454,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3455,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSchemaItemListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3456
      start: 3448
    functionDepth: 0
    functionLinenumber: 3448
    functionLinenumberEnd: 3456
    functionName: xmlSchemaItemListFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaItemListFree(xmlSchemaItemListPtr list)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaComponentListFree
      Src: /src/libxml2/xmlschemas.c:3464,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:3465,1
    - Dst: xmlSchemaComponentListFree
      Src: /src/libxml2/xmlschemas.c:3468,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:3469,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3476,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:3480,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3483,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:3484,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3484,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3486,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - bucket
    argTypes:
    - xmlSchemaBucketPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3487
      start: 3458
    functionDepth: 3
    functionLinenumber: 3458
    functionLinenumberEnd: 3487
    functionName: xmlSchemaBucketFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaComponentListFree
    - xmlFree
    - xmlSchemaItemListFree
    - WXS_IMPBUCKET
    - xmlSchemaFree
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void xmlSchemaBucketFree(xmlSchemaBucketPtr bucket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bucket
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3493
      start: 3489
    functionDepth: 4
    functionLinenumber: 3489
    functionLinenumberEnd: 3493
    functionName: xmlSchemaBucketFreeEntry
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaBucketFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaBucketFreeEntry(void *bucket, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3503,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:3504,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3508,1
    - Dst: WXS_IS_BUCKET_INCREDEF
      Src: /src/libxml2/xmlschemas.c:3510,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:3514,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:3516,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:3519,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:3522,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3524,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:3527,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3529,1
    - Dst: WXS_HAS_BUCKETS
      Src: /src/libxml2/xmlschemas.c:3539,1
    - Dst: WXS_IS_BUCKET_INCREDEF
      Src: /src/libxml2/xmlschemas.c:3540,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:3541,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3543,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3549,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3550,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:3557,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3559,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3566,1
    - Dst: xmlSchemaNewSchema
      Src: /src/libxml2/xmlschemas.c:3566,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3567,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3568,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3571,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:3574,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/xmlschemas.c:3582,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3583,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3585,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:3590,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:3593,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:3596,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3598,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:3603,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3603,1
    - Dst: WXS_INCBUCKET
      Src: /src/libxml2/xmlschemas.c:3604,1
    - Dst: WXS_IMPBUCKET
      Src: /src/libxml2/xmlschemas.c:3605,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3605,1
    - Dst: WXS_INCBUCKET
      Src: /src/libxml2/xmlschemas.c:3607,1
    - Dst: WXS_INCBUCKET
      Src: /src/libxml2/xmlschemas.c:3608,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3608,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:3612,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3614,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:3618,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:3619,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:3627,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:3627,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 87
    argCount: 3
    argNames:
    - pctxt
    - type
    - targetNamespace
    argTypes:
    - xmlSchemaParserCtxtPtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3630
      start: 3495
    functionDepth: 6
    functionLinenumber: 3495
    functionLinenumberEnd: 3630
    functionName: xmlSchemaBucketCreate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_BUCKET_INCREDEF
    - WXS_IS_BUCKET_IMPMAIN
    - WXS_CONSTRUCTOR
    - WXS_HAS_BUCKETS
    - xmlSchemaItemListAdd
    - xmlHashAddEntry
    - WXS_INCBUCKET
    - xmlSchemaBucketFree
    - xmlMalloc
    - xmlHashCreateDict
    - WXS_IMPBUCKET
    - PERROR_INT
    - xmlSchemaItemListCreate
    - xmlSchemaNewSchema
    - memset
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaBucketPtr
    signature: "xmlSchemaBucketPtr xmlSchemaBucketCreate(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      int type, const xmlChar *targetNamespace)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:3636,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:3640,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - list
    - initialSize
    - item
    argTypes:
    - xmlSchemaItemListPtr*
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3641
      start: 3632
    functionDepth: 4
    functionLinenumber: 3632
    functionLinenumberEnd: 3641
    functionName: xmlSchemaAddItemSize
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaItemListCreate
    - xmlSchemaItemListAddSize
    linkageType: ''
    returnType: int
    signature: int xmlSchemaAddItemSize(xmlSchemaItemListPtr *list, int initialSize,
      void *item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3654,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3661,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - annot
    argTypes:
    - xmlSchemaAnnotPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3664
      start: 3648
    functionDepth: 0
    functionLinenumber: 3648
    functionLinenumberEnd: 3664
    functionName: xmlSchemaFreeAnnot
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeAnnot(xmlSchemaAnnotPtr annot)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3677,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3678,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - nota
    argTypes:
    - xmlSchemaNotationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3679
      start: 3671
    functionDepth: 1
    functionLinenumber: 3671
    functionLinenumberEnd: 3679
    functionName: xmlSchemaFreeNotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeNotation(xmlSchemaNotationPtr nota)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3692,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:3694,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3695,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlSchemaAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3696
      start: 3686
    functionDepth: 1
    functionLinenumber: 3686
    functionLinenumberEnd: 3696
    functionName: xmlSchemaFreeAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlSchemaFreeValue
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeAttribute(xmlSchemaAttributePtr attr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3709,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:3711,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3712,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - use
    argTypes:
    - xmlSchemaAttributeUsePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3713
      start: 3703
    functionDepth: 1
    functionLinenumber: 3703
    functionLinenumberEnd: 3713
    functionName: xmlSchemaFreeAttributeUse
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlSchemaFreeValue
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeAttributeUse(xmlSchemaAttributeUsePtr use)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - prohib
    argTypes:
    - xmlSchemaAttributeUseProhibPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3726
      start: 3720
    functionDepth: 0
    functionLinenumber: 3720
    functionLinenumberEnd: 3726
    functionName: xmlSchemaFreeAttributeUseProhib
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeAttributeUseProhib(xmlSchemaAttributeUseProhibPtr
      prohib)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3740,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - set
    argTypes:
    - xmlSchemaWildcardNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3743
      start: 3733
    functionDepth: 0
    functionLinenumber: 3733
    functionLinenumberEnd: 3743
    functionName: xmlSchemaFreeWildcardNsSet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeWildcardNsSet(xmlSchemaWildcardNsPtr set)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3756,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:3758,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3760,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3761,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - wildcard
    argTypes:
    - xmlSchemaWildcard*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3762
      start: 3750
    functionDepth: 1
    functionLinenumber: 3750
    functionLinenumberEnd: 3762
    functionName: xmlSchemaFreeWildcard
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaFreeWildcardNsSet
    - xmlSchemaFreeAnnot
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeWildcard(xmlSchemaWildcard *wildcard)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3775,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:3777,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3778,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - attrGr
    argTypes:
    - xmlSchemaAttributeGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3779
      start: 3769
    functionDepth: 1
    functionLinenumber: 3769
    functionLinenumberEnd: 3779
    functionName: xmlSchemaFreeAttributeGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlSchemaItemListFree
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeAttributeGroup(xmlSchemaAttributeGroupPtr attrGr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaQNameRefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3790
      start: 3786
    functionDepth: 0
    functionLinenumber: 3786
    functionLinenumberEnd: 3790
    functionName: xmlSchemaFreeQNameRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeQNameRef(xmlSchemaQNameRefPtr item)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3804,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - link
    argTypes:
    - xmlSchemaTypeLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3807
      start: 3797
    functionDepth: 0
    functionLinenumber: 3797
    functionLinenumberEnd: 3807
    functionName: xmlSchemaFreeTypeLinkList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeTypeLinkList(xmlSchemaTypeLinkPtr link)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3816,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmlschemas.c:3818,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3819,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - sto
    argTypes:
    - xmlSchemaIDCStateObjPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3822
      start: 3809
    functionDepth: 1
    functionLinenumber: 3809
    functionLinenumberEnd: 3822
    functionName: xmlSchemaFreeIDCStateObjList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeIDCStateObjList(xmlSchemaIDCStateObjPtr sto)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3837,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmlschemas.c:3841,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3842,1
    - Dst: xmlFreePattern
      Src: /src/libxml2/xmlschemas.c:3851,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3852,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3855,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - idcDef
    argTypes:
    - xmlSchemaIDCPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3856
      start: 3829
    functionDepth: 2
    functionLinenumber: 3829
    functionLinenumberEnd: 3856
    functionName: xmlSchemaFreeIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFreePattern
    - xmlSchemaFreeAnnot
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeIDC(xmlSchemaIDCPtr idcDef)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3869,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/xmlschemas.c:3871,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:3873,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3874,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3875
      start: 3863
    functionDepth: 1
    functionLinenumber: 3863
    functionLinenumberEnd: 3875
    functionName: xmlSchemaFreeElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlSchemaFreeValue
    - xmlRegFreeRegexp
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeElement(xmlSchemaElementPtr elem)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:3888,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/xmlschemas.c:3890,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3892,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3893,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - facet
    argTypes:
    - xmlSchemaFacet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3894
      start: 3882
    functionDepth: 1
    functionLinenumber: 3882
    functionLinenumberEnd: 3894
    functionName: xmlSchemaFreeFacet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlSchemaFreeValue
    - xmlRegFreeRegexp
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeFacet(xmlSchemaFacet *facet)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3907,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/xmlschemas.c:3914,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:3919,1
    - Dst: xmlSchemaFreeTypeLinkList
      Src: /src/libxml2/xmlschemas.c:3921,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3928,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/xmlschemas.c:3933,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3934,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3935
      start: 3901
    functionDepth: 2
    functionLinenumber: 3901
    functionLinenumberEnd: 3935
    functionName: xmlSchemaFreeType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaFreeTypeLinkList
    - xmlSchemaFreeFacet
    - xmlFree
    - xmlRegFreeRegexp
    - xmlSchemaFreeAnnot
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeType(xmlSchemaType *type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3946,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3947,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaModelGroupDefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3948
      start: 3942
    functionDepth: 1
    functionLinenumber: 3942
    functionLinenumberEnd: 3948
    functionName: xmlSchemaFreeModelGroupDef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeModelGroupDef(xmlSchemaModelGroupDefPtr item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3959,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3960,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - item
    argTypes:
    - xmlSchemaModelGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3961
      start: 3955
    functionDepth: 1
    functionLinenumber: 3955
    functionLinenumberEnd: 3961
    functionName: xmlSchemaFreeModelGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeAnnot
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeModelGroup(xmlSchemaModelGroupPtr item)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeType
      Src: /src/libxml2/xmlschemas.c:3980,1
    - Dst: xmlSchemaFreeAttribute
      Src: /src/libxml2/xmlschemas.c:3983,1
    - Dst: xmlSchemaFreeAttributeUse
      Src: /src/libxml2/xmlschemas.c:3986,1
    - Dst: xmlSchemaFreeAttributeUseProhib
      Src: /src/libxml2/xmlschemas.c:3989,1
    - Dst: xmlSchemaFreeElement
      Src: /src/libxml2/xmlschemas.c:3993,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:3997,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:3998,1
    - Dst: xmlSchemaFreeModelGroup
      Src: /src/libxml2/xmlschemas.c:4003,1
    - Dst: xmlSchemaFreeAttributeGroup
      Src: /src/libxml2/xmlschemas.c:4006,1
    - Dst: xmlSchemaFreeModelGroupDef
      Src: /src/libxml2/xmlschemas.c:4010,1
    - Dst: xmlSchemaFreeWildcard
      Src: /src/libxml2/xmlschemas.c:4015,1
    - Dst: xmlSchemaFreeIDC
      Src: /src/libxml2/xmlschemas.c:4020,1
    - Dst: xmlSchemaFreeNotation
      Src: /src/libxml2/xmlschemas.c:4023,1
    - Dst: xmlSchemaFreeQNameRef
      Src: /src/libxml2/xmlschemas.c:4026,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 61
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSchemaItemListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4035
      start: 3963
    functionDepth: 3
    functionLinenumber: 3963
    functionLinenumberEnd: 4035
    functionName: xmlSchemaComponentListFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFreeAttributeUseProhib
    - xmlSchemaFreeAttributeGroup
    - xmlSchemaFreeModelGroup
    - xmlFree
    - xmlSchemaFreeType
    - xmlSchemaFreeElement
    - xmlSchemaFreeIDC
    - xmlSchemaFreeAttribute
    - xmlSchemaFreeNotation
    - xmlSchemaFreeWildcard
    - xmlSchemaFreeModelGroupDef
    - xmlSchemaFreeAnnot
    - xmlSchemaFreeQNameRef
    - xmlSchemaFreeAttributeUse
    linkageType: ''
    returnType: void
    signature: void xmlSchemaComponentListFree(xmlSchemaItemListPtr list)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4053,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4055,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4057,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4059,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4061,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4063,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4065,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:4068,1
    - Dst: xmlSchemaBucketFree
      Src: /src/libxml2/xmlschemas.c:4073,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:4075,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:4078,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:4081,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:4082,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlSchema*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4083
      start: 4042
    functionDepth: 4
    functionLinenumber: 4042
    functionLinenumberEnd: 4083
    functionName: xmlSchemaFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 8
    functionsReached:
    - xmlDictFree
    - xmlFree
    - xmlHashFree
    - xmlSchemaBucketFree
    - xmlSchemaFreeAnnot
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFree(xmlSchema *schema)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4117,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4119,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4120,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4122,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4123,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4126,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4128,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4130,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4132,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4142,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4144,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4146,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4148,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4150,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4151,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4157,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4162,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4164,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4166,1
    - Dst: xmlSchemaTypeDump
      Src: /src/libxml2/xmlschemas.c:4171,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4177,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4179,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4181,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 47
    argCount: 5
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4183
      start: 4105
    functionDepth: 1
    functionLinenumber: 4105
    functionLinenumberEnd: 4183
    functionName: xmlSchemaElementDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlSchemaTypeDump
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaElementDump(void *payload, void *data,\n                     const
      xmlChar * name ATTRIBUTE_UNUSED,\n\t\t     const xmlChar * namespace ATTRIBUTE_UNUSED,\n
      \                    const xmlChar * context ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xmlschemas.c:4199,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4201,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:4202,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - output
    - annot
    argTypes:
    - FILE*
    - xmlSchemaAnnotPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4205
      start: 4191
    functionDepth: 9
    functionLinenumber: 4191
    functionLinenumberEnd: 4205
    functionName: xmlSchemaAnnotDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlNodeGetContent
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaAnnotDump(FILE * output, xmlSchemaAnnotPtr annot)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4227,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4229,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4234,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4238,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:4238,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:4241,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4244,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4247,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4250,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4253,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4256,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4261,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4263,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4265,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4266,1
    - Dst: xmlSchemaContentModelDump
      Src: /src/libxml2/xmlschemas.c:4272,1
    - Dst: xmlSchemaContentModelDump
      Src: /src/libxml2/xmlschemas.c:4276,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 49
    argCount: 3
    argNames:
    - particle
    - output
    - depth
    argTypes:
    - xmlSchemaParticlePtr
    - FILE*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4278
      start: 4214
    functionDepth: 4
    functionLinenumber: 4214
    functionLinenumberEnd: 4278
    functionName: xmlSchemaContentModelDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlSchemaFormatQName
    - xmlSchemaContentModelDump
    - FREE_AND_NULL
    linkageType: ''
    returnType: void
    signature: void xmlSchemaContentModelDump(xmlSchemaParticlePtr particle, FILE
      * output, int depth)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4299,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4303,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4308,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4313,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:4314,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:4315,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4317,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:4318,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:4319,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - uses
    - output
    argTypes:
    - xmlSchemaItemListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4321
      start: 4286
    functionDepth: 4
    functionLinenumber: 4286
    functionLinenumberEnd: 4321
    functionName: xmlSchemaAttrUsesDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - FREE_AND_NULL
    - WXS_ATTRUSE_DECL_NAME
    - fprintf
    - xmlSchemaFormatQName
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: void
    signature: void xmlSchemaAttrUsesDump(xmlSchemaItemListPtr uses, FILE * output)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4333,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4336,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4338,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4340,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4342,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4345,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4348,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4351,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4354,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4357,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4360,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4363,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4366,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4369,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4372,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4375,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4378,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4381,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4384,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4387,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4393,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4396,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4399,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4402,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4404,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4406,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4408,1
    - Dst: xmlSchemaAttrUsesDump
      Src: /src/libxml2/xmlschemas.c:4411,1
    - Dst: xmlSchemaAnnotDump
      Src: /src/libxml2/xmlschemas.c:4413,1
    - Dst: xmlSchemaContentModelDump
      Src: /src/libxml2/xmlschemas.c:4417,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 83
    argCount: 2
    argNames:
    - type
    - output
    argTypes:
    - xmlSchemaTypePtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4421
      start: 4329
    functionDepth: 10
    functionLinenumber: 4329
    functionLinenumberEnd: 4421
    functionName: xmlSchemaTypeDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAnnotDump
    - fprintf
    - xmlSchemaAttrUsesDump
    - xmlSchemaContentModelDump
    linkageType: ''
    returnType: void
    signature: void xmlSchemaTypeDump(xmlSchemaTypePtr type, FILE * output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaTypeDump
      Src: /src/libxml2/xmlschemas.c:4427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - output
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4428
      start: 4423
    functionDepth: 11
    functionLinenumber: 4423
    functionLinenumberEnd: 4428
    functionName: xmlSchemaTypeDumpEntry
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaTypeDump
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaTypeDumpEntry(void *type, void *output,\n                       const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4442,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4445,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4447,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4449,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4451,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4453,1
    - Dst: fprintf
      Src: /src/libxml2/xmlschemas.c:4454,1
    - Dst: xmlSchemaAnnotDump
      Src: /src/libxml2/xmlschemas.c:4456,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlschemas.c:4457,1
    - Dst: xmlHashScanFull
      Src: /src/libxml2/xmlschemas.c:4458,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - output
    - schema
    argTypes:
    - FILE*
    - xmlSchema*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4459
      start: 4436
    functionDepth: 10
    functionLinenumber: 4436
    functionLinenumberEnd: 4459
    functionName: xmlSchemaDump
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAnnotDump
    - fprintf
    - xmlHashScan
    - xmlHashScanFull
    linkageType: ''
    returnType: void
    signature: void xmlSchemaDump(FILE * output, xmlSchema *schema)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:4486,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4491
      start: 4477
    functionDepth: 1
    functionLinenumber: 4477
    functionLinenumberEnd: 4491
    functionName: xmlSchemaGetPropNode
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr xmlSchemaGetPropNode(xmlNodePtr node, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:4512,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:4513,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - node
    - uri
    - name
    argTypes:
    - xmlNodePtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4518
      start: 4502
    functionDepth: 1
    functionLinenumber: 4502
    functionLinenumberEnd: 4518
    functionName: xmlSchemaGetPropNodeNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr xmlSchemaGetPropNodeNs(xmlNodePtr node, const char *uri,
      const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xmlschemas.c:4526,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:4528,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:4529,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:4530,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:4532,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4534
      start: 4520
    functionDepth: 9
    functionLinenumber: 4520
    functionLinenumberEnd: 4534
    functionName: xmlSchemaGetNodeContent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlNodeGetContent
    - xmlDictLookup
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetNodeContent(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xmlschemas.c:4539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4540
      start: 4536
    functionDepth: 9
    functionLinenumber: 4536
    functionLinenumberEnd: 4540
    functionName: xmlSchemaGetNodeContentNoDict
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetContent
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaGetNodeContentNoDict(xmlNodePtr node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/xmlschemas.c:4557,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:4560,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:4561,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - node
    - name
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4563
      start: 4550
    functionDepth: 11
    functionLinenumber: 4550
    functionLinenumberEnd: 4563
    functionName: xmlSchemaGetProp
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlDictLookup
    - xmlGetNoNsProp
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaGetProp(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr
      node,\n                 const char *name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - slot
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4587
      start: 4571
    functionDepth: 0
    functionLinenumber: 4571
    functionLinenumberEnd: 4587
    functionName: WXS_FIND_GLOBAL_ITEM
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_FIND_GLOBAL_ITEM(slot)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4605,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4609
      start: 4596
    functionDepth: 1
    functionLinenumber: 4596
    functionLinenumberEnd: 4609
    functionName: xmlSchemaGetElem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaElementPtr
    signature: "xmlSchemaElementPtr xmlSchemaGetElem(xmlSchemaPtr schema, const xmlChar
      * name,\n                 const xmlChar * nsName)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:4628,1
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/xmlschemas.c:4629,1
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4640,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4645
      start: 4619
    functionDepth: 7
    functionLinenumber: 4619
    functionLinenumberEnd: 4645
    functionName: xmlSchemaGetType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPredefinedType
    - xmlStrEqual
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaGetType(xmlSchemaPtr schema, const xmlChar
      * name,\n                 const xmlChar * nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4664,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4668
      start: 4655
    functionDepth: 1
    functionLinenumber: 4655
    functionLinenumberEnd: 4668
    functionName: xmlSchemaGetAttributeDecl
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaAttributePtr
    signature: "xmlSchemaAttributePtr xmlSchemaGetAttributeDecl(xmlSchemaPtr schema,
      const xmlChar * name,\n                 const xmlChar * nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4687,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4697
      start: 4678
    functionDepth: 1
    functionLinenumber: 4678
    functionLinenumberEnd: 4697
    functionName: xmlSchemaGetAttributeGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaAttributeGroupPtr
    signature: "xmlSchemaAttributeGroupPtr xmlSchemaGetAttributeGroup(xmlSchemaPtr
      schema, const xmlChar * name,\n                 const xmlChar * nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4716,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4721
      start: 4707
    functionDepth: 1
    functionLinenumber: 4707
    functionLinenumberEnd: 4721
    functionName: xmlSchemaGetGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaModelGroupDefPtr
    signature: "xmlSchemaModelGroupDefPtr xmlSchemaGetGroup(xmlSchemaPtr schema, const
      xmlChar * name,\n                 const xmlChar * nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4733,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4737
      start: 4723
    functionDepth: 1
    functionLinenumber: 4723
    functionLinenumberEnd: 4737
    functionName: xmlSchemaGetNotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaNotationPtr
    signature: "xmlSchemaNotationPtr xmlSchemaGetNotation(xmlSchemaPtr schema,\n\t\t
      \    const xmlChar *name,\n\t\t     const xmlChar *nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_FIND_GLOBAL_ITEM
      Src: /src/libxml2/xmlschemas.c:4749,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - schema
    - name
    - nsName
    argTypes:
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4753
      start: 4739
    functionDepth: 1
    functionLinenumber: 4739
    functionLinenumberEnd: 4753
    functionName: xmlSchemaGetIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_FIND_GLOBAL_ITEM
    linkageType: ''
    returnType: xmlSchemaIDCPtr
    signature: "xmlSchemaIDCPtr xmlSchemaGetIDC(xmlSchemaPtr schema,\n\t\tconst xmlChar
      *name,\n\t\tconst xmlChar *nsName)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetGroup
      Src: /src/libxml2/xmlschemas.c:4772,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:4775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - schema
    - itemType
    - name
    - targetNs
    argTypes:
    - xmlSchemaPtr
    - xmlSchemaTypeType
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4781
      start: 4764
    functionDepth: 2
    functionLinenumber: 4764
    functionLinenumberEnd: 4781
    functionName: xmlSchemaGetNamedComponent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetGroup
    - xmlSchemaGetElem
    linkageType: ''
    returnType: xmlSchemaBasicItemPtr
    signature: "xmlSchemaBasicItemPtr xmlSchemaGetNamedComponent(xmlSchemaPtr schema,\n\t\t\t
      \  xmlSchemaTypeType itemType,\n\t\t\t   const xmlChar *name,\n\t\t\t   const
      xmlChar *targetNs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4789
    functionDepth: 0
    functionLinenumber: 4789
    functionLinenumberEnd: 4791
    functionName: IS_BLANK_NODE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_NODE(n)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:4806,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:4811,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4818
      start: 4799
    functionDepth: 1
    functionLinenumber: 4799
    functionLinenumberEnd: 4818
    functionName: xmlSchemaIsBlank
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsBlank(xmlChar * str, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4821
      start: 4820
    functionDepth: 0
    functionLinenumber: 4820
    functionLinenumberEnd: 4821
    functionName: WXS_COMP_NAME
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_COMP_NAME(c, t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - t
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4822
      start: 4821
    functionDepth: 0
    functionLinenumber: 4821
    functionLinenumberEnd: 4822
    functionName: WXS_COMP_TNS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_COMP_TNS(c, t)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: WXS_COMP_NAME
      Src: /src/libxml2/xmlschemas.c:4849,1
    - Dst: WXS_COMP_TNS
      Src: /src/libxml2/xmlschemas.c:4850,1
    - Dst: WXS_COMP_NAME
      Src: /src/libxml2/xmlschemas.c:4857,1
    - Dst: WXS_COMP_TNS
      Src: /src/libxml2/xmlschemas.c:4859,1
    - Dst: WXS_COMP_NAME
      Src: /src/libxml2/xmlschemas.c:4866,1
    - Dst: WXS_COMP_TNS
      Src: /src/libxml2/xmlschemas.c:4868,1
    - Dst: xmlSchemaFindRedefCompInGraph
      Src: /src/libxml2/xmlschemas.c:4895,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 46
    argCount: 4
    argNames:
    - bucket
    - type
    - name
    - nsName
    argTypes:
    - xmlSchemaBucketPtr
    - xmlSchemaTypeType
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4905
      start: 4826
    functionDepth: 1
    functionLinenumber: 4826
    functionLinenumberEnd: 4905
    functionName: xmlSchemaFindRedefCompInGraph
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFindRedefCompInGraph
    - WXS_COMP_NAME
    - WXS_COMP_TNS
    linkageType: ''
    returnType: xmlSchemaBasicItemPtr
    signature: "xmlSchemaBasicItemPtr xmlSchemaFindRedefCompInGraph(xmlSchemaBucketPtr
      bucket,\n\t\t\t      xmlSchemaTypeType type,\n\t\t\t      const xmlChar *name,\n\t\t\t
      \     const xmlChar *nsName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:4928,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:4930,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:4933,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:4939,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - ctxt
    - schema
    - name
    - nsName
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4941
      start: 4918
    functionDepth: 3
    functionLinenumber: 4918
    functionLinenumberEnd: 4941
    functionName: xmlSchemaAddNotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - WXS_ADD_GLOBAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaNotationPtr
    signature: "xmlSchemaNotationPtr xmlSchemaAddNotation(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n                     const xmlChar *name, const xmlChar
      *nsName,\n\t\t     xmlNodePtr node ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:4965,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:4967,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:4970,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:4977,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:4979,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:4980,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - ctxt
    - schema
    - name
    - nsName
    - node
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4982
      start: 4955
    functionDepth: 3
    functionLinenumber: 4955
    functionLinenumberEnd: 4982
    functionName: xmlSchemaAddAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ADD_LOCAL
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaAttributePtr
    signature: "xmlSchemaAttributePtr xmlSchemaAddAttribute(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n                      const xmlChar * name, const
      xmlChar * nsName,\n\t\t      xmlNodePtr node, int topLevel)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5001,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5003,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5006,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5010,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - pctxt
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5012
      start: 4992
    functionDepth: 3
    functionLinenumber: 4992
    functionLinenumberEnd: 5012
    functionName: xmlSchemaAddAttributeUse
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - WXS_ADD_LOCAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaAttributeUsePtr
    signature: "xmlSchemaAttributeUsePtr xmlSchemaAddAttributeUse(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t xmlNodePtr node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5030,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5032,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5035,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:5040,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:5041,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:5043,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:5044,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 5
    argNames:
    - pctxt
    - targetBucket
    - item
    - refName
    - refTargetNs
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBucketPtr
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5047
      start: 5020
    functionDepth: 3
    functionLinenumber: 5020
    functionLinenumberEnd: 5047
    functionName: xmlSchemaAddRedef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - WXS_CONSTRUCTOR
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaRedefPtr
    signature: "xmlSchemaRedefPtr xmlSchemaAddRedef(xmlSchemaParserCtxtPtr pctxt,\n\t\t
      \ xmlSchemaBucketPtr targetBucket,\n\t\t  void *item,\n\t\t  const xmlChar *refName,\n\t\t
      \ const xmlChar *refTargetNs)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5072,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5074,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5077,1
    - Dst: xmlSchemaAddRedef
      Src: /src/libxml2/xmlschemas.c:5086,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5089,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:5094,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5095,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 5
    argNames:
    - pctxt
    - ATTRIBUTE_UNUSED
    - name
    - nsName
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5097
      start: 5059
    functionDepth: 4
    functionLinenumber: 5059
    functionLinenumberEnd: 5097
    functionName: xmlSchemaAddAttributeGroupDefinition
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaAddRedef
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaAttributeGroupPtr
    signature: "xmlSchemaAttributeGroupPtr xmlSchemaAddAttributeGroupDefinition(xmlSchemaParserCtxtPtr
      pctxt,\n                           xmlSchemaPtr schema ATTRIBUTE_UNUSED,\n\t\t\t
      \  const xmlChar *name,\n\t\t\t   const xmlChar *nsName,\n\t\t\t   xmlNodePtr
      node)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5120,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5122,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5125,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:5132,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5134,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 5
    argNames:
    - ctxt
    - name
    - nsName
    - node
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5137
      start: 5110
    functionDepth: 3
    functionLinenumber: 5110
    functionLinenumberEnd: 5137
    functionName: xmlSchemaAddElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ADD_LOCAL
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaElementPtr
    signature: "xmlSchemaElementPtr xmlSchemaAddElement(xmlSchemaParserCtxtPtr ctxt,\n
      \                   const xmlChar * name, const xmlChar * nsName,\n\t\t    xmlNodePtr
      node, int topLevel)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5163,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5165,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5168,1
    - Dst: xmlSchemaAddRedef
      Src: /src/libxml2/xmlschemas.c:5175,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5178,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:5183,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5185,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5186,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 7
    argNames:
    - ctxt
    - schema
    - type
    - name
    - nsName
    - node
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaTypeType
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5188
      start: 5152
    functionDepth: 4
    functionLinenumber: 5152
    functionLinenumberEnd: 5188
    functionName: xmlSchemaAddType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - WXS_ADD_LOCAL
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaAddRedef
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaAddType(xmlSchemaParserCtxtPtr ctxt, xmlSchemaPtr
      schema,\n\t\t xmlSchemaTypeType type,\n                 const xmlChar * name,
      const xmlChar * nsName,\n\t\t xmlNodePtr node, int topLevel)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5199,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5201,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 4
    argNames:
    - pctxt
    - refType
    - refName
    - refNs
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypeType
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5215
      start: 5190
    functionDepth: 3
    functionLinenumber: 5190
    functionLinenumberEnd: 5215
    functionName: xmlSchemaNewQNameRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - WXS_ADD_LOCAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaQNameRefPtr
    signature: "xmlSchemaQNameRefPtr xmlSchemaNewQNameRef(xmlSchemaParserCtxtPtr pctxt,\n\t\t
      \    xmlSchemaTypeType refType,\n\t\t     const xmlChar *refName,\n\t\t     const
      xmlChar *refNs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5223,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5225,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5228,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5230,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5232
      start: 5217
    functionDepth: 3
    functionLinenumber: 5217
    functionLinenumberEnd: 5232
    functionName: xmlSchemaAddAttributeUseProhib
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - WXS_ADD_LOCAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaAttributeUseProhibPtr
    signature: xmlSchemaAttributeUseProhibPtr xmlSchemaAddAttributeUseProhib(xmlSchemaParserCtxtPtr
      pctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5257,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5259,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5262,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5265,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5268,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctxt
    - schema
    - type
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaTypeType
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5270
      start: 5245
    functionDepth: 3
    functionLinenumber: 5245
    functionLinenumberEnd: 5270
    functionName: xmlSchemaAddModelGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ADD_LOCAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaModelGroupPtr
    signature: "xmlSchemaModelGroupPtr xmlSchemaAddModelGroup(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t       xmlSchemaPtr schema,\n\t\t       xmlSchemaTypeType type,\n\t\t
      \      xmlNodePtr node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5292,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5294,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - ctxt
    - node
    - min
    - max
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5313
      start: 5283
    functionDepth: 3
    functionLinenumber: 5283
    functionLinenumberEnd: 5313
    functionName: xmlSchemaAddParticle
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - WXS_ADD_LOCAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaParticlePtr
    signature: "xmlSchemaParticlePtr xmlSchemaAddParticle(xmlSchemaParserCtxtPtr ctxt,\n\t\t
      \    xmlNodePtr node, int min, int max)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5338,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5340,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5343,1
    - Dst: xmlSchemaAddRedef
      Src: /src/libxml2/xmlschemas.c:5350,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5353,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:5358,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5359,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 5
    argNames:
    - ctxt
    - schema
    - name
    - nsName
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5361
      start: 5325
    functionDepth: 4
    functionLinenumber: 5325
    functionLinenumberEnd: 5361
    functionName: xmlSchemaAddModelGroupDefinition
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaAddRedef
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaModelGroupDefPtr
    signature: "xmlSchemaModelGroupDefPtr xmlSchemaAddModelGroupDefinition(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t\t\t xmlSchemaPtr schema,\n\t\t\t\t const xmlChar *name,\n\t\t\t\t
      const xmlChar *nsName,\n\t\t\t\t xmlNodePtr node)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5375,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5383
      start: 5369
    functionDepth: 3
    functionLinenumber: 5369
    functionLinenumberEnd: 5383
    functionName: xmlSchemaNewWildcardNsConstraint
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaWildcardNsPtr
    signature: xmlSchemaWildcardNsPtr xmlSchemaNewWildcardNsConstraint(xmlSchemaParserCtxtPtr
      ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5395,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5397,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5400,1
    - Dst: WXS_ADD_GLOBAL
      Src: /src/libxml2/xmlschemas.c:5407,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:5412,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 6
    argNames:
    - ctxt
    - schema
    - name
    - nsName
    - category
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlChar*
    - xmlChar*
    - int
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5414
      start: 5385
    functionDepth: 3
    functionLinenumber: 5385
    functionLinenumberEnd: 5414
    functionName: xmlSchemaAddIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ADD_GLOBAL
    - xmlMalloc
    - WXS_ADD_PENDING
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaIDCPtr
    signature: "xmlSchemaIDCPtr xmlSchemaAddIDC(xmlSchemaParserCtxtPtr ctxt, xmlSchemaPtr
      schema,\n                  const xmlChar *name, const xmlChar *nsName,\n\t\t
      \ int category, xmlNodePtr node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5435,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5437,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5440,1
    - Dst: WXS_ADD_LOCAL
      Src: /src/libxml2/xmlschemas.c:5443,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - ctxt
    - schema
    - type
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaTypeType
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5445
      start: 5426
    functionDepth: 3
    functionLinenumber: 5426
    functionLinenumberEnd: 5445
    functionName: xmlSchemaAddWildcard
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    - WXS_ADD_LOCAL
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaWildcardPtr
    signature: "xmlSchemaWildcardPtr xmlSchemaAddWildcard(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n\t\t     xmlSchemaTypeType type, xmlNodePtr node)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:5453,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - group
    argTypes:
    - xmlSchemaSubstGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5455
      start: 5447
    functionDepth: 1
    functionLinenumber: 5447
    functionLinenumberEnd: 5455
    functionName: xmlSchemaSubstGroupFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaItemListFree
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaSubstGroupFree(xmlSchemaSubstGroupPtr group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSubstGroupFree
      Src: /src/libxml2/xmlschemas.c:5460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - group
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5461
      start: 5457
    functionDepth: 2
    functionLinenumber: 5457
    functionLinenumberEnd: 5461
    functionName: xmlSchemaSubstGroupFreeEntry
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSubstGroupFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaSubstGroupFreeEntry(void *group, const xmlChar *name
      ATTRIBUTE_UNUSED)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5470,1
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5471,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/xmlschemas.c:5471,1
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5472,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:5476,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5478,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:5481,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:5484,1
    - Dst: xmlSchemaSubstGroupFree
      Src: /src/libxml2/xmlschemas.c:5486,1
    - Dst: xmlHashAddEntry2
      Src: /src/libxml2/xmlschemas.c:5490,1
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5490,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:5492,1
    - Dst: xmlSchemaSubstGroupFree
      Src: /src/libxml2/xmlschemas.c:5494,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - pctxt
    - head
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5498
      start: 5463
    functionDepth: 6
    functionLinenumber: 5463
    functionLinenumberEnd: 5498
    functionName: xmlSchemaSubstGroupAdd
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSubstGroupFree
    - WXS_SUBST_GROUPS
    - xmlHashCreateDict
    - xmlMalloc
    - PERROR_INT
    - xmlSchemaItemListCreate
    - memset
    - xmlHashAddEntry2
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaSubstGroupPtr
    signature: "xmlSchemaSubstGroupPtr xmlSchemaSubstGroupAdd(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t       xmlSchemaElementPtr head)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5504,1
    - Dst: xmlHashLookup2
      Src: /src/libxml2/xmlschemas.c:5506,1
    - Dst: WXS_SUBST_GROUPS
      Src: /src/libxml2/xmlschemas.c:5506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pctxt
    - head
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5509
      start: 5500
    functionDepth: 2
    functionLinenumber: 5500
    functionLinenumberEnd: 5509
    functionName: xmlSchemaSubstGroupGet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup2
    - WXS_SUBST_GROUPS
    linkageType: ''
    returnType: xmlSchemaSubstGroupPtr
    signature: "xmlSchemaSubstGroupPtr xmlSchemaSubstGroupGet(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t       xmlSchemaElementPtr head)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSubstGroupGet
      Src: /src/libxml2/xmlschemas.c:5529,1
    - Dst: xmlSchemaSubstGroupAdd
      Src: /src/libxml2/xmlschemas.c:5531,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:5534,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - pctxt
    - head
    - member
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaElementPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5537
      start: 5519
    functionDepth: 7
    functionLinenumber: 5519
    functionLinenumberEnd: 5537
    functionName: xmlSchemaAddElementSubstitutionMember
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSubstGroupGet
    - xmlSchemaItemListAdd
    - xmlSchemaSubstGroupAdd
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAddElementSubstitutionMember(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \     xmlSchemaElementPtr head,\n\t\t\t\t      xmlSchemaElementPtr member)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:5575,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5577,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:5580,1
    - Dst: strchr
      Src: /src/libxml2/xmlschemas.c:5587,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:5588,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:5590,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:5600,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/xmlschemas.c:5606,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:5607,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:5608,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:5609,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5611,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:5614,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:5619,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 7
    argNames:
    - ctxt
    - schema
    - ownerItem
    - attr
    - value
    - uri
    - local
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - xmlChar*
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5622
      start: 5560
    functionDepth: 9
    functionLinenumber: 5560
    functionLinenumberEnd: 5622
    functionName: xmlSchemaPValAttrNodeQNameValue
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPSimpleTypeErr
    - xmlSplitQName3
    - xmlSearchNs
    - xmlValidateQName
    - strchr
    - xmlDictLookup
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrNodeQNameValue(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \      xmlSchemaPtr schema,\n\t\t\t\t       xmlSchemaBasicItemPtr ownerItem,\n\t\t\t\t
      \      xmlAttrPtr attr,\n\t\t\t\t       const xmlChar *value,\n\t\t\t\t       const
      xmlChar **uri,\n\t\t\t\t       const xmlChar **local)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:5648,1
    - Dst: xmlSchemaPValAttrNodeQNameValue
      Src: /src/libxml2/xmlschemas.c:5649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - ctxt
    - schema
    - ownerItem
    - attr
    - uri
    - local
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5651
      start: 5638
    functionDepth: 10
    functionLinenumber: 5638
    functionLinenumberEnd: 5651
    functionName: xmlSchemaPValAttrNodeQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetNodeContent
    - xmlSchemaPValAttrNodeQNameValue
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrNodeQName(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \      xmlSchemaPtr schema,\n\t\t\t\t       xmlSchemaBasicItemPtr ownerItem,\n\t\t\t\t
      \      xmlAttrPtr attr,\n\t\t\t\t       const xmlChar **uri,\n\t\t\t\t       const
      xmlChar **local)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:5677,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:5683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 7
    argNames:
    - ctxt
    - schema
    - ownerItem
    - ownerElem
    - name
    - uri
    - local
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5685
      start: 5666
    functionDepth: 11
    functionLinenumber: 5666
    functionLinenumberEnd: 5685
    functionName: xmlSchemaPValAttrQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPropNode
    - xmlSchemaPValAttrNodeQName
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrQName(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \  xmlSchemaPtr schema,\n\t\t\t\t   xmlSchemaBasicItemPtr ownerItem,\n\t\t\t\t
      \  xmlNodePtr ownerElem,\n\t\t\t\t   const char *name,\n\t\t\t\t   const xmlChar
      **uri,\n\t\t\t\t   const xmlChar **local)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetNodeContentNoDict
      Src: /src/libxml2/xmlschemas.c:5703,1
    - Dst: xmlValidateNCName
      Src: /src/libxml2/xmlschemas.c:5704,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:5717,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5719,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/xmlschemas.c:5722,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:5724,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5727,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:5730,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5737,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:5740,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5746,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5749
      start: 5695
    functionDepth: 10
    functionLinenumber: 5695
    functionLinenumberEnd: 5749
    functionName: xmlSchemaPValAttrNodeID
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlValidateNCName
    - xmlSchemaPSimpleTypeErr
    - xmlFree
    - xmlSchemaGetNodeContentNoDict
    - xmlAddIDSafe
    - xmlSchemaCollapseString
    - xmlSchemaGetBuiltInType
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlSchemaPValAttrNodeID(xmlSchemaParserCtxtPtr ctxt, xmlAttrPtr
      attr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:5758,1
    - Dst: xmlSchemaPValAttrNodeID
      Src: /src/libxml2/xmlschemas.c:5761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - ownerElem
    - name
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5751
    functionDepth: 11
    functionLinenumber: 5751
    functionLinenumberEnd: 5763
    functionName: xmlSchemaPValAttrID
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPValAttrNodeID
    - xmlSchemaGetPropNode
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrID(xmlSchemaParserCtxtPtr ctxt,\n\t\t    xmlNodePtr
      ownerElem,\n\t\t    const xmlChar *name)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:5784,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:5787,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5791,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5793,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:5804,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5807,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:5827,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5833,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 6
    argNames:
    - ctxt
    - node
    - min
    - max
    - def
    - expected
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5841
      start: 5776
    functionDepth: 10
    functionLinenumber: 5776
    functionLinenumberEnd: 5841
    functionName: xmlGetMaxOccurs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlSchemaPSimpleTypeErr
    - xmlStrEqual
    - xmlSchemaGetPropNode
    - xmlSchemaGetNodeContent
    linkageType: ''
    returnType: int
    signature: "int xmlGetMaxOccurs(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node,\n\t\tint
      min, int max, int def, const char *expected)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:5862,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:5865,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:5869,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5872,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:5892,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5898,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 6
    argNames:
    - ctxt
    - node
    - min
    - max
    - def
    - expected
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5906
      start: 5854
    functionDepth: 10
    functionLinenumber: 5854
    functionLinenumberEnd: 5906
    functionName: xmlGetMinOccurs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetNodeContent
    - IS_BLANK_CH
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaGetPropNode
    linkageType: ''
    returnType: int
    signature: "int xmlGetMinOccurs(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr node,\n\t\tint
      min, int max, int def, const char *expected)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/xmlschemas.c:5924,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5930,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5932,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5934,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5936,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:5947,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - ctxt
    - ownerItem
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5949
      start: 5916
    functionDepth: 9
    functionLinenumber: 5916
    functionLinenumberEnd: 5949
    functionName: xmlSchemaPGetBoolNodeValue
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetContent
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPGetBoolNodeValue(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \  xmlSchemaBasicItemPtr ownerItem,\n\t\t\t   xmlNodePtr node)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:5968,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5976,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5978,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5980,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:5982,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:5985,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:5988,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:5989,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - ctxt
    - node
    - name
    - def
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5993
      start: 5961
    functionDepth: 12
    functionLinenumber: 5961
    functionLinenumberEnd: 5993
    functionName: xmlGetBooleanProp
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPSimpleTypeErr
    - xmlStrEqual
    - xmlSchemaGetProp
    - xmlSchemaGetPropNode
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlGetBooleanProp(xmlSchemaParserCtxtPtr ctxt,\n\t\t  xmlNodePtr
      node,\n                  const char *name, int def)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:6057,1
    - Dst: xmlSchemaValPredefTypeNode
      Src: /src/libxml2/xmlschemas.c:6067,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:6071,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:6081,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:6085,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:6089,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 5
    argNames:
    - pctxt
    - ownerItem
    - attr
    - value
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - xmlChar*
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6094
      start: 6040
    functionDepth: 11
    functionLinenumber: 6040
    functionLinenumberEnd: 6094
    functionName: xmlSchemaPValAttrNodeValue
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_LIST
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaValPredefTypeNode
    - PERROR_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrNodeValue(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \  xmlSchemaBasicItemPtr ownerItem,\n\t\t\t   xmlAttrPtr attr,\n\t\t\t   const
      xmlChar *value,\n\t\t\t   xmlSchemaTypePtr type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6121,1
    - Dst: xmlSchemaPValAttrNodeValue
      Src: /src/libxml2/xmlschemas.c:6125,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 5
    argNames:
    - ctxt
    - ownerItem
    - attr
    - type
    - value
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlAttrPtr
    - xmlSchemaTypePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6127
      start: 6109
    functionDepth: 12
    functionLinenumber: 6109
    functionLinenumberEnd: 6127
    functionName: xmlSchemaPValAttrNode
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetNodeContent
    - xmlSchemaPValAttrNodeValue
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrNode(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t   xmlSchemaBasicItemPtr
      ownerItem,\n\t\t\t   xmlAttrPtr attr,\n\t\t\t   xmlSchemaTypePtr type,\n\t\t\t
      \  const xmlChar **value)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:6161,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:6168,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:6174,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 6
    argNames:
    - ctxt
    - ownerItem
    - ownerElem
    - name
    - type
    - value
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlNodePtr
    - char*
    - xmlSchemaTypePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6176
      start: 6143
    functionDepth: 13
    functionLinenumber: 6143
    functionLinenumberEnd: 6176
    functionName: xmlSchemaPValAttr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPErr
    - xmlSchemaGetPropNode
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttr(xmlSchemaParserCtxtPtr ctxt,\n\t\t       xmlSchemaBasicItemPtr
      ownerItem,\n\t\t       xmlNodePtr ownerElem,\n\t\t       const char *name,\n\t\t
      \      xmlSchemaTypePtr type,\n\t\t       const xmlChar **value)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6186,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6188,1
    - Dst: WXS_BUCKET
      Src: /src/libxml2/xmlschemas.c:6193,1
    - Dst: WXS_BUCKET
      Src: /src/libxml2/xmlschemas.c:6196,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:6198,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6199,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:6211,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:6217,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 5
    argNames:
    - pctxt
    - ATTRIBUTE_UNUSED
    - node
    - attr
    - namespaceName
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlAttrPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6224
      start: 6178
    functionDepth: 10
    functionLinenumber: 6178
    functionLinenumberEnd: 6224
    functionName: xmlSchemaCheckReference
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_BUCKET_IMPMAIN
    - xmlStrEqual
    - xmlSchemaCustomErr
    - WXS_BUCKET
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckReference(xmlSchemaParserCtxtPtr pctxt,\n\t\t  xmlSchemaPtr
      schema ATTRIBUTE_UNUSED,\n\t\t  xmlNodePtr node,\n\t\t  xmlAttrPtr attr,\n\t\t
      \ const xmlChar *namespaceName)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6244,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6245,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6246,1
    - Dst: xmlSchemaParseLocalAttribute
      Src: /src/libxml2/xmlschemas.c:6247,1
    - Dst: xmlSchemaParseAttributeGroupRef
      Src: /src/libxml2/xmlschemas.c:6250,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:6257,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:6261,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 6
    argNames:
    - ctxt
    - schema
    - child
    - list
    - parentType
    - hasRefs
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr*
    - xmlSchemaItemListPtr*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6267
      start: 6237
    functionDepth: 4
    functionLinenumber: 6237
    functionLinenumberEnd: 6267
    functionName: xmlSchemaParseLocalAttributes
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaItemListAddSize
    - xmlSchemaParseAttributeGroupRef
    - xmlSchemaItemListCreate
    - xmlSchemaParseLocalAttribute
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseLocalAttributes(xmlSchemaParserCtxtPtr ctxt, xmlSchemaPtr
      schema,\n                        xmlNodePtr *child, xmlSchemaItemListPtr *list,\n\t\t\tint
      parentType, int *hasRefs)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewAnnot
      Src: /src/libxml2/xmlschemas.c:6298,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6304,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6306,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6308,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:6313,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6319,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6329,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6331,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6333,1
    - Dst: xmlSchemaPValAttr
      Src: /src/libxml2/xmlschemas.c:6338,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:6339,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6341,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6351,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6352,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6356,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6357,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6358,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6360,1
    - Dst: xmlSchemaGetPropNodeNs
      Src: /src/libxml2/xmlschemas.c:6369,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:6371,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:6372,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:6376,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 3
    argNames:
    - ctxt
    - node
    - needed
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6385
      start: 6279
    functionDepth: 14
    functionLinenumber: 6279
    functionLinenumberEnd: 6385
    functionName: xmlSchemaParseAnnotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaPValAttr
    - xmlSchemaNewAnnot
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaGetPropNodeNs
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: xmlSchemaAnnotPtr
    signature: xmlSchemaAnnotPtr xmlSchemaParseAnnotation(xmlSchemaParserCtxtPtr ctxt,
      xmlNodePtr node, int needed)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewFacet
      Src: /src/libxml2/xmlschemas.c:6407,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:6409,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:6413,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:6415,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/xmlschemas.c:6417,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6420,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6422,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6424,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6426,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6428,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6430,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6432,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6434,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6436,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6438,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6440,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6442,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:6445,1
    - Dst: xmlSchemaFreeFacet
      Src: /src/libxml2/xmlschemas.c:6447,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:6450,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:6456,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6458,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6464,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:6465,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:6469,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 73
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6474
      start: 6396
    functionDepth: 15
    functionLinenumber: 6396
    functionLinenumberEnd: 6474
    functionName: xmlSchemaParseFacet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaFreeFacet
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaGetProp
    - xmlSchemaPValAttrID
    - xmlSchemaNewFacet
    - xmlSchemaPErr2
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaFacetPtr
    signature: "xmlSchemaFacetPtr xmlSchemaParseFacet(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n                    xmlNodePtr node)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:6500,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6502,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6504,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6506,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:6509,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:6520,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6521,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6524,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6526,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:6527,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:6537,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:6540,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:6544,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6545,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6546,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:6547,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6556,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6558,1
    - Dst: xmlSchemaPValAttrNodeValue
      Src: /src/libxml2/xmlschemas.c:6564,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:6565,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:6566,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:6578,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:6580,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:6593,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 4
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - wildc
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaWildcardPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6598
      start: 6488
    functionDepth: 12
    functionLinenumber: 6488
    functionLinenumberEnd: 6598
    functionName: xmlSchemaParseWildcardNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlSchemaPSimpleTypeErr
    - xmlStrEqual
    - xmlFree
    - xmlSchemaPValAttrNodeValue
    - xmlStrndup
    - xmlSchemaGetProp
    - xmlSchemaGetPropNode
    - xmlSchemaNewWildcardNsConstraint
    - xmlSchemaGetNodeContent
    - xmlDictLookup
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseWildcardNs(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      xmlSchemaPtr schema ATTRIBUTE_UNUSED,\n\t\t\t xmlSchemaWildcardPtr wildc,\n\t\t\t
      xmlNodePtr node)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPCustomAttrErr
      Src: /src/libxml2/xmlschemas.c:6623,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:6626,1
    - Dst: xmlSchemaPCustomAttrErr
      Src: /src/libxml2/xmlschemas.c:6633,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:6636,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 5
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    - node
    - minOccurs
    - maxOccurs
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6642
      start: 6600
    functionDepth: 8
    functionLinenumber: 6600
    functionLinenumberEnd: 6642
    functionName: xmlSchemaPCheckParticleCorrect_2
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPropNode
    - xmlSchemaPCustomAttrErr
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPCheckParticleCorrect_2(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      xmlSchemaParticlePtr item ATTRIBUTE_UNUSED,\n\t\t\t\t xmlNodePtr node,\n\t\t\t\t
      int minOccurs,\n\t\t\t\t int maxOccurs)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6674,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6675,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6676,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6677,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6678,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6679,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6682,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6683,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:6688,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:6692,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:6694,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:6696,1
    - Dst: xmlSchemaAddWildcard
      Src: /src/libxml2/xmlschemas.c:6700,1
    - Dst: xmlSchemaParseWildcardNs
      Src: /src/libxml2/xmlschemas.c:6703,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6708,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:6709,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:6713,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:6728,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 40
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6735
      start: 6655
    functionDepth: 15
    functionLinenumber: 6655
    functionLinenumberEnd: 6735
    functionName: xmlSchemaParseAny
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaAddWildcard
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlGetMaxOccurs
    - xmlSchemaParseWildcardNs
    - xmlSchemaAddParticle
    - xmlGetMinOccurs
    - xmlSchemaPCheckParticleCorrect_2
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaParticlePtr
    signature: "xmlSchemaParticlePtr xmlSchemaParseAny(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n                  xmlNodePtr node)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:6755,1
    - Dst: xmlSchemaPErr2
      Src: /src/libxml2/xmlschemas.c:6757,1
    - Dst: xmlSchemaAddNotation
      Src: /src/libxml2/xmlschemas.c:6761,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:6765,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6768,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:6769,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:6773,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6780
      start: 6745
    functionDepth: 15
    functionLinenumber: 6745
    functionLinenumberEnd: 6780
    functionName: xmlSchemaParseNotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaParseAnnotation
    - xmlSchemaGetProp
    - xmlSchemaAddNotation
    - xmlSchemaPContentErr
    - xmlSchemaPValAttrID
    - xmlSchemaPErr2
    linkageType: ''
    returnType: xmlSchemaNotationPtr
    signature: "xmlSchemaNotationPtr xmlSchemaParseNotation(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n                       xmlNodePtr node)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaAddWildcard
      Src: /src/libxml2/xmlschemas.c:6802,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6813,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6814,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6815,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6816,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6819,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6820,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:6825,1
    - Dst: xmlSchemaParseWildcardNs
      Src: /src/libxml2/xmlschemas.c:6829,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:6835,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:6836,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:6840,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6847
      start: 6791
    functionDepth: 15
    functionLinenumber: 6791
    functionLinenumberEnd: 6847
    functionName: xmlSchemaParseAnyAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaAddWildcard
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaParseWildcardNs
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaWildcardPtr
    signature: "xmlSchemaWildcardPtr xmlSchemaParseAnyAttribute(xmlSchemaParserCtxtPtr
      ctxt,\n                           xmlSchemaPtr schema, xmlNodePtr node)"
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:6885,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:6887,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:6891,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6903,1
    - Dst: xmlSchemaPValAttrNodeID
      Src: /src/libxml2/xmlschemas.c:6904,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6906,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6910,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6912,1
    - Dst: xmlSchemaPValAttrNodeID
      Src: /src/libxml2/xmlschemas.c:6913,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6915,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:6916,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6919,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6924,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6926,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6928,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:6930,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6939,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6941,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6943,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6945,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6947,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:6950,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6957,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:6963,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6967,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6971,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:6977,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:6981,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:6986,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:6989,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:7002,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7025,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7032,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7034,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:7038,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7039,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7046,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:7047,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7050,1
    - Dst: xmlSchemaAddAttributeUse
      Src: /src/libxml2/xmlschemas.c:7060,1
    - Dst: xmlSchemaAddAttribute
      Src: /src/libxml2/xmlschemas.c:7067,1
    - Dst: xmlSchemaAddAttributeUse
      Src: /src/libxml2/xmlschemas.c:7089,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:7095,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:7100,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7126,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7127,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7131,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:7178,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:7180,1
    - Dst: xmlSchemaAddAttributeUseProhib
      Src: /src/libxml2/xmlschemas.c:7188,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:7198,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7202,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7206,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7211,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7217,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7222,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7228,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:7229,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7234,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:7239,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:7240,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7244,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 222
    argCount: 5
    argNames:
    - pctxt
    - schema
    - node
    - uses
    - parentType
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlSchemaItemListPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7250
      start: 6861
    functionDepth: 15
    functionLinenumber: 6861
    functionLinenumberEnd: 7250
    functionName: xmlSchemaParseLocalAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaCheckReference
    - FREE_AND_NULL
    - xmlSchemaParseSimpleType
    - xmlSchemaPMutualExclAttrErr
    - xmlSchemaPValAttrNodeID
    - xmlSchemaPContentErr
    - xmlSchemaFormatQName
    - xmlSchemaAddAttributeUse
    - xmlSchemaPValAttrNode
    - xmlSchemaGetBuiltInType
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaPMissingAttrErr
    - xmlSchemaAddAttributeUseProhib
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaGetPropNode
    - xmlSchemaGetNodeContent
    - xmlSchemaAddAttribute
    - xmlSchemaNewQNameRef
    - WXS_ATTRUSE_DECL
    - WXS_ADD_PENDING
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrNodeQName
    linkageType: ''
    returnType: xmlSchemaBasicItemPtr
    signature: "xmlSchemaBasicItemPtr xmlSchemaParseLocalAttribute(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t     xmlSchemaPtr schema,\n\t\t\t     xmlNodePtr node,\n\t\t\t
      \    xmlSchemaItemListPtr uses,\n\t\t\t     int parentType)"
  - BBCount: 2185
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7275,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7277,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:7281,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7282,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7289,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:7290,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7293,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7304,1
    - Dst: xmlSchemaAddAttribute
      Src: /src/libxml2/xmlschemas.c:7311,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7323,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7324,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7325,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7326,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7327,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7329,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7332,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7333,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:7338,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:7341,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:7345,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7351,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:7361,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7367,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7368,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7371,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7377,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:7382,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7386,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7417,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7419,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:7424,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:7426,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7435,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7436,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7438,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7441,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7442,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:7448,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7454,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7458,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7462,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:7492,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:7493,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:7501,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:7513,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:7519,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7548,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7550,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:7558,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7560,1
    - Dst: xmlSchemaAddAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:7563,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7573,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7574,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7576,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7579,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7580,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:7586,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7591,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7592,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:7598,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7608,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:7609,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7614,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7633,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7636,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7676,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:7696,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:7699,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:7703,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7704,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7710,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7716,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7722,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7728,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7737,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:7762,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7773,1
    - Dst: xmlGetNsList
      Src: /src/libxml2/xmlschemas.c:7793,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:7803,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:7806,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7807,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7815,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/xmlschemas.c:7821,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/xmlschemas.c:7824,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7827,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7830,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7870,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7875,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7881,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7889,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7895,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7900,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7916,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7922,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7927,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7934,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7938,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7974,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7975,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7976,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7979,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7980,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:7988,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:7990,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:7993,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7997,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7999,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8004,1
    - Dst: xmlSchemaCheckCSelectorXPath
      Src: /src/libxml2/xmlschemas.c:8009,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:8011,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8020,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8025,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8029,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8030,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8034,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8072,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8073,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8075,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8076,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8079,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8080,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8088,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8090,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8095,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8097,1
    - Dst: xmlSchemaAddIDC
      Src: /src/libxml2/xmlschemas.c:8101,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8106,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8111,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8113,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8121,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8125,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8129,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8137,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8138,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8142,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8151,1
    - Dst: xmlSchemaParseIDCSelectorAndField
      Src: /src/libxml2/xmlschemas.c:8152,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8158,1
    - Dst: xmlSchemaParseIDCSelectorAndField
      Src: /src/libxml2/xmlschemas.c:8160,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8172,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8174,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8181,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8227,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8228,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8231,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8239,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8241,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8242,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:8253,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:8254,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:8255,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:8256,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8271,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8273,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:8278,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8287,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8288,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8289,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8290,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8291,1
    - Dst: xmlSchemaPCustomAttrErr
      Src: /src/libxml2/xmlschemas.c:8297,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8304,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8305,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8314,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8322,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:8332,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8343,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8344,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8352,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8354,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8355,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8357,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8358,1
    - Dst: xmlSchemaAddElement
      Src: /src/libxml2/xmlschemas.c:8367,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8377,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8378,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8379,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8380,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8381,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8382,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8383,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8386,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8387,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8388,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8390,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8393,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8394,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8395,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8397,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8401,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8403,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:8417,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:8420,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8425,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8432,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:8433,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8437,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8448,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8460,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:8461,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8466,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:8474,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8477,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8479,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8482,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:8485,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8486,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8488,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:8494,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8505,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8512,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:8518,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:8518,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8520,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8527,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:8533,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8533,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8536,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8537,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8537,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8538,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8539,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8541,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8542,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8544,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8545,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8556,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8568,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8577,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:8583,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8619,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8627,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8628,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8631,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8632,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8637,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8642,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8650,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:8655,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:8658,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:8662,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8664,1
    - Dst: xmlSchemaPValAttrNodeQNameValue
      Src: /src/libxml2/xmlschemas.c:8667,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:8673,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8675,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8676,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8684,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8687,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:8688,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8689,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8704,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8713,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8717,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8718,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8721,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8728,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8730,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8745,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8755,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8794,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8801,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8802,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8803,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8806,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8807,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8813,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:8822,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8828,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8829,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8830,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8833,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8840,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8846,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8850,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8857,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8863,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8864,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8898,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8900,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8906,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8908,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8922,1
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/xmlschemas.c:8928,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:8948,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8949,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:8951,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8954,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8968,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8969,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8972,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8973,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8984,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8997,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8998,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8999,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9000,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9003,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9004,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9012,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:9021,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9022,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9036,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9045,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9046,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9050,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9053,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:9054,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9058,1
    - Dst: xmlSchemaParseList
      Src: /src/libxml2/xmlschemas.c:9059,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9061,1
    - Dst: xmlSchemaParseUnion
      Src: /src/libxml2/xmlschemas.c:9062,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9066,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:9078,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9111,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:9113,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:9117,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:9121,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:9122,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:9123,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9131,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9132,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9133,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9134,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9135,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9138,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9139,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9144,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:9145,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:9153,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:9154,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9160,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9164,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9168,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9210,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:9212,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:9217,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:9218,1
    - Dst: xmlSchemaAddModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9221,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9231,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9232,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9233,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9236,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9237,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9242,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9247,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9248,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9251,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9252,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9255,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9256,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9259,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9260,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9268,1
    - Dst: IS_BLANK_NODE
      Src: /src/libxml2/xmlschemas.c:9301,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxml2/xmlschemas.c:9302,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9391,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9406,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:9408,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:9409,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9416,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9418,1
    - Dst: xmlSchemaPValAttrFormDefault
      Src: /src/libxml2/xmlschemas.c:9419,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9423,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9429,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9431,1
    - Dst: xmlSchemaPValAttrFormDefault
      Src: /src/libxml2/xmlschemas.c:9432,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9436,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9442,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9444,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9445,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9453,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9460,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9462,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9463,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9469,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9505,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9506,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9507,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9508,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9509,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9510,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:9514,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9515,1
    - Dst: xmlSchemaParseImport
      Src: /src/libxml2/xmlschemas.c:9517,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9519,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9522,1
    - Dst: xmlSchemaParseInclude
      Src: /src/libxml2/xmlschemas.c:9524,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9526,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9529,1
    - Dst: xmlSchemaParseRedefine
      Src: /src/libxml2/xmlschemas.c:9531,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9533,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9544,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:9545,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9547,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:9548,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9550,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:9551,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9553,1
    - Dst: xmlSchemaParseGlobalAttribute
      Src: /src/libxml2/xmlschemas.c:9554,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9556,1
    - Dst: xmlSchemaParseAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9557,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9559,1
    - Dst: xmlSchemaParseModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9560,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9562,1
    - Dst: xmlSchemaParseNotation
      Src: /src/libxml2/xmlschemas.c:9563,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9566,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9574,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9578,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:9582,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9601,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9603,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9606,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9614,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9626,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:9640,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:9642,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:9644,1
    - Dst: xmlSchemaRedefListFree
      Src: /src/libxml2/xmlschemas.c:9646,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:9648,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9649,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9658,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9660,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9663,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9665,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9667,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9668,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9671,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9673,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:9674,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:9678,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9687,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9689,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9692,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9694,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9696,1
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:9715,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:9719,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:9721,1
    - Dst: xmlSchemaNewParserCtxtUseDict
      Src: /src/libxml2/xmlschemas.c:9731,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:9733,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:9735,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/xmlschemas.c:9740,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlschemas.c:9742,1
    - Dst: IS_BAD_SCHEMA_DOC
      Src: /src/libxml2/xmlschemas.c:9820,1
    - Dst: xmlSchemaClearSchemaDefaults
      Src: /src/libxml2/xmlschemas.c:9850,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:9858,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9861,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:9870,1
    - Dst: xmlSchemaParseSchemaElement
      Src: /src/libxml2/xmlschemas.c:9871,1
    - Dst: xmlSchemaParseSchemaTopLevel
      Src: /src/libxml2/xmlschemas.c:9878,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:9892,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9910,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9915,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9920,1
    - Dst: xmlSchemaNewParserCtxtUseDict
      Src: /src/libxml2/xmlschemas.c:9925,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/xmlschemas.c:9936,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlschemas.c:9938,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:9943,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:9952,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/xmlschemas.c:9986,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:9988,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:9990,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9991,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:9994,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9995,1
    - Dst: WXS_HAS_BUCKETS
      Src: /src/libxml2/xmlschemas.c:10061,1
    - Dst: xmlSchemaGetSchemaBucket
      Src: /src/libxml2/xmlschemas.c:10066,1
    - Dst: xmlSchemaSchemaRelationCreate
      Src: /src/libxml2/xmlschemas.c:10081,1
    - Dst: xmlSchemaSchemaRelationAddChild
      Src: /src/libxml2/xmlschemas.c:10084,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10091,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10106,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10113,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10122,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10130,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10142,1
    - Dst: xmlSchemaGetSchemaBucketByTNS
      Src: /src/libxml2/xmlschemas.c:10167,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10176,1
    - Dst: xmlSchemaGetChameleonSchemaBucket
      Src: /src/libxml2/xmlschemas.c:10226,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:10248,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:10264,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:10271,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:10273,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlschemas.c:10278,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xmlschemas.c:10280,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:10288,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:10290,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/xmlschemas.c:10294,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/xmlschemas.c:10298,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:10302,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/xmlschemas.c:10319,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:10339,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:10343,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:10357,1
    - Dst: xmlSchemaCleanupDoc
      Src: /src/libxml2/xmlschemas.c:10368,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10372,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:10383,1
    - Dst: xmlSchemaBucketCreate
      Src: /src/libxml2/xmlschemas.c:10390,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10405,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:10425,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:10433,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10470,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10471,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10472,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10473,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10476,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10477,1
    - Dst: xmlSchemaPValAttr
      Src: /src/libxml2/xmlschemas.c:10485,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10486,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:10488,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10491,1
    - Dst: xmlSchemaPValAttr
      Src: /src/libxml2/xmlschemas.c:10496,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10497,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:10499,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10502,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10510,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10518,1
    - Dst: WXS_BUCKET
      Src: /src/libxml2/xmlschemas.c:10531,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10538,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10539,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10553,1
    - Dst: xmlSchemaBuildAbsoluteURI
      Src: /src/libxml2/xmlschemas.c:10566,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:10568,1
    - Dst: CAN_PARSE_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10590,1
    - Dst: xmlSchemaParseNewDoc
      Src: /src/libxml2/xmlschemas.c:10591,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10618,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10619,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10620,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10623,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10624,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:10629,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:10637,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:10642,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10643,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/xmlschemas.c:10646,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:10648,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:10650,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:10651,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:10654,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:10658,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:10659,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:10661,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10669,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10671,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10677,1
    - Dst: xmlSchemaParseIncludeOrRedefineAttrs
      Src: /src/libxml2/xmlschemas.c:10712,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:10719,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10786,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:10789,1
    - Dst: xmlSchemaParseNewDoc
      Src: /src/libxml2/xmlschemas.c:10819,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10837,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10838,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10839,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10840,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10841,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10842,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10846,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:10847,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10848,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:10849,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10851,1
    - Dst: xmlSchemaParseModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:10853,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10855,1
    - Dst: xmlSchemaParseAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:10857,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10865,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10875,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10879,1
    - Dst: xmlSchemaParseIncludeOrRedefine
      Src: /src/libxml2/xmlschemas.c:10899,1
    - Dst: xmlSchemaParseIncludeOrRedefine
      Src: /src/libxml2/xmlschemas.c:10912,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:10958,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:10964,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:10965,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:10968,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:10969,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:10972,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:10976,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10986,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10987,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10988,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10989,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10992,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10993,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11005,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11006,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11009,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11010,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11020,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11025,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11026,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11032,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:11033,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:11044,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:11053,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11070,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11079,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11080,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11081,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11082,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11083,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11085,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:11087,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11090,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11092,1
    - Dst: xmlSchemaGetQNameRefName
      Src: /src/libxml2/xmlschemas.c:11102,1
    - Dst: xmlSchemaGetQNameRefTargetNs
      Src: /src/libxml2/xmlschemas.c:11104,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11124,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11128,1
    - Dst: WXS_PARTICLE
      Src: /src/libxml2/xmlschemas.c:11130,1
    - Dst: WXS_PARTICLE
      Src: /src/libxml2/xmlschemas.c:11131,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11146,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11150,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11157,1
    - Dst: xmlSchemaParseAny
      Src: /src/libxml2/xmlschemas.c:11159,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11160,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11161,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11163,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11164,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11177,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:11189,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11227,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11228,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11229,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11232,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11233,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11241,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:11254,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11258,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11265,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11268,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11269,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:11279,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11283,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11284,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11286,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11287,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11298,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11302,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11303,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11310,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11317,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:11324,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11328,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11341,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11343,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11346,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11348,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11351,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11353,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11359,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11361,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11375,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:11381,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11404,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11405,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11406,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11407,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11408,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11409,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11410,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11411,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11412,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11413,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11414,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11415,1
    - Dst: xmlSchemaParseFacet
      Src: /src/libxml2/xmlschemas.c:11416,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:11436,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:11438,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:11439,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:11457,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11464,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:11466,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11472,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11478,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11487,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11530,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11531,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11532,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11535,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11536,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11542,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:11547,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11550,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11558,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11562,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11563,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11572,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11574,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11577,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11579,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11582,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11584,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11587,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11589,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:11601,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11608,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:11610,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11617,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11624,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11666,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11667,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11670,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11671,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11677,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11683,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11687,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11688,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11692,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11698,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11703,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:11704,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11708,1
    - Dst: xmlSchemaParseExtension
      Src: /src/libxml2/xmlschemas.c:11709,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11715,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11754,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11755,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11757,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11760,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11761,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11767,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:11772,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11777,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11781,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11782,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11786,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11792,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11797,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:11798,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11802,1
    - Dst: xmlSchemaParseExtension
      Src: /src/libxml2/xmlschemas.c:11803,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11809,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:11848,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11850,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:11853,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:11854,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:11864,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11865,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:11867,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11870,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11886,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11902,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11906,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11907,1
    - Dst: xmlSchemaPGetBoolNodeValue
      Src: /src/libxml2/xmlschemas.c:11911,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11918,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11920,1
    - Dst: xmlSchemaPGetBoolNodeValue
      Src: /src/libxml2/xmlschemas.c:11924,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11927,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:11931,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:11933,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:11940,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11947,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:11951,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:11953,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:11958,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11966,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11970,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11973,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11974,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12001,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:12002,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12006,1
    - Dst: xmlSchemaParseSimpleContent
      Src: /src/libxml2/xmlschemas.c:12015,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12018,1
    - Dst: xmlSchemaParseComplexContent
      Src: /src/libxml2/xmlschemas.c:12023,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12036,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12041,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12043,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12046,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12048,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12051,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12053,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12056,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:12058,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:12068,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12075,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:12076,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:12081,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:12092,1
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12174,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12177,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:12178,1
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12197,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12202,1
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12220,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12224,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:12242,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlschemas.c:12244,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:12247,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:12252,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:12253,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:12254,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12282,1
    - Dst: xmlSchemaSubstGroupGet
      Src: /src/libxml2/xmlschemas.c:12283,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:12285,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:12285,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12299,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12300,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12307,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12314,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12315,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12336,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12338,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12347,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12349,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12351,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12352,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12361,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12362,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12367,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12368,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12371,1
    - Dst: xmlSchemaBuildContentModelForSubstGroup
      Src: /src/libxml2/xmlschemas.c:12392,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12403,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12409,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12411,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12420,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12421,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12422,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12424,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12425,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12429,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:12450,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12470,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12480,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12482,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12487,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12489,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12495,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12497,1
    - Dst: xmlAutomataNewNegTrans
      Src: /src/libxml2/xmlschemas.c:12502,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12515,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12516,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12519,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12521,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12523,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12525,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12530,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12532,1
    - Dst: xmlAutomataNewNegTrans
      Src: /src/libxml2/xmlschemas.c:12537,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12541,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12542,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12545,1
    - Dst: xmlSchemaBuildContentModelForElement
      Src: /src/libxml2/xmlschemas.c:12552,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12566,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12579,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12583,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12588,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12594,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12597,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12600,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12604,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12610,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12615,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12622,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12625,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12635,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12639,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12645,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12651,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12654,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12657,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12664,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12675,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12679,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12693,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12703,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12706,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12722,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12723,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12724,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12729,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12732,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12735,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12736,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12737,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12739,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12742,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12762,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12763,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:12770,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12788,1
    - Dst: xmlSchemaBuildContentModelForSubstGroup
      Src: /src/libxml2/xmlschemas.c:12790,1
    - Dst: xmlAutomataNewOnceTrans2
      Src: /src/libxml2/xmlschemas.c:12795,1
    - Dst: xmlAutomataNewCountTrans2
      Src: /src/libxml2/xmlschemas.c:12803,1
    - Dst: xmlAutomataNewAllTrans
      Src: /src/libxml2/xmlschemas.c:12815,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12817,1
    - Dst: xmlSchemaInternalErr2
      Src: /src/libxml2/xmlschemas.c:12833,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:12836,1
    - Dst: xmlNewAutomata
      Src: /src/libxml2/xmlschemas.c:12859,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:12861,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/xmlschemas.c:12864,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12868,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:12868,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/xmlschemas.c:12869,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/xmlschemas.c:12870,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/xmlschemas.c:12876,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/xmlschemas.c:12885,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:12913,1
    - Dst: type
      Src: /src/libxml2/xmlschemas.c:12922,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:12931,1
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:12940,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:12945,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12959,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12974,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:13012,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:13013,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13026,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:13038,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:13040,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13067,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13075,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13077,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13094,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13101,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13111,1
    - Dst: xmlSchemaQueryBuiltInType
      Src: /src/libxml2/xmlschemas.c:13115,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:13151,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:13151,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13185,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13197,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13199,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13270,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13274,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13301,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13361,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13365,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13375,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13379,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13389,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13402,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13405,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13436,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13440,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13453,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13456,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13526,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13542,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13557,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13572,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13607,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13767,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13772,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13818,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13819,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13820,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13821,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13840,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13842,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13846,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13847,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13849,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:13851,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13852,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13853,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13863,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13865,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13870,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13871,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13872,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13873,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13874,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13875,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13877,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13878,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13879,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13888,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13900,1
    - Dst: WXS_ARE_DEFAULT_STR_EQUAL
      Src: /src/libxml2/xmlschemas.c:13910,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13914,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13916,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13920,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13921,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13924,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:13942,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:13943,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13947,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13949,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13952,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13953,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13955,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13978,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13979,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13980,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13981,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13995,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13996,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13997,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13999,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14000,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14023,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14024,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14025,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14026,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14027,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:14030,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14044,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14045,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14046,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14048,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14058,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14066,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14067,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14068,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14070,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14106,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14111,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14112,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14123,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14128,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14132,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14139,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14143,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14156,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14174,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14175,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14188,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14189,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14190,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14191,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14198,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14203,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14211,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14216,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:14225,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:14236,1
    - Dst: xmlSchemaUnionWildcards
      Src: /src/libxml2/xmlschemas.c:14253,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14348,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14369,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14401,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14422,1
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14457,1
    - Dst: WXS_IS_MODEL_GROUP
      Src: /src/libxml2/xmlschemas.c:14495,1
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14496,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14534,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14535,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14537,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14538,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14541,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14557,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14558,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14566,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14578,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14583,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14584,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14586,1
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14635,1
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14655,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14692,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14697,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:14699,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14715,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14717,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14738,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14749,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14750,1
    - Dst: xmlSchemaResolveUnionMemberTypes
      Src: /src/libxml2/xmlschemas.c:14754,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14756,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14762,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14766,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14784,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14785,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14787,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14788,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14792,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14798,1
    - Dst: xmlSchemaGetNamedComponent
      Src: /src/libxml2/xmlschemas.c:14803,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:14806,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14811,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14812,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14814,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14822,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14829,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14884,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14889,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14890,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14894,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14895,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14903,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14910,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14922,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14929,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14930,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14964,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14969,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14975,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14980,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14981,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14988,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14994,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14995,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:15008,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15010,1
    - Dst: xmlSchemaIsBuiltInTypeFacet
      Src: /src/libxml2/xmlschemas.c:15016,1
    - Dst: xmlSchemaPIllegalFacetAtomicErr
      Src: /src/libxml2/xmlschemas.c:15018,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15036,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15040,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15041,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15045,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15046,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15052,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15053,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15058,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15059,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15061,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15066,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15072,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15073,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:15080,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15090,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15096,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15097,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15110,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15134,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15139,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15140,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15147,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15153,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15154,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15166,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15167,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15175,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15180,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15181,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15182,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15184,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15185,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15186,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15213,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15244,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15245,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15247,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15248,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15253,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15254,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15270,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15276,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15277,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15297,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15302,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15303,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15309,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15315,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15316,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:15342,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15344,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15349,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15356,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15362,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15363,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15364,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15365,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15366,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15367,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15388,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15430,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15440,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15447,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmlschemas.c:15460,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:15462,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/xmlschemas.c:15470,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlschemas.c:15472,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15528,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15551,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15552,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15554,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15555,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15561,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15592,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15593,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15637,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15638,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15639,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15640,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15650,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15654,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15666,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:15667,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15668,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15680,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15682,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15683,1
    - Dst: xmlSchemaAreEqualTypes
      Src: /src/libxml2/xmlschemas.c:15730,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15743,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15744,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:15761,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15764,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15770,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15778,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15801,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15802,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15804,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15835,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15878,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15879,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15880,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15881,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15882,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15883,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15905,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15930,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15931,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:15933,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15943,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15944,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16088,1
    - Dst: xmlSchemaCheckDerivationOKRestriction2to4
      Src: /src/libxml2/xmlschemas.c:16113,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:16153,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16165,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16167,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16169,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16170,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16174,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16203,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16221,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    - Dst: xmlSchemaCheckCTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:16273,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16276,1
    - Dst: xmlSchemaCheckCOSCTExtends
      Src: /src/libxml2/xmlschemas.c:16277,1
    - Dst: xmlSchemaCheckDerivationOKRestriction
      Src: /src/libxml2/xmlschemas.c:16279,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:16305,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16311,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16318,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16320,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:16331,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16332,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16345,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16347,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16368,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16375,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16397,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16399,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16408,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16416,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16425,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16428,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16503,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16504,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16510,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16534,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:16570,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:16605,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16612,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16668,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:16675,1
    - Dst: xmlSchemaCheckCOSParticleRestrict
      Src: /src/libxml2/xmlschemas.c:16763,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16772,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:16773,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:16774,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16814,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:16856,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16858,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16860,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16862,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16864,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16867,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16868,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16871,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16873,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:16881,1
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:16993,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17004,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17010,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17018,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17022,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17024,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17033,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17037,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17039,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17047,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17051,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17053,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17066,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17070,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17076,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17080,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17089,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17093,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17101,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17105,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17107,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17112,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17116,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17121,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17125,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17130,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17134,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17143,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17147,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17155,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17159,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17162,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17167,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17171,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17176,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17180,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17185,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17189,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17198,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17202,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17210,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17214,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17217,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17222,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17226,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17231,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17235,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17240,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17244,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17253,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17257,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17265,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17269,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17272,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17277,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17281,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17286,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17290,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17294,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17298,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17306,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17310,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17313,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17321,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17325,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17328,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17339,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17343,1
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:17381,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17388,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17405,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17407,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17423,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17445,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17446,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17448,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:17449,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17458,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17460,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17519,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:17520,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17539,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17542,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17602,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17606,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17614,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17618,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17626,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17635,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17639,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17640,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17647,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17649,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17655,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17679,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17686,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17690,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17691,1
    - Dst: xmlSchemaFinishMemberTypeDefinitionsProperty
      Src: /src/libxml2/xmlschemas.c:17699,1
    - Dst: xmlSchemaCheckSTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:17711,1
    - Dst: xmlSchemaCheckCOSSTRestricts
      Src: /src/libxml2/xmlschemas.c:17717,1
    - Dst: xmlSchemaCheckFacetValues
      Src: /src/libxml2/xmlschemas.c:17734,1
    - Dst: xmlSchemaDeriveAndValidateFacets
      Src: /src/libxml2/xmlschemas.c:17738,1
    - Dst: xmlSchemaTypeFixupWhitespace
      Src: /src/libxml2/xmlschemas.c:17744,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17764,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17768,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17775,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17776,1
    - Dst: xmlSchemaCheckSRCCT
      Src: /src/libxml2/xmlschemas.c:17787,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17796,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17798,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:17836,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:17837,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17838,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17842,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17864,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17865,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17870,1
    - Dst: xmlSchemaFixupSimpleTypeStageTwo
      Src: /src/libxml2/xmlschemas.c:17872,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17875,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17877,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:17972,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:17980,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:18006,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18051,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18052,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18053,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18071,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18072,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18073,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18097,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:18105,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:18109,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18117,1
    - Dst: xmlSchemaFixupTypeAttributeUses
      Src: /src/libxml2/xmlschemas.c:18165,1
    - Dst: xmlSchemaCheckCTComponent
      Src: /src/libxml2/xmlschemas.c:18172,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:18204,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:18208,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18279,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:18290,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:18301,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:18313,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18327,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18329,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18334,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/xmlschemas.c:18342,1
    - Dst: xmlSchemaValidatePredefinedType
      Src: /src/libxml2/xmlschemas.c:18362,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:18363,1
    - Dst: xmlSchemaValidatePredefinedType
      Src: /src/libxml2/xmlschemas.c:18366,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:18367,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18374,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:18387,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18397,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18399,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18401,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:18420,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:18424,1
    - Dst: xmlSchemaCreateVCtxtOnPCtxt
      Src: /src/libxml2/xmlschemas.c:18452,1
    - Dst: xmlSchemaCheckFacet
      Src: /src/libxml2/xmlschemas.c:18457,1
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18504,1
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18514,1
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18548,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:18558,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:18560,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18562,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18564,1
    - Dst: WXS_MODELGROUP_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18591,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18594,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18595,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:18601,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18601,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18605,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18612,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:18613,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18613,1
    - Dst: xmlSchemaCheckAttrGroupCircularRecur
      Src: /src/libxml2/xmlschemas.c:18657,1
    - Dst: xmlSchemaCheckAttrGroupCircularRecur
      Src: /src/libxml2/xmlschemas.c:18700,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:18711,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18712,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18764,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18771,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:18781,1
    - Dst: WXS_ATTR_GROUP_CAST
      Src: /src/libxml2/xmlschemas.c:18789,1
    - Dst: xmlSchemaAttributeGroupExpandRefs
      Src: /src/libxml2/xmlschemas.c:18796,1
    - Dst: xmlSchemaAddWildcard
      Src: /src/libxml2/xmlschemas.c:18818,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:18820,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:18823,1
    - Dst: xmlSchemaIntersectWildcards
      Src: /src/libxml2/xmlschemas.c:18831,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18842,1
    - Dst: xmlSchemaItemListInsert
      Src: /src/libxml2/xmlschemas.c:18854,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18873,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18874,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18884,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18887,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18891,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:18921,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18966,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18967,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18968,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18969,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18979,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18983,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:18996,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:18997,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:18998,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:19010,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19012,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:19013,1
    - Dst: xmlSchemaGetAttributeGroup
      Src: /src/libxml2/xmlschemas.c:19039,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:19043,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19077,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19088,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19089,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:19107,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19108,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:19113,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19135,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19137,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19140,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19142,1
    - Dst: xmlSchemaCheckSubstGroupCircular
      Src: /src/libxml2/xmlschemas.c:19143,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19144,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19145,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19164,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19171,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19172,1
    - Dst: xmlSchemaCheckElementDeclComponent
      Src: /src/libxml2/xmlschemas.c:19174,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19195,1
    - Dst: xmlSchemaCheckSubstGroupCircular
      Src: /src/libxml2/xmlschemas.c:19196,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19207,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19208,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19210,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19211,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19229,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19229,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:19237,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19238,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19249,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19250,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19251,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19251,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19252,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19253,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19254,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:19266,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19267,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:19268,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:19269,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19270,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:19291,1
    - Dst: xmlHasProp
      Src: /src/libxml2/xmlschemas.c:19300,1
    - Dst: xmlHasProp
      Src: /src/libxml2/xmlschemas.c:19303,1
    - Dst: xmlSchemaParseCheckCOSValidDefault
      Src: /src/libxml2/xmlschemas.c:19306,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:19310,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19342,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19355,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19356,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:19392,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:19396,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:19408,1
    - Dst: xmlSchemaAddElementSubstitutionMember
      Src: /src/libxml2/xmlschemas.c:19431,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19466,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19474,1
    - Dst: xmlSchemaCheckElementDeclConsistent
      Src: /src/libxml2/xmlschemas.c:19479,1
    - Dst: WXS_ELEM_CAST
      Src: /src/libxml2/xmlschemas.c:19485,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19485,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19496,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19496,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19497,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19498,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19498,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19499,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:19510,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:19512,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19513,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19514,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19515,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19516,1
    - Dst: xmlSchemaInternalErr2
      Src: /src/libxml2/xmlschemas.c:19544,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:19547,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19547,1
    - Dst: xmlSchemaCheckElemPropsCorrect
      Src: /src/libxml2/xmlschemas.c:19576,1
    - Dst: xmlSchemaCheckElemSubstGroup
      Src: /src/libxml2/xmlschemas.c:19580,1
    - Dst: WXS_MODELGROUP_PARTICLE
      Src: /src/libxml2/xmlschemas.c:19596,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19604,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19605,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19610,1
    - Dst: xmlSchemaGetNamedComponent
      Src: /src/libxml2/xmlschemas.c:19617,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:19620,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:19621,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:19627,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:19637,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19682,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:19682,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19683,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:19683,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:19684,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:19685,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:19702,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19703,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/xmlschemas.c:19704,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/xmlschemas.c:19705,1
    - Dst: xmlSchemaCompareValuesWhtsp
      Src: /src/libxml2/xmlschemas.c:19708,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19719,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19721,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19724,1
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:19755,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19782,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19783,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19794,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19795,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19810,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19819,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19820,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:19831,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19832,1
    - Dst: PERROR_INT2
      Src: /src/libxml2/xmlschemas.c:19837,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19856,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19857,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:19859,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19860,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19868,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:19902,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:19904,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19918,1
    - Dst: xmlSchemaGetIDC
      Src: /src/libxml2/xmlschemas.c:19939,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:19982,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19985,1
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:19997,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:20000,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20023,1
    - Dst: xmlSchemaFindRedefCompInGraph
      Src: /src/libxml2/xmlschemas.c:20045,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20068,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20070,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:20080,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:20081,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20083,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20162,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20171,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20173,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:20181,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20183,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20198,1
    - Dst: xmlSchemaCheckDerivationOKRestriction2to4
      Src: /src/libxml2/xmlschemas.c:20251,1
    - Dst: WXS_REDEFINED_TYPE
      Src: /src/libxml2/xmlschemas.c:20310,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20313,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20317,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20321,1
    - Dst: WXS_REDEFINED_MODEL_GROUP_DEF
      Src: /src/libxml2/xmlschemas.c:20324,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20327,1
    - Dst: WXS_REDEFINED_ATTR_GROUP
      Src: /src/libxml2/xmlschemas.c:20330,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20333,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20339,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20343,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20346,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/xmlschemas.c:20351,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20353,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:20358,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:20367,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:20368,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20369,1
    - Dst: xmlSchemaAddComponents
      Src: /src/libxml2/xmlschemas.c:20380,1
    - Dst: xmlSchemaCheckSRCRedefineFirst
      Src: /src/libxml2/xmlschemas.c:20426,1
    - Dst: xmlSchemaAddComponents
      Src: /src/libxml2/xmlschemas.c:20431,1
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:20466,1
    - Dst: xmlSchemaResolveTypeReferences
      Src: /src/libxml2/xmlschemas.c:20472,1
    - Dst: xmlSchemaResolveAttrTypeReferences
      Src: /src/libxml2/xmlschemas.c:20477,1
    - Dst: xmlSchemaResolveAttrUseReferences
      Src: /src/libxml2/xmlschemas.c:20482,1
    - Dst: xmlSchemaResolveModelGroupParticleReferences
      Src: /src/libxml2/xmlschemas.c:20498,1
    - Dst: xmlSchemaResolveIDCKeyReferences
      Src: /src/libxml2/xmlschemas.c:20505,1
    - Dst: xmlSchemaResolveAttrUseProhibReferences
      Src: /src/libxml2/xmlschemas.c:20514,1
    - Dst: xmlSchemaCheckTypeDefCircular
      Src: /src/libxml2/xmlschemas.c:20541,1
    - Dst: xmlSchemaCheckGroupDefCircular
      Src: /src/libxml2/xmlschemas.c:20548,1
    - Dst: xmlSchemaCheckAttrGroupCircular
      Src: /src/libxml2/xmlschemas.c:20555,1
    - Dst: xmlSchemaModelGroupToModelGroupDefFixup
      Src: /src/libxml2/xmlschemas.c:20580,1
    - Dst: WXS_ATTR_GROUP_EXPANDED
      Src: /src/libxml2/xmlschemas.c:20596,1
    - Dst: WXS_ATTR_GROUP_HAS_REFS
      Src: /src/libxml2/xmlschemas.c:20597,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:20619,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:20620,1
    - Dst: xmlSchemaCheckUnionTypeDefCircular
      Src: /src/libxml2/xmlschemas.c:20640,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:20659,1
    - Dst: xmlSchemaCheckAttrPropsCorrect
      Src: /src/libxml2/xmlschemas.c:20680,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20733,1
    - Dst: xmlSchemaCheckSRCRedefineSecond
      Src: /src/libxml2/xmlschemas.c:20734,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:20745,1
    - Dst: xmlSchemaCheckElementDeclComponent
      Src: /src/libxml2/xmlschemas.c:20775,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20785,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:20786,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20786,1
    - Dst: WXS_TYPE_IS_LOCAL
      Src: /src/libxml2/xmlschemas.c:20787,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20787,1
    - Dst: xmlSchemaBuildContentModel
      Src: /src/libxml2/xmlschemas.c:20812,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:20842,1
    - Dst: xmlSchemaRedefListFree
      Src: /src/libxml2/xmlschemas.c:20846,1
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/xmlschemas.c:20871,1
    - Dst: xmlSchemaNewSchema
      Src: /src/libxml2/xmlschemas.c:20883,1
    - Dst: xmlSchemaConstructionCtxtCreate
      Src: /src/libxml2/xmlschemas.c:20890,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:20900,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:20911,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:20916,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:20923,1
    - Dst: xmlSchemaFixupComponents
      Src: /src/libxml2/xmlschemas.c:20933,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20933,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:20943,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:20947,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:20960,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:20964,1
    - Dst: PERROR_INT2
      Src: /src/libxml2/xmlschemas.c:20968,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/xmlschemas.c:20995,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlschemas.c:21015,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:21127,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:21132,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:21134,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21184,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:21190,1
    - Dst: xmlSchemaBuildAbsoluteURI
      Src: /src/libxml2/xmlschemas.c:21197,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:21204,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:21224,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:21225,1
    - Dst: CAN_PARSE_SCHEMA
      Src: /src/libxml2/xmlschemas.c:21230,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:21240,1
    - Dst: xmlSchemaFixupComponents
      Src: /src/libxml2/xmlschemas.c:21255,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:21321,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:21324,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21337,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21340,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21345,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21351,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21354,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21372,1
    - Dst: xmlSchemaAssembleByLocation
      Src: /src/libxml2/xmlschemas.c:21374,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21377,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:21399,1
    - Dst: xmlTextReaderLookupNamespace
      Src: /src/libxml2/xmlschemas.c:21416,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21420,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21421,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21431,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:21435,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21457,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:21461,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:21468,1
    - Dst: xmlSchemaLookupNamespace
      Src: /src/libxml2/xmlschemas.c:21473,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:21475,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21479,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21480,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21484,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21485,1
    - Dst: xmlSchemaGetNotation
      Src: /src/libxml2/xmlschemas.c:21488,1
    - Dst: xmlSchemaNewNOTATIONValue
      Src: /src/libxml2/xmlschemas.c:21490,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21490,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21491,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21497,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21498,1
    - Dst: xmlSchemaGetNotation
      Src: /src/libxml2/xmlschemas.c:21500,1
    - Dst: xmlSchemaNewNOTATIONValue
      Src: /src/libxml2/xmlschemas.c:21502,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21503,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21521,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21525,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:21537,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21538,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:21541,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21543,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21571,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21573,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlschemas.c:21606,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21621,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21624,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:21627,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21652,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21655,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21658,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21660,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21690,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21693,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21696,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21698,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21725,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21728,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21731,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21733,1
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:21763,1
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:21775,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:21791,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21793,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:21807,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21808,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21819,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21821,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21822,1
    - Dst: xmlSchemaIDCFreeBinding
      Src: /src/libxml2/xmlschemas.c:21838,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21848,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21869,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21870,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21884,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21885,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21888,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:21891,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21892,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21918,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21934,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21935,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21938,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:21942,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21987,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21989,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:21992,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmlschemas.c:22005,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/xmlschemas.c:22010,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22013,1
    - Dst: xmlStreamPush
      Src: /src/libxml2/xmlschemas.c:22053,1
    - Dst: xmlStreamPushAttr
      Src: /src/libxml2/xmlschemas.c:22056,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22060,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:22076,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22079,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:22082,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22084,1
    - Dst: xmlSchemaIDCAddStateObject
      Src: /src/libxml2/xmlschemas.c:22101,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:22143,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22145,1
    - Dst: xmlSchemaGetCanonValueWhtspExt
      Src: /src/libxml2/xmlschemas.c:22147,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:22148,1
    - Dst: xmlSchemaGetCanonValueHash
      Src: /src/libxml2/xmlschemas.c:22151,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22154,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22156,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22158,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22161,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22163,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22165,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22169,1
    - Dst: xmlSchemaFormatIDCKeySequence_1
      Src: /src/libxml2/xmlschemas.c:22180,1
    - Dst: xmlSchemaFormatIDCKeySequence_1
      Src: /src/libxml2/xmlschemas.c:22189,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xmlschemas.c:22208,1
    - Dst: xmlStreamPop
      Src: /src/libxml2/xmlschemas.c:22241,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22243,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:22266,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:22267,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22273,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22295,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22296,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:22346,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22349,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:22352,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22355,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22394,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22395,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22405,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22409,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22412,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22420,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22423,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22424,1
    - Dst: xmlSchemaIDCStoreKey
      Src: /src/libxml2/xmlschemas.c:22437,1
    - Dst: xmlSchemaIDCFreeKey
      Src: /src/libxml2/xmlschemas.c:22438,1
    - Dst: xmlSchemaIDCAcquireBinding
      Src: /src/libxml2/xmlschemas.c:22516,1
    - Dst: xmlSchemaIDCAcquireTargetList
      Src: /src/libxml2/xmlschemas.c:22518,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:22533,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:22534,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22535,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22547,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:22574,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22576,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22577,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22578,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22585,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22588,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22589,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22593,1
    - Dst: xmlSchemaIDCStoreNodeTableItem
      Src: /src/libxml2/xmlschemas.c:22599,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22600,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22601,1
    - Dst: xmlSchemaVAddNodeQName
      Src: /src/libxml2/xmlschemas.c:22611,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22614,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22615,1
    - Dst: xmlSchemaIDCAppendNodeTableItem
      Src: /src/libxml2/xmlschemas.c:22629,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:22631,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22637,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22638,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/xmlschemas.c:22646,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:22647,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22648,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22650,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:22654,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:22660,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22661,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22662,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22666,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22683,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22684,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22691,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22704,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22746,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22775,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22795,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22811,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22813,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22816,1
    - Dst: xmlSchemaIDCAddStateObject
      Src: /src/libxml2/xmlschemas.c:22831,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:22856,1
    - Dst: xmlSchemaIDCAcquireBinding
      Src: /src/libxml2/xmlschemas.c:22875,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:22879,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22897,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:22907,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22927,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22941,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22966,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22980,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:22996,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:23000,1
    - Dst: xmlSchemaIDCAppendNodeTableItem
      Src: /src/libxml2/xmlschemas.c:23019,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:23065,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:23103,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23126,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23138,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23165,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23176,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:23212,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:23216,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23228,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23232,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23235,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23238,1
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:23261,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23291,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23294,1
    - Dst: xmlSchemaIDCFreeBinding
      Src: /src/libxml2/xmlschemas.c:23295,1
    - Dst: memcpy
      Src: /src/libxml2/xmlschemas.c:23300,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:23309,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/xmlschemas.c:23374,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:23379,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23380,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23382,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:23386,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:23392,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23393,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:23394,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23398,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:23408,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:23409,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23410,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23415,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23438,1
    - Dst: xmlSchemaKeyrefErr
      Src: /src/libxml2/xmlschemas.c:23451,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:23456,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:23458,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23460,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23461,1
    - Dst: xmlSchemaKeyrefErr
      Src: /src/libxml2/xmlschemas.c:23470,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:23474,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:23476,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23477,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23478,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:23482,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23509,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23511,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23514,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23516,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23530,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23543,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23545,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:23548,1
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:23567,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23569,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23584,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23585,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23588,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23589,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23592,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23593,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23596,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23597,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23600,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23623,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23624,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23630,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:23639,1
    - Dst: xmlSchemaIDCReleaseMatcherList
      Src: /src/libxml2/xmlschemas.c:23647,1
    - Dst: xmlSchemaIDCFreeMatcherList
      Src: /src/libxml2/xmlschemas.c:23649,1
    - Dst: xmlSchemaIDCFreeIDCTable
      Src: /src/libxml2/xmlschemas.c:23657,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/xmlschemas.c:23661,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:23665,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23685,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23694,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23696,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23699,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23701,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23719,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23721,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23727,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:23732,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:23775,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:23776,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:23786,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:23788,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:23789,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:23799,1
    - Dst: xmlSchemaValidateLengthFacetWhtsp
      Src: /src/libxml2/xmlschemas.c:23816,1
    - Dst: xmlSchemaValidateFacetWhtsp
      Src: /src/libxml2/xmlschemas.c:23820,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23825,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23830,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:23841,1
    - Dst: xmlSchemaValidateListSimpleTypeFacet
      Src: /src/libxml2/xmlschemas.c:23854,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23861,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23866,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23892,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23896,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23917,1
    - Dst: xmlRegexpExec
      Src: /src/libxml2/xmlschemas.c:23942,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23946,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23959,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:23977,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:23979,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemas.c:23981,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:23998,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24001,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:24012,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:24013,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24014,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:24016,1
    - Dst: xmlSchemaLookupNamespace
      Src: /src/libxml2/xmlschemas.c:24022,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24025,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24038,1
    - Dst: xmlSchemaNewQNameValue
      Src: /src/libxml2/xmlschemas.c:24044,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:24045,1
    - Dst: xmlSchemaNewQNameValue
      Src: /src/libxml2/xmlschemas.c:24047,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24050,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24082,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:24111,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:24111,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24120,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24131,1
    - Dst: xmlSchemaValidateNotation
      Src: /src/libxml2/xmlschemas.c:24144,1
    - Dst: xmlSchemaValidateQName
      Src: /src/libxml2/xmlschemas.c:24150,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24156,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24159,1
    - Dst: xmlSchemaValidateNotation
      Src: /src/libxml2/xmlschemas.c:24166,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24173,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24176,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24188,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24192,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24201,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24206,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24210,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24217,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24218,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24233,1
    - Dst: WXS_LIST_ITEMTYPE
      Src: /src/libxml2/xmlschemas.c:24238,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:24241,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:24244,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:24248,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24252,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24255,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24257,1
    - Dst: xmlSchemaValueAppend
      Src: /src/libxml2/xmlschemas.c:24265,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24271,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24280,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24285,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24290,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24302,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24303,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:24305,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:24323,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24325,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24337,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24340,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24348,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24363,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24364,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24369,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24377,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24381,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24386,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24388,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24392,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24394,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:24411,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:24428,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24430,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24432,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24439,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24482,1
    - Dst: xmlSchemaVExpandQName
      Src: /src/libxml2/xmlschemas.c:24487,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24491,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:24502,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:24511,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24512,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:24560,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:24569,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24573,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24597,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:24601,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24606,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24611,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:24622,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24625,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24629,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:24631,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24635,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24645,1
    - Dst: xmlSchemaValueGetAsBoolean
      Src: /src/libxml2/xmlschemas.c:24649,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24655,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:24671,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:24676,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24680,1
    - Dst: xmlSchemaIDCRegisterMatchers
      Src: /src/libxml2/xmlschemas.c:24697,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24703,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24733,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24758,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24760,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24764,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24767,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:24770,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:24828,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:24839,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:24841,1
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:24883,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24885,1
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:24899,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24901,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:24943,1
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:24969,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:24986,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:24987,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:25008,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:25009,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:25066,1
    - Dst: xmlSchemaXPathEvaluate
      Src: /src/libxml2/xmlschemas.c:25074,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25077,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25102,1
    - Dst: xmlSchemaCopyValue
      Src: /src/libxml2/xmlschemas.c:25107,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25109,1
    - Dst: xmlSchemaNormalizeValue
      Src: /src/libxml2/xmlschemas.c:25128,1
    - Dst: xmlNewProp
      Src: /src/libxml2/xmlschemas.c:25134,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25136,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25139,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/xmlschemas.c:25145,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:25156,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:25157,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25160,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25165,1
    - Dst: xmlNewNs
      Src: /src/libxml2/xmlschemas.c:25169,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/xmlschemas.c:25178,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25181,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:25195,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25222,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25227,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25235,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:25281,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:25295,1
    - Dst: xmlSchemaXPathProcessHistory
      Src: /src/libxml2/xmlschemas.c:25307,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25309,1
    - Dst: xmlSchemaXPathPop
      Src: /src/libxml2/xmlschemas.c:25314,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:25327,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:25335,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:25339,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25343,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:25347,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25354,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25396,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:25412,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25421,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:25434,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:25437,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25439,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:25456,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:25481,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25491,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:25492,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:25493,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25496,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25514,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25516,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25519,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25521,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25525,1
    - Dst: xmlSchemaGetFreshElemInfo
      Src: /src/libxml2/xmlschemas.c:25544,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25546,1
    - Dst: xmlSchemaClearAttrInfos
      Src: /src/libxml2/xmlschemas.c:25582,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/xmlschemas.c:25622,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25625,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25634,1
    - Dst: xmlRegExecNextValues
      Src: /src/libxml2/xmlschemas.c:25643,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/xmlschemas.c:25645,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25646,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:25675,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25685,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25686,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25688,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25689,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25694,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25712,1
    - Dst: xmlSchemaCheckCOSValidDefault
      Src: /src/libxml2/xmlschemas.c:25728,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25732,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25752,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25753,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25755,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25756,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25762,1
    - Dst: xmlSchemaNormalizeValue
      Src: /src/libxml2/xmlschemas.c:25780,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xmlschemas.c:25783,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25785,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xmlschemas.c:25787,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25790,1
    - Dst: xmlAddChild
      Src: /src/libxml2/xmlschemas.c:25794,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25797,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25803,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25812,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25814,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25827,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25832,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25856,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:25865,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:25877,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25890,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:25903,1
    - Dst: xmlSchemaXPathProcessHistory
      Src: /src/libxml2/xmlschemas.c:25930,1
    - Dst: xmlSchemaIDCFillNodeTables
      Src: /src/libxml2/xmlschemas.c:25951,1
    - Dst: xmlSchemaCheckCVCIDCKeyRef
      Src: /src/libxml2/xmlschemas.c:25958,1
    - Dst: xmlSchemaBubbleIDCNodeTables
      Src: /src/libxml2/xmlschemas.c:25970,1
    - Dst: xmlSchemaClearElemInfo
      Src: /src/libxml2/xmlschemas.c:25979,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26030,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:26040,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26046,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:26061,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:26071,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:26074,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26078,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:26097,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26112,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26128,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26137,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/xmlschemas.c:26147,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26150,1
    - Dst: xmlRegExecPushString2
      Src: /src/libxml2/xmlschemas.c:26165,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26170,1
    - Dst: xmlRegExecErrInfo
      Src: /src/libxml2/xmlschemas.c:26175,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26198,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26206,1
    CyclomaticComplexity: 3197
    EdgeCount: 3197
    ICount: 8825
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26227
      start: 7253
    functionDepth: 16
    functionLinenumber: 7253
    functionLinenumberEnd: 26227
    functionName: xmlSchemaParseGlobalAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetSpacePreserve
    - xmlSchemaAddAttributeGroupDefinition
    - xmlGetMaxOccurs
    - xmlSchemaXPathEvaluate
    - xmlRegExecPushString
    - xmlSchemaResolveModelGroupParticleReferences
    - xmlSchemaDeriveFacetErr
    - xmlSchemaFormatQName
    - ACTIVATE_ATTRIBUTE
    - xmlSchemaCheckElementDeclConsistent
    - xmlSchemaParseModelGroupDefRef
    - PERROR_INT2
    - xmlSchemaPCustomAttrErr
    - xmlSchemaCheckElemPropsCorrect
    - WXS_IS_LIST
    - NORMALIZE
    - xmlSchemaAddIDC
    - xmlSchemaPValAttr
    - xmlSchemaCheckAttrGroupCircularRecur
    - WXS_ATTR_TYPEDEF
    - WXS_PARTICLE
    - xmlSchemaPCustomErrExt
    - xmlSchemaFreeWildcardNsSet
    - xmlStrEqual
    - WXS_CONSTRUCTOR
    - xmlSchemaPGetBoolNodeValue
    - xmlSchemaParseSchemaElement
    - xmlSchemaGetValType
    - xmlSchemaGetComponentQName
    - xmlRegNewExecCtxt
    - xmlHashFree
    - WXS_ITEM_NODE
    - WXS_IS_ATOMIC
    - xmlCtxtReadMemory
    - xmlSchemaValidateQName
    - xmlSchemaParseComplexType
    - xmlSchemaIDCReleaseMatcherList
    - xmlSchemaCheckReference
    - xmlSchemaVCheckINodeDataType
    - xmlSchemaCheckCOSSTRestricts
    - xmlSearchNsByHref
    - AERROR_INT
    - WXS_IS_ANYTYPE
    - xmlHasProp
    - xmlHashScan
    - xmlSchemaPValAttrQName
    - xmlSchemaItemListAddSize
    - xmlSchemaExpandAttributeGroupRefs
    - xmlAddChild
    - xmlTextReaderLookupNamespace
    - IS_SCHEMA
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaFacetTypeToString
    - xmlSchemaFacetErr
    - type
    - xmlSchemaDeriveAndValidateFacets
    - xmlSchemaPValAttrID
    - xmlFreeDoc
    - xmlSchemaGetSchemaBucketByTNS
    - xmlAutomataNewState
    - xmlHashCreateDict
    - xmlSchemaParseRestriction
    - xmlSchemaGetBuiltInType
    - xmlSchemaGetPrimitiveType
    - xmlSchemaCompareValues
    - xmlSchemaPMissingAttrErr
    - xmlSchemaClearSchemaDefaults
    - xmlDictCreate
    - xmlSchemaBuildAbsoluteURI
    - xmlSchemaCheckTypeDefCircular
    - xmlSchemaCheckUnionTypeDefCircularRecur
    - xmlSchemaGetIDCDesignation
    - xmlSchemaAddAttribute
    - CAN_PARSE_SCHEMA
    - xmlSchemaNewWildcardNsConstraint
    - xmlSchemaTypeFixup
    - xmlSchemaIsBuiltInTypeFacet
    - xmlSchemaParseFacet
    - xmlGetBooleanProp
    - xmlSchemaParseComplexContent
    - WXS_IS_TYPE_NOT_FIXED_1
    - xmlSchemaCheckParticleRangeOK
    - WXS_REDEFINED_ATTR_GROUP
    - xmlSchemaGetCanonValueHash
    - xmlSchemaFormatIDCKeySequence_1
    - xmlAutomataCompile
    - xmlSchemaPMutualExclAttrErr
    - xmlSchemaCheckSRCCT
    - xmlSchemaFreeValue
    - xmlSchemaPContentErr
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaCheckCTPropsCorrect
    - xmlCtxtReadFile
    - xmlSchemaParseIncludeOrRedefineAttrs
    - xmlNewNs
    - xmlGetMinOccurs
    - WXS_ATTRUSE_DECL
    - xmlAutomataNewCounter
    - xmlSchemaAttributeGroupExpandRefs
    - xmlSchemaIDCFreeIDCTable
    - xmlSchemaVAddNodeQName
    - xmlSchemaParseModelGroup
    - xmlSchemaFixupTypeAttributeUses
    - memcpy
    - xmlSchemaBuildContentModel
    - xmlSchemaFinishMemberTypeDefinitionsProperty
    - xmlSchemaPValAttrNodeQName
    - xmlSchemaAddModelGroupDefinition
    - xmlSchemaCheckCSelectorXPath
    - xmlValidateQName
    - xmlHashCreate
    - xmlHashLookup
    - xmlSchemaItemListAdd
    - xmlSchemaInternalErr2
    - xmlSchemaCheckGroupDefCircular
    - xmlSchemaValidateListSimpleTypeFacet
    - xmlSchemaCompareValuesWhtsp
    - xmlSchemaPCustomErr
    - xmlSchemaParseIDC
    - WXS_HAS_BUCKETS
    - xmlSchemaCheckCVCWildcardNamespace
    - xmlSchemaPResCompAttrErr
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaPErr
    - xmlSchemaParseUnion
    - WXS_ATTR_GROUP_CAST
    - xmlPatternGetStreamCtxt
    - xmlSchemaValidateFacets
    - WXS_ATTRUSE_DECL_TNS
    - xmlSchemaCheckTypeDefCircularInternal
    - xmlSchemaIsDerivedFromBuiltInType
    - xmlRegExecErrInfo
    - xmlSchemaFreeParserCtxt
    - WXS_ITEM_TYPE_NAME
    - xmlSchemaParseAny
    - xmlSchemaIsParticleEmptiable
    - xmlSchemaAreValuesEqual
    - xmlSchemaVErrMemory
    - xmlSchemaIDCAcquireTargetList
    - xmlSchemaNewQNameValue
    - xmlSchemaBuildContentModelForSubstGroup
    - xmlSchemaFreeAnnot
    - xmlSchemaRedefListFree
    - xmlStrcat
    - xmlStreamPushAttr
    - WXS_ACTION_STR
    - xmlSchemaGetNodeContent
    - xmlSchemaPValAttrNodeQNameValue
    - xmlSchemaValueAppend
    - xmlSchemaGetElem
    - xmlSchemaSetValidErrors
    - xmlSchemaGetProp
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaCheckSRCRedefineSecond
    - xmlSchemaGetIDC
    - WXS_SUBST_HEAD
    - xmlSchemaIDCFreeMatcherList
    - xmlSchemaCheckCOSCTExtends
    - xmlSchemaItemListFree
    - xmlSchemaClearElemInfo
    - xmlSchemaParseNotation
    - xmlSchemaCheckCOSDerivedOK
    - WXS_LIST_ITEMTYPE
    - WXS_ELEM_CAST
    - PERROR_INT
    - xmlSchemaIDCAppendNodeTableItem
    - xmlCtxtSetResourceLoader
    - xmlSchemaResolveTypeReferences
    - xmlSchemaNewParserCtxt
    - xmlSchemaCustomErr
    - xmlSchemaIDCAcquireBinding
    - WXS_PARTICLE_TERM
    - xmlSchemaSimpleTypeErr
    - xmlAutomataNewOnceTrans2
    - xmlSchemaResolveElementReferences
    - xmlSchemaNewParserCtxtUseDict
    - xmlSchemaParserCtxtCreate
    - xmlSchemaGetParticleTotalRangeMin
    - xmlStrndup
    - xmlSchemaResolveAttrUseProhibReferences
    - xmlSchemaNewSchema
    - xmlRegFreeExecCtxt
    - xmlSplitQName2
    - WXS_ATTR_GROUP_EXPANDED
    - xmlSchemaPSimpleTypeErr
    - WXS_HAS_SIMPLE_CONTENT
    - xmlSchemaLookupNamespace
    - xmlSchemaKeyrefErr
    - xmlSchemaResolveIDCKeyReferences
    - xmlSchemaGetNamedComponent
    - xmlSchemaCleanupDoc
    - FACET_RESTR_ERR
    - WXS_REDEFINED_TYPE
    - xmlSchemaTypeFixupWhitespace
    - xmlSchemaAddSchemaDoc
    - xmlDictReference
    - xmlPatterncompile
    - xmlRegexpCompile
    - xmlSchemaGetEffectiveValueConstraint
    - xmlSchemaCheckCOSNSSubset
    - xmlSchemaCheckCOSCTDerivedOK
    - xmlSchemaCheckCOSValidDefault
    - xmlSchemaAddElementSubstitutionMember
    - xmlSchemaIDCStoreKey
    - xmlAutomataNewTransition2
    - xmlNewParserCtxt
    - xmlSchemaParseSimpleContent
    - xmlSchemaFixupSimpleTypeStageTwo
    - xmlSchemaParseExtension
    - xmlGetNsList
    - xmlSchemaBucketCreate
    - xmlSchemaGetParticleEmptiable
    - VERROR
    - xmlSchemaPValAttrNode
    - xmlSchemaParseIncludeOrRedefine
    - xmlSchemaParseNewDoc
    - xmlSchemaIDCFreeBinding
    - xmlAutomataSetFinalState
    - xmlSchemaPErrMemory
    - xmlSchemaCheckUnionTypeDefCircular
    - xmlSchemaNewValidCtxt
    - xmlSchemaProcessXSIType
    - WXS_IS_MODEL_GROUP
    - xmlSchemaSchemaRelationCreate
    - xmlSchemaValueGetNext
    - WXS_REDEFINED_MODEL_GROUP_DEF
    - xmlSchemaItemListInsert
    - xmlSchemaCheckSRCRedefineFirst
    - WXS_GET_GLOBAL_HASH
    - WXS_ADD_PENDING
    - xmlSchemaPAttrUseErr4
    - WXS_IS_ANY_SIMPLE_TYPE
    - xmlSchemaPValAttrFormDefault
    - xmlHashAddEntry
    - xmlNewAutomata
    - xmlSchemaCollapseString
    - xmlSchemaConstructionCtxtCreate
    - xmlFree
    - xmlSchemaGetFreshElemInfo
    - xmlAutomataNewCounterTrans
    - xmlSchemaCheckDerivationOKRestriction
    - xmlSchemaFree
    - WXS_IS_BUCKET_IMPMAIN
    - WXS_BUCKET
    - xmlSchemaSubstGroupGet
    - xmlSchemaXPathPop
    - xmlSchemaCheckCOSSTDerivedOK
    - xmlSchemaParseLocalAttributes
    - WXS_TYPE_PARTICLE_TERM
    - xmlSchemaValPredefTypeNodeNoNorm
    - xmlSchemaSetParserStructuredErrors
    - xmlSchemaFormatIDCKeySequence
    - xmlSchemaIDCStoreNodeTableItem
    - WXS_IS_UNION
    - xmlAutomataGetInitState
    - xmlSchemaGetPredefinedType
    - xmlSchemaCopyValue
    - xmlSchemaIDCFillNodeTables
    - xmlStreamPush
    - xmlDictFree
    - FREE_AND_NULL
    - xmlSchemaInitTypes
    - xmlSchemaParseRedefine
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - WXS_TYPE_IS_LOCAL
    - xmlNodeGetBase
    - xmlSchemaPIllegalFacetListUnionErr
    - xmlSchemaValidatePredefinedType
    - xmlSchemaGetWhiteSpaceFacetValue
    - FACET_RESTR_MUTUAL_ERR
    - xmlSchemaCheckCTComponent
    - xmlSchemaPCheckParticleCorrect_2
    - xmlSchemaGetQNameRefName
    - xmlSchemaHashKeySequence
    - xmlSchemaPValAttrBlockFinal
    - xmlSchemaParseGlobalAttribute
    - xmlSchemaGetAttributeDecl
    - xmlNewDocText
    - xmlSchemaBuildAContentModel
    - xmlSchemaCheckCOSParticleRestrict
    - WXS_ARE_DEFAULT_STR_EQUAL
    - xmlSchemaAddComponents
    - xmlSchemaParseImport
    - VERROR_INT
    - WXS_EMPTIABLE
    - FACET_RESTR_FIXED_ERR
    - snprintf
    - xmlStreamPop
    - xmlSchemaGetChameleonSchemaBucket
    - xmlSchemaUnionWildcards
    - xmlSchemaXPathProcessHistory
    - IS_BAD_SCHEMA_DOC
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaValidateLengthFacetWhtsp
    - xmlSchemaConstructionCtxtFree
    - xmlDocGetRootElement
    - xmlGrowCapacity
    - xmlAutomataNewAllTrans
    - xmlSchemaCheckFacetValues
    - xmlSchemaResolveUnionMemberTypes
    - xmlSchemaValueGetAsString
    - xmlSchemaFreeValidCtxt
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaQueryBuiltInType
    - xmlSchemaSetParserErrors
    - xmlSchemaGetFreshAttrInfo
    - xmlSchemaGetAttributeGroup
    - xmlSchemaCheckSubstGroupCircular
    - WXS_IS_EXTENSION
    - xmlSchemaBubbleIDCNodeTables
    - xmlSchemaClearAttrInfos
    - xmlMalloc
    - xmlSchemaResolveAttrUseReferences
    - xmlAutomataNewCountedTrans
    - IS_BLANK_NODE
    - xmlBuildURI
    - WXS_ELEM_TYPEDEF
    - xmlSchemaCreateVCtxtOnPCtxt
    - xmlSchemaGetCircModelGrDefRef
    - HSTOP
    - xmlSchemaNormalizeValue
    - WXS_TYPE_PARTICLE
    - xmlSchemaTypeFinalContains
    - xmlSchemaAreEqualTypes
    - xmlSchemaPIllegalFacetAtomicErr
    - xmlStrdup
    - xmlRegExecPushString2
    - xmlSchemaGetCanonValueWhtspExt
    - WXS_IS_RESTRICTION
    - xmlSchemaParseCheckCOSValidDefault
    - xmlSchemaNewNOTATIONValue
    - xmlSchemaParseAttributeGroupDefinition
    - xmlDictLookup
    - xmlSchemaCheckCVCIDCKeyRef
    - xmlSchemaParseAnyAttribute
    - xmlSchemaBuildContentModelForElement
    - xmlRealloc
    - xmlNewProp
    - xmlSchemaIDCNewBinding
    - xmlSchemaItemListCreate
    - xmlGetLastError
    - xmlSchemaParseSchemaTopLevel
    - xmlFreeAutomata
    - xmlSchemaParseAnnotation
    - xmlSchemaAssembleByLocation
    - xmlSchemaGetQNameRefTargetNs
    - WXS_TYPE_CONTENTTYPE
    - xmlSchemaValidateNotation
    - xmlSchemaParseList
    - IS_BLANK_CH
    - xmlSchemaGetParticleTotalRangeMax
    - WXS_IS_COMPLEX
    - xmlSchemaCheckElementDeclComponent
    - WXS_MODELGROUP_PARTICLE
    - INODE_NILLED
    - xmlSchemaGetNotation
    - xmlSchemaIDCFreeKey
    - xmlSchemaCheckFacet
    - xmlSchemaParseSimpleType
    - xmlSchemaAddType
    - xmlSchemaGetSchemaBucket
    - xmlSchemaFixupSimpleTypeStageOne
    - xmlSchemaSchemaRelationAddChild
    - xmlAutomataNewNegTrans
    - xmlSchemaGetType
    - xmlSchemaParseInclude
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaVExpandQName
    - xmlAutomataNewEpsilon
    - xmlCtxtSetErrorHandler
    - xmlSchemaCheckAttrPropsCorrect
    - xmlSchemaCheckSTPropsCorrect
    - xmlSchemaCheckElemSubstGroup
    - WXS_HAS_MIXED_CONTENT
    - xmlSchemaGetPropNode
    - xmlSchemaNewQNameRef
    - xmlFreeParserCtxt
    - xmlFreeStreamCtxt
    - xmlSchemaGetComponentDesignation
    - xmlSchemaResolveAttrTypeReferences
    - xmlSchemaCheckDerivationOKRestriction2to4
    - xmlSchemaIDCAddStateObject
    - WXS_MODELGROUPDEF_MODEL
    - xmlSchemaAddWildcard
    - xmlSchemaFixupComponents
    - xmlSchemaAddAnnotation
    - xmlRegExecNextValues
    - xmlSchemaFindRedefCompInGraph
    - xmlSchemaIntersectWildcards
    - xmlRegexpIsDeterminist
    - xmlSchemaModelGroupToModelGroupDefFixup
    - xmlSchemaIDCRegisterMatchers
    - WXS_ATTR_GROUP_HAS_REFS
    - xmlSchemaValidateFacetWhtsp
    - xmlSchemaCloneWildcardNsConstraints
    - xmlNewNsProp
    - xmlSchemaCheckAttrGroupCircular
    - WXS_ILIST_IS_EMPTY
    - xmlSchemaAddModelGroup
    - xmlSchemaParseNewDocWithContext
    - xmlSchemaAddParticle
    - xmlSchemaValueGetAsBoolean
    - xmlSchemaAddElement
    - xmlSchemaParseModelGroupDefinition
    - xmlRegexpExec
    - xmlSchemaItemListRemove
    - memset
    - WXS_IS_SIMPLE
    - ADD_ANNOTATION
    - xmlSchemaGetMetaAttrInfo
    - xmlAutomataNewCountTrans2
    - xmlSearchNs
    - xmlSchemaParseElement
    - WXS_PARTICLE_TERM_AS_ELEM
    - xmlSchemaParseIDCSelectorAndField
    linkageType: ''
    returnType: xmlSchemaAttributePtr
    signature: "xmlSchemaAttributePtr xmlSchemaParseGlobalAttribute(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t      xmlSchemaPtr schema,\n\t\t\t      xmlNodePtr node)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:7361,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7367,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ret
    argTypes:
    - WXS_BASIC_CAST
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7370
      start: 7358
    functionDepth: 15
    functionLinenumber: 7358
    functionLinenumberEnd: 7370
    functionName: xmlSchemaPMutualExclAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetNodeContent
    - IS_SCHEMA
    - xmlSchemaParseAnnotation
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPMutualExclAttrErr(pctxt, XML_SCHEMAP_SRC_ATTRIBUTE_1,\n\t\tWXS_BASIC_CAST
      ret, attr, \"default\", \"fixed\");\n\t} else\n\t    ret->defValue = xmlSchemaGetNodeContent(pctxt,
      (xmlNodePtr) attr);\n    }\n    /*\n    * And now for the children...\n    */\n
      \   child = node->children;\n    if (IS_SCHEMA(child, \"annotation\"))"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7417,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7419,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:7424,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:7426,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7435,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7436,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7438,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7441,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7442,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:7448,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7454,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7458,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7462,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:7492,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:7493,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:7501,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:7513,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:7519,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 52
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7522
      start: 7404
    functionDepth: 15
    functionLinenumber: 7404
    functionLinenumberEnd: 7522
    functionName: xmlSchemaParseAttributeGroupRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaNewQNameRef
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaCheckReference
    - FREE_AND_NULL
    - xmlSchemaPMissingAttrErr
    - xmlSchemaGetPropNode
    - xmlSchemaFormatQName
    - WXS_ADD_PENDING
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaPValAttrNodeQName
    linkageType: ''
    returnType: xmlSchemaQNameRefPtr
    signature: "xmlSchemaQNameRefPtr xmlSchemaParseAttributeGroupRef(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\txmlSchemaPtr schema,\n\t\t\t\txmlNodePtr node)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7548,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7550,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:7558,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:7560,1
    - Dst: xmlSchemaAddAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:7563,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7573,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7574,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7576,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7579,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7580,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:7586,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7591,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:7592,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:7598,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:7608,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:7609,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:7614,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7620
      start: 7533
    functionDepth: 16
    functionLinenumber: 7533
    functionLinenumberEnd: 7620
    functionName: xmlSchemaParseAttributeGroupDefinition
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaAddAttributeGroupDefinition
    - xmlSchemaParseAnyAttribute
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPMissingAttrErr
    - xmlSchemaGetPropNode
    - xmlSchemaParseLocalAttributes
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: xmlSchemaAttributeGroupPtr
    signature: "xmlSchemaAttributeGroupPtr xmlSchemaParseAttributeGroupDefinition(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t       xmlSchemaPtr schema,\n\t\t\t\t       xmlNodePtr node)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7633,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7636,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - value
    - flags
    - flagQualified
    argTypes:
    - xmlChar*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7640
      start: 7628
    functionDepth: 1
    functionLinenumber: 7628
    functionLinenumberEnd: 7640
    functionName: xmlSchemaPValAttrFormDefault
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrFormDefault(const xmlChar *value,\n\t\t\t     int
      *flags,\n\t\t\t     int flagQualified)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7676,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:7696,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:7699,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:7703,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7704,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7710,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7716,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7722,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7728,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7737,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 71
    argCount: 8
    argNames:
    - value
    - flags
    - flagAll
    - flagExtension
    - flagRestriction
    - flagSubstitution
    - flagList
    - flagUnion
    argTypes:
    - xmlChar*
    - int*
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7743
      start: 7657
    functionDepth: 1
    functionLinenumber: 7657
    functionLinenumberEnd: 7743
    functionName: xmlSchemaPValAttrBlockFinal
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_BLANK_CH
    - xmlStrndup
    - xmlStrEqual
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaPValAttrBlockFinal(const xmlChar *value,\n\t\t\t    int
      *flags,\n\t\t\t    int flagAll,\n\t\t\t    int flagExtension,\n\t\t\t    int
      flagRestriction,\n\t\t\t    int flagSubstitution,\n\t\t\t    int flagList,\n\t\t\t
      \   int flagUnion)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:7762,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7773,1
    - Dst: xmlGetNsList
      Src: /src/libxml2/xmlschemas.c:7793,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:7803,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:7806,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7807,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7815,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/xmlschemas.c:7821,1
    - Dst: xmlPatterncompile
      Src: /src/libxml2/xmlschemas.c:7824,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:7827,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7830,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 5
    argNames:
    - ctxt
    - idc
    - selector
    - attr
    - isField
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaIDCPtr
    - xmlSchemaIDCSelectPtr
    - xmlAttrPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7840
      start: 7745
    functionDepth: 9
    functionLinenumber: 7745
    functionLinenumberEnd: 7840
    functionName: xmlSchemaCheckCSelectorXPath
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlSchemaPCustomErr
    - xmlPatterncompile
    - xmlGetNsList
    - xmlMalloc
    - xmlSchemaPErr
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCSelectorXPath(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \    xmlSchemaIDCPtr idc,\n\t\t\t     xmlSchemaIDCSelectPtr selector,\n\t\t\t
      \    xmlAttrPtr attr,\n\t\t\t     int isField)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - annot
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7853
      start: 7842
    functionDepth: 0
    functionLinenumber: 7842
    functionLinenumberEnd: 7853
    functionName: ADD_ANNOTATION
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD_ANNOTATION(annot)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7870,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7875,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7881,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7889,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7895,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7900,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7916,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7922,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7927,1
    - Dst: ADD_ANNOTATION
      Src: /src/libxml2/xmlschemas.c:7934,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:7938,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 67
    argCount: 2
    argNames:
    - annItem
    - annot
    argTypes:
    - xmlSchemaAnnotItemPtr
    - xmlSchemaAnnotPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7946
      start: 7861
    functionDepth: 9
    functionLinenumber: 7861
    functionLinenumberEnd: 7946
    functionName: xmlSchemaAddAnnotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaPCustomErr
    - ADD_ANNOTATION
    linkageType: ''
    returnType: xmlSchemaAnnotPtr
    signature: "xmlSchemaAnnotPtr xmlSchemaAddAnnotation(xmlSchemaAnnotItemPtr annItem,\n\t\t
      \      xmlSchemaAnnotPtr annot)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7974,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7975,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7976,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:7979,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:7980,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:7988,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:7990,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:7993,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:7997,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:7999,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8004,1
    - Dst: xmlSchemaCheckCSelectorXPath
      Src: /src/libxml2/xmlschemas.c:8009,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:8011,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8020,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8025,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8029,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8030,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8034,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 4
    argNames:
    - ctxt
    - idc
    - node
    - isField
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaIDCPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8041
      start: 7958
    functionDepth: 15
    functionLinenumber: 7958
    functionLinenumberEnd: 8041
    functionName: xmlSchemaParseIDCSelectorAndField
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaAddAnnotation
    - xmlSchemaParseAnnotation
    - xmlSchemaPMissingAttrErr
    - xmlSchemaGetPropNode
    - xmlSchemaCheckCSelectorXPath
    - xmlMalloc
    - xmlSchemaGetNodeContent
    - xmlSchemaPErr
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaIDCSelectPtr
    signature: "xmlSchemaIDCSelectPtr xmlSchemaParseIDCSelectorAndField(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t\t  xmlSchemaIDCPtr idc,\n\t\t\t  xmlNodePtr node,\n\t\t\t  int isField)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8072,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8073,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8075,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8076,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8079,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8080,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8088,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8090,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8095,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8097,1
    - Dst: xmlSchemaAddIDC
      Src: /src/libxml2/xmlschemas.c:8101,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8106,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8111,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8113,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8121,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8125,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8129,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8137,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8138,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8142,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8151,1
    - Dst: xmlSchemaParseIDCSelectorAndField
      Src: /src/libxml2/xmlschemas.c:8152,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8158,1
    - Dst: xmlSchemaParseIDCSelectorAndField
      Src: /src/libxml2/xmlschemas.c:8160,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8172,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8174,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8181,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 69
    argCount: 5
    argNames:
    - ctxt
    - schema
    - node
    - idcCategory
    - targetNamespace
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlSchemaTypeType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8188
      start: 8053
    functionDepth: 16
    functionLinenumber: 8053
    functionLinenumberEnd: 8188
    functionName: xmlSchemaParseIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaNewQNameRef
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaCheckReference
    - xmlSchemaPMissingAttrErr
    - xmlSchemaAddIDC
    - xmlSchemaPValAttrNodeQName
    - xmlSchemaGetPropNode
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaParseIDCSelectorAndField
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: xmlSchemaIDCPtr
    signature: "xmlSchemaIDCPtr xmlSchemaParseIDC(xmlSchemaParserCtxtPtr ctxt,\n\t\t
      \ xmlSchemaPtr schema,\n\t\t  xmlNodePtr node,\n\t\t  xmlSchemaTypeType idcCategory,\n\t\t
      \ const xmlChar *targetNamespace)"
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8227,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8228,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8231,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8239,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8241,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8242,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:8253,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:8254,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:8255,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:8256,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8271,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8273,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:8278,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8287,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8288,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8289,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8290,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8291,1
    - Dst: xmlSchemaPCustomAttrErr
      Src: /src/libxml2/xmlschemas.c:8297,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8304,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8305,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8314,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8322,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:8332,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8343,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8344,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8352,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8354,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8355,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8357,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8358,1
    - Dst: xmlSchemaAddElement
      Src: /src/libxml2/xmlschemas.c:8367,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8377,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8378,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8379,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8380,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8381,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8382,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8383,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8386,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8387,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8388,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8390,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8393,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8394,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8395,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8397,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8401,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8403,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:8417,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:8420,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8425,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8432,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:8433,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8437,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8448,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8460,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:8461,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:8466,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:8474,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8477,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:8479,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:8482,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:8485,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8486,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8488,1
    - Dst: xmlSchemaPMutualExclAttrErr
      Src: /src/libxml2/xmlschemas.c:8494,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8505,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8512,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:8518,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:8518,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8520,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8527,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:8533,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8533,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8536,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8537,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8537,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8538,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8539,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8541,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8542,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8544,1
    - Dst: xmlSchemaParseIDC
      Src: /src/libxml2/xmlschemas.c:8545,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8556,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8568,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8577,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:8583,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 217
    argCount: 5
    argNames:
    - ctxt
    - schema
    - node
    - isElemRef
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8586
      start: 8202
    functionDepth: 17
    functionLinenumber: 8202
    functionLinenumberEnd: 8586
    functionName: xmlSchemaParseElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaCheckReference
    - xmlSchemaParseSimpleType
    - xmlGetMaxOccurs
    - xmlSchemaParseComplexType
    - FREE_AND_NULL
    - xmlSchemaPMutualExclAttrErr
    - xmlSchemaPContentErr
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    - xmlSchemaPCustomAttrErr
    - xmlSchemaPMissingAttrErr
    - xmlSchemaPValAttrQName
    - xmlSchemaFreeAnnot
    - xmlSchemaPCheckParticleCorrect_2
    - xmlSchemaPValAttrBlockFinal
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaParseIDC
    - WXS_ELEM_TYPEDEF
    - xmlSchemaAddParticle
    - xmlSchemaGetPropNode
    - xmlSchemaAddElement
    - xmlSchemaGetNodeContent
    - xmlGetMinOccurs
    - xmlSchemaNewQNameRef
    - xmlSchemaGetProp
    - WXS_ADD_PENDING
    - xmlGetBooleanProp
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaPValAttrNodeQName
    linkageType: ''
    returnType: xmlSchemaBasicItemPtr
    signature: "xmlSchemaBasicItemPtr xmlSchemaParseElement(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n                      xmlNodePtr node, int *isElemRef,
      int topLevel)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8619,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8627,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8628,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8631,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8632,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8637,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8642,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:8650,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:8655,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:8658,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:8662,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8664,1
    - Dst: xmlSchemaPValAttrNodeQNameValue
      Src: /src/libxml2/xmlschemas.c:8667,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:8673,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8675,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8676,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:8684,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:8687,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:8688,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8689,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:8704,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8713,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8717,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8718,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8721,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8728,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8730,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8745,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8755,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 90
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8762
      start: 8598
    functionDepth: 15
    functionLinenumber: 8598
    functionLinenumberEnd: 8762
    functionName: xmlSchemaParseUnion
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAddAnnotation
    - FREE_AND_NULL
    - xmlSchemaParseSimpleType
    - xmlSchemaPContentErr
    - xmlSchemaGetBuiltInType
    - xmlFree
    - xmlMalloc
    - xmlSchemaPErrMemory
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPCustomErr
    - xmlSchemaGetPropNode
    - xmlSchemaGetNodeContent
    - xmlSchemaPValAttrNodeQNameValue
    - xmlSchemaNewQNameRef
    - IS_BLANK_CH
    - xmlStrndup
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseUnion(xmlSchemaParserCtxtPtr ctxt, xmlSchemaPtr
      schema,\n                    xmlNodePtr node)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8794,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8801,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8802,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8803,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8806,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8807,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:8813,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:8822,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8828,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:8829,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:8830,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:8833,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8840,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:8846,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8850,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:8857,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8863,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8864,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8871
      start: 8774
    functionDepth: 15
    functionLinenumber: 8774
    functionLinenumberEnd: 8871
    functionName: xmlSchemaParseList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaAddAnnotation
    - xmlSchemaParseAnnotation
    - xmlSchemaPCustomErr
    - xmlSchemaParseSimpleType
    - xmlSchemaPValAttrQName
    - xmlSchemaGetPropNode
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaParseList(xmlSchemaParserCtxtPtr ctxt, xmlSchemaPtr
      schema,\n                   xmlNodePtr node)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:8898,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:8900,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:8906,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:8908,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:8922,1
    - Dst: xmlSchemaGetPredefinedType
      Src: /src/libxml2/xmlschemas.c:8928,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:8948,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8949,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:8951,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8954,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8968,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8969,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8972,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:8973,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:8984,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8997,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8998,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:8999,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9000,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9003,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9004,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9012,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:9021,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9022,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9036,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9045,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9046,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9050,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9053,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:9054,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9058,1
    - Dst: xmlSchemaParseList
      Src: /src/libxml2/xmlschemas.c:9059,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9061,1
    - Dst: xmlSchemaParseUnion
      Src: /src/libxml2/xmlschemas.c:9062,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9066,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:9078,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 109
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9085
      start: 8884
    functionDepth: 16
    functionLinenumber: 8884
    functionLinenumberEnd: 9085
    functionName: xmlSchemaParseSimpleType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 5
    functionsReached:
    - xmlSchemaAddType
    - snprintf
    - xmlSchemaParseRestriction
    - xmlDictLookup
    - xmlSchemaPContentErr
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    - xmlSchemaPMissingAttrErr
    - xmlSchemaPValAttrBlockFinal
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPCustomErr
    - xmlSchemaGetPropNode
    - xmlSchemaParseUnion
    - xmlSchemaParseList
    - xmlSchemaGetPredefinedType
    - xmlSchemaGetProp
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaParseSimpleType(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n                         xmlNodePtr node, int topLevel)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9111,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:9113,1
    - Dst: xmlSchemaPValAttrNodeQName
      Src: /src/libxml2/xmlschemas.c:9117,1
    - Dst: xmlSchemaCheckReference
      Src: /src/libxml2/xmlschemas.c:9121,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:9122,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:9123,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9131,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9132,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9133,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9134,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9135,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9138,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9139,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9144,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:9145,1
    - Dst: xmlSchemaNewQNameRef
      Src: /src/libxml2/xmlschemas.c:9153,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:9154,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9160,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9164,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9168,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9180
      start: 9097
    functionDepth: 15
    functionLinenumber: 9097
    functionLinenumberEnd: 9180
    functionName: xmlSchemaParseModelGroupDefRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaNewQNameRef
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaCheckReference
    - xmlSchemaPMissingAttrErr
    - xmlGetMaxOccurs
    - xmlSchemaAddParticle
    - xmlSchemaGetPropNode
    - xmlGetMinOccurs
    - xmlSchemaPCheckParticleCorrect_2
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaPValAttrNodeQName
    linkageType: ''
    returnType: xmlSchemaTreeItemPtr
    signature: "xmlSchemaTreeItemPtr xmlSchemaParseModelGroupDefRef(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t\t       xmlSchemaPtr schema,\n\t\t\t       xmlNodePtr node)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9210,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:9212,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:9217,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:9218,1
    - Dst: xmlSchemaAddModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9221,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9231,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9232,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9233,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9236,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:9237,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9242,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9247,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9248,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9251,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9252,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9255,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9256,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9259,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:9260,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9268,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 48
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9274
      start: 9197
    functionDepth: 15
    functionLinenumber: 9197
    functionLinenumberEnd: 9274
    functionName: xmlSchemaParseModelGroupDefinition
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPMissingAttrErr
    - xmlSchemaParseModelGroup
    - xmlSchemaGetPropNode
    - xmlSchemaPValAttrID
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrNode
    - xmlSchemaGetBuiltInType
    - xmlSchemaAddModelGroupDefinition
    linkageType: ''
    returnType: xmlSchemaModelGroupDefPtr
    signature: "xmlSchemaModelGroupDefPtr xmlSchemaParseModelGroupDefinition(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t\t\t   xmlSchemaPtr schema,\n\t\t\t\t   xmlNodePtr node)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: IS_BLANK_NODE
      Src: /src/libxml2/xmlschemas.c:9301,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxml2/xmlschemas.c:9302,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 50
    argCount: 2
    argNames:
    - ctxt
    - root
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9348
      start: 9282
    functionDepth: 2
    functionLinenumber: 9282
    functionLinenumberEnd: 9348
    functionName: xmlSchemaCleanupDoc
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetSpacePreserve
    - IS_BLANK_NODE
    linkageType: ''
    returnType: void
    signature: void xmlSchemaCleanupDoc(xmlSchemaParserCtxtPtr ctxt, xmlNodePtr root)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlSchemaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9375
      start: 9351
    functionDepth: 0
    functionLinenumber: 9351
    functionLinenumberEnd: 9375
    functionName: xmlSchemaClearSchemaDefaults
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSchemaClearSchemaDefaults(xmlSchemaPtr schema)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:9391,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9406,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:9408,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:9409,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9416,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9418,1
    - Dst: xmlSchemaPValAttrFormDefault
      Src: /src/libxml2/xmlschemas.c:9419,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9423,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9429,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9431,1
    - Dst: xmlSchemaPValAttrFormDefault
      Src: /src/libxml2/xmlschemas.c:9432,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9436,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9442,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9444,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9445,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9453,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:9460,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:9462,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:9463,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:9469,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 3
    argNames:
    - ctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9483
      start: 9377
    functionDepth: 13
    functionLinenumber: 9377
    functionLinenumberEnd: 9483
    functionName: xmlSchemaParseSchemaElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaPValAttrBlockFinal
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaPValAttrFormDefault
    - xmlSchemaGetPropNode
    - xmlSchemaGetNodeContent
    - xmlSchemaPValAttrID
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseSchemaElement(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \    xmlSchemaPtr schema,\n\t\t\t     xmlNodePtr node)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9505,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9506,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9507,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9508,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9509,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9510,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:9514,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9515,1
    - Dst: xmlSchemaParseImport
      Src: /src/libxml2/xmlschemas.c:9517,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9519,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9522,1
    - Dst: xmlSchemaParseInclude
      Src: /src/libxml2/xmlschemas.c:9524,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9526,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9529,1
    - Dst: xmlSchemaParseRedefine
      Src: /src/libxml2/xmlschemas.c:9531,1
    - Dst: HSTOP
      Src: /src/libxml2/xmlschemas.c:9533,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9544,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:9545,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9547,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:9548,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9550,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:9551,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9553,1
    - Dst: xmlSchemaParseGlobalAttribute
      Src: /src/libxml2/xmlschemas.c:9554,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9556,1
    - Dst: xmlSchemaParseAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9557,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9559,1
    - Dst: xmlSchemaParseModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:9560,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9562,1
    - Dst: xmlSchemaParseNotation
      Src: /src/libxml2/xmlschemas.c:9563,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:9566,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:9574,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:9578,1
    - Dst: xmlSchemaFreeAnnot
      Src: /src/libxml2/xmlschemas.c:9582,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 90
    argCount: 3
    argNames:
    - ctxt
    - schema
    - nodes
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9593
      start: 9492
    functionDepth: 18
    functionLinenumber: 9492
    functionLinenumberEnd: 9593
    functionName: xmlSchemaParseSchemaTopLevel
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaParseNotation
    - xmlSchemaParseAnnotation
    - xmlSchemaParseImport
    - xmlSchemaParseComplexType
    - xmlSchemaParseSimpleType
    - xmlSchemaParseElement
    - xmlSchemaParseGlobalAttribute
    - xmlSchemaParseModelGroupDefinition
    - xmlSchemaParseRedefine
    - xmlSchemaParseAttributeGroupDefinition
    - xmlSchemaFreeAnnot
    - xmlSchemaPContentErr
    - HSTOP
    - xmlSchemaParseInclude
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseSchemaTopLevel(xmlSchemaParserCtxtPtr ctxt,\n                             xmlSchemaPtr
      schema, xmlNodePtr nodes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9601,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9603,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9606,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9608
      start: 9595
    functionDepth: 3
    functionLinenumber: 9595
    functionLinenumberEnd: 9608
    functionName: xmlSchemaSchemaRelationCreate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - memset
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: xmlSchemaSchemaRelationPtr
    signature: xmlSchemaSchemaRelationPtr xmlSchemaSchemaRelationCreate(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rel
    argTypes:
    - xmlSchemaSchemaRelationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9615
      start: 9611
    functionDepth: 0
    functionLinenumber: 9611
    functionLinenumberEnd: 9615
    functionName: xmlSchemaSchemaRelationFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaSchemaRelationFree(xmlSchemaSchemaRelationPtr rel)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - redef
    argTypes:
    - xmlSchemaRedefPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9628
      start: 9618
    functionDepth: 0
    functionLinenumber: 9618
    functionLinenumberEnd: 9628
    functionName: xmlSchemaRedefListFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaRedefListFree(xmlSchemaRedefPtr redef)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:9640,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:9642,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:9644,1
    - Dst: xmlSchemaRedefListFree
      Src: /src/libxml2/xmlschemas.c:9646,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:9648,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9649,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - con
    argTypes:
    - xmlSchemaConstructionCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9650
      start: 9630
    functionDepth: 2
    functionLinenumber: 9630
    functionLinenumberEnd: 9650
    functionName: xmlSchemaConstructionCtxtFree
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictFree
    - xmlFree
    - xmlHashFree
    - xmlSchemaRedefListFree
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaConstructionCtxtFree(xmlSchemaConstructionCtxtPtr con)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9658,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9660,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9663,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9665,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9667,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9668,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9671,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9673,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:9674,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:9678,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - dict
    argTypes:
    - xmlDictPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9680
      start: 9652
    functionDepth: 4
    functionLinenumber: 9652
    functionLinenumberEnd: 9680
    functionName: xmlSchemaConstructionCtxtCreate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlDictReference
    - xmlMalloc
    - xmlSchemaItemListCreate
    - xmlSchemaConstructionCtxtFree
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaConstructionCtxtPtr
    signature: xmlSchemaConstructionCtxtPtr xmlSchemaConstructionCtxtCreate(xmlDictPtr
      dict)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:9687,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:9689,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:9692,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:9694,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9696,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9700
      start: 9682
    functionDepth: 4
    functionLinenumber: 9682
    functionLinenumberEnd: 9700
    functionName: xmlSchemaParserCtxtCreate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlMalloc
    - xmlSchemaItemListCreate
    - xmlSchemaPErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaParserCtxtPtr
    signature: xmlSchemaParserCtxtPtr xmlSchemaParserCtxtCreate(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:9715,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:9719,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:9721,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - URL
    - dict
    argTypes:
    - char*
    - xmlDictPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9723
      start: 9710
    functionDepth: 5
    functionLinenumber: 9710
    functionLinenumberEnd: 9723
    functionName: xmlSchemaNewParserCtxtUseDict
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictLookup
    - xmlDictReference
    - xmlSchemaParserCtxtCreate
    linkageType: ''
    returnType: xmlSchemaParserCtxtPtr
    signature: xmlSchemaParserCtxtPtr xmlSchemaNewParserCtxtUseDict(const char *URL,
      xmlDictPtr dict)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewParserCtxtUseDict
      Src: /src/libxml2/xmlschemas.c:9731,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:9733,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:9735,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/xmlschemas.c:9740,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlschemas.c:9742,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9746
      start: 9725
    functionDepth: 6
    functionLinenumber: 9725
    functionLinenumberEnd: 9746
    functionName: xmlSchemaCreatePCtxtOnVCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSetParserErrors
    - xmlSchemaNewParserCtxt
    - xmlSchemaNewParserCtxtUseDict
    - VERROR_INT
    - xmlSchemaSetParserStructuredErrors
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCreatePCtxtOnVCtxt(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - pctxt
    - schemaLocation
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9774
      start: 9754
    functionDepth: 0
    functionLinenumber: 9754
    functionLinenumberEnd: 9774
    functionName: xmlSchemaGetSchemaBucket
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaBucketPtr
    signature: "xmlSchemaBucketPtr xmlSchemaGetSchemaBucket(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t    const xmlChar *schemaLocation)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - pctxt
    - schemaLocation
    - targetNamespace
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9799
      start: 9776
    functionDepth: 0
    functionLinenumber: 9776
    functionLinenumberEnd: 9799
    functionName: xmlSchemaGetChameleonSchemaBucket
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaBucketPtr
    signature: "xmlSchemaBucketPtr xmlSchemaGetChameleonSchemaBucket(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t     const xmlChar *schemaLocation,\n\t\t\t\t     const xmlChar
      *targetNamespace)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9804
      start: 9802
    functionDepth: 0
    functionLinenumber: 9802
    functionLinenumberEnd: 9804
    functionName: IS_BAD_SCHEMA_DOC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BAD_SCHEMA_DOC(b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IS_BAD_SCHEMA_DOC
      Src: /src/libxml2/xmlschemas.c:9820,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 3
    argNames:
    - pctxt
    - targetNamespace
    - imported
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9828
      start: 9805
    functionDepth: 1
    functionLinenumber: 9805
    functionLinenumberEnd: 9828
    functionName: xmlSchemaGetSchemaBucketByTNS
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_BAD_SCHEMA_DOC
    linkageType: ''
    returnType: xmlSchemaBucketPtr
    signature: "xmlSchemaBucketPtr xmlSchemaGetSchemaBucketByTNS(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t const xmlChar *targetNamespace,\n\t\t\t\t int imported)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaClearSchemaDefaults
      Src: /src/libxml2/xmlschemas.c:9850,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:9858,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:9861,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:9870,1
    - Dst: xmlSchemaParseSchemaElement
      Src: /src/libxml2/xmlschemas.c:9871,1
    - Dst: xmlSchemaParseSchemaTopLevel
      Src: /src/libxml2/xmlschemas.c:9878,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:9892,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 3
    argNames:
    - pctxt
    - schema
    - bucket
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaBucketPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9897
      start: 9830
    functionDepth: 19
    functionLinenumber: 9830
    functionLinenumberEnd: 9897
    functionName: xmlSchemaParseNewDocWithContext
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - WXS_CONSTRUCTOR
    - xmlSchemaParseSchemaElement
    - xmlSchemaClearSchemaDefaults
    - xmlDocGetRootElement
    - xmlSchemaParseSchemaTopLevel
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseNewDocWithContext(xmlSchemaParserCtxtPtr pctxt,\n\t\t
      \    xmlSchemaPtr schema,\n\t\t     xmlSchemaBucketPtr bucket)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9910,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9915,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:9920,1
    - Dst: xmlSchemaNewParserCtxtUseDict
      Src: /src/libxml2/xmlschemas.c:9925,1
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/xmlschemas.c:9936,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlschemas.c:9938,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:9943,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:9952,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 3
    argNames:
    - pctxt
    - schema
    - bucket
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlSchemaBucketPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9954
      start: 9899
    functionDepth: 20
    functionLinenumber: 9899
    functionLinenumberEnd: 9954
    functionName: xmlSchemaParseNewDoc
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaSetParserErrors
    - xmlSchemaParseNewDocWithContext
    - xmlSchemaFreeParserCtxt
    - xmlSchemaNewParserCtxtUseDict
    - PERROR_INT
    - xmlSchemaSetParserStructuredErrors
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseNewDoc(xmlSchemaParserCtxtPtr pctxt,\n\t\t     xmlSchemaPtr
      schema,\n\t\t     xmlSchemaBucketPtr bucket)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bucket
    - rel
    argTypes:
    - xmlSchemaBucketPtr
    - xmlSchemaSchemaRelationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9969
      start: 9956
    functionDepth: 0
    functionLinenumber: 9956
    functionLinenumberEnd: 9969
    functionName: xmlSchemaSchemaRelationAddChild
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSchemaRelationAddChild(xmlSchemaBucketPtr bucket,\n\t\t\t\txmlSchemaSchemaRelationPtr
      rel)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/xmlschemas.c:9986,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:9988,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:9990,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9991,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:9994,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:9995,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - dict
    - location
    - ctxtNode
    argTypes:
    - xmlDictPtr
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10001
      start: 9972
    functionDepth: 11
    functionLinenumber: 9972
    functionLinenumberEnd: 10001
    functionName: xmlSchemaBuildAbsoluteURI
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlBuildURI
    - xmlNodeGetBase
    - xmlFree
    - xmlDictLookup
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaBuildAbsoluteURI(xmlDictPtr dict, const xmlChar*
      location,\n\t\t\t  xmlNodePtr ctxtNode)"
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: WXS_HAS_BUCKETS
      Src: /src/libxml2/xmlschemas.c:10061,1
    - Dst: xmlSchemaGetSchemaBucket
      Src: /src/libxml2/xmlschemas.c:10066,1
    - Dst: xmlSchemaSchemaRelationCreate
      Src: /src/libxml2/xmlschemas.c:10081,1
    - Dst: xmlSchemaSchemaRelationAddChild
      Src: /src/libxml2/xmlschemas.c:10084,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10091,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10106,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10113,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10122,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10130,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10142,1
    - Dst: xmlSchemaGetSchemaBucketByTNS
      Src: /src/libxml2/xmlschemas.c:10167,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10176,1
    - Dst: xmlSchemaGetChameleonSchemaBucket
      Src: /src/libxml2/xmlschemas.c:10226,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:10248,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:10264,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:10271,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:10273,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/xmlschemas.c:10278,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/xmlschemas.c:10280,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:10288,1
    - Dst: xmlDictReference
      Src: /src/libxml2/xmlschemas.c:10290,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/xmlschemas.c:10294,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/xmlschemas.c:10298,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:10302,1
    - Dst: xmlGetLastError
      Src: /src/libxml2/xmlschemas.c:10319,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:10339,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:10343,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:10357,1
    - Dst: xmlSchemaCleanupDoc
      Src: /src/libxml2/xmlschemas.c:10368,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10372,1
    - Dst: xmlSchemaGetProp
      Src: /src/libxml2/xmlschemas.c:10383,1
    - Dst: xmlSchemaBucketCreate
      Src: /src/libxml2/xmlschemas.c:10390,1
    - Dst: WXS_IS_BUCKET_IMPMAIN
      Src: /src/libxml2/xmlschemas.c:10405,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:10425,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:10433,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 211
    argCount: 10
    argNames:
    - pctxt
    - type
    - schemaLocation
    - schemaDoc
    - schemaBuffer
    - schemaBufferLen
    - invokingNode
    - sourceTargetNamespace
    - importNamespace
    - bucket
    argTypes:
    - xmlSchemaParserCtxtPtr
    - int
    - xmlChar*
    - xmlDocPtr
    - char*
    - int
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlSchemaBucketPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10438
      start: 10022
    functionDepth: 14
    functionLinenumber: 10022
    functionLinenumberEnd: 10438
    functionName: xmlSchemaAddSchemaDoc
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictFree
    - xmlStrdup
    - xmlSchemaGetSchemaBucketByTNS
    - xmlNewParserCtxt
    - xmlSchemaGetSchemaBucket
    - xmlSchemaSchemaRelationAddChild
    - xmlSchemaBucketCreate
    - PERROR_INT
    - xmlDictLookup
    - xmlSchemaGetChameleonSchemaBucket
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlCtxtReadFile
    - xmlSchemaCleanupDoc
    - xmlGetLastError
    - xmlDocGetRootElement
    - xmlSchemaPErrMemory
    - IS_SCHEMA
    - WXS_IS_BUCKET_IMPMAIN
    - xmlStrEqual
    - WXS_HAS_BUCKETS
    - xmlDictReference
    - xmlSchemaPErr
    - xmlSchemaSchemaRelationCreate
    - xmlFreeParserCtxt
    - xmlSchemaGetProp
    - xmlCtxtReadMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAddSchemaDoc(xmlSchemaParserCtxtPtr pctxt,\n\t\tint type,\n\t\tconst
      xmlChar *schemaLocation,\n\t\txmlDocPtr schemaDoc,\n\t\tconst char *schemaBuffer,\n\t\tint
      schemaBufferLen,\n\t\txmlNodePtr invokingNode,\n\t\tconst xmlChar *sourceTargetNamespace,\n\t\tconst
      xmlChar *importNamespace,\n\t\txmlSchemaBucketPtr *bucket)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10470,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10471,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10472,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10473,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10476,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10477,1
    - Dst: xmlSchemaPValAttr
      Src: /src/libxml2/xmlschemas.c:10485,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10486,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:10488,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10491,1
    - Dst: xmlSchemaPValAttr
      Src: /src/libxml2/xmlschemas.c:10496,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10497,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:10499,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10502,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10510,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10518,1
    - Dst: WXS_BUCKET
      Src: /src/libxml2/xmlschemas.c:10531,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10538,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10539,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10553,1
    - Dst: xmlSchemaBuildAbsoluteURI
      Src: /src/libxml2/xmlschemas.c:10566,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:10568,1
    - Dst: CAN_PARSE_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10590,1
    - Dst: xmlSchemaParseNewDoc
      Src: /src/libxml2/xmlschemas.c:10591,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 54
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10595
      start: 10450
    functionDepth: 21
    functionLinenumber: 10450
    functionLinenumberEnd: 10595
    functionName: xmlSchemaParseImport
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaPSimpleTypeErr
    - xmlStrEqual
    - WXS_BUCKET
    - xmlSchemaPCustomErr
    - xmlSchemaAddSchemaDoc
    - xmlSchemaParseNewDoc
    - xmlSchemaPValAttr
    - xmlSchemaBuildAbsoluteURI
    - CAN_PARSE_SCHEMA
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPContentErr
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseImport(xmlSchemaParserCtxtPtr pctxt, xmlSchemaPtr
      schema,\n                     xmlNodePtr node)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10618,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10619,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10620,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10623,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10624,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:10629,1
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:10637,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:10642,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:10643,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/xmlschemas.c:10646,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:10648,1
    - Dst: xmlBuildURI
      Src: /src/libxml2/xmlschemas.c:10650,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:10651,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:10654,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:10658,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:10659,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:10661,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10669,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10671,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:10677,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 5
    argNames:
    - pctxt
    - schema
    - node
    - schemaLocation
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlChar**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10691
      start: 10597
    functionDepth: 13
    functionLinenumber: 10597
    functionLinenumberEnd: 10691
    functionName: xmlSchemaParseIncludeOrRedefineAttrs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlNodeGetBase
    - xmlStrEqual
    - xmlFree
    - xmlSchemaPCustomErr
    - xmlBuildURI
    - xmlSchemaPMissingAttrErr
    - xmlSchemaGetPropNode
    - PERROR_INT
    - xmlDictLookup
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseIncludeOrRedefineAttrs(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \    xmlSchemaPtr schema,\n\t\t\t\t     xmlNodePtr node,\n\t\t\t\t     xmlChar
      **schemaLocation,\n\t\t\t\t     int type)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParseIncludeOrRedefineAttrs
      Src: /src/libxml2/xmlschemas.c:10712,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:10719,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10786,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:10789,1
    - Dst: xmlSchemaParseNewDoc
      Src: /src/libxml2/xmlschemas.c:10819,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10837,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10838,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10839,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10840,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10841,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10842,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10846,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:10847,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10848,1
    - Dst: xmlSchemaParseComplexType
      Src: /src/libxml2/xmlschemas.c:10849,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10851,1
    - Dst: xmlSchemaParseModelGroupDefinition
      Src: /src/libxml2/xmlschemas.c:10853,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10855,1
    - Dst: xmlSchemaParseAttributeGroupDefinition
      Src: /src/libxml2/xmlschemas.c:10857,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:10865,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10875,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:10879,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 86
    argCount: 4
    argNames:
    - pctxt
    - schema
    - node
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10888
      start: 10693
    functionDepth: 21
    functionLinenumber: 10693
    functionLinenumberEnd: 10888
    functionName: xmlSchemaParseIncludeOrRedefine
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseSimpleType
    - xmlSchemaAddSchemaDoc
    - xmlSchemaParseNewDoc
    - xmlSchemaParseIncludeOrRedefineAttrs
    - xmlSchemaParseModelGroupDefinition
    - xmlSchemaParseAttributeGroupDefinition
    - xmlSchemaPContentErr
    - xmlSchemaPCustomErrExt
    - xmlSchemaParseComplexType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseIncludeOrRedefine(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\txmlSchemaPtr
      schema,\n\t\t\t\txmlNodePtr node,\n\t\t\t\tint type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParseIncludeOrRedefine
      Src: /src/libxml2/xmlschemas.c:10899,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10904
      start: 10890
    functionDepth: 22
    functionLinenumber: 10890
    functionLinenumberEnd: 10904
    functionName: xmlSchemaParseRedefine
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaParseIncludeOrRedefine
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseRedefine(xmlSchemaParserCtxtPtr pctxt, xmlSchemaPtr
      schema,\n                       xmlNodePtr node)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParseIncludeOrRedefine
      Src: /src/libxml2/xmlschemas.c:10912,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - pctxt
    - schema
    - node
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10917
      start: 10906
    functionDepth: 22
    functionLinenumber: 10906
    functionLinenumberEnd: 10917
    functionName: xmlSchemaParseInclude
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaParseIncludeOrRedefine
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseInclude(xmlSchemaParserCtxtPtr pctxt, xmlSchemaPtr
      schema,\n                       xmlNodePtr node)"
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:10958,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:10964,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:10965,1
    - Dst: xmlGetMinOccurs
      Src: /src/libxml2/xmlschemas.c:10968,1
    - Dst: xmlGetMaxOccurs
      Src: /src/libxml2/xmlschemas.c:10969,1
    - Dst: xmlSchemaPCheckParticleCorrect_2
      Src: /src/libxml2/xmlschemas.c:10972,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:10976,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10986,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10987,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10988,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10989,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:10992,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:10993,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11005,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11006,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11009,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11010,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11020,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11025,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11026,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11032,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:11033,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:11044,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:11053,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11070,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11079,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11080,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11081,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11082,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11083,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11085,1
    - Dst: xmlSchemaParseElement
      Src: /src/libxml2/xmlschemas.c:11087,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11090,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11092,1
    - Dst: xmlSchemaGetQNameRefName
      Src: /src/libxml2/xmlschemas.c:11102,1
    - Dst: xmlSchemaGetQNameRefTargetNs
      Src: /src/libxml2/xmlschemas.c:11104,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11124,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11128,1
    - Dst: WXS_PARTICLE
      Src: /src/libxml2/xmlschemas.c:11130,1
    - Dst: WXS_PARTICLE
      Src: /src/libxml2/xmlschemas.c:11131,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11146,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11150,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11157,1
    - Dst: xmlSchemaParseAny
      Src: /src/libxml2/xmlschemas.c:11159,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11160,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11161,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11163,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11164,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11177,1
    - Dst: WXS_ADD_PENDING
      Src: /src/libxml2/xmlschemas.c:11189,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 130
    argCount: 5
    argNames:
    - ctxt
    - schema
    - node
    - type
    - withParticle
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlSchemaTypeType
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11195
      start: 10942
    functionDepth: 18
    functionLinenumber: 10942
    functionLinenumberEnd: 11195
    functionName: xmlSchemaParseModelGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - FREE_AND_NULL
    - xmlGetMaxOccurs
    - xmlSchemaParseAny
    - xmlSchemaFormatQName
    - xmlSchemaPContentErr
    - xmlSchemaParseModelGroupDefRef
    - WXS_PARTICLE
    - xmlSchemaPCheckParticleCorrect_2
    - xmlSchemaGetQNameRefName
    - xmlSchemaAddModelGroup
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPCustomErr
    - xmlSchemaAddParticle
    - xmlGetMinOccurs
    - xmlSchemaGetQNameRefTargetNs
    - xmlSchemaParseModelGroup
    - xmlSchemaParseElement
    - WXS_ADD_PENDING
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaTreeItemPtr
    signature: "xmlSchemaTreeItemPtr xmlSchemaParseModelGroup(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n\t\t\t xmlNodePtr node, xmlSchemaTypeType type,\n\t\t\t
      int withParticle)"
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11227,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11228,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11229,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11232,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11233,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11241,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:11254,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11258,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11265,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11268,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11269,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:11279,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11283,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:11284,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11286,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:11287,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11298,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11302,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11303,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11310,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11317,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:11324,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11328,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11341,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11343,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11346,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11348,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11351,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11353,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11359,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11361,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11375,1
    - Dst: xmlSchemaParseSimpleType
      Src: /src/libxml2/xmlschemas.c:11381,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11404,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11405,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11406,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11407,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11408,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11409,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11410,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11411,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11412,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11413,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11414,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11415,1
    - Dst: xmlSchemaParseFacet
      Src: /src/libxml2/xmlschemas.c:11416,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:11436,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:11438,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:11439,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:11457,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11464,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:11466,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11472,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11478,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11487,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 129
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - parentType
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlSchemaTypeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11497
      start: 11207
    functionDepth: 19
    functionLinenumber: 11207
    functionLinenumberEnd: 11497
    functionName: xmlSchemaParseRestriction
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaAddAnnotation
    - FREE_AND_NULL
    - xmlSchemaParseSimpleType
    - xmlSchemaFormatQName
    - xmlSchemaPContentErr
    - xmlSchemaParseAnyAttribute
    - xmlSchemaParseModelGroupDefRef
    - xmlFree
    - xmlSchemaPMissingAttrErr
    - xmlSchemaPValAttrQName
    - xmlMalloc
    - xmlSchemaPCustomErrExt
    - xmlSchemaPErrMemory
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaParseLocalAttributes
    - xmlSchemaParseModelGroup
    - xmlSchemaParseFacet
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaParseRestriction(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n                          xmlNodePtr node, xmlSchemaTypeType
      parentType)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11530,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11531,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11532,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11535,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11536,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11542,1
    - Dst: xmlSchemaPValAttrQName
      Src: /src/libxml2/xmlschemas.c:11547,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11550,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11558,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11562,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11563,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11572,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11574,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11577,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11579,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11582,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:11584,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11587,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:11589,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:11601,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11608,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:11610,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11617,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11624,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 60
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - parentType
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlSchemaTypeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11632
      start: 11510
    functionDepth: 19
    functionLinenumber: 11510
    functionLinenumberEnd: 11632
    functionName: xmlSchemaParseExtension
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaParseAnyAttribute
    - xmlStrEqual
    - xmlSchemaAddAnnotation
    - xmlSchemaParseAnnotation
    - xmlSchemaParseModelGroupDefRef
    - xmlSchemaPMissingAttrErr
    - xmlSchemaPValAttrQName
    - xmlSchemaParseModelGroup
    - xmlSchemaParseLocalAttributes
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaParseExtension(xmlSchemaParserCtxtPtr ctxt,
      xmlSchemaPtr schema,\n                        xmlNodePtr node, xmlSchemaTypeType
      parentType)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11666,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11667,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11670,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11671,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11677,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11683,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11687,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11688,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11692,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11698,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11703,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:11704,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11708,1
    - Dst: xmlSchemaParseExtension
      Src: /src/libxml2/xmlschemas.c:11709,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11715,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - hasRestrictionOrExtension
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11721
      start: 11644
    functionDepth: 20
    functionLinenumber: 11644
    functionLinenumberEnd: 11721
    functionName: xmlSchemaParseSimpleContent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlSchemaAddAnnotation
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaParseExtension
    - xmlSchemaParseRestriction
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseSimpleContent(xmlSchemaParserCtxtPtr ctxt,\n                            xmlSchemaPtr
      schema, xmlNodePtr node,\n\t\t\t    int *hasRestrictionOrExtension)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11754,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11755,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11757,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11760,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11761,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11767,1
    - Dst: xmlGetBooleanProp
      Src: /src/libxml2/xmlschemas.c:11772,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11777,1
    - Dst: xmlSchemaAddAnnotation
      Src: /src/libxml2/xmlschemas.c:11781,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:11782,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11786,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11792,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11797,1
    - Dst: xmlSchemaParseRestriction
      Src: /src/libxml2/xmlschemas.c:11798,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:11802,1
    - Dst: xmlSchemaParseExtension
      Src: /src/libxml2/xmlschemas.c:11803,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:11809,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - hasRestrictionOrExtension
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11815
      start: 11733
    functionDepth: 20
    functionLinenumber: 11733
    functionLinenumberEnd: 11815
    functionName: xmlSchemaParseComplexContent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaAddAnnotation
    - xmlSchemaParseAnnotation
    - xmlSchemaParseExtension
    - xmlGetBooleanProp
    - xmlSchemaParseRestriction
    - xmlSchemaPContentErr
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseComplexContent(xmlSchemaParserCtxtPtr ctxt,\n                             xmlSchemaPtr
      schema, xmlNodePtr node,\n\t\t\t     int *hasRestrictionOrExtension)"
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetPropNode
      Src: /src/libxml2/xmlschemas.c:11848,1
    - Dst: xmlSchemaPMissingAttrErr
      Src: /src/libxml2/xmlschemas.c:11850,1
    - Dst: xmlSchemaPValAttrNode
      Src: /src/libxml2/xmlschemas.c:11853,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:11854,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:11864,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11865,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:11867,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11870,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:11886,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11902,1
    - Dst: xmlSchemaPValAttrID
      Src: /src/libxml2/xmlschemas.c:11906,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11907,1
    - Dst: xmlSchemaPGetBoolNodeValue
      Src: /src/libxml2/xmlschemas.c:11911,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11918,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11920,1
    - Dst: xmlSchemaPGetBoolNodeValue
      Src: /src/libxml2/xmlschemas.c:11924,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11927,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:11931,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:11933,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:11940,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11947,1
    - Dst: xmlSchemaGetNodeContent
      Src: /src/libxml2/xmlschemas.c:11951,1
    - Dst: xmlSchemaPValAttrBlockFinal
      Src: /src/libxml2/xmlschemas.c:11953,1
    - Dst: xmlSchemaPSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:11958,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11966,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11970,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:11973,1
    - Dst: xmlSchemaPIllegalAttrErr
      Src: /src/libxml2/xmlschemas.c:11974,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12001,1
    - Dst: xmlSchemaParseAnnotation
      Src: /src/libxml2/xmlschemas.c:12002,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12006,1
    - Dst: xmlSchemaParseSimpleContent
      Src: /src/libxml2/xmlschemas.c:12015,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12018,1
    - Dst: xmlSchemaParseComplexContent
      Src: /src/libxml2/xmlschemas.c:12023,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12036,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12041,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12043,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12046,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12048,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12051,1
    - Dst: xmlSchemaParseModelGroup
      Src: /src/libxml2/xmlschemas.c:12053,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12056,1
    - Dst: xmlSchemaParseModelGroupDefRef
      Src: /src/libxml2/xmlschemas.c:12058,1
    - Dst: xmlSchemaParseLocalAttributes
      Src: /src/libxml2/xmlschemas.c:12068,1
    - Dst: IS_SCHEMA
      Src: /src/libxml2/xmlschemas.c:12075,1
    - Dst: xmlSchemaParseAnyAttribute
      Src: /src/libxml2/xmlschemas.c:12076,1
    - Dst: xmlSchemaPContentErr
      Src: /src/libxml2/xmlschemas.c:12081,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:12092,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 136
    argCount: 4
    argNames:
    - ctxt
    - schema
    - node
    - topLevel
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12099
      start: 11827
    functionDepth: 21
    functionLinenumber: 11827
    functionLinenumberEnd: 12099
    functionName: xmlSchemaParseComplexType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 4
    functionsReached:
    - xmlSchemaPSimpleTypeErr
    - xmlSchemaParseSimpleContent
    - xmlSchemaAddType
    - snprintf
    - xmlDictLookup
    - xmlSchemaPContentErr
    - xmlSchemaGetBuiltInType
    - xmlSchemaPValAttrNode
    - xmlSchemaParseAnyAttribute
    - xmlSchemaParseModelGroupDefRef
    - xmlSchemaPMissingAttrErr
    - xmlSchemaPValAttrBlockFinal
    - IS_SCHEMA
    - xmlStrEqual
    - xmlSchemaParseAnnotation
    - xmlSchemaPCustomErr
    - xmlSchemaPGetBoolNodeValue
    - xmlSchemaGetPropNode
    - xmlSchemaGetNodeContent
    - xmlSchemaParseLocalAttributes
    - xmlSchemaParseModelGroup
    - xmlSchemaParseComplexContent
    - xmlSchemaPIllegalAttrErr
    - xmlSchemaPValAttrID
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: "xmlSchemaTypePtr xmlSchemaParseComplexType(xmlSchemaParserCtxtPtr
      ctxt, xmlSchemaPtr schema,\n                          xmlNodePtr node, int topLevel)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xmlSchemaParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12142
      start: 12122
    functionDepth: 0
    functionLinenumber: 12122
    functionLinenumberEnd: 12142
    functionName: xmlSchemaParserCtxtSetOptions
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParserCtxtSetOptions(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \     int options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12156
      start: 12148
    functionDepth: 0
    functionLinenumber: 12148
    functionLinenumberEnd: 12156
    functionName: xmlSchemaParserCtxtGetOptions
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaParserCtxtGetOptions(xmlSchemaParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12174,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12177,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:12178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - URL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12180
      start: 12166
    functionDepth: 5
    functionLinenumber: 12166
    functionLinenumberEnd: 12180
    functionName: xmlSchemaNewParserCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 7
    functionsReached:
    - xmlDictLookup
    - xmlDictCreate
    - xmlSchemaParserCtxtCreate
    linkageType: ''
    returnType: xmlSchemaParserCtxt
    signature: 'xmlSchemaParserCtxt *

      xmlSchemaNewParserCtxt(const char *URL)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12197,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12204
      start: 12190
    functionDepth: 5
    functionLinenumber: 12190
    functionLinenumberEnd: 12204
    functionName: xmlSchemaNewMemParserCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictCreate
    - xmlSchemaParserCtxtCreate
    linkageType: ''
    returnType: xmlSchemaParserCtxt
    signature: 'xmlSchemaParserCtxt *

      xmlSchemaNewMemParserCtxt(const char *buffer, int size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaParserCtxtCreate
      Src: /src/libxml2/xmlschemas.c:12220,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:12224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12229
      start: 12213
    functionDepth: 5
    functionLinenumber: 12213
    functionLinenumberEnd: 12229
    functionName: xmlSchemaNewDocParserCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictCreate
    - xmlSchemaParserCtxtCreate
    linkageType: ''
    returnType: xmlSchemaParserCtxt
    signature: 'xmlSchemaParserCtxt *

      xmlSchemaNewDocParserCtxt(xmlDoc *doc)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeDoc
      Src: /src/libxml2/xmlschemas.c:12242,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlschemas.c:12244,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:12247,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:12252,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:12253,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:12254,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12255
      start: 12236
    functionDepth: 3
    functionLinenumber: 12236
    functionLinenumberEnd: 12255
    functionName: xmlSchemaFreeParserCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 7
    functionsReached:
    - xmlDictFree
    - xmlFree
    - xmlSchemaFreeValidCtxt
    - xmlSchemaConstructionCtxtFree
    - xmlFreeDoc
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeParserCtxt(xmlSchemaParserCtxt *ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12282,1
    - Dst: xmlSchemaSubstGroupGet
      Src: /src/libxml2/xmlschemas.c:12283,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:12285,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:12285,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12299,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12300,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12307,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12314,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12315,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12336,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12338,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12347,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12349,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12351,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12352,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12361,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12362,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12367,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12368,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12371,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 4
    argNames:
    - pctxt
    - particle
    - counter
    - end
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - int
    - xmlAutomataStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12376
      start: 12266
    functionDepth: 6
    functionLinenumber: 12266
    functionLinenumberEnd: 12376
    functionName: xmlSchemaBuildContentModelForSubstGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlAutomataNewEpsilon
    - xmlAutomataNewTransition2
    - xmlSchemaSubstGroupGet
    - xmlAutomataNewState
    - WXS_ITEM_NODE
    - xmlSchemaPErr
    - xmlAutomataNewCounterTrans
    - xmlAutomataNewCountedTrans
    - xmlAutomataNewCounter
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaBuildContentModelForSubstGroup(xmlSchemaParserCtxtPtr
      pctxt,\n\txmlSchemaParticlePtr particle, int counter, xmlAutomataStatePtr end)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaBuildContentModelForSubstGroup
      Src: /src/libxml2/xmlschemas.c:12392,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12403,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12409,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12411,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12420,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12421,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12422,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12424,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12425,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12429,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - particle
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12434
      start: 12381
    functionDepth: 7
    functionLinenumber: 12381
    functionLinenumberEnd: 12434
    functionName: xmlSchemaBuildContentModelForElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlAutomataNewEpsilon
    - xmlAutomataNewTransition2
    - xmlSchemaBuildContentModelForSubstGroup
    - xmlAutomataNewCounterTrans
    - xmlAutomataNewCountedTrans
    - xmlAutomataNewCounter
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaBuildContentModelForElement(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \    xmlSchemaParticlePtr particle)"
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:12450,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12470,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12480,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12482,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12487,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12489,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12495,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12497,1
    - Dst: xmlAutomataNewNegTrans
      Src: /src/libxml2/xmlschemas.c:12502,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12515,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12516,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12519,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12521,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12523,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12525,1
    - Dst: xmlAutomataNewTransition2
      Src: /src/libxml2/xmlschemas.c:12530,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12532,1
    - Dst: xmlAutomataNewNegTrans
      Src: /src/libxml2/xmlschemas.c:12537,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12541,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12542,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12545,1
    - Dst: xmlSchemaBuildContentModelForElement
      Src: /src/libxml2/xmlschemas.c:12552,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12566,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12579,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12583,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12588,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12594,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12597,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12600,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12604,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12610,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12615,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12622,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12625,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12635,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12639,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12645,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12651,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12654,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12657,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12664,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12675,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12679,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12693,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12703,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12706,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12722,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12723,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12724,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12729,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12732,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12735,1
    - Dst: xmlAutomataNewCountedTrans
      Src: /src/libxml2/xmlschemas.c:12736,1
    - Dst: xmlAutomataNewCounterTrans
      Src: /src/libxml2/xmlschemas.c:12737,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12739,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12742,1
    - Dst: xmlAutomataNewState
      Src: /src/libxml2/xmlschemas.c:12762,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12763,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:12770,1
    - Dst: xmlAutomataNewCounter
      Src: /src/libxml2/xmlschemas.c:12788,1
    - Dst: xmlSchemaBuildContentModelForSubstGroup
      Src: /src/libxml2/xmlschemas.c:12790,1
    - Dst: xmlAutomataNewOnceTrans2
      Src: /src/libxml2/xmlschemas.c:12795,1
    - Dst: xmlAutomataNewCountTrans2
      Src: /src/libxml2/xmlschemas.c:12803,1
    - Dst: xmlAutomataNewAllTrans
      Src: /src/libxml2/xmlschemas.c:12815,1
    - Dst: xmlAutomataNewEpsilon
      Src: /src/libxml2/xmlschemas.c:12817,1
    - Dst: xmlSchemaInternalErr2
      Src: /src/libxml2/xmlschemas.c:12833,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:12836,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 232
    argCount: 2
    argNames:
    - pctxt
    - particle
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12840
      start: 12443
    functionDepth: 8
    functionLinenumber: 12443
    functionLinenumberEnd: 12840
    functionName: xmlSchemaBuildAContentModel
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlAutomataNewOnceTrans2
    - xmlAutomataNewAllTrans
    - xmlSchemaBuildContentModelForElement
    - xmlAutomataNewEpsilon
    - xmlSchemaBuildAContentModel
    - xmlAutomataNewTransition2
    - WXS_ITEM_TYPE_NAME
    - xmlAutomataNewState
    - xmlAutomataNewCountTrans2
    - xmlSchemaInternalErr2
    - xmlAutomataNewNegTrans
    - xmlSchemaBuildContentModelForSubstGroup
    - PERROR_INT
    - xmlAutomataNewCounterTrans
    - xmlAutomataNewCountedTrans
    - xmlAutomataNewCounter
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaBuildAContentModel(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \   xmlSchemaParticlePtr particle)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewAutomata
      Src: /src/libxml2/xmlschemas.c:12859,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:12861,1
    - Dst: xmlAutomataGetInitState
      Src: /src/libxml2/xmlschemas.c:12864,1
    - Dst: xmlSchemaBuildAContentModel
      Src: /src/libxml2/xmlschemas.c:12868,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:12868,1
    - Dst: xmlAutomataSetFinalState
      Src: /src/libxml2/xmlschemas.c:12869,1
    - Dst: xmlAutomataCompile
      Src: /src/libxml2/xmlschemas.c:12870,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/xmlschemas.c:12876,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/xmlschemas.c:12885,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - type
    - ctxt
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12887
      start: 12848
    functionDepth: 9
    functionLinenumber: 12848
    functionLinenumberEnd: 12887
    functionName: xmlSchemaBuildContentModel
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlFreeAutomata
    - xmlRegexpIsDeterminist
    - xmlAutomataGetInitState
    - xmlSchemaBuildAContentModel
    - WXS_TYPE_PARTICLE
    - xmlAutomataCompile
    - xmlNewAutomata
    - xmlAutomataSetFinalState
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaBuildContentModel(xmlSchemaTypePtr type,\n\t\t\t   xmlSchemaParserCtxtPtr
      ctxt)"
  - BBCount: 581
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:12913,1
    - Dst: type
      Src: /src/libxml2/xmlschemas.c:12922,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:12931,1
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:12940,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:12945,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12959,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12974,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:13012,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:13013,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13026,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:13038,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:13040,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13067,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13075,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13077,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13094,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13101,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13111,1
    - Dst: xmlSchemaQueryBuiltInType
      Src: /src/libxml2/xmlschemas.c:13115,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:13151,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:13151,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13185,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13197,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13199,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13270,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13274,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13301,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13361,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13365,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13375,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13379,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13389,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13402,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13405,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13436,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13440,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13453,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13456,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13526,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13542,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13557,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13572,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13607,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13626,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13767,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13772,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13818,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13819,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13820,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13821,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13840,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13842,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13846,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13847,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13849,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:13851,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13852,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13853,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13863,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13865,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13870,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13871,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13872,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13873,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13874,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13875,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13877,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13878,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13879,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13888,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13900,1
    - Dst: WXS_ARE_DEFAULT_STR_EQUAL
      Src: /src/libxml2/xmlschemas.c:13910,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13914,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13916,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13920,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13921,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13924,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:13942,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:13943,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13947,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13949,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13952,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13953,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13955,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13978,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13979,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13980,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13981,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13995,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13996,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13997,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13999,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14000,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14023,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14024,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14025,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14026,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14027,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:14030,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14044,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14045,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14046,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14048,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14058,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14066,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14067,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14068,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14070,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14106,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14111,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14112,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14123,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14128,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14132,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14139,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14143,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14156,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14174,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14175,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14188,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14189,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14190,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14191,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14198,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14203,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14211,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14216,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:14225,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:14236,1
    - Dst: xmlSchemaUnionWildcards
      Src: /src/libxml2/xmlschemas.c:14253,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14348,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14369,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14401,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14422,1
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14457,1
    - Dst: WXS_IS_MODEL_GROUP
      Src: /src/libxml2/xmlschemas.c:14495,1
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14496,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14534,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14535,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14537,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14538,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14541,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14557,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14558,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14566,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14578,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14583,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14584,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14586,1
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14635,1
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14655,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14692,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14697,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:14699,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14715,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14717,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14738,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14749,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14750,1
    - Dst: xmlSchemaResolveUnionMemberTypes
      Src: /src/libxml2/xmlschemas.c:14754,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14756,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14762,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14766,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14784,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14785,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14787,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14788,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14792,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14798,1
    - Dst: xmlSchemaGetNamedComponent
      Src: /src/libxml2/xmlschemas.c:14803,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:14806,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14811,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14812,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14814,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14822,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14829,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14884,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14889,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14890,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14894,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14895,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14903,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14910,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14922,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14929,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14930,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14964,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14969,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14975,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14980,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14981,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14988,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14994,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14995,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:15008,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15010,1
    - Dst: xmlSchemaIsBuiltInTypeFacet
      Src: /src/libxml2/xmlschemas.c:15016,1
    - Dst: xmlSchemaPIllegalFacetAtomicErr
      Src: /src/libxml2/xmlschemas.c:15018,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15036,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15040,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15041,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15045,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15046,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15052,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15053,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15058,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15059,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15061,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15066,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15072,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15073,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:15080,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15090,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15096,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15097,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15110,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15134,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15139,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15140,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15147,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15153,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15154,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15166,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15167,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15175,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15180,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15181,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15182,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15184,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15185,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15186,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15213,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15244,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15245,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15247,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15248,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15253,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15254,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15270,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15276,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15277,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15297,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15302,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15303,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15309,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15315,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15316,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:15342,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15344,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15349,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15356,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15362,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15363,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15364,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15365,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15366,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15367,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15388,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15430,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15440,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15447,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmlschemas.c:15460,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:15462,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/xmlschemas.c:15470,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlschemas.c:15472,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15528,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15551,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15552,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15554,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15555,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15561,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15592,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15593,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15637,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15638,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15639,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15640,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15650,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15654,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15666,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:15667,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15668,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15680,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15682,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15683,1
    - Dst: xmlSchemaAreEqualTypes
      Src: /src/libxml2/xmlschemas.c:15730,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15743,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15744,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:15761,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15764,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15770,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15778,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15801,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15802,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15804,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15835,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15878,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15879,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15880,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15881,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15882,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15883,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15905,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15930,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15931,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:15933,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15943,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15944,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16088,1
    - Dst: xmlSchemaCheckDerivationOKRestriction2to4
      Src: /src/libxml2/xmlschemas.c:16113,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:16153,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16165,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16167,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16169,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16170,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16174,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16203,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16221,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    - Dst: xmlSchemaCheckCTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:16273,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16276,1
    - Dst: xmlSchemaCheckCOSCTExtends
      Src: /src/libxml2/xmlschemas.c:16277,1
    - Dst: xmlSchemaCheckDerivationOKRestriction
      Src: /src/libxml2/xmlschemas.c:16279,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:16305,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16311,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16318,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16320,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:16331,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16332,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16345,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16347,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16368,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16375,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16397,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16399,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16408,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16416,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16425,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16428,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16503,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16504,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16510,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16534,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:16570,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:16605,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16612,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16668,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:16675,1
    - Dst: xmlSchemaCheckCOSParticleRestrict
      Src: /src/libxml2/xmlschemas.c:16763,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16772,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:16773,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:16774,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16814,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:16856,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16858,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16860,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16862,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16864,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16867,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16868,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16871,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16873,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:16881,1
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:16993,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17004,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17010,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17018,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17022,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17024,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17033,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17037,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17039,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17047,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17051,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17053,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17066,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17070,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17076,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17080,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17089,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17093,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17101,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17105,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17107,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17112,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17116,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17121,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17125,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17130,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17134,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17143,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17147,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17155,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17159,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17162,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17167,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17171,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17176,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17180,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17185,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17189,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17198,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17202,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17210,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17214,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17217,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17222,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17226,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17231,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17235,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17240,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17244,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17253,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17257,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17265,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17269,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17272,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17277,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17281,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17286,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17290,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17294,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17298,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17306,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17310,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17313,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17321,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17325,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17328,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17339,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17343,1
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:17381,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17388,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17405,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17407,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17423,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17445,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17446,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17448,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:17449,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17458,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17460,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17519,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:17520,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17539,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17542,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17602,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17606,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17614,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17618,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17626,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17635,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17639,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17640,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17647,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17649,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17655,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17679,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17686,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17690,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17691,1
    - Dst: xmlSchemaFinishMemberTypeDefinitionsProperty
      Src: /src/libxml2/xmlschemas.c:17699,1
    - Dst: xmlSchemaCheckSTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:17711,1
    - Dst: xmlSchemaCheckCOSSTRestricts
      Src: /src/libxml2/xmlschemas.c:17717,1
    - Dst: xmlSchemaCheckFacetValues
      Src: /src/libxml2/xmlschemas.c:17734,1
    - Dst: xmlSchemaDeriveAndValidateFacets
      Src: /src/libxml2/xmlschemas.c:17738,1
    - Dst: xmlSchemaTypeFixupWhitespace
      Src: /src/libxml2/xmlschemas.c:17744,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17764,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17768,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17775,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17776,1
    - Dst: xmlSchemaCheckSRCCT
      Src: /src/libxml2/xmlschemas.c:17787,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17796,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17798,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:17836,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:17837,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17838,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17842,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17864,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17865,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17870,1
    - Dst: xmlSchemaFixupSimpleTypeStageTwo
      Src: /src/libxml2/xmlschemas.c:17872,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17875,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17877,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:17972,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:17980,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:18006,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18051,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18052,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18053,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18071,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18072,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18073,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18097,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:18105,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:18109,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18117,1
    - Dst: xmlSchemaFixupTypeAttributeUses
      Src: /src/libxml2/xmlschemas.c:18165,1
    - Dst: xmlSchemaCheckCTComponent
      Src: /src/libxml2/xmlschemas.c:18172,1
    CyclomaticComplexity: 901
    EdgeCount: 901
    ICount: 2165
    argCount: 2
    argNames:
    - elemDecl
    - ctxt
    argTypes:
    - xmlSchemaElementPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18187
      start: 12897
    functionDepth: 8
    functionLinenumber: 12897
    functionLinenumberEnd: 18187
    functionName: xmlSchemaResolveElementReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaFixupSimpleTypeStageTwo
    - xmlSchemaGetParticleEmptiable
    - WXS_IS_EXTENSION
    - xmlSchemaDeriveFacetErr
    - xmlSchemaFormatQName
    - WXS_IS_LIST
    - xmlMalloc
    - xmlSchemaPCustomErrExt
    - xmlSchemaPErrMemory
    - xmlSchemaFreeWildcardNsSet
    - xmlStrEqual
    - xmlSchemaNewValidCtxt
    - xmlSchemaCheckCVCWildcardNamespace
    - xmlSchemaPResCompAttrErr
    - WXS_IS_MODEL_GROUP
    - xmlSchemaPErr
    - xmlSchemaGetComponentQName
    - WXS_ATTRUSE_DECL_TNS
    - xmlSchemaCheckTypeDefCircularInternal
    - WXS_TYPE_PARTICLE
    - xmlSchemaTypeFinalContains
    - WXS_ITEM_NODE
    - xmlSchemaAreEqualTypes
    - xmlSchemaPIllegalFacetAtomicErr
    - xmlSchemaIsDerivedFromBuiltInType
    - WXS_IS_ATOMIC
    - xmlStrdup
    - xmlSchemaPAttrUseErr4
    - WXS_IS_ANY_SIMPLE_TYPE
    - WXS_ITEM_TYPE_NAME
    - xmlSchemaCheckCOSSTRestricts
    - WXS_IS_RESTRICTION
    - xmlDictLookup
    - WXS_IS_ANYTYPE
    - xmlSchemaIsParticleEmptiable
    - xmlFree
    - xmlSchemaItemListAddSize
    - xmlSchemaExpandAttributeGroupRefs
    - xmlSchemaItemListCreate
    - xmlSchemaCheckDerivationOKRestriction
    - xmlStrcat
    - WXS_IS_TYPE_NOT_FIXED
    - WXS_ACTION_STR
    - xmlSchemaFacetTypeToString
    - xmlSchemaCheckCOSSTDerivedOK
    - WXS_TYPE_CONTENTTYPE
    - WXS_TYPE_PARTICLE_TERM
    - WXS_IS_UNION
    - xmlSchemaGetParticleTotalRangeMax
    - xmlSchemaGetElem
    - WXS_IS_COMPLEX
    - xmlSchemaSetValidErrors
    - type
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaDeriveAndValidateFacets
    - WXS_SUBST_HEAD
    - xmlSchemaCheckCOSCTExtends
    - xmlSchemaItemListFree
    - FREE_AND_NULL
    - xmlSchemaCheckCOSDerivedOK
    - xmlSchemaAddType
    - xmlSchemaFixupSimpleTypeStageOne
    - PERROR_INT
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - xmlSchemaGetType
    - xmlSchemaGetBuiltInType
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaGetPrimitiveType
    - xmlSchemaCompareValues
    - xmlSchemaPIllegalFacetListUnionErr
    - FACET_RESTR_MUTUAL_ERR
    - xmlSchemaCheckCTComponent
    - xmlSchemaCheckSTPropsCorrect
    - xmlSchemaCheckUnionTypeDefCircularRecur
    - WXS_HAS_MIXED_CONTENT
    - xmlSchemaGetComponentDesignation
    - xmlSchemaResolveElementReferences
    - xmlSchemaGetParticleTotalRangeMin
    - xmlSchemaCheckCOSParticleRestrict
    - xmlSchemaNewWildcardNsConstraint
    - xmlSchemaTypeFixup
    - WXS_ARE_DEFAULT_STR_EQUAL
    - xmlSchemaIsBuiltInTypeFacet
    - xmlSchemaCheckDerivationOKRestriction2to4
    - WXS_MODELGROUPDEF_MODEL
    - WXS_IS_TYPE_NOT_FIXED_1
    - xmlSchemaCheckParticleRangeOK
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_EMPTIABLE
    - FACET_RESTR_FIXED_ERR
    - snprintf
    - xmlSchemaCheckSRCCT
    - xmlSchemaGetNamedComponent
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaUnionWildcards
    - xmlSchemaCheckCTPropsCorrect
    - FACET_RESTR_ERR
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaCloneWildcardNsConstraints
    - xmlSchemaAddModelGroup
    - xmlSchemaTypeFixupWhitespace
    - xmlSchemaCheckFacetValues
    - xmlSchemaAddParticle
    - xmlSchemaGetEffectiveValueConstraint
    - xmlSchemaResolveUnionMemberTypes
    - xmlSchemaCheckCOSNSSubset
    - WXS_ATTRUSE_DECL
    - xmlSchemaItemListRemove
    - WXS_IS_SIMPLE
    - xmlSchemaCheckCOSCTDerivedOK
    - xmlSchemaFixupTypeAttributeUses
    - xmlSchemaQueryBuiltInType
    - xmlSchemaFinishMemberTypeDefinitionsProperty
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaResolveElementReferences(xmlSchemaElementPtr elemDecl,\n\t\t\t\t
      \ xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/libxml2/xmlschemas.c:12922,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:12931,1
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:12940,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:12945,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12959,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12974,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - elemDecl
    - node
    - namedTypeNs
    argTypes:
    - WXS_BASIC_CAST
    - elemDecl
    - type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12975
      start: 12916
    functionDepth: 9
    functionLinenumber: 12916
    functionLinenumberEnd: 12975
    functionName: xmlSchemaPResCompAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetElem
    - xmlSchemaResolveElementReferences
    - type
    - WXS_SUBST_HEAD
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPResCompAttrErr(ctxt,\n\t\tXML_SCHEMAP_SRC_RESOLVE,\n\t\tWXS_BASIC_CAST
      elemDecl, elemDecl->node,\n\t\t\"type\", elemDecl->namedType, elemDecl->namedTypeNs,\n\t\tXML_SCHEMA_TYPE_BASIC,
      \"type definition\");\n\t} else\n\t    elemDecl->subtypes = type;\n    }\n    if
      (elemDecl->substGroup != NULL)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:12940,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:12945,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:12959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - elemDecl
    - substGroup
    - substGroupNs
    argTypes:
    - WXS_BASIC_CAST
    - substitutionGroup
    - elemDecl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12965
      start: 12934
    functionDepth: 9
    functionLinenumber: 12934
    functionLinenumberEnd: 12965
    functionName: xmlSchemaPResCompAttrErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaResolveElementReferences
    - WXS_SUBST_HEAD
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaPResCompAttrErr(ctxt,\n\t\tXML_SCHEMAP_SRC_RESOLVE,\n\t\tWXS_BASIC_CAST
      elemDecl, NULL,\n\t\t\"substitutionGroup\", elemDecl->substGroup,\n\t\telemDecl->substGroupNs,
      XML_SCHEMA_TYPE_ELEMENT, NULL)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:13012,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:13013,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13026,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:13038,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:13040,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13053
      start: 12986
    functionDepth: 8
    functionLinenumber: 12986
    functionLinenumberEnd: 13053
    functionName: xmlSchemaResolveUnionMemberTypes
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_SIMPLE
    - xmlFree
    - xmlMalloc
    - xmlSchemaGetType
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveUnionMemberTypes(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      xmlSchemaTypePtr type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13067,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13075,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13077,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - type
    - valType
    argTypes:
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13078
      start: 13062
    functionDepth: 1
    functionLinenumber: 13062
    functionLinenumberEnd: 13078
    functionName: xmlSchemaIsDerivedFromBuiltInType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaIsDerivedFromBuiltInType
    - WXS_IS_COMPLEX
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsDerivedFromBuiltInType(xmlSchemaTypePtr type, int valType)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13094,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:13101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - type
    - valType
    argTypes:
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13104
      start: 13089
    functionDepth: 2
    functionLinenumber: 13089
    functionLinenumberEnd: 13104
    functionName: xmlSchemaIsUserDerivedFromBuiltInType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaIsDerivedFromBuiltInType
    - WXS_IS_COMPLEX
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsUserDerivedFromBuiltInType(xmlSchemaTypePtr type, int
      valType)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:13111,1
    - Dst: xmlSchemaQueryBuiltInType
      Src: /src/libxml2/xmlschemas.c:13115,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13116
      start: 13106
    functionDepth: 1
    functionLinenumber: 13106
    functionLinenumberEnd: 13116
    functionName: xmlSchemaQueryBuiltInType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaQueryBuiltInType
    - WXS_IS_COMPLEX
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: xmlSchemaTypePtr xmlSchemaQueryBuiltInType(xmlSchemaTypePtr type)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13140
      start: 13124
    functionDepth: 0
    functionLinenumber: 13124
    functionLinenumberEnd: 13140
    functionName: xmlSchemaGetPrimitiveType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: xmlSchemaTypePtr xmlSchemaGetPrimitiveType(xmlSchemaTypePtr type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:13151,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:13151,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13160
      start: 13148
    functionDepth: 1
    functionLinenumber: 13148
    functionLinenumberEnd: 13160
    functionName: xmlSchemaGetBuiltInTypeAncestor
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_LIST
    - WXS_IS_UNION
    linkageType: ''
    returnType: xmlSchemaTypePtr
    signature: xmlSchemaTypePtr xmlSchemaGetBuiltInTypeAncestor(xmlSchemaTypePtr type)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13185,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13197,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13199,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - ctxt
    - dest
    - source
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaWildcardPtr
    - xmlSchemaWildcardPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13206
      start: 13172
    functionDepth: 4
    functionLinenumber: 13172
    functionLinenumberEnd: 13206
    functionName: xmlSchemaCloneWildcardNsConstraints
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaFreeWildcardNsSet
    - xmlSchemaNewWildcardNsConstraint
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCloneWildcardNsConstraints(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \   xmlSchemaWildcardPtr dest,\n\t\t\t\t    xmlSchemaWildcardPtr source)"
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13270,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13274,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13301,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13361,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13365,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13375,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13379,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13389,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13402,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13405,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13436,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13440,1
    - Dst: xmlSchemaFreeWildcardNsSet
      Src: /src/libxml2/xmlschemas.c:13453,1
    - Dst: xmlSchemaNewWildcardNsConstraint
      Src: /src/libxml2/xmlschemas.c:13456,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 161
    argCount: 3
    argNames:
    - ctxt
    - completeWild
    - curWild
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaWildcardPtr
    - xmlSchemaWildcardPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13465
      start: 13218
    functionDepth: 6
    functionLinenumber: 13218
    functionLinenumberEnd: 13465
    functionName: xmlSchemaUnionWildcards
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaFreeWildcardNsSet
    - xmlSchemaNewWildcardNsConstraint
    - xmlFree
    - xmlSchemaPErr
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaUnionWildcards(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t    xmlSchemaWildcardPtr
      completeWild,\n\t\t\t    xmlSchemaWildcardPtr curWild)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13526,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:13542,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13557,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13572,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:13607,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:13626,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 102
    argCount: 3
    argNames:
    - ctxt
    - completeWild
    - curWild
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaWildcardPtr
    - xmlSchemaWildcardPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13642
      start: 13477
    functionDepth: 6
    functionLinenumber: 13477
    functionLinenumberEnd: 13642
    functionName: xmlSchemaIntersectWildcards
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCloneWildcardNsConstraints
    - xmlFree
    - xmlSchemaPErr
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIntersectWildcards(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \   xmlSchemaWildcardPtr completeWild,\n\t\t\t    xmlSchemaWildcardPtr curWild)"
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 36
    argCount: 2
    argNames:
    - sub
    - super
    argTypes:
    - xmlSchemaWildcardPtr
    - xmlSchemaWildcardPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13713
      start: 13652
    functionDepth: 0
    functionLinenumber: 13652
    functionLinenumberEnd: 13713
    functionName: xmlSchemaCheckCOSNSSubset
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSNSSubset(xmlSchemaWildcardPtr sub,\n\t\t\t  xmlSchemaWildcardPtr
      super)"
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 4
    argNames:
    - attruse
    - fixed
    - value
    - val
    argTypes:
    - xmlSchemaAttributeUsePtr
    - int*
    - xmlChar**
    - xmlSchemaValPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13743
      start: 13715
    functionDepth: 0
    functionLinenumber: 13715
    functionLinenumberEnd: 13743
    functionName: xmlSchemaGetEffectiveValueConstraint
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetEffectiveValueConstraint(xmlSchemaAttributeUsePtr
      attruse,\n\t\t\t\t     int *fixed,\n\t\t\t\t     const xmlChar **value,\n\t\t\t\t
      \    xmlSchemaValPtr *val)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13767,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:13772,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - wild
    - ns
    argTypes:
    - xmlSchemaWildcardPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13776
      start: 13753
    functionDepth: 1
    functionLinenumber: 13753
    functionLinenumberEnd: 13776
    functionName: xmlSchemaCheckCVCWildcardNamespace
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCVCWildcardNamespace(xmlSchemaWildcardPtr wild,\n\t\t\t\t
      \  const xmlChar* ns)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13783
      start: 13781
    functionDepth: 0
    functionLinenumber: 13781
    functionLinenumberEnd: 13783
    functionName: WXS_ACTION_STR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_ACTION_STR(a)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13818,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13819,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13820,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13821,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13840,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13842,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13846,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13847,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13849,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:13851,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13852,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13853,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13863,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13865,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13870,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13871,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13872,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:13873,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13874,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13875,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13877,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13878,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13879,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13888,1
    - Dst: xmlSchemaGetEffectiveValueConstraint
      Src: /src/libxml2/xmlschemas.c:13900,1
    - Dst: WXS_ARE_DEFAULT_STR_EQUAL
      Src: /src/libxml2/xmlschemas.c:13910,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13914,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13916,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13920,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13921,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13924,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:13942,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:13943,1
    - Dst: xmlSchemaPAttrUseErr4
      Src: /src/libxml2/xmlschemas.c:13947,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:13949,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13952,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13953,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13955,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13978,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:13979,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13980,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:13981,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13995,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:13996,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:13997,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:13999,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14000,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14023,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14024,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14025,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14026,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14027,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:14030,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14044,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14045,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14046,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14048,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14058,1
    - Dst: WXS_ACTION_STR
      Src: /src/libxml2/xmlschemas.c:14066,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:14067,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14068,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14070,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 84
    argCount: 8
    argNames:
    - pctxt
    - action
    - item
    - baseItem
    - uses
    - baseUses
    - wild
    - baseWild
    argTypes:
    - xmlSchemaParserCtxtPtr
    - int
    - xmlSchemaBasicItemPtr
    - xmlSchemaBasicItemPtr
    - xmlSchemaItemListPtr
    - xmlSchemaItemListPtr
    - xmlSchemaWildcardPtr
    - xmlSchemaWildcardPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14075
      start: 13795
    functionDepth: 8
    functionLinenumber: 13795
    functionLinenumberEnd: 14075
    functionName: xmlSchemaCheckDerivationOKRestriction2to4
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetComponentDesignation
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaPAttrUseErr4
    - FREE_AND_NULL
    - WXS_ITEM_TYPE_NAME
    - xmlSchemaCheckCVCWildcardNamespace
    - WXS_ACTION_STR
    - WXS_IS_ANYTYPE
    - WXS_ARE_DEFAULT_STR_EQUAL
    - WXS_ITEM_NODE
    - xmlSchemaCheckCOSSTDerivedOK
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaGetEffectiveValueConstraint
    - xmlSchemaCheckCOSNSSubset
    - xmlSchemaGetComponentQName
    - WXS_ATTRUSE_DECL
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckDerivationOKRestriction2to4(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t       int action,\n\t\t\t\t       xmlSchemaBasicItemPtr item,\n\t\t\t\t
      \      xmlSchemaBasicItemPtr baseItem,\n\t\t\t\t       xmlSchemaItemListPtr
      uses,\n\t\t\t\t       xmlSchemaItemListPtr baseUses,\n\t\t\t\t       xmlSchemaWildcardPtr
      wild,\n\t\t\t\t       xmlSchemaWildcardPtr baseWild)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14106,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14111,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14112,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14123,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14128,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14132,1
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:14139,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14143,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14156,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14174,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14175,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14188,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:14189,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14190,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:14191,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14198,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14203,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:14211,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:14216,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:14225,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:14236,1
    - Dst: xmlSchemaUnionWildcards
      Src: /src/libxml2/xmlschemas.c:14253,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 100
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14283
      start: 14097
    functionDepth: 7
    functionLinenumber: 14097
    functionLinenumberEnd: 14283
    functionName: xmlSchemaFixupTypeAttributeUses
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaUnionWildcards
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaTypeFixup
    - WXS_IS_RESTRICTION
    - xmlSchemaExpandAttributeGroupRefs
    - xmlSchemaItemListAddSize
    - WXS_ATTRUSE_DECL_NAME
    - PERROR_INT
    - xmlSchemaItemListCreate
    - WXS_IS_EXTENSION
    - xmlSchemaItemListFree
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFixupTypeAttributeUses(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \ xmlSchemaTypePtr type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - type
    - final
    argTypes:
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14303
      start: 14294
    functionDepth: 0
    functionLinenumber: 14294
    functionLinenumberEnd: 14303
    functionName: xmlSchemaTypeFinalContains
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaTypeFinalContains(xmlSchemaTypePtr type, int final)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14320
      start: 14310
    functionDepth: 0
    functionLinenumber: 14310
    functionLinenumberEnd: 14320
    functionName: xmlSchemaGetUnionSimpleTypeMemberTypes
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaTypeLinkPtr
    signature: xmlSchemaTypeLinkPtr xmlSchemaGetUnionSimpleTypeMemberTypes(xmlSchemaTypePtr
      type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14348,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:14369,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 1
    argNames:
    - particle
    argTypes:
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14374
      start: 14330
    functionDepth: 1
    functionLinenumber: 14330
    functionLinenumberEnd: 14374
    functionName: xmlSchemaGetParticleTotalRangeMin
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaGetParticleTotalRangeMin
    linkageType: ''
    returnType: int
    signature: int xmlSchemaGetParticleTotalRangeMin(xmlSchemaParticlePtr particle)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14401,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:14422,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 31
    argCount: 1
    argNames:
    - particle
    argTypes:
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14432
      start: 14383
    functionDepth: 1
    functionLinenumber: 14383
    functionLinenumberEnd: 14432
    functionName: xmlSchemaGetParticleTotalRangeMax
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaGetParticleTotalRangeMax
    linkageType: ''
    returnType: int
    signature: int xmlSchemaGetParticleTotalRangeMax(xmlSchemaParticlePtr particle)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14457,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - particle
    argTypes:
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14473
      start: 14439
    functionDepth: 1
    functionLinenumber: 14439
    functionLinenumberEnd: 14473
    functionName: xmlSchemaGetParticleEmptiable
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaGetParticleEmptiable
    linkageType: ''
    returnType: int
    signature: int xmlSchemaGetParticleEmptiable(xmlSchemaParticlePtr particle)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_MODEL_GROUP
      Src: /src/libxml2/xmlschemas.c:14495,1
    - Dst: xmlSchemaGetParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:14496,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - particle
    argTypes:
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14498
      start: 14482
    functionDepth: 2
    functionLinenumber: 14482
    functionLinenumberEnd: 14498
    functionName: xmlSchemaIsParticleEmptiable
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_MODEL_GROUP
    - xmlSchemaGetParticleEmptiable
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsParticleEmptiable(xmlSchemaParticlePtr particle)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14534,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14535,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14537,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14538,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14541,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:14557,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14558,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14566,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14567,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14578,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:14583,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:14584,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:14586,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 34
    argCount: 4
    argNames:
    - actxt
    - type
    - baseType
    - subset
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14599
      start: 14513
    functionDepth: 1
    functionLinenumber: 14513
    functionLinenumberEnd: 14599
    functionName: xmlSchemaCheckCOSSTDerivedOK
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 4
    functionsReached:
    - WXS_IS_ANY_SIMPLE_TYPE
    - WXS_IS_LIST
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaTypeFixup
    - xmlSchemaTypeFinalContains
    - xmlSchemaCheckCOSSTDerivedOK
    - WXS_IS_ANYTYPE
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSSTDerivedOK(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \    xmlSchemaTypePtr type,\n\t\t\t     xmlSchemaTypePtr baseType,\n\t\t\t     int
      subset)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14635,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - pctxt
    - ctxtType
    - ancestor
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14639
      start: 14611
    functionDepth: 1
    functionLinenumber: 14611
    functionLinenumberEnd: 14639
    functionName: xmlSchemaCheckTypeDefCircularInternal
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaCheckTypeDefCircularInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckTypeDefCircularInternal(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \  xmlSchemaTypePtr ctxtType,\n\t\t\t   xmlSchemaTypePtr ancestor)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckTypeDefCircularInternal
      Src: /src/libxml2/xmlschemas.c:14655,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - item
    - ctxt
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14657
      start: 14647
    functionDepth: 2
    functionLinenumber: 14647
    functionLinenumberEnd: 14657
    functionName: xmlSchemaCheckTypeDefCircular
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCheckTypeDefCircularInternal
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCheckTypeDefCircular(xmlSchemaTypePtr item,\n\t\t\t
      \     xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14692,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14697,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:14699,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - pctxt
    - ctxType
    - members
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    - xmlSchemaTypeLinkPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14709
      start: 14672
    functionDepth: 1
    functionLinenumber: 14672
    functionLinenumberEnd: 14709
    functionName: xmlSchemaCheckUnionTypeDefCircularRecur
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - xmlSchemaCheckUnionTypeDefCircularRecur
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckUnionTypeDefCircularRecur(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t\txmlSchemaTypePtr ctxType,\n\t\t\t\t\txmlSchemaTypeLinkPtr
      members)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14715,1
    - Dst: xmlSchemaCheckUnionTypeDefCircularRecur
      Src: /src/libxml2/xmlschemas.c:14717,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14719
      start: 14711
    functionDepth: 2
    functionLinenumber: 14711
    functionLinenumberEnd: 14719
    functionName: xmlSchemaCheckUnionTypeDefCircular
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCheckUnionTypeDefCircularRecur
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckUnionTypeDefCircular(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \  xmlSchemaTypePtr type)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14738,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14749,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14750,1
    - Dst: xmlSchemaResolveUnionMemberTypes
      Src: /src/libxml2/xmlschemas.c:14754,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14756,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:14762,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14766,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14784,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14785,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14787,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14788,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14792,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14798,1
    - Dst: xmlSchemaGetNamedComponent
      Src: /src/libxml2/xmlschemas.c:14803,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:14806,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14807,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14811,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14812,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:14814,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14820,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:14822,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:14829,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 43
    argCount: 2
    argNames:
    - typeDef
    - ctxt
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14841
      start: 14727
    functionDepth: 9
    functionLinenumber: 14727
    functionLinenumberEnd: 14841
    functionName: xmlSchemaResolveTypeReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetNamedComponent
    - WXS_IS_SIMPLE
    - WXS_IS_LIST
    - WXS_TYPE_PARTICLE
    - xmlSchemaPResCompAttrErr
    - WXS_ITEM_NODE
    - xmlSchemaResolveUnionMemberTypes
    - WXS_TYPE_CONTENTTYPE
    - WXS_TYPE_PARTICLE_TERM
    - WXS_MODELGROUPDEF_MODEL
    - xmlSchemaGetType
    - WXS_IS_UNION
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaResolveTypeReferences(xmlSchemaTypePtr typeDef,\n\t\t\t
      xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:14884,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14889,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14890,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14893,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:14894,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:14895,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14903,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:14909,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:14910,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14922,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14929,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14930,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14943
      start: 14854
    functionDepth: 5
    functionLinenumber: 14854
    functionLinenumberEnd: 14943
    functionName: xmlSchemaCheckSTPropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_SIMPLE
    - WXS_IS_ANY_SIMPLE_TYPE
    - FREE_AND_NULL
    - WXS_IS_LIST
    - xmlSchemaTypeFinalContains
    - WXS_IS_RESTRICTION
    - WXS_IS_ATOMIC
    - xmlSchemaGetComponentQName
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckSTPropsCorrect(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \    xmlSchemaTypePtr type)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:14964,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14969,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:14975,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14980,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14981,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:14988,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:14994,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:14995,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:15008,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15010,1
    - Dst: xmlSchemaIsBuiltInTypeFacet
      Src: /src/libxml2/xmlschemas.c:15016,1
    - Dst: xmlSchemaPIllegalFacetAtomicErr
      Src: /src/libxml2/xmlschemas.c:15018,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15036,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15040,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15041,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15045,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15046,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15052,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15053,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15058,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15059,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15061,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15066,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15072,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15073,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:15080,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15090,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15096,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15097,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15110,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15134,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15139,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15140,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15147,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15153,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15154,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15166,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15167,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15175,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15180,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15181,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15182,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15184,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15185,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15186,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15213,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 114
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15235
      start: 14957
    functionDepth: 8
    functionLinenumber: 14957
    functionLinenumberEnd: 15235
    functionName: xmlSchemaCheckCOSSTRestricts
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetPrimitiveType
    - WXS_IS_SIMPLE
    - FREE_AND_NULL
    - WXS_IS_LIST
    - WXS_IS_TYPE_NOT_FIXED
    - WXS_IS_ANY_SIMPLE_TYPE
    - xmlSchemaPIllegalFacetListUnionErr
    - xmlSchemaIsBuiltInTypeFacet
    - xmlSchemaTypeFinalContains
    - xmlSchemaTypeFixup
    - xmlSchemaPIllegalFacetAtomicErr
    - PERROR_INT
    - WXS_IS_ATOMIC
    - xmlSchemaGetComponentQName
    - xmlSchemaPCustomErrExt
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSSTRestricts(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \    xmlSchemaTypePtr type)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:15244,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:15245,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:15247,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15248,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15253,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15254,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15270,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15276,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15277,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15297,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15302,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15303,1
    - Dst: xmlSchemaTypeFinalContains
      Src: /src/libxml2/xmlschemas.c:15309,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15315,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15316,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:15342,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15344,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15349,1
    - Dst: xmlSchemaPCustomErrExt
      Src: /src/libxml2/xmlschemas.c:15356,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15362,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15363,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:15364,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15365,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15366,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15367,1
    - Dst: xmlSchemaPIllegalFacetListUnionErr
      Src: /src/libxml2/xmlschemas.c:15388,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 69
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15405
      start: 15235
    functionDepth: 8
    functionLinenumber: 15235
    functionLinenumberEnd: 15405
    functionName: if
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - FREE_AND_NULL
    - WXS_IS_LIST
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaPIllegalFacetListUnionErr
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - xmlSchemaTypeFixup
    - xmlSchemaTypeFinalContains
    - PERROR_INT
    - WXS_IS_ATOMIC
    - xmlSchemaGetComponentQName
    - xmlSchemaPCustomErrExt
    - WXS_IS_UNION
    linkageType: ''
    returnType: else
    signature: else if (WXS_IS_UNION(type))
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15430,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:15440,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:15447,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15453
      start: 15421
    functionDepth: 1
    functionLinenumber: 15421
    functionLinenumberEnd: 15453
    functionName: xmlSchemaCheckSRCSimpleType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_LIST
    - WXS_IS_UNION
    - WXS_IS_RESTRICTION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckSRCSimpleType(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \   xmlSchemaTypePtr type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/xmlschemas.c:15460,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:15462,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/xmlschemas.c:15470,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlschemas.c:15472,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15476
      start: 15456
    functionDepth: 6
    functionLinenumber: 15456
    functionLinenumberEnd: 15476
    functionName: xmlSchemaCreateVCtxtOnPCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaSetValidStructuredErrors
    - xmlSchemaSetValidErrors
    - xmlSchemaPErr
    - xmlSchemaNewValidCtxt
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCreateVCtxtOnPCtxt(xmlSchemaParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15528,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15551,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15552,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15554,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:15555,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:15561,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - pctxt
    - node
    - type
    - value
    - val
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlNodePtr
    - xmlSchemaTypePtr
    - xmlChar*
    - xmlSchemaValPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15566
      start: 15503
    functionDepth: 1
    functionLinenumber: 15503
    functionLinenumberEnd: 15566
    functionName: xmlSchemaParseCheckCOSValidDefault
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_HAS_MIXED_CONTENT
    - WXS_IS_SIMPLE
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_EMPTIABLE
    - xmlSchemaVCheckCVCSimpleType
    - PERROR_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaParseCheckCOSValidDefault(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \  xmlNodePtr node,\n\t\t\t\t   xmlSchemaTypePtr type,\n\t\t\t\t   const xmlChar
      *value,\n\t\t\t\t   xmlSchemaValPtr *val)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:15528,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:15529,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:15529,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15539
      start: 15518
    functionDepth: 1
    functionLinenumber: 15518
    functionLinenumberEnd: 15539
    functionName: WXS_IS_COMPLEX
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 6
    functionsReached:
    - WXS_HAS_MIXED_CONTENT
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_EMPTIABLE
    linkageType: ''
    returnType: void
    signature: void WXS_IS_COMPLEX(type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15592,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15593,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15637,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15638,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15639,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15640,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15650,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15654,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15666,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:15667,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15668,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15680,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15682,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:15683,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 43
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15696
      start: 15579
    functionDepth: 6
    functionLinenumber: 15579
    functionLinenumberEnd: 15696
    functionName: xmlSchemaCheckCTPropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaGetComponentDesignation
    - WXS_IS_SIMPLE
    - FREE_AND_NULL
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaIsDerivedFromBuiltInType
    - WXS_IS_EXTENSION
    - xmlSchemaItemListRemove
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCTPropsCorrect(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \    xmlSchemaTypePtr type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - typeA
    - typeB
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15709
      start: 15698
    functionDepth: 0
    functionLinenumber: 15698
    functionLinenumberEnd: 15709
    functionName: xmlSchemaAreEqualTypes
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAreEqualTypes(xmlSchemaTypePtr typeA,\n\t\t       xmlSchemaTypePtr
      typeB)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaAreEqualTypes
      Src: /src/libxml2/xmlschemas.c:15730,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:15743,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:15744,1
    - Dst: WXS_IS_ANYTYPE
      Src: /src/libxml2/xmlschemas.c:15761,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15764,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15770,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15778,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 4
    argNames:
    - actxt
    - type
    - baseType
    - set
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15781
      start: 15724
    functionDepth: 2
    functionLinenumber: 15724
    functionLinenumberEnd: 15781
    functionName: xmlSchemaCheckCOSCTDerivedOK
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - WXS_IS_COMPLEX
    - xmlSchemaCheckCOSCTDerivedOK
    - WXS_IS_RESTRICTION
    - xmlSchemaAreEqualTypes
    - xmlSchemaCheckCOSSTDerivedOK
    - WXS_IS_EXTENSION
    - WXS_IS_ANYTYPE
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSCTDerivedOK(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \    xmlSchemaTypePtr type,\n\t\t\t     xmlSchemaTypePtr baseType,\n\t\t\t     int
      set)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:15801,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15802,1
    - Dst: xmlSchemaCheckCOSCTDerivedOK
      Src: /src/libxml2/xmlschemas.c:15804,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - actxt
    - type
    - baseType
    - set
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlSchemaTypePtr
    - xmlSchemaTypePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15805
      start: 15795
    functionDepth: 3
    functionLinenumber: 15795
    functionLinenumberEnd: 15805
    functionName: xmlSchemaCheckCOSDerivedOK
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckCOSSTDerivedOK
    - WXS_IS_SIMPLE
    - xmlSchemaCheckCOSCTDerivedOK
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSDerivedOK(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \  xmlSchemaTypePtr type,\n\t\t\t   xmlSchemaTypePtr baseType,\n\t\t\t   int
      set)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:15835,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15878,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:15879,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15880,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:15881,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15882,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:15883,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15902,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15905,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15930,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15931,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:15933,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:15943,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:15944,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 62
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16057
      start: 15822
    functionDepth: 6
    functionLinenumber: 15822
    functionLinenumberEnd: 16057
    functionName: xmlSchemaCheckCOSCTExtends
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetComponentDesignation
    - WXS_ATTRUSE_TYPEDEF
    - WXS_IS_COMPLEX
    - FREE_AND_NULL
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaCheckCOSNSSubset
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSCTExtends(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \  xmlSchemaTypePtr type)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16088,1
    - Dst: xmlSchemaCheckDerivationOKRestriction2to4
      Src: /src/libxml2/xmlschemas.c:16113,1
    - Dst: xmlSchemaCheckCOSSTDerivedOK
      Src: /src/libxml2/xmlschemas.c:16153,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16165,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:16167,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16169,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16170,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16174,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16203,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16221,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:16226,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 52
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16255
      start: 16077
    functionDepth: 9
    functionLinenumber: 16077
    functionLinenumberEnd: 16255
    functionName: xmlSchemaCheckDerivationOKRestriction
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_HAS_MIXED_CONTENT
    - xmlSchemaGetComponentDesignation
    - WXS_IS_COMPLEX
    - FREE_AND_NULL
    - xmlSchemaCheckCOSSTDerivedOK
    - xmlSchemaCheckDerivationOKRestriction2to4
    - xmlSchemaIsParticleEmptiable
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckDerivationOKRestriction(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \     xmlSchemaTypePtr type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckCTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:16273,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16276,1
    - Dst: xmlSchemaCheckCOSCTExtends
      Src: /src/libxml2/xmlschemas.c:16277,1
    - Dst: xmlSchemaCheckDerivationOKRestriction
      Src: /src/libxml2/xmlschemas.c:16279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16281
      start: 16265
    functionDepth: 10
    functionLinenumber: 16265
    functionLinenumberEnd: 16281
    functionName: xmlSchemaCheckCTComponent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckCTPropsCorrect
    - xmlSchemaCheckCOSCTExtends
    - xmlSchemaCheckDerivationOKRestriction
    - WXS_IS_EXTENSION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCTComponent(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \ xmlSchemaTypePtr type)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:16305,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:16311,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16318,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16320,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:16331,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:16332,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16345,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16347,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16368,1
    - Dst: xmlSchemaIsParticleEmptiable
      Src: /src/libxml2/xmlschemas.c:16375,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16397,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16399,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:16408,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16416,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:16425,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:16428,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16445
      start: 16293
    functionDepth: 4
    functionLinenumber: 16293
    functionLinenumberEnd: 16445
    functionName: xmlSchemaCheckSRCCT
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_SIMPLE
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_IS_COMPLEX
    - FREE_AND_NULL
    - WXS_IS_RESTRICTION
    - WXS_IS_EXTENSION
    - xmlSchemaIsParticleEmptiable
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckSRCCT(xmlSchemaParserCtxtPtr ctxt,\n\t\t    xmlSchemaTypePtr
      type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 4
    argNames:
    - rmin
    - rmax
    - bmin
    - bmax
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16470
      start: 16460
    functionDepth: 0
    functionLinenumber: 16460
    functionLinenumberEnd: 16470
    functionName: xmlSchemaCheckParticleRangeOK
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckParticleRangeOK(int rmin, int rmax,\n\t\t\t      int
      bmin, int bmax)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16503,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16504,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16510,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:16534,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:16570,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 24
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16575
      start: 16488
    functionDepth: 4
    functionLinenumber: 16488
    functionLinenumberEnd: 16575
    functionName: xmlSchemaCheckRCaseNameAndTypeOK
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckParticleRangeOK
    - xmlStrEqual
    - xmlSchemaCheckCOSDerivedOK
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseNameAndTypeOK(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      xmlSchemaParticlePtr r,\n\t\t\t\t xmlSchemaParticlePtr b)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:16605,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16617
      start: 16591
    functionDepth: 2
    functionLinenumber: 16591
    functionLinenumberEnd: 16617
    functionName: xmlSchemaCheckRCaseNSCompat
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckParticleRangeOK
    - xmlSchemaCheckCVCWildcardNamespace
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseNSCompat(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \   xmlSchemaParticlePtr r,\n\t\t\t    xmlSchemaParticlePtr b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16641
      start: 16633
    functionDepth: 0
    functionLinenumber: 16633
    functionLinenumberEnd: 16641
    functionName: xmlSchemaCheckRCaseRecurseAsIfGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseRecurseAsIfGroup(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \   xmlSchemaParticlePtr r,\n\t\t\t\t    xmlSchemaParticlePtr b)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16668,1
    - Dst: xmlSchemaCheckCOSNSSubset
      Src: /src/libxml2/xmlschemas.c:16675,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - r
    - b
    - isAnyTypeBase
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16691
      start: 16657
    functionDepth: 1
    functionLinenumber: 16657
    functionLinenumberEnd: 16691
    functionName: xmlSchemaCheckRCaseNSSubset
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckParticleRangeOK
    - xmlSchemaCheckCOSNSSubset
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseNSSubset(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \   xmlSchemaParticlePtr r,\n\t\t\t\t    xmlSchemaParticlePtr b,\n\t\t\t\t    int
      isAnyTypeBase)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16726
      start: 16705
    functionDepth: 0
    functionLinenumber: 16705
    functionLinenumberEnd: 16726
    functionName: xmlSchemaCheckCOSParticleRestrict
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSParticleRestrict(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t\t
      \ xmlSchemaParticlePtr r,\n\t\t\t\t  xmlSchemaParticlePtr b)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckCOSParticleRestrict
      Src: /src/libxml2/xmlschemas.c:16763,1
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16772,1
    - Dst: xmlSchemaGetParticleTotalRangeMin
      Src: /src/libxml2/xmlschemas.c:16773,1
    - Dst: xmlSchemaGetParticleTotalRangeMax
      Src: /src/libxml2/xmlschemas.c:16774,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16778
      start: 16744
    functionDepth: 2
    functionLinenumber: 16744
    functionLinenumberEnd: 16778
    functionName: xmlSchemaCheckRCaseNSRecurseCheckCardinality
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckParticleRangeOK
    - xmlSchemaCheckCOSParticleRestrict
    - xmlSchemaGetParticleTotalRangeMax
    - xmlSchemaGetParticleTotalRangeMin
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseNSRecurseCheckCardinality(xmlSchemaParserCtxtPtr
      ctxt,\n\t\t\t\t\t     xmlSchemaParticlePtr r,\n\t\t\t\t\t     xmlSchemaParticlePtr
      b)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckParticleRangeOK
      Src: /src/libxml2/xmlschemas.c:16814,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - ctxt
    - r
    - b
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16820
      start: 16797
    functionDepth: 1
    functionLinenumber: 16797
    functionLinenumberEnd: 16820
    functionName: xmlSchemaCheckRCaseRecurse
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaCheckParticleRangeOK
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckRCaseRecurse(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \  xmlSchemaParticlePtr r,\n\t\t\t   xmlSchemaParticlePtr b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fac1
    - ','
    - fac2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16832
      start: 16824
    functionDepth: 0
    functionLinenumber: 16824
    functionLinenumberEnd: 16832
    functionName: FACET_RESTR_MUTUAL_ERR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FACET_RESTR_MUTUAL_ERR(fac1, fac2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fac1
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16838
      start: 16833
    functionDepth: 0
    functionLinenumber: 16833
    functionLinenumberEnd: 16838
    functionName: FACET_RESTR_ERR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FACET_RESTR_ERR(fac1, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - fac
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16845
      start: 16839
    functionDepth: 0
    functionLinenumber: 16839
    functionLinenumberEnd: 16845
    functionName: FACET_RESTR_FIXED_ERR
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FACET_RESTR_FIXED_ERR(fac)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:16856,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16857,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16858,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16860,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16862,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16864,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16867,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16868,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:16869,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16871,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:16873,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:16881,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 6
    argNames:
    - pctxt
    - facet1
    - facet2
    - lessGreater
    - orEqual
    - ofBase
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaFacetPtr
    - xmlSchemaFacetPtr
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16882
      start: 16846
    functionDepth: 3
    functionLinenumber: 16846
    functionLinenumberEnd: 16882
    functionName: xmlSchemaDeriveFacetErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlStrcat
    - xmlSchemaFacetTypeToString
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaDeriveFacetErr(xmlSchemaParserCtxtPtr pctxt,\n\t\t\txmlSchemaFacetPtr
      facet1,\n\t\t\txmlSchemaFacetPtr facet2,\n\t\t\tint lessGreater,\n\t\t\tint
      orEqual,\n\t\t\tint ofBase)"
  - BBCount: 138
    BranchProfiles: []
    Callsites:
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:16993,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17004,1
    - Dst: FACET_RESTR_MUTUAL_ERR
      Src: /src/libxml2/xmlschemas.c:17010,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17018,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17022,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17024,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17033,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17037,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17039,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17047,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17051,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17053,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17066,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17070,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17076,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17080,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17089,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17093,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17101,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17105,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17107,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17112,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17116,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17121,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17125,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17130,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17134,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17143,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17147,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17155,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17159,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17162,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17167,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17171,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17176,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17180,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17185,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17189,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17198,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17202,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17210,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17214,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17217,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17222,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17226,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17231,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17235,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17240,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17244,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17253,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17257,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17265,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17269,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17272,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17277,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17281,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17286,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17290,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17294,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17298,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17306,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17310,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17313,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17321,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17325,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17328,1
    - Dst: xmlSchemaCompareValues
      Src: /src/libxml2/xmlschemas.c:17339,1
    - Dst: xmlSchemaDeriveFacetErr
      Src: /src/libxml2/xmlschemas.c:17343,1
    - Dst: FACET_RESTR_ERR
      Src: /src/libxml2/xmlschemas.c:17381,1
    - Dst: FACET_RESTR_FIXED_ERR
      Src: /src/libxml2/xmlschemas.c:17388,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17405,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17407,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17423,1
    CyclomaticComplexity: 197
    EdgeCount: 197
    ICount: 415
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17426
      start: 16890
    functionDepth: 7
    functionLinenumber: 16890
    functionLinenumberEnd: 17426
    functionName: xmlSchemaDeriveAndValidateFacets
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCompareValues
    - FACET_RESTR_FIXED_ERR
    - FACET_RESTR_ERR
    - xmlMalloc
    - PERROR_INT
    - FACET_RESTR_MUTUAL_ERR
    - xmlSchemaDeriveFacetErr
    - xmlSchemaPErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaDeriveAndValidateFacets(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      xmlSchemaTypePtr type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17445,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17446,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17448,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:17449,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:17458,1
    - Dst: xmlSchemaPErrMemory
      Src: /src/libxml2/xmlschemas.c:17460,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17476
      start: 17428
    functionDepth: 3
    functionLinenumber: 17428
    functionLinenumberEnd: 17476
    functionName: xmlSchemaFinishMemberTypeDefinitionsProperty
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaTypeFixup
    - xmlMalloc
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - xmlSchemaPErrMemory
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFinishMemberTypeDefinitionsProperty(xmlSchemaParserCtxtPtr
      pctxt,\n\t\t\t\t\t     xmlSchemaTypePtr type)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17519,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:17520,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 37
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17529
      start: 17478
    functionDepth: 1
    functionLinenumber: 17478
    functionLinenumberEnd: 17529
    functionName: xmlSchemaTypeFixupOptimFacets
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetPrimitiveType
    - WXS_IS_ATOMIC
    linkageType: ''
    returnType: void
    signature: void xmlSchemaTypeFixupOptimFacets(xmlSchemaTypePtr type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17539,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17542,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17594
      start: 17531
    functionDepth: 1
    functionLinenumber: 17531
    functionLinenumberEnd: 17594
    functionName: xmlSchemaTypeFixupWhitespace
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_LIST
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: int xmlSchemaTypeFixupWhitespace(xmlSchemaTypePtr type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17602,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17606,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17614,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17618,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17626,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17635,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:17639,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17640,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:17647,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:17649,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:17655,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17665
      start: 17596
    functionDepth: 1
    functionLinenumber: 17596
    functionLinenumberEnd: 17665
    functionName: xmlSchemaFixupSimpleTypeStageOne
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - WXS_IS_TYPE_NOT_FIXED_1
    - WXS_IS_LIST
    - xmlSchemaFixupSimpleTypeStageOne
    - PERROR_INT
    - WXS_IS_ATOMIC
    - WXS_IS_UNION
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFixupSimpleTypeStageOne(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \ xmlSchemaTypePtr type)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17679,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17686,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17690,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17691,1
    - Dst: xmlSchemaFinishMemberTypeDefinitionsProperty
      Src: /src/libxml2/xmlschemas.c:17699,1
    - Dst: xmlSchemaCheckSTPropsCorrect
      Src: /src/libxml2/xmlschemas.c:17711,1
    - Dst: xmlSchemaCheckCOSSTRestricts
      Src: /src/libxml2/xmlschemas.c:17717,1
    - Dst: xmlSchemaCheckFacetValues
      Src: /src/libxml2/xmlschemas.c:17734,1
    - Dst: xmlSchemaDeriveAndValidateFacets
      Src: /src/libxml2/xmlschemas.c:17738,1
    - Dst: xmlSchemaTypeFixupWhitespace
      Src: /src/libxml2/xmlschemas.c:17744,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17755
      start: 17670
    functionDepth: 9
    functionLinenumber: 17670
    functionLinenumberEnd: 17755
    functionName: xmlSchemaFixupSimpleTypeStageTwo
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckFacetValues
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaCheckCOSSTRestricts
    - xmlSchemaTypeFixup
    - xmlSchemaDeriveAndValidateFacets
    - PERROR_INT
    - xmlSchemaTypeFixupWhitespace
    - xmlSchemaCheckSTPropsCorrect
    - xmlSchemaFinishMemberTypeDefinitionsProperty
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFixupSimpleTypeStageTwo(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      xmlSchemaTypePtr type)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17764,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:17768,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17775,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17776,1
    - Dst: xmlSchemaCheckSRCCT
      Src: /src/libxml2/xmlschemas.c:17787,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17796,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17798,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:17836,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:17837,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17838,1
    - Dst: xmlSchemaAddType
      Src: /src/libxml2/xmlschemas.c:17842,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:17864,1
    - Dst: xmlSchemaTypeFixup
      Src: /src/libxml2/xmlschemas.c:17865,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:17870,1
    - Dst: xmlSchemaFixupSimpleTypeStageTwo
      Src: /src/libxml2/xmlschemas.c:17872,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17875,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:17877,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17897,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:17918,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:17972,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:17980,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:18006,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18051,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18052,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18053,1
    - Dst: WXS_TYPE_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18071,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18072,1
    - Dst: WXS_TYPE_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18073,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18097,1
    - Dst: xmlSchemaAddModelGroup
      Src: /src/libxml2/xmlschemas.c:18105,1
    - Dst: WXS_TYPE_CONTENTTYPE
      Src: /src/libxml2/xmlschemas.c:18109,1
    - Dst: xmlSchemaAddParticle
      Src: /src/libxml2/xmlschemas.c:18117,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 130
    argCount: 2
    argNames:
    - pctxt
    - type
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18156
      start: 17757
    functionDepth: 10
    functionLinenumber: 17757
    functionLinenumberEnd: 18156
    functionName: xmlSchemaFixupComplexType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_IS_SIMPLE
    - WXS_IS_COMPLEX
    - WXS_TYPE_PARTICLE
    - WXS_IS_TYPE_NOT_FIXED
    - xmlSchemaAddType
    - xmlSchemaFixupSimpleTypeStageTwo
    - xmlSchemaAddParticle
    - xmlSchemaTypeFixup
    - xmlSchemaFixupSimpleTypeStageOne
    - WXS_IS_RESTRICTION
    - WXS_TYPE_CONTENTTYPE
    - PERROR_INT
    - snprintf
    - xmlSchemaCheckSRCCT
    - WXS_TYPE_PARTICLE_TERM
    - WXS_IS_EXTENSION
    - xmlDictLookup
    - xmlSchemaAddModelGroup
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFixupComplexType(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \ xmlSchemaTypePtr type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:18204,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:18208,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - type
    - actxt
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaAbstractCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18215
      start: 18197
    functionDepth: 1
    functionLinenumber: 18197
    functionLinenumberEnd: 18215
    functionName: xmlSchemaTypeFixup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 9
    functionsReached:
    - WXS_IS_TYPE_NOT_FIXED
    - AERROR_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaTypeFixup(xmlSchemaTypePtr type,\n                   xmlSchemaAbstractCtxtPtr
      actxt)"
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18279,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:18290,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:18301,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:18313,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18327,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18329,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18334,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/xmlschemas.c:18342,1
    - Dst: xmlSchemaValidatePredefinedType
      Src: /src/libxml2/xmlschemas.c:18362,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:18363,1
    - Dst: xmlSchemaValidatePredefinedType
      Src: /src/libxml2/xmlschemas.c:18366,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:18367,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18374,1
    - Dst: xmlSchemaFacetTypeToString
      Src: /src/libxml2/xmlschemas.c:18387,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18397,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18399,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:18401,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:18420,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:18424,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 111
    argCount: 4
    argNames:
    - facet
    - typeDecl
    - pctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlSchemaFacet*
    - xmlSchemaType*
    - xmlSchemaParserCtxt*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18426
      start: 18227
    functionDepth: 12
    functionLinenumber: 18227
    functionLinenumberEnd: 18426
    functionName: xmlSchemaCheckFacet
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaNewParserCtxt
    - xmlStrEqual
    - xmlSchemaFreeParserCtxt
    - FREE_AND_NULL
    - xmlSchemaFacetTypeToString
    - xmlRegexpCompile
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaValidatePredefinedType
    - PERROR_INT
    - xmlSchemaFormatQName
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckFacet(xmlSchemaFacet *facet,\n                    xmlSchemaType
      *typeDecl,\n                    xmlSchemaParserCtxt *pctxt,\n\t\t    const xmlChar
      * name ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCreateVCtxtOnPCtxt
      Src: /src/libxml2/xmlschemas.c:18452,1
    - Dst: xmlSchemaCheckFacet
      Src: /src/libxml2/xmlschemas.c:18457,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - typeDecl
    - pctxt
    argTypes:
    - xmlSchemaTypePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18468
      start: 18434
    functionDepth: 13
    functionLinenumber: 18434
    functionLinenumberEnd: 18468
    functionName: xmlSchemaCheckFacetValues
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaCheckFacet
    - xmlSchemaCreateVCtxtOnPCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckFacetValues(xmlSchemaTypePtr typeDecl,\n\t\t\t  xmlSchemaParserCtxtPtr
      pctxt)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18504,1
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18514,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 2
    argNames:
    - groupDef
    - particle
    argTypes:
    - xmlSchemaModelGroupDefPtr
    - xmlSchemaTreeItemPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18523
      start: 18479
    functionDepth: 1
    functionLinenumber: 18479
    functionLinenumberEnd: 18523
    functionName: xmlSchemaGetCircModelGrDefRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaGetCircModelGrDefRef
    linkageType: ''
    returnType: xmlSchemaTreeItemPtr
    signature: "xmlSchemaTreeItemPtr xmlSchemaGetCircModelGrDefRef(xmlSchemaModelGroupDefPtr
      groupDef,\n\t\t\t      xmlSchemaTreeItemPtr particle)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetCircModelGrDefRef
      Src: /src/libxml2/xmlschemas.c:18548,1
    - Dst: xmlSchemaPCustomErr
      Src: /src/libxml2/xmlschemas.c:18558,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:18560,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18562,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18564,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - item
    - ctxt
    argTypes:
    - xmlSchemaModelGroupDefPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18572
      start: 18531
    functionDepth: 9
    functionLinenumber: 18531
    functionLinenumberEnd: 18572
    functionName: xmlSchemaCheckGroupDefCircular
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaPCustomErr
    - FREE_AND_NULL
    - WXS_ITEM_NODE
    - xmlSchemaGetCircModelGrDefRef
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCheckGroupDefCircular(xmlSchemaModelGroupDefPtr item,\n\t\t\t
      \      xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: WXS_MODELGROUP_PARTICLE
      Src: /src/libxml2/xmlschemas.c:18591,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18594,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18595,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:18601,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18601,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18605,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18612,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:18613,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:18613,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - mg
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaModelGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18617
      start: 18586
    functionDepth: 1
    functionLinenumber: 18586
    functionLinenumberEnd: 18617
    functionName: xmlSchemaModelGroupToModelGroupDefFixup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_MODELGROUP_PARTICLE
    - WXS_PARTICLE_TERM
    - WXS_MODELGROUPDEF_MODEL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaModelGroupToModelGroupDefFixup(\n    xmlSchemaParserCtxtPtr
      ctxt ATTRIBUTE_UNUSED,\n    xmlSchemaModelGroupPtr mg)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckAttrGroupCircularRecur
      Src: /src/libxml2/xmlschemas.c:18657,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 2
    argNames:
    - ctxtGr
    - list
    argTypes:
    - xmlSchemaAttributeGroupPtr
    - xmlSchemaItemListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18667
      start: 18627
    functionDepth: 1
    functionLinenumber: 18627
    functionLinenumberEnd: 18667
    functionName: xmlSchemaCheckAttrGroupCircularRecur
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckAttrGroupCircularRecur
    linkageType: ''
    returnType: xmlSchemaQNameRefPtr
    signature: "xmlSchemaQNameRefPtr xmlSchemaCheckAttrGroupCircularRecur(xmlSchemaAttributeGroupPtr
      ctxtGr,\n\t\t\t\t     xmlSchemaItemListPtr list)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckAttrGroupCircularRecur
      Src: /src/libxml2/xmlschemas.c:18700,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:18711,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18712,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - attrGr
    - ctxt
    argTypes:
    - xmlSchemaAttributeGroupPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18723
      start: 18675
    functionDepth: 5
    functionLinenumber: 18675
    functionLinenumberEnd: 18723
    functionName: xmlSchemaCheckAttrGroupCircular
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCheckAttrGroupCircularRecur
    - xmlSchemaGetComponentQName
    - FREE_AND_NULL
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckAttrGroupCircular(xmlSchemaAttributeGroupPtr attrGr,\n\t\t\t\txmlSchemaParserCtxtPtr
      ctxt)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:18764,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18771,1
    - Dst: xmlSchemaItemListAddSize
      Src: /src/libxml2/xmlschemas.c:18781,1
    - Dst: WXS_ATTR_GROUP_CAST
      Src: /src/libxml2/xmlschemas.c:18789,1
    - Dst: xmlSchemaAttributeGroupExpandRefs
      Src: /src/libxml2/xmlschemas.c:18796,1
    - Dst: xmlSchemaAddWildcard
      Src: /src/libxml2/xmlschemas.c:18818,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:18820,1
    - Dst: xmlSchemaCloneWildcardNsConstraints
      Src: /src/libxml2/xmlschemas.c:18823,1
    - Dst: xmlSchemaIntersectWildcards
      Src: /src/libxml2/xmlschemas.c:18831,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18842,1
    - Dst: xmlSchemaItemListInsert
      Src: /src/libxml2/xmlschemas.c:18854,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18873,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18874,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:18884,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18887,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18891,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 75
    argCount: 5
    argNames:
    - pctxt
    - item
    - completeWild
    - list
    - prohibs
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlSchemaWildcardPtr*
    - xmlSchemaItemListPtr
    - xmlSchemaItemListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18899
      start: 18743
    functionDepth: 7
    functionLinenumber: 18743
    functionLinenumberEnd: 18899
    functionName: xmlSchemaExpandAttributeGroupRefs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlSchemaAttributeGroupExpandRefs
    - xmlSchemaAddWildcard
    - xmlSchemaIntersectWildcards
    - FREE_AND_NULL
    - xmlSchemaItemListInsert
    - xmlSchemaItemListAddSize
    - WXS_ITEM_NODE
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaCloneWildcardNsConstraints
    - PERROR_INT
    - WXS_ATTR_GROUP_CAST
    - xmlSchemaFormatQName
    - xmlSchemaItemListRemove
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaExpandAttributeGroupRefs(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \ xmlSchemaBasicItemPtr item,\n\t\t\t\t  xmlSchemaWildcardPtr *completeWild,\n\t\t\t\t
      \ xmlSchemaItemListPtr list,\n\t\t\t\t  xmlSchemaItemListPtr prohibs)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaExpandAttributeGroupRefs
      Src: /src/libxml2/xmlschemas.c:18921,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - pctxt
    - attrGr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaAttributeGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18925
      start: 18912
    functionDepth: 8
    functionLinenumber: 18912
    functionLinenumberEnd: 18925
    functionName: xmlSchemaAttributeGroupExpandRefs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaExpandAttributeGroupRefs
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAttributeGroupExpandRefs(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \ xmlSchemaAttributeGroupPtr attrGr)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18966,1
    - Dst: WXS_ATTRUSE_DECL_NAME
      Src: /src/libxml2/xmlschemas.c:18967,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18968,1
    - Dst: WXS_ATTRUSE_DECL_TNS
      Src: /src/libxml2/xmlschemas.c:18969,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:18979,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:18983,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:18996,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:18997,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:18998,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:19010,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19012,1
    - Dst: xmlSchemaItemListRemove
      Src: /src/libxml2/xmlschemas.c:19013,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 34
    argCount: 2
    argNames:
    - pctxt
    - attrGr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaAttributeGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19023
      start: 18936
    functionDepth: 6
    functionLinenumber: 18936
    functionLinenumberEnd: 19023
    functionName: xmlSchemaCheckAGPropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ATTRUSE_TYPEDEF
    - xmlSchemaGetComponentDesignation
    - FREE_AND_NULL
    - WXS_ATTRUSE_DECL_NAME
    - xmlSchemaIsDerivedFromBuiltInType
    - xmlSchemaItemListRemove
    - WXS_ATTRUSE_DECL_TNS
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckAGPropsCorrect(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \ xmlSchemaAttributeGroupPtr attrGr)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetAttributeGroup
      Src: /src/libxml2/xmlschemas.c:19039,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:19043,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ref
    - ctxt
    argTypes:
    - xmlSchemaQNameRefPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19052
      start: 19031
    functionDepth: 8
    functionLinenumber: 19031
    functionLinenumberEnd: 19052
    functionName: xmlSchemaResolveAttrGroupReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaPResCompAttrErr
    - xmlSchemaGetAttributeGroup
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveAttrGroupReferences(xmlSchemaQNameRefPtr ref,\n\t\t\t\t
      \   xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19077,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19088,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19089,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:19107,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19108,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:19113,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - pctxt
    - attr
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19127
      start: 19064
    functionDepth: 2
    functionLinenumber: 19064
    functionLinenumberEnd: 19127
    functionName: xmlSchemaCheckAttrPropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaIsDerivedFromBuiltInType
    - PERROR_INT
    - WXS_ATTR_TYPEDEF
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckAttrPropsCorrect(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \      xmlSchemaAttributePtr attr)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19135,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19137,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19140,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19142,1
    - Dst: xmlSchemaCheckSubstGroupCircular
      Src: /src/libxml2/xmlschemas.c:19143,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19144,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - elemDecl
    - ancestor
    argTypes:
    - xmlSchemaElementPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19148
      start: 19129
    functionDepth: 1
    functionLinenumber: 19129
    functionLinenumberEnd: 19148
    functionName: xmlSchemaCheckSubstGroupCircular
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckSubstGroupCircular
    - WXS_SUBST_HEAD
    linkageType: ''
    returnType: xmlSchemaElementPtr
    signature: "xmlSchemaElementPtr xmlSchemaCheckSubstGroupCircular(xmlSchemaElementPtr
      elemDecl,\n\t\t\t\t xmlSchemaElementPtr ancestor)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19164,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19171,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19172,1
    - Dst: xmlSchemaCheckElementDeclComponent
      Src: /src/libxml2/xmlschemas.c:19174,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19195,1
    - Dst: xmlSchemaCheckSubstGroupCircular
      Src: /src/libxml2/xmlschemas.c:19196,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19207,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19208,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19210,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19211,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19229,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19229,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:19237,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19238,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19249,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19250,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:19251,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19251,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19252,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19253,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19254,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:19266,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19267,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:19268,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:19269,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19270,1
    - Dst: xmlSchemaPErr
      Src: /src/libxml2/xmlschemas.c:19291,1
    - Dst: xmlHasProp
      Src: /src/libxml2/xmlschemas.c:19300,1
    - Dst: xmlHasProp
      Src: /src/libxml2/xmlschemas.c:19303,1
    - Dst: xmlSchemaParseCheckCOSValidDefault
      Src: /src/libxml2/xmlschemas.c:19306,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:19310,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 55
    argCount: 2
    argNames:
    - pctxt
    - elemDecl
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19320
      start: 19159
    functionDepth: 6
    functionLinenumber: 19159
    functionLinenumberEnd: 19320
    functionName: xmlSchemaCheckElemPropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_IS_SIMPLE
    - WXS_IS_COMPLEX
    - FREE_AND_NULL
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_ELEM_TYPEDEF
    - xmlSchemaCheckCOSDerivedOK
    - xmlSchemaCheckElementDeclComponent
    - xmlSchemaParseCheckCOSValidDefault
    - xmlSchemaPErr
    - xmlSchemaCheckSubstGroupCircular
    - WXS_SUBST_HEAD
    - xmlSchemaIsDerivedFromBuiltInType
    - PERROR_INT
    - xmlSchemaGetComponentQName
    - xmlHasProp
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckElemPropsCorrect(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      \      xmlSchemaElementPtr elemDecl)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19342,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19355,1
    - Dst: WXS_SUBST_HEAD
      Src: /src/libxml2/xmlschemas.c:19356,1
    - Dst: WXS_IS_EXTENSION
      Src: /src/libxml2/xmlschemas.c:19392,1
    - Dst: WXS_IS_RESTRICTION
      Src: /src/libxml2/xmlschemas.c:19396,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:19408,1
    - Dst: xmlSchemaAddElementSubstitutionMember
      Src: /src/libxml2/xmlschemas.c:19431,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 47
    argCount: 2
    argNames:
    - ctxt
    - elemDecl
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19436
      start: 19338
    functionDepth: 8
    functionLinenumber: 19338
    functionLinenumberEnd: 19436
    functionName: xmlSchemaCheckElemSubstGroup
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_IS_COMPLEX
    - WXS_IS_RESTRICTION
    - WXS_SUBST_HEAD
    - WXS_IS_EXTENSION
    - xmlSchemaAddElementSubstitutionMember
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCheckElemSubstGroup(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \    xmlSchemaElementPtr elemDecl)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19466,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19474,1
    - Dst: xmlSchemaCheckElementDeclConsistent
      Src: /src/libxml2/xmlschemas.c:19479,1
    - Dst: WXS_ELEM_CAST
      Src: /src/libxml2/xmlschemas.c:19485,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19485,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19496,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19496,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19497,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19498,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19498,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19499,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:19510,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:19512,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19513,1
    - Dst: WXS_PARTICLE_TERM_AS_ELEM
      Src: /src/libxml2/xmlschemas.c:19514,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19515,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19516,1
    - Dst: xmlSchemaInternalErr2
      Src: /src/libxml2/xmlschemas.c:19544,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:19547,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19547,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 6
    argNames:
    - pctxt
    - ctxtComponent
    - ctxtParticle
    - searchParticle
    - curParticle
    - search
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBasicItemPtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    - xmlSchemaParticlePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19555
      start: 19451
    functionDepth: 8
    functionLinenumber: 19451
    functionLinenumberEnd: 19555
    functionName: xmlSchemaCheckElementDeclConsistent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckElementDeclConsistent
    - xmlStrEqual
    - xmlSchemaGetComponentDesignation
    - FREE_AND_NULL
    - WXS_ITEM_TYPE_NAME
    - xmlSchemaInternalErr2
    - WXS_ELEM_CAST
    - WXS_PARTICLE_TERM
    - WXS_PARTICLE_TERM_AS_ELEM
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckElementDeclConsistent(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t\t
      \   xmlSchemaBasicItemPtr ctxtComponent,\n\t\t\t\t    xmlSchemaParticlePtr ctxtParticle,\n\t\t\t\t
      \   xmlSchemaParticlePtr searchParticle,\n\t\t\t\t    xmlSchemaParticlePtr curParticle,\n\t\t\t\t
      \   int search)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckElemPropsCorrect
      Src: /src/libxml2/xmlschemas.c:19576,1
    - Dst: xmlSchemaCheckElemSubstGroup
      Src: /src/libxml2/xmlschemas.c:19580,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - elemDecl
    - ctxt
    argTypes:
    - xmlSchemaElementPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19582
      start: 19567
    functionDepth: 9
    functionLinenumber: 19567
    functionLinenumberEnd: 19582
    functionName: xmlSchemaCheckElementDeclComponent
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaCheckElemSubstGroup
    - xmlSchemaCheckElemPropsCorrect
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaCheckElementDeclComponent(xmlSchemaElementPtr elemDecl,\n\t\t\t\t
      \  xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: WXS_MODELGROUP_PARTICLE
      Src: /src/libxml2/xmlschemas.c:19596,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19604,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19605,1
    - Dst: WXS_PARTICLE_TERM
      Src: /src/libxml2/xmlschemas.c:19610,1
    - Dst: xmlSchemaGetNamedComponent
      Src: /src/libxml2/xmlschemas.c:19617,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:19620,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:19621,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:19627,1
    - Dst: WXS_MODELGROUPDEF_MODEL
      Src: /src/libxml2/xmlschemas.c:19637,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - mg
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaModelGroupPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19671
      start: 19591
    functionDepth: 8
    functionLinenumber: 19591
    functionLinenumberEnd: 19671
    functionName: xmlSchemaResolveModelGroupParticleReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetNamedComponent
    - xmlSchemaPResCompAttrErr
    - WXS_ITEM_NODE
    - WXS_MODELGROUP_PARTICLE
    - WXS_PARTICLE_TERM
    - WXS_MODELGROUPDEF_MODEL
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaResolveModelGroupParticleReferences(\n    xmlSchemaParserCtxtPtr
      ctxt,\n    xmlSchemaModelGroupPtr mg)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19682,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:19682,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19683,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:19683,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:19684,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:19685,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:19702,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:19703,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/xmlschemas.c:19704,1
    - Dst: xmlSchemaValueGetAsString
      Src: /src/libxml2/xmlschemas.c:19705,1
    - Dst: xmlSchemaCompareValuesWhtsp
      Src: /src/libxml2/xmlschemas.c:19708,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19719,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19721,1
    - Dst: xmlSchemaValueGetNext
      Src: /src/libxml2/xmlschemas.c:19724,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 2
    argNames:
    - x
    - y
    argTypes:
    - xmlSchemaValPtr
    - xmlSchemaValPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19730
      start: 19673
    functionDepth: 7
    functionLinenumber: 19673
    functionLinenumberEnd: 19730
    functionName: xmlSchemaAreValuesEqual
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaValueGetNext
    - xmlStrEqual
    - xmlSchemaGetPrimitiveType
    - WXS_IS_ANY_SIMPLE_TYPE
    - xmlSchemaValueGetAsString
    - xmlSchemaCompareValuesWhtsp
    - xmlSchemaGetValType
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAreValuesEqual(xmlSchemaValPtr x,\n\t\t       xmlSchemaValPtr
      y)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:19755,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ause
    - ctxt
    argTypes:
    - xmlSchemaAttributeUsePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19767
      start: 19738
    functionDepth: 2
    functionLinenumber: 19738
    functionLinenumberEnd: 19767
    functionName: xmlSchemaResolveAttrUseReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetAttributeDecl
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveAttrUseReferences(xmlSchemaAttributeUsePtr ause,\n\t\t\t\t
      \ xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19782,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19783,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19794,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19795,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19810,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:19819,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19820,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:19831,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:19832,1
    - Dst: PERROR_INT2
      Src: /src/libxml2/xmlschemas.c:19837,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19856,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19857,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:19859,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19860,1
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:19868,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - use
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaAttributeUsePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19873
      start: 19776
    functionDepth: 8
    functionLinenumber: 19776
    functionLinenumberEnd: 19873
    functionName: xmlSchemaCheckAttrUsePropsCorrect
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaAreValuesEqual
    - WXS_ATTRUSE_TYPEDEF
    - PERROR_INT2
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaIsDerivedFromBuiltInType
    - WXS_ATTRUSE_DECL
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckAttrUsePropsCorrect(xmlSchemaParserCtxtPtr ctxt,\n\t\t\t
      \    xmlSchemaAttributeUsePtr use)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:19902,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:19904,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:19918,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - item
    - ctxt
    argTypes:
    - xmlSchemaAttributePtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19921
      start: 19884
    functionDepth: 8
    functionLinenumber: 19884
    functionLinenumberEnd: 19921
    functionName: xmlSchemaResolveAttrTypeReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetType
    - WXS_IS_SIMPLE
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveAttrTypeReferences(xmlSchemaAttributePtr item,\n\t\t\t\t
      \  xmlSchemaParserCtxtPtr ctxt)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetIDC
      Src: /src/libxml2/xmlschemas.c:19939,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:19982,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:19985,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - idc
    - pctxt
    argTypes:
    - xmlSchemaIDCPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19991
      start: 19931
    functionDepth: 4
    functionLinenumber: 19931
    functionLinenumberEnd: 19991
    functionName: xmlSchemaResolveIDCKeyReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetIDC
    - xmlSchemaFormatQName
    - FREE_AND_NULL
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveIDCKeyReferences(xmlSchemaIDCPtr idc,\n\t\t\t
      \ xmlSchemaParserCtxtPtr pctxt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:19997,1
    - Dst: xmlSchemaPResCompAttrErr
      Src: /src/libxml2/xmlschemas.c:20000,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - prohib
    - pctxt
    argTypes:
    - xmlSchemaAttributeUseProhibPtr
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20008
      start: 19993
    functionDepth: 8
    functionLinenumber: 19993
    functionLinenumberEnd: 20008
    functionName: xmlSchemaResolveAttrUseProhibReferences
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetAttributeDecl
    - xmlSchemaPResCompAttrErr
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaResolveAttrUseProhibReferences(xmlSchemaAttributeUseProhibPtr
      prohib,\n\t\t\t\t       xmlSchemaParserCtxtPtr pctxt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20012
      start: 20010
    functionDepth: 0
    functionLinenumber: 20010
    functionLinenumberEnd: 20012
    functionName: WXS_REDEFINED_TYPE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_REDEFINED_TYPE(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20015
      start: 20013
    functionDepth: 0
    functionLinenumber: 20013
    functionLinenumberEnd: 20015
    functionName: WXS_REDEFINED_MODEL_GROUP_DEF
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_REDEFINED_MODEL_GROUP_DEF(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20018
      start: 20016
    functionDepth: 0
    functionLinenumber: 20016
    functionLinenumberEnd: 20018
    functionName: WXS_REDEFINED_ATTR_GROUP
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_REDEFINED_ATTR_GROUP(c)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20023,1
    - Dst: xmlSchemaFindRedefCompInGraph
      Src: /src/libxml2/xmlschemas.c:20045,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20068,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20070,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:20080,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:20081,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20083,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20162,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20171,1
    - Dst: WXS_ITEM_NODE
      Src: /src/libxml2/xmlschemas.c:20173,1
    - Dst: xmlSchemaGetComponentDesignation
      Src: /src/libxml2/xmlschemas.c:20181,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20183,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 67
    argCount: 1
    argNames:
    - pctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20192
      start: 20019
    functionDepth: 6
    functionLinenumber: 20019
    functionLinenumberEnd: 20192
    functionName: xmlSchemaCheckSRCRedefineFirst
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetComponentDesignation
    - WXS_CONSTRUCTOR
    - FREE_AND_NULL
    - WXS_ITEM_TYPE_NAME
    - WXS_ITEM_NODE
    - PERROR_INT
    - xmlSchemaFindRedefCompInGraph
    - xmlSchemaFormatQName
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCheckSRCRedefineFirst(xmlSchemaParserCtxtPtr pctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20198,1
    - Dst: xmlSchemaCheckDerivationOKRestriction2to4
      Src: /src/libxml2/xmlschemas.c:20251,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 1
    argNames:
    - pctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20267
      start: 20194
    functionDepth: 9
    functionLinenumber: 20194
    functionLinenumberEnd: 20267
    functionName: xmlSchemaCheckSRCRedefineSecond
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaCheckDerivationOKRestriction2to4
    - WXS_CONSTRUCTOR
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCheckSRCRedefineSecond(xmlSchemaParserCtxtPtr pctxt)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: WXS_REDEFINED_TYPE
      Src: /src/libxml2/xmlschemas.c:20310,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20313,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20317,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20321,1
    - Dst: WXS_REDEFINED_MODEL_GROUP_DEF
      Src: /src/libxml2/xmlschemas.c:20324,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20327,1
    - Dst: WXS_REDEFINED_ATTR_GROUP
      Src: /src/libxml2/xmlschemas.c:20330,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20333,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20339,1
    - Dst: WXS_GET_GLOBAL_HASH
      Src: /src/libxml2/xmlschemas.c:20343,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20346,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/xmlschemas.c:20351,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:20353,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:20358,1
    - Dst: WXS_ITEM_TYPE_NAME
      Src: /src/libxml2/xmlschemas.c:20367,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:20368,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:20369,1
    - Dst: xmlSchemaAddComponents
      Src: /src/libxml2/xmlschemas.c:20380,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 67
    argCount: 2
    argNames:
    - pctxt
    - bucket
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBucketPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20387
      start: 20270
    functionDepth: 6
    functionLinenumber: 20270
    functionLinenumberEnd: 20387
    functionName: xmlSchemaAddComponents
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_REDEFINED_ATTR_GROUP
    - xmlSchemaAddComponents
    - WXS_REDEFINED_MODEL_GROUP_DEF
    - FREE_AND_NULL
    - WXS_ITEM_TYPE_NAME
    - xmlHashAddEntry
    - WXS_GET_GLOBAL_HASH
    - xmlHashCreateDict
    - WXS_REDEFINED_TYPE
    - PERROR_INT
    - xmlSchemaGetComponentQName
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAddComponents(xmlSchemaParserCtxtPtr pctxt,\n\t\t       xmlSchemaBucketPtr
      bucket)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - slot
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20285
      start: 20280
    functionDepth: 0
    functionLinenumber: 20280
    functionLinenumberEnd: 20285
    functionName: WXS_GET_GLOBAL_HASH
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: WXS_GET_GLOBAL_HASH(c, slot)
  - BBCount: 75
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCheckSRCRedefineFirst
      Src: /src/libxml2/xmlschemas.c:20426,1
    - Dst: xmlSchemaAddComponents
      Src: /src/libxml2/xmlschemas.c:20431,1
    - Dst: xmlSchemaResolveElementReferences
      Src: /src/libxml2/xmlschemas.c:20466,1
    - Dst: xmlSchemaResolveTypeReferences
      Src: /src/libxml2/xmlschemas.c:20472,1
    - Dst: xmlSchemaResolveAttrTypeReferences
      Src: /src/libxml2/xmlschemas.c:20477,1
    - Dst: xmlSchemaResolveAttrUseReferences
      Src: /src/libxml2/xmlschemas.c:20482,1
    - Dst: xmlSchemaResolveModelGroupParticleReferences
      Src: /src/libxml2/xmlschemas.c:20498,1
    - Dst: xmlSchemaResolveIDCKeyReferences
      Src: /src/libxml2/xmlschemas.c:20505,1
    - Dst: xmlSchemaResolveAttrUseProhibReferences
      Src: /src/libxml2/xmlschemas.c:20514,1
    - Dst: xmlSchemaCheckTypeDefCircular
      Src: /src/libxml2/xmlschemas.c:20541,1
    - Dst: xmlSchemaCheckGroupDefCircular
      Src: /src/libxml2/xmlschemas.c:20548,1
    - Dst: xmlSchemaCheckAttrGroupCircular
      Src: /src/libxml2/xmlschemas.c:20555,1
    - Dst: xmlSchemaModelGroupToModelGroupDefFixup
      Src: /src/libxml2/xmlschemas.c:20580,1
    - Dst: WXS_ATTR_GROUP_EXPANDED
      Src: /src/libxml2/xmlschemas.c:20596,1
    - Dst: WXS_ATTR_GROUP_HAS_REFS
      Src: /src/libxml2/xmlschemas.c:20597,1
    - Dst: WXS_IS_TYPE_NOT_FIXED_1
      Src: /src/libxml2/xmlschemas.c:20619,1
    - Dst: xmlSchemaFixupSimpleTypeStageOne
      Src: /src/libxml2/xmlschemas.c:20620,1
    - Dst: xmlSchemaCheckUnionTypeDefCircular
      Src: /src/libxml2/xmlschemas.c:20640,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:20659,1
    - Dst: xmlSchemaCheckAttrPropsCorrect
      Src: /src/libxml2/xmlschemas.c:20680,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20733,1
    - Dst: xmlSchemaCheckSRCRedefineSecond
      Src: /src/libxml2/xmlschemas.c:20734,1
    - Dst: WXS_IS_TYPE_NOT_FIXED
      Src: /src/libxml2/xmlschemas.c:20745,1
    - Dst: xmlSchemaCheckElementDeclComponent
      Src: /src/libxml2/xmlschemas.c:20775,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20785,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:20786,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20786,1
    - Dst: WXS_TYPE_IS_LOCAL
      Src: /src/libxml2/xmlschemas.c:20787,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:20787,1
    - Dst: xmlSchemaBuildContentModel
      Src: /src/libxml2/xmlschemas.c:20812,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:20842,1
    - Dst: xmlSchemaRedefListFree
      Src: /src/libxml2/xmlschemas.c:20846,1
    CyclomaticComplexity: 117
    EdgeCount: 117
    ICount: 294
    argCount: 2
    argNames:
    - pctxt
    - rootBucket
    argTypes:
    - xmlSchemaParserCtxtPtr
    - xmlSchemaBucketPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20850
      start: 20389
    functionDepth: 10
    functionLinenumber: 20389
    functionLinenumberEnd: 20850
    functionName: xmlSchemaFixupComponents
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_IS_TYPE_NOT_FIXED_1
    - xmlSchemaAddComponents
    - WXS_ATTR_GROUP_EXPANDED
    - xmlSchemaResolveIDCKeyReferences
    - xmlSchemaFixupSimpleTypeStageOne
    - xmlSchemaResolveModelGroupParticleReferences
    - WXS_TYPE_IS_LOCAL
    - xmlSchemaModelGroupToModelGroupDefFixup
    - WXS_ATTR_GROUP_HAS_REFS
    - xmlSchemaCheckAttrPropsCorrect
    - xmlSchemaResolveAttrUseReferences
    - xmlSchemaCheckTypeDefCircular
    - xmlSchemaCheckAttrGroupCircular
    - xmlSchemaRedefListFree
    - xmlSchemaResolveTypeReferences
    - xmlSchemaCheckGroupDefCircular
    - xmlSchemaCheckUnionTypeDefCircular
    - WXS_CONSTRUCTOR
    - WXS_IS_TYPE_NOT_FIXED
    - WXS_ELEM_TYPEDEF
    - xmlSchemaResolveElementReferences
    - WXS_IS_COMPLEX
    - xmlSchemaCheckSRCRedefineFirst
    - xmlSchemaResolveAttrUseProhibReferences
    - xmlSchemaResolveAttrTypeReferences
    - xmlSchemaCheckElementDeclComponent
    - xmlHashFree
    - xmlSchemaCheckSRCRedefineSecond
    - xmlSchemaBuildContentModel
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaFixupComponents(xmlSchemaParserCtxtPtr pctxt,\n\t\t\t
      xmlSchemaBucketPtr rootBucket)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaInitTypes
      Src: /src/libxml2/xmlschemas.c:20871,1
    - Dst: xmlSchemaNewSchema
      Src: /src/libxml2/xmlschemas.c:20883,1
    - Dst: xmlSchemaConstructionCtxtCreate
      Src: /src/libxml2/xmlschemas.c:20890,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:20900,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:20911,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:20916,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:20923,1
    - Dst: xmlSchemaFixupComponents
      Src: /src/libxml2/xmlschemas.c:20933,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:20933,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:20943,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:20947,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:20960,1
    - Dst: xmlSchemaConstructionCtxtFree
      Src: /src/libxml2/xmlschemas.c:20964,1
    - Dst: PERROR_INT2
      Src: /src/libxml2/xmlschemas.c:20968,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 75
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20972
      start: 20859
    functionDepth: 20
    functionLinenumber: 20859
    functionLinenumberEnd: 20972
    functionName: xmlSchemaParse
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 5
    functionsReached:
    - xmlSchemaFixupComponents
    - xmlSchemaParseNewDocWithContext
    - xmlSchemaConstructionCtxtCreate
    - xmlSchemaCustomErr
    - xmlSchemaConstructionCtxtFree
    - xmlSchemaInitTypes
    - xmlSchemaAddSchemaDoc
    - WXS_CONSTRUCTOR
    - PERROR_INT2
    - xmlSchemaNewSchema
    - xmlSchemaFree
    linkageType: ''
    returnType: xmlSchema
    signature: 'xmlSchema *

      xmlSchemaParse(xmlSchemaParserCtxt *ctxt)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/xmlschemas.c:20995,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlSchemaParserCtxt*
    - xmlSchemaValidityErrorFunc
    - xmlSchemaValidityWarningFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20996
      start: 20984
    functionDepth: 1
    functionLinenumber: 20984
    functionLinenumberEnd: 20996
    functionName: xmlSchemaSetParserErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 5
    functionsReached:
    - xmlSchemaSetValidErrors
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSetParserErrors(xmlSchemaParserCtxt *ctxt,\n                         xmlSchemaValidityErrorFunc
      err,\n                         xmlSchemaValidityWarningFunc warn, void *ctx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/xmlschemas.c:21015,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - serror
    - ctx
    argTypes:
    - xmlSchemaParserCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21016
      start: 21005
    functionDepth: 1
    functionLinenumber: 21005
    functionLinenumberEnd: 21016
    functionName: xmlSchemaSetParserStructuredErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 6
    functionsReached:
    - xmlSchemaSetValidStructuredErrors
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSetParserStructuredErrors(xmlSchemaParserCtxt *ctxt,\n\t\t\t\t
      \  xmlStructuredErrorFunc serror,\n\t\t\t\t   void *ctx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlSchemaParserCtxt*
    - xmlSchemaValidityErrorFunc*
    - xmlSchemaValidityWarningFunc*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21041
      start: 21027
    functionDepth: 0
    functionLinenumber: 21027
    functionLinenumberEnd: 21041
    functionName: xmlSchemaGetParserErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetParserErrors(xmlSchemaParserCtxt *ctxt,\n\t\t\t xmlSchemaValidityErrorFunc
      * err,\n\t\t\t xmlSchemaValidityWarningFunc * warn, void **ctx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctxt
    - loader
    - data
    argTypes:
    - xmlSchemaParserCtxt*
    - xmlResourceLoader
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21059
      start: 21052
    functionDepth: 0
    functionLinenumber: 21052
    functionLinenumberEnd: 21059
    functionName: xmlSchemaSetResourceLoader
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSetResourceLoader(xmlSchemaParserCtxt *ctxt,\n                           xmlResourceLoader
      loader, void *data)"
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 30
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21100
      start: 21068
    functionDepth: 0
    functionLinenumber: 21068
    functionLinenumberEnd: 21100
    functionName: xmlSchemaFacetTypeToString
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSchemaFacetTypeToString(xmlSchemaTypeType type)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:21127,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:21132,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:21134,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSchemaTypePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21143
      start: 21102
    functionDepth: 1
    functionLinenumber: 21102
    functionLinenumberEnd: 21143
    functionName: xmlSchemaGetWhiteSpaceFacetValue
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - WXS_IS_LIST
    - WXS_IS_ATOMIC
    - WXS_IS_UNION
    linkageType: ''
    returnType: xmlSchemaWhitespaceValueType
    signature: xmlSchemaWhitespaceValueType xmlSchemaGetWhiteSpaceFacetValue(xmlSchemaTypePtr
      type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21184,1
    - Dst: PERROR_INT
      Src: /src/libxml2/xmlschemas.c:21190,1
    - Dst: xmlSchemaBuildAbsoluteURI
      Src: /src/libxml2/xmlschemas.c:21197,1
    - Dst: xmlSchemaAddSchemaDoc
      Src: /src/libxml2/xmlschemas.c:21204,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:21224,1
    - Dst: WXS_CONSTRUCTOR
      Src: /src/libxml2/xmlschemas.c:21225,1
    - Dst: CAN_PARSE_SCHEMA
      Src: /src/libxml2/xmlschemas.c:21230,1
    - Dst: xmlSchemaParseNewDocWithContext
      Src: /src/libxml2/xmlschemas.c:21240,1
    - Dst: xmlSchemaFixupComponents
      Src: /src/libxml2/xmlschemas.c:21255,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 5
    argNames:
    - vctxt
    - schema
    - node
    - nsName
    - location
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21273
      start: 21169
    functionDepth: 20
    functionLinenumber: 21169
    functionLinenumberEnd: 21273
    functionName: xmlSchemaAssembleByLocation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFixupComponents
    - xmlSchemaParseNewDocWithContext
    - WXS_CONSTRUCTOR
    - xmlSchemaAddSchemaDoc
    - VERROR_INT
    - PERROR_INT
    - xmlSchemaBuildAbsoluteURI
    - CAN_PARSE_SCHEMA
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaAssembleByLocation(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \   xmlSchemaPtr schema,\n\t\t\t    xmlNodePtr node,\n\t\t\t    const xmlChar
      *nsName,\n\t\t\t    const xmlChar *location)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - vctxt
    - metaType
    argTypes:
    - xmlSchemaValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21293
      start: 21275
    functionDepth: 0
    functionLinenumber: 21275
    functionLinenumberEnd: 21293
    functionName: xmlSchemaGetMetaAttrInfo
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSchemaAttrInfoPtr
    signature: "xmlSchemaAttrInfoPtr xmlSchemaGetMetaAttrInfo(xmlSchemaValidCtxtPtr
      vctxt,\n\t\t\t int metaType)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:21321,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:21324,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21337,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21340,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21345,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21351,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:21354,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21372,1
    - Dst: xmlSchemaAssembleByLocation
      Src: /src/libxml2/xmlschemas.c:21374,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21377,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21383
      start: 21305
    functionDepth: 21
    functionLinenumber: 21305
    functionLinenumberEnd: 21383
    functionName: xmlSchemaAssembleByXSI
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - IS_BLANK_CH
    - xmlSchemaGetMetaAttrInfo
    - VERROR_INT
    - xmlSchemaAssembleByLocation
    - xmlDictLookup
    linkageType: ''
    returnType: int
    signature: int xmlSchemaAssembleByXSI(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:21399,1
    - Dst: xmlTextReaderLookupNamespace
      Src: /src/libxml2/xmlschemas.c:21416,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21420,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21421,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21431,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:21435,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 2
    argNames:
    - vctxt
    - prefix
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21441
      start: 21385
    functionDepth: 4
    functionLinenumber: 21385
    functionLinenumberEnd: 21441
    functionName: xmlSchemaLookupNamespace
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - VERROR_INT
    - xmlSearchNs
    - xmlTextReaderLookupNamespace
    - xmlDictLookup
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaLookupNamespace(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      const xmlChar *prefix)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:21457,1
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:21461,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:21468,1
    - Dst: xmlSchemaLookupNamespace
      Src: /src/libxml2/xmlschemas.c:21473,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:21475,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21479,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21480,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21484,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21485,1
    - Dst: xmlSchemaGetNotation
      Src: /src/libxml2/xmlschemas.c:21488,1
    - Dst: xmlSchemaNewNOTATIONValue
      Src: /src/libxml2/xmlschemas.c:21490,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21490,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21491,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21497,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21498,1
    - Dst: xmlSchemaGetNotation
      Src: /src/libxml2/xmlschemas.c:21500,1
    - Dst: xmlSchemaNewNOTATIONValue
      Src: /src/libxml2/xmlschemas.c:21502,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:21503,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 6
    argNames:
    - vctxt
    - schema
    - node
    - value
    - val
    - valNeeded
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaPtr
    - xmlNodePtr
    - xmlChar*
    - xmlSchemaValPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21512
      start: 21446
    functionDepth: 5
    functionLinenumber: 21446
    functionLinenumberEnd: 21512
    functionName: xmlSchemaValidateNotation
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlSchemaLookupNamespace
    - xmlFree
    - VERROR_INT
    - xmlSearchNs
    - xmlSchemaNewNOTATIONValue
    - xmlValidateQName
    - xmlSchemaGetNotation
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateNotation(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \ xmlSchemaPtr schema,\n\t\t\t  xmlNodePtr node,\n\t\t\t  const xmlChar *value,\n\t\t\t
      \ xmlSchemaValPtr *val,\n\t\t\t  int valNeeded)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21521,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:21525,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:21537,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21538,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:21541,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21543,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - vctxt
    - lname
    - nsname
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21547
      start: 21514
    functionDepth: 5
    functionLinenumber: 21514
    functionLinenumberEnd: 21547
    functionName: xmlSchemaVAddNodeQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlDictLookup
    - xmlSchemaVErrMemory
    - xmlSchemaItemListAdd
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaVAddNodeQName(xmlSchemaValidCtxtPtr vctxt,\n\t\t       const
      xmlChar* lname,\n\t\t       const xmlChar* nsname)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21571,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21573,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21591
      start: 21563
    functionDepth: 3
    functionLinenumber: 21563
    functionLinenumberEnd: 21591
    functionName: xmlSchemaAugmentIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlSchemaVErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaAugmentIDC(void *payload, void *data,\n                    const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlschemas.c:21606,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - payload
    - data
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21608
      start: 21600
    functionDepth: 2
    functionLinenumber: 21600
    functionLinenumberEnd: 21608
    functionName: xmlSchemaAugmentImportedIDC
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaAugmentImportedIDC(void *payload, void *data,\n                            const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21621,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21624,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:21627,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - idcDef
    argTypes:
    - xmlSchemaIDCPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21630
      start: 21616
    functionDepth: 3
    functionLinenumber: 21616
    functionLinenumberEnd: 21630
    functionName: xmlSchemaIDCNewBinding
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlMalloc
    - xmlSchemaVErrMemory
    - memset
    linkageType: ''
    returnType: xmlSchemaPSVIIDCBindingPtr
    signature: xmlSchemaPSVIIDCBindingPtr xmlSchemaIDCNewBinding(xmlSchemaIDCPtr idcDef)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21652,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21655,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21658,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21660,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - vctxt
    - item
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaPSVIIDCNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21670
      start: 21641
    functionDepth: 3
    functionLinenumber: 21641
    functionLinenumberEnd: 21670
    functionName: xmlSchemaIDCStoreNodeTableItem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlSchemaVErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCStoreNodeTableItem(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \      xmlSchemaPSVIIDCNodePtr item)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21690,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21693,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21696,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21698,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - vctxt
    - key
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaPSVIIDCKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21708
      start: 21679
    functionDepth: 3
    functionLinenumber: 21679
    functionLinenumberEnd: 21708
    functionName: xmlSchemaIDCStoreKey
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlSchemaVErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCStoreKey(xmlSchemaValidCtxtPtr vctxt,\n\t\t     xmlSchemaPSVIIDCKeyPtr
      key)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:21725,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21728,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:21731,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21733,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - bind
    - ntItem
    argTypes:
    - xmlSchemaPSVIIDCBindingPtr
    - xmlSchemaPSVIIDCNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21743
      start: 21717
    functionDepth: 3
    functionLinenumber: 21717
    functionLinenumberEnd: 21743
    functionName: xmlSchemaIDCAppendNodeTableItem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlSchemaVErrMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCAppendNodeTableItem(xmlSchemaPSVIIDCBindingPtr bind,\n\t\t\t\txmlSchemaPSVIIDCNodePtr
      ntItem)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:21763,1
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:21775,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - vctxt
    - matcher
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaIDCMatcherPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21784
      start: 21754
    functionDepth: 4
    functionLinenumber: 21754
    functionLinenumberEnd: 21784
    functionName: xmlSchemaIDCAcquireBinding
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaIDCNewBinding
    linkageType: ''
    returnType: xmlSchemaPSVIIDCBindingPtr
    signature: "xmlSchemaPSVIIDCBindingPtr xmlSchemaIDCAcquireBinding(xmlSchemaValidCtxtPtr
      vctxt,\n\t\t\t  xmlSchemaIDCMatcherPtr matcher)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:21791,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21793,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - vctxt
    - matcher
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaIDCMatcherPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21796
      start: 21786
    functionDepth: 4
    functionLinenumber: 21786
    functionLinenumberEnd: 21796
    functionName: xmlSchemaIDCAcquireTargetList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - xmlSchemaItemListCreate
    linkageType: ''
    returnType: xmlSchemaItemListPtr
    signature: "xmlSchemaItemListPtr xmlSchemaIDCAcquireTargetList(xmlSchemaValidCtxtPtr
      vctxt,\n\t\t\t      xmlSchemaIDCMatcherPtr matcher)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:21807,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSchemaPSVIIDCKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21809
      start: 21803
    functionDepth: 1
    functionLinenumber: 21803
    functionLinenumberEnd: 21809
    functionName: xmlSchemaIDCFreeKey
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFreeValue
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaIDCFreeKey(xmlSchemaPSVIIDCKeyPtr key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21819,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21821,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21822,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - bind
    argTypes:
    - xmlSchemaPSVIIDCBindingPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21823
      start: 21815
    functionDepth: 1
    functionLinenumber: 21815
    functionLinenumberEnd: 21823
    functionName: xmlSchemaIDCFreeBinding
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaItemListFree
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaIDCFreeBinding(xmlSchemaPSVIIDCBindingPtr bind)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaIDCFreeBinding
      Src: /src/libxml2/xmlschemas.c:21838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - bind
    argTypes:
    - xmlSchemaPSVIIDCBindingPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21840
      start: 21830
    functionDepth: 2
    functionLinenumber: 21830
    functionLinenumberEnd: 21840
    functionName: xmlSchemaIDCFreeIDCTable
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaIDCFreeBinding
    linkageType: ''
    returnType: void
    signature: void xmlSchemaIDCFreeIDCTable(xmlSchemaPSVIIDCBindingPtr bind)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21848,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21851
      start: 21842
    functionDepth: 0
    functionLinenumber: 21842
    functionLinenumberEnd: 21851
    functionName: xmlFreeIDCHashEntry
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeIDCHashEntry (void *payload, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21869,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21870,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21884,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21885,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21888,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:21891,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21892,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - matcher
    argTypes:
    - xmlSchemaIDCMatcherPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21895
      start: 21858
    functionDepth: 2
    functionLinenumber: 21858
    functionLinenumberEnd: 21895
    functionName: xmlSchemaIDCFreeMatcherList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaItemListFree
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaIDCFreeMatcherList(xmlSchemaIDCMatcherPtr matcher)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21918,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21934,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:21935,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:21938,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:21942,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - vctxt
    - matcher
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaIDCMatcherPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21955
      start: 21903
    functionDepth: 2
    functionLinenumber: 21903
    functionLinenumberEnd: 21955
    functionName: xmlSchemaIDCReleaseMatcherList
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaItemListFree
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaIDCReleaseMatcherList(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \      xmlSchemaIDCMatcherPtr matcher)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:21987,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:21989,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:21992,1
    - Dst: xmlFreeStreamCtxt
      Src: /src/libxml2/xmlschemas.c:22005,1
    - Dst: xmlPatternGetStreamCtxt
      Src: /src/libxml2/xmlschemas.c:22010,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22013,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - vctxt
    - matcher
    - sel
    - type
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaIDCMatcherPtr
    - xmlSchemaIDCSelectPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22024
      start: 21968
    functionDepth: 3
    functionLinenumber: 21968
    functionLinenumberEnd: 22024
    functionName: xmlSchemaIDCAddStateObject
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - VERROR_INT
    - xmlMalloc
    - memset
    - xmlPatternGetStreamCtxt
    - xmlFreeStreamCtxt
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCAddStateObject(xmlSchemaValidCtxtPtr vctxt,\n\t\t\txmlSchemaIDCMatcherPtr
      matcher,\n\t\t\txmlSchemaIDCSelectPtr sel,\n\t\t\tint type)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPush
      Src: /src/libxml2/xmlschemas.c:22053,1
    - Dst: xmlStreamPushAttr
      Src: /src/libxml2/xmlschemas.c:22056,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22060,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:22076,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22079,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:22082,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22084,1
    - Dst: xmlSchemaIDCAddStateObject
      Src: /src/libxml2/xmlschemas.c:22101,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 57
    argCount: 2
    argNames:
    - vctxt
    - nodeType
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlElementType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22132
      start: 22034
    functionDepth: 4
    functionLinenumber: 22034
    functionLinenumberEnd: 22132
    functionName: xmlSchemaXPathEvaluate
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - xmlRealloc
    - VERROR_INT
    - xmlSchemaIDCAddStateObject
    - xmlStreamPush
    - xmlGrowCapacity
    - xmlStreamPushAttr
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaXPathEvaluate(xmlSchemaValidCtxtPtr vctxt,\n\t\t       xmlElementType
      nodeType)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:22143,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22145,1
    - Dst: xmlSchemaGetCanonValueWhtspExt
      Src: /src/libxml2/xmlschemas.c:22147,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:22148,1
    - Dst: xmlSchemaGetCanonValueHash
      Src: /src/libxml2/xmlschemas.c:22151,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22154,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22156,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22158,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22161,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22163,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22165,1
    - Dst: xmlStrcat
      Src: /src/libxml2/xmlschemas.c:22169,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - vctxt
    - buf
    - seq
    - count
    - for_hash
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar**
    - xmlSchemaPSVIIDCKeyPtr*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22172
      start: 22134
    functionDepth: 7
    functionLinenumber: 22134
    functionLinenumberEnd: 22172
    functionName: xmlSchemaFormatIDCKeySequence_1
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlSchemaGetCanonValueWhtspExt
    - xmlFree
    - xmlSchemaGetCanonValueHash
    - VERROR_INT
    - xmlSchemaGetWhiteSpaceFacetValue
    - xmlStrcat
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatIDCKeySequence_1(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t\txmlChar
      **buf,\n\t\t\t\txmlSchemaPSVIIDCKeyPtr *seq,\n\t\t\t\tint count, int for_hash)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatIDCKeySequence_1
      Src: /src/libxml2/xmlschemas.c:22180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - vctxt
    - buf
    - seq
    - count
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar**
    - xmlSchemaPSVIIDCKeyPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22181
      start: 22174
    functionDepth: 8
    functionLinenumber: 22174
    functionLinenumberEnd: 22181
    functionName: xmlSchemaFormatIDCKeySequence
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFormatIDCKeySequence_1
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaFormatIDCKeySequence(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \     xmlChar **buf,\n\t\t\t      xmlSchemaPSVIIDCKeyPtr *seq,\n\t\t\t      int
      count)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFormatIDCKeySequence_1
      Src: /src/libxml2/xmlschemas.c:22189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - vctxt
    - buf
    - seq
    - count
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar**
    - xmlSchemaPSVIIDCKeyPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22190
      start: 22183
    functionDepth: 8
    functionLinenumber: 22183
    functionLinenumberEnd: 22190
    functionName: xmlSchemaHashKeySequence
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFormatIDCKeySequence_1
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaHashKeySequence(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      xmlChar **buf,\n\t\t\t xmlSchemaPSVIIDCKeyPtr *seq,\n\t\t\t int count)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPop
      Src: /src/libxml2/xmlschemas.c:22208,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22214
      start: 22198
    functionDepth: 1
    functionLinenumber: 22198
    functionLinenumberEnd: 22214
    functionName: xmlSchemaXPathPop
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlStreamPop
    linkageType: ''
    returnType: int
    signature: int xmlSchemaXPathPop(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: xmlStreamPop
      Src: /src/libxml2/xmlschemas.c:22241,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22243,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:22266,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:22267,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22273,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22295,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22296,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:22346,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22349,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:22352,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22355,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22394,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22395,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22405,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22409,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22412,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22420,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22423,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22424,1
    - Dst: xmlSchemaIDCStoreKey
      Src: /src/libxml2/xmlschemas.c:22437,1
    - Dst: xmlSchemaIDCFreeKey
      Src: /src/libxml2/xmlschemas.c:22438,1
    - Dst: xmlSchemaIDCAcquireBinding
      Src: /src/libxml2/xmlschemas.c:22516,1
    - Dst: xmlSchemaIDCAcquireTargetList
      Src: /src/libxml2/xmlschemas.c:22518,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:22533,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:22534,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22535,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22547,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:22574,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22576,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22577,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22578,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22585,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22588,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22589,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22593,1
    - Dst: xmlSchemaIDCStoreNodeTableItem
      Src: /src/libxml2/xmlschemas.c:22599,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22600,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22601,1
    - Dst: xmlSchemaVAddNodeQName
      Src: /src/libxml2/xmlschemas.c:22611,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22614,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22615,1
    - Dst: xmlSchemaIDCAppendNodeTableItem
      Src: /src/libxml2/xmlschemas.c:22629,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:22631,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22637,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22638,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/xmlschemas.c:22646,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:22647,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22648,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22650,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:22654,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:22660,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22661,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22662,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22666,1
    - Dst: xmlSchemaGetIDCDesignation
      Src: /src/libxml2/xmlschemas.c:22683,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:22684,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22691,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22704,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 265
    argCount: 2
    argNames:
    - vctxt
    - depth
    argTypes:
    - xmlSchemaValidCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22723
      start: 22224
    functionDepth: 9
    functionLinenumber: 22224
    functionLinenumberEnd: 22723
    functionName: xmlSchemaXPathProcessHistory
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaIDCFreeKey
    - WXS_HAS_SIMPLE_CONTENT
    - FREE_AND_NULL
    - VERROR_INT
    - xmlHashAddEntry
    - xmlStreamPop
    - xmlHashCreate
    - xmlSchemaAreValuesEqual
    - xmlSchemaVErrMemory
    - xmlRealloc
    - xmlFree
    - xmlSchemaIDCAppendNodeTableItem
    - xmlHashLookup
    - xmlSchemaItemListAdd
    - xmlMalloc
    - xmlSchemaIDCAcquireTargetList
    - xmlGrowCapacity
    - xmlSchemaHashKeySequence
    - xmlSchemaGetIDCDesignation
    - xmlSchemaIDCAcquireBinding
    - xmlSchemaFormatIDCKeySequence
    - xmlSchemaIDCStoreNodeTableItem
    - memset
    - xmlSchemaVAddNodeQName
    - WXS_IS_COMPLEX
    - xmlSchemaIDCStoreKey
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaXPathProcessHistory(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \    int depth)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22746,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22775,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:22795,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:22811,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:22813,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:22816,1
    - Dst: xmlSchemaIDCAddStateObject
      Src: /src/libxml2/xmlschemas.c:22831,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 2
    argNames:
    - vctxt
    - elemDecl
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22838
      start: 22733
    functionDepth: 4
    functionLinenumber: 22733
    functionLinenumberEnd: 22838
    functionName: xmlSchemaIDCRegisterMatchers
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - VERROR_INT
    - xmlMalloc
    - xmlSchemaIDCAddStateObject
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCRegisterMatchers(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \    xmlSchemaElementPtr elemDecl)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:22856,1
    - Dst: xmlSchemaIDCAcquireBinding
      Src: /src/libxml2/xmlschemas.c:22875,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:22879,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:22897,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:22907,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22927,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22941,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22966,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:22980,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:22996,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:23000,1
    - Dst: xmlSchemaIDCAppendNodeTableItem
      Src: /src/libxml2/xmlschemas.c:23019,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 137
    argCount: 2
    argNames:
    - vctxt
    - ielem
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaNodeInfoPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23032
      start: 22840
    functionDepth: 8
    functionLinenumber: 22840
    functionLinenumberEnd: 23032
    functionName: xmlSchemaIDCFillNodeTables
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAreValuesEqual
    - xmlFree
    - xmlSchemaIDCAppendNodeTableItem
    - xmlSchemaIDCAcquireBinding
    - xmlSchemaItemListAdd
    - xmlHashFree
    - xmlSchemaItemListCreate
    - WXS_ILIST_IS_EMPTY
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaIDCFillNodeTables(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \  xmlSchemaNodeInfoPtr ielem)"
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:23065,1
    - Dst: WXS_ILIST_IS_EMPTY
      Src: /src/libxml2/xmlschemas.c:23103,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23126,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23138,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23165,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23176,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:23212,1
    - Dst: xmlSchemaItemListAdd
      Src: /src/libxml2/xmlschemas.c:23216,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23228,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23232,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23235,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23238,1
    - Dst: xmlSchemaIDCNewBinding
      Src: /src/libxml2/xmlschemas.c:23261,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23291,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23294,1
    - Dst: xmlSchemaIDCFreeBinding
      Src: /src/libxml2/xmlschemas.c:23295,1
    - Dst: memcpy
      Src: /src/libxml2/xmlschemas.c:23300,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:23309,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 188
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23330
      start: 23043
    functionDepth: 8
    functionLinenumber: 23043
    functionLinenumberEnd: 23330
    functionName: xmlSchemaBubbleIDCNodeTables
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAreValuesEqual
    - xmlSchemaVErrMemory
    - xmlRealloc
    - xmlSchemaItemListAdd
    - xmlSchemaIDCNewBinding
    - memcpy
    - xmlMalloc
    - xmlGrowCapacity
    - xmlSchemaItemListCreate
    - xmlSchemaIDCFreeBinding
    - WXS_ILIST_IS_EMPTY
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: int
    signature: int xmlSchemaBubbleIDCNodeTables(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/xmlschemas.c:23374,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:23379,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23380,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23382,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:23386,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/xmlschemas.c:23392,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23393,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:23394,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23398,1
    - Dst: xmlSchemaHashKeySequence
      Src: /src/libxml2/xmlschemas.c:23408,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/xmlschemas.c:23409,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23410,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23415,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23438,1
    - Dst: xmlSchemaKeyrefErr
      Src: /src/libxml2/xmlschemas.c:23451,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:23456,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:23458,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23460,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23461,1
    - Dst: xmlSchemaKeyrefErr
      Src: /src/libxml2/xmlschemas.c:23470,1
    - Dst: xmlSchemaFormatIDCKeySequence
      Src: /src/libxml2/xmlschemas.c:23474,1
    - Dst: xmlSchemaGetComponentQName
      Src: /src/libxml2/xmlschemas.c:23476,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23477,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23478,1
    - Dst: xmlHashFree
      Src: /src/libxml2/xmlschemas.c:23482,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 96
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23489
      start: 23337
    functionDepth: 9
    functionLinenumber: 23337
    functionLinenumberEnd: 23489
    functionName: xmlSchemaCheckCVCIDCKeyRef
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaAreValuesEqual
    - xmlSchemaVErrMemory
    - xmlFree
    - xmlSchemaKeyrefErr
    - FREE_AND_NULL
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlHashFree
    - xmlMalloc
    - xmlSchemaFormatIDCKeySequence
    - xmlHashCreate
    - xmlSchemaGetComponentQName
    - xmlSchemaHashKeySequence
    linkageType: ''
    returnType: int
    signature: int xmlSchemaCheckCVCIDCKeyRef(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23509,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23511,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23514,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23516,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23530,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23543,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23545,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:23548,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23553
      start: 23497
    functionDepth: 3
    functionLinenumber: 23497
    functionLinenumberEnd: 23553
    functionName: xmlSchemaGetFreshAttrInfo
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - xmlRealloc
    - VERROR_INT
    - xmlMalloc
    - xmlGrowCapacity
    - memset
    linkageType: ''
    returnType: xmlSchemaAttrInfoPtr
    signature: xmlSchemaAttrInfoPtr xmlSchemaGetFreshAttrInfo(xmlSchemaValidCtxtPtr
      vctxt)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:23567,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23569,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23584,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23585,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23588,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23589,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23592,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23593,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23596,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23597,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:23600,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 8
    argNames:
    - vctxt
    - attrNode
    - nodeLine
    - localName
    - nsName
    - ownedNames
    - value
    - ownedValue
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlNodePtr
    - int
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23610
      start: 23555
    functionDepth: 4
    functionLinenumber: 23555
    functionLinenumberEnd: 23610
    functionName: xmlSchemaValidatorPushAttribute
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - VERROR_INT
    - xmlStrEqual
    - xmlSchemaGetFreshAttrInfo
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidatorPushAttribute(xmlSchemaValidCtxtPtr vctxt,\n\t\t\txmlNodePtr
      attrNode,\n\t\t\tint nodeLine,\n\t\t\tconst xmlChar *localName,\n\t\t\tconst
      xmlChar *nsName,\n\t\t\tint ownedNames,\n\t\t\txmlChar *value,\n\t\t\tint ownedValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23623,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23624,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:23630,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:23639,1
    - Dst: xmlSchemaIDCReleaseMatcherList
      Src: /src/libxml2/xmlschemas.c:23647,1
    - Dst: xmlSchemaIDCFreeMatcherList
      Src: /src/libxml2/xmlschemas.c:23649,1
    - Dst: xmlSchemaIDCFreeIDCTable
      Src: /src/libxml2/xmlschemas.c:23657,1
    - Dst: xmlRegFreeExecCtxt
      Src: /src/libxml2/xmlschemas.c:23661,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:23665,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 2
    argNames:
    - vctxt
    - ielem
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaNodeInfoPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23670
      start: 23616
    functionDepth: 3
    functionLinenumber: 23616
    functionLinenumberEnd: 23670
    functionName: xmlSchemaClearElemInfo
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaIDCFreeIDCTable
    - xmlSchemaIDCReleaseMatcherList
    - xmlFree
    - FREE_AND_NULL
    - xmlSchemaIDCFreeMatcherList
    - xmlSchemaFreeValue
    - xmlRegFreeExecCtxt
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaClearElemInfo(xmlSchemaValidCtxtPtr vctxt,\n\t\t       xmlSchemaNodeInfoPtr
      ielem)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23685,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:23694,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23696,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:23699,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23701,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:23719,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:23721,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:23727,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:23732,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23737
      start: 23679
    functionDepth: 3
    functionLinenumber: 23679
    functionLinenumberEnd: 23737
    functionName: xmlSchemaGetFreshElemInfo
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVErrMemory
    - xmlRealloc
    - VERROR_INT
    - xmlMalloc
    - xmlGrowCapacity
    - memset
    linkageType: ''
    returnType: xmlSchemaNodeInfoPtr
    signature: xmlSchemaNodeInfoPtr xmlSchemaGetFreshElemInfo(xmlSchemaValidCtxtPtr
      vctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - item
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23740
      start: 23739
    functionDepth: 0
    functionLinenumber: 23739
    functionLinenumberEnd: 23740
    functionName: ACTIVATE_ATTRIBUTE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACTIVATE_ATTRIBUTE(item)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:23775,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:23776,1
    - Dst: xmlSchemaGetPrimitiveType
      Src: /src/libxml2/xmlschemas.c:23786,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:23788,1
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:23789,1
    - Dst: xmlSchemaGetValType
      Src: /src/libxml2/xmlschemas.c:23799,1
    - Dst: xmlSchemaValidateLengthFacetWhtsp
      Src: /src/libxml2/xmlschemas.c:23816,1
    - Dst: xmlSchemaValidateFacetWhtsp
      Src: /src/libxml2/xmlschemas.c:23820,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23825,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23830,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:23841,1
    - Dst: xmlSchemaValidateListSimpleTypeFacet
      Src: /src/libxml2/xmlschemas.c:23854,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23861,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23866,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:23892,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23896,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23917,1
    - Dst: xmlRegexpExec
      Src: /src/libxml2/xmlschemas.c:23942,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:23946,1
    - Dst: xmlSchemaFacetErr
      Src: /src/libxml2/xmlschemas.c:23959,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 142
    argCount: 8
    argNames:
    - actxt
    - node
    - type
    - valType
    - value
    - val
    - length
    - fireErrors
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlNodePtr
    - xmlSchemaTypePtr
    - xmlSchemaValType
    - xmlChar*
    - xmlSchemaValPtr
    - unsigned long
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23971
      start: 23743
    functionDepth: 9
    functionLinenumber: 23743
    functionLinenumberEnd: 23971
    functionName: xmlSchemaValidateFacets
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFacetErr
    - xmlSchemaValidateListSimpleTypeFacet
    - xmlSchemaAreValuesEqual
    - xmlSchemaGetPrimitiveType
    - WXS_IS_ANY_SIMPLE_TYPE
    - WXS_IS_LIST
    - AERROR_INT
    - xmlSchemaGetValType
    - xmlSchemaGetWhiteSpaceFacetValue
    - xmlSchemaValidateFacetWhtsp
    - xmlSchemaValidateLengthFacetWhtsp
    - WXS_IS_ATOMIC
    - xmlRegexpExec
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateFacets(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\txmlNodePtr
      node,\n\t\t\txmlSchemaTypePtr type,\n\t\t\txmlSchemaValType valType,\n\t\t\tconst
      xmlChar * value,\n\t\t\txmlSchemaValPtr val,\n\t\t\tunsigned long length,\n\t\t\tint
      fireErrors)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetWhiteSpaceFacetValue
      Src: /src/libxml2/xmlschemas.c:23977,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:23979,1
    - Dst: xmlSchemaWhiteSpaceReplace
      Src: /src/libxml2/xmlschemas.c:23981,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - xmlSchemaTypePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23985
      start: 23973
    functionDepth: 3
    functionLinenumber: 23973
    functionLinenumberEnd: 23985
    functionName: xmlSchemaNormalizeValue
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaGetWhiteSpaceFacetValue
    - xmlSchemaWhiteSpaceReplace
    - xmlSchemaCollapseString
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSchemaNormalizeValue(xmlSchemaTypePtr type,\n\t\t\tconst
      xmlChar *value)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:23998,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24001,1
    - Dst: xmlSchemaCollapseString
      Src: /src/libxml2/xmlschemas.c:24012,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:24013,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24014,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:24016,1
    - Dst: xmlSchemaLookupNamespace
      Src: /src/libxml2/xmlschemas.c:24022,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24025,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24038,1
    - Dst: xmlSchemaNewQNameValue
      Src: /src/libxml2/xmlschemas.c:24044,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:24045,1
    - Dst: xmlSchemaNewQNameValue
      Src: /src/libxml2/xmlschemas.c:24047,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24050,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 4
    argNames:
    - vctxt
    - value
    - val
    - valNeeded
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar*
    - xmlSchemaValPtr*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24052
      start: 23987
    functionDepth: 5
    functionLinenumber: 23987
    functionLinenumberEnd: 24052
    functionName: xmlSchemaValidateQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName2
    - xmlStrdup
    - xmlSchemaLookupNamespace
    - xmlFree
    - VERROR_INT
    - xmlSchemaNewQNameValue
    - xmlValidateQName
    - xmlSchemaCollapseString
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateQName(xmlSchemaValidCtxtPtr vctxt,\n\t\t       const
      xmlChar *value,\n\t\t       xmlSchemaValPtr *val,\n\t\t       int valNeeded)"
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24082,1
    - Dst: WXS_IS_ANY_SIMPLE_TYPE
      Src: /src/libxml2/xmlschemas.c:24111,1
    - Dst: WXS_IS_ATOMIC
      Src: /src/libxml2/xmlschemas.c:24111,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24120,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24131,1
    - Dst: xmlSchemaValidateNotation
      Src: /src/libxml2/xmlschemas.c:24144,1
    - Dst: xmlSchemaValidateQName
      Src: /src/libxml2/xmlschemas.c:24150,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24156,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24159,1
    - Dst: xmlSchemaValidateNotation
      Src: /src/libxml2/xmlschemas.c:24166,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24173,1
    - Dst: xmlSchemaValPredefTypeNodeNoNorm
      Src: /src/libxml2/xmlschemas.c:24176,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24188,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24192,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24201,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24206,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24210,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24217,1
    - Dst: WXS_IS_LIST
      Src: /src/libxml2/xmlschemas.c:24218,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24233,1
    - Dst: WXS_LIST_ITEMTYPE
      Src: /src/libxml2/xmlschemas.c:24238,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:24241,1
    - Dst: IS_BLANK_CH
      Src: /src/libxml2/xmlschemas.c:24244,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:24248,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24252,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24255,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24257,1
    - Dst: xmlSchemaValueAppend
      Src: /src/libxml2/xmlschemas.c:24265,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24271,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24280,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24285,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24290,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24302,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24303,1
    - Dst: WXS_IS_UNION
      Src: /src/libxml2/xmlschemas.c:24305,1
    - Dst: xmlSchemaGetUnionSimpleTypeMemberTypes
      Src: /src/libxml2/xmlschemas.c:24323,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24325,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24337,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24340,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24348,1
    - Dst: NORMALIZE
      Src: /src/libxml2/xmlschemas.c:24363,1
    - Dst: xmlSchemaValidateFacets
      Src: /src/libxml2/xmlschemas.c:24364,1
    - Dst: AERROR_INT
      Src: /src/libxml2/xmlschemas.c:24369,1
    - Dst: xmlSchemaSimpleTypeErr
      Src: /src/libxml2/xmlschemas.c:24377,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24381,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24386,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24388,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24392,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24394,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 188
    argCount: 8
    argNames:
    - actxt
    - node
    - type
    - value
    - retVal
    - fireErrors
    - normalize
    - isNormalized
    argTypes:
    - xmlSchemaAbstractCtxtPtr
    - xmlNodePtr
    - xmlSchemaTypePtr
    - xmlChar*
    - xmlSchemaValPtr*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24396
      start: 24057
    functionDepth: 11
    functionLinenumber: 24057
    functionLinenumberEnd: 24396
    functionName: xmlSchemaVCheckCVCSimpleType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 7
    functionsReached:
    - WXS_IS_ANY_SIMPLE_TYPE
    - FREE_AND_NULL
    - WXS_LIST_ITEMTYPE
    - AERROR_INT
    - xmlSchemaGetUnionSimpleTypeMemberTypes
    - xmlSchemaFreeValue
    - NORMALIZE
    - xmlFree
    - WXS_IS_LIST
    - xmlSchemaValPredefTypeNodeNoNorm
    - xmlSchemaValueAppend
    - xmlSchemaValidateNotation
    - xmlSchemaSimpleTypeErr
    - xmlSchemaValidateFacets
    - WXS_IS_UNION
    - IS_BLANK_CH
    - xmlStrndup
    - xmlSchemaVCheckCVCSimpleType
    - WXS_IS_ATOMIC
    - xmlSchemaValidateQName
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaVCheckCVCSimpleType(xmlSchemaAbstractCtxtPtr actxt,\n\t\t\t
      \    xmlNodePtr node,\n\t\t\t     xmlSchemaTypePtr type,\n\t\t\t     const xmlChar
      *value,\n\t\t\t     xmlSchemaValPtr *retVal,\n\t\t\t     int fireErrors,\n\t\t\t
      \    int normalize,\n\t\t\t     int isNormalized)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - atype
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24080
      start: 24072
    functionDepth: 0
    functionLinenumber: 24072
    functionLinenumberEnd: 24080
    functionName: NORMALIZE
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NORMALIZE(atype)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlValidateQName
      Src: /src/libxml2/xmlschemas.c:24411,1
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:24428,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24430,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24432,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - vctxt
    - value
    - nsName
    - localName
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar*
    - xmlChar**
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24455
      start: 24398
    functionDepth: 5
    functionLinenumber: 24398
    functionLinenumberEnd: 24455
    functionName: xmlSchemaVExpandQName
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSplitQName2
    - xmlValidateQName
    - xmlDictLookup
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaVExpandQName(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t   const
      xmlChar *value,\n\t\t\t   const xmlChar **nsName,\n\t\t\t   const xmlChar **localName)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSplitQName2
      Src: /src/libxml2/xmlschemas.c:24428,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24430,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/xmlschemas.c:24432,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24452
      start: 24415
    functionDepth: 3
    functionLinenumber: 24415
    functionLinenumberEnd: 24452
    functionName: xmlSchemaSimpleTypeErr
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSplitQName2
    - xmlDictLookup
    - xmlFree
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSimpleTypeErr(ACTXT_CAST vctxt,\n\t    XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1,
      NULL,\n\t    value, xmlSchemaGetBuiltInType(XML_SCHEMAS_QNAME), 1);\n\treturn
      (1);\n    }\n    {\n\txmlChar *local = NULL;\n\txmlChar *prefix;\n\n\t/*\n\t*
      NOTE: xmlSplitQName2 will return a duplicated\n\t* string.\n\t*/\n\tlocal =
      xmlSplitQName2(value, &prefix);\n\tif (local == NULL)\n\t    *localName = xmlDictLookup(vctxt->dict,
      value, -1);\n\telse {\n\t    *localName = xmlDictLookup(vctxt->dict, local,
      -1);\n\t    xmlFree(local);\n\t}\n\n\t*nsName = xmlSchemaLookupNamespace(vctxt,
      prefix);\n\n\tif (prefix != NULL)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24482,1
    - Dst: xmlSchemaVExpandQName
      Src: /src/libxml2/xmlschemas.c:24487,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24491,1
    - Dst: xmlSchemaGetType
      Src: /src/libxml2/xmlschemas.c:24502,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:24511,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24512,1
    - Dst: xmlSchemaCheckCOSDerivedOK
      Src: /src/libxml2/xmlschemas.c:24560,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:24569,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:24573,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 4
    argNames:
    - vctxt
    - iattr
    - localType
    - elemDecl
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaAttrInfoPtr
    - xmlSchemaTypePtr*
    - xmlSchemaElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24585
      start: 24457
    functionDepth: 8
    functionLinenumber: 24457
    functionLinenumberEnd: 24585
    functionName: xmlSchemaProcessXSIType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVExpandQName
    - xmlSchemaGetType
    - FREE_AND_NULL
    - xmlSchemaCheckCOSDerivedOK
    - VERROR_INT
    - xmlSchemaFormatQName
    - ACTIVATE_ATTRIBUTE
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaProcessXSIType(xmlSchemaValidCtxtPtr vctxt,\n\t\t\txmlSchemaAttrInfoPtr
      iattr,\n\t\t\txmlSchemaTypePtr *localType,\n\t\t\txmlSchemaElementPtr elemDecl)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24597,1
    - Dst: WXS_ELEM_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:24601,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24606,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24611,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:24622,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24625,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:24629,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:24631,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24635,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24645,1
    - Dst: xmlSchemaValueGetAsBoolean
      Src: /src/libxml2/xmlschemas.c:24649,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24655,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:24671,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:24676,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24680,1
    - Dst: xmlSchemaIDCRegisterMatchers
      Src: /src/libxml2/xmlschemas.c:24697,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:24703,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 60
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24713
      start: 24587
    functionDepth: 12
    functionLinenumber: 24587
    functionLinenumberEnd: 24713
    functionName: xmlSchemaValidateElemDecl
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - WXS_ELEM_TYPEDEF
    - xmlSchemaGetMetaAttrInfo
    - VERROR_INT
    - xmlSchemaValueGetAsBoolean
    - xmlSchemaProcessXSIType
    - xmlSchemaIDCRegisterMatchers
    - xmlSchemaVCheckCVCSimpleType
    - ACTIVATE_ATTRIBUTE
    - VERROR
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidateElemDecl(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:24733,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24741
      start: 24715
    functionDepth: 1
    functionLinenumber: 24715
    functionLinenumberEnd: 24741
    functionName: xmlSchemaVAttributesSimple
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - ACTIVATE_ATTRIBUTE
    linkageType: ''
    returnType: int
    signature: int xmlSchemaVAttributesSimple(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24758,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24760,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:24764,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:24767,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:24770,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24773
      start: 24746
    functionDepth: 1
    functionLinenumber: 24746
    functionLinenumberEnd: 24773
    functionName: xmlSchemaClearAttrInfos
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaFreeValue
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSchemaClearAttrInfos(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 67
    BranchProfiles: []
    Callsites:
    - Dst: WXS_ATTRUSE_DECL
      Src: /src/libxml2/xmlschemas.c:24828,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:24839,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:24841,1
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:24883,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24885,1
    - Dst: xmlSchemaGetFreshAttrInfo
      Src: /src/libxml2/xmlschemas.c:24899,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:24901,1
    - Dst: xmlSchemaCheckCVCWildcardNamespace
      Src: /src/libxml2/xmlschemas.c:24943,1
    - Dst: xmlSchemaGetAttributeDecl
      Src: /src/libxml2/xmlschemas.c:24969,1
    - Dst: WXS_ATTR_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:24986,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:24987,1
    - Dst: xmlSchemaIsDerivedFromBuiltInType
      Src: /src/libxml2/xmlschemas.c:25008,1
    - Dst: WXS_ATTRUSE_TYPEDEF
      Src: /src/libxml2/xmlschemas.c:25009,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:25066,1
    - Dst: xmlSchemaXPathEvaluate
      Src: /src/libxml2/xmlschemas.c:25074,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25077,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25102,1
    - Dst: xmlSchemaCopyValue
      Src: /src/libxml2/xmlschemas.c:25107,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25109,1
    - Dst: xmlSchemaNormalizeValue
      Src: /src/libxml2/xmlschemas.c:25128,1
    - Dst: xmlNewProp
      Src: /src/libxml2/xmlschemas.c:25134,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25136,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25139,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/xmlschemas.c:25145,1
    - Dst: snprintf
      Src: /src/libxml2/xmlschemas.c:25156,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/xmlschemas.c:25157,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25160,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25165,1
    - Dst: xmlNewNs
      Src: /src/libxml2/xmlschemas.c:25169,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/xmlschemas.c:25178,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25181,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:25195,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25222,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25227,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25235,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:25281,1
    - Dst: xmlSchemaAreValuesEqual
      Src: /src/libxml2/xmlschemas.c:25295,1
    - Dst: xmlSchemaXPathProcessHistory
      Src: /src/libxml2/xmlschemas.c:25307,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25309,1
    - Dst: xmlSchemaXPathPop
      Src: /src/libxml2/xmlschemas.c:25314,1
    - Dst: ACTIVATE_ATTRIBUTE
      Src: /src/libxml2/xmlschemas.c:25327,1
    - Dst: xmlSchemaFormatQName
      Src: /src/libxml2/xmlschemas.c:25335,1
    - Dst: FREE_AND_NULL
      Src: /src/libxml2/xmlschemas.c:25339,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25343,1
    - Dst: xmlSchemaCustomErr
      Src: /src/libxml2/xmlschemas.c:25347,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25354,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 273
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25383
      start: 24785
    functionDepth: 12
    functionLinenumber: 24785
    functionLinenumberEnd: 25383
    functionName: xmlSchemaVAttributesComplex
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetFreshAttrInfo
    - FREE_AND_NULL
    - VERROR_INT
    - xmlSearchNsByHref
    - xmlSchemaXPathEvaluate
    - snprintf
    - xmlSchemaFreeValue
    - xmlSchemaFormatQName
    - ACTIVATE_ATTRIBUTE
    - VERROR
    - xmlSchemaAreValuesEqual
    - WXS_ATTRUSE_TYPEDEF
    - xmlFree
    - xmlNewProp
    - xmlSchemaXPathProcessHistory
    - xmlNewNs
    - WXS_ATTR_TYPEDEF
    - xmlNewNsProp
    - xmlStrEqual
    - xmlSchemaCustomErr
    - xmlSchemaCheckCVCWildcardNamespace
    - xmlSchemaXPathPop
    - xmlSchemaGetAttributeDecl
    - WXS_ATTRUSE_DECL
    - xmlSchemaNormalizeValue
    - xmlSearchNs
    - xmlSchemaCopyValue
    - xmlSchemaVCheckCVCSimpleType
    - xmlSchemaIsDerivedFromBuiltInType
    linkageType: ''
    returnType: int
    signature: int xmlSchemaVAttributesComplex(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25396,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:25412,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25421,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:25434,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:25437,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25439,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:25456,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - vctxt
    - skip
    argTypes:
    - xmlSchemaValidCtxtPtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25458
      start: 25385
    functionDepth: 9
    functionLinenumber: 25385
    functionLinenumberEnd: 25458
    functionName: xmlSchemaValidateElemWildcard
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetElem
    - xmlSchemaProcessXSIType
    - xmlSchemaGetMetaAttrInfo
    - VERROR_INT
    - VERROR
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateElemWildcard(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \     int *skip)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:25481,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25491,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:25492,1
    - Dst: WXS_EMPTIABLE
      Src: /src/libxml2/xmlschemas.c:25493,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25496,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25514,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25516,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25519,1
    - Dst: xmlSchemaVCheckCVCSimpleType
      Src: /src/libxml2/xmlschemas.c:25521,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25525,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - vctxt
    - value
    - val
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlChar*
    - xmlSchemaValPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25529
      start: 25467
    functionDepth: 12
    functionLinenumber: 25467
    functionLinenumberEnd: 25529
    functionName: xmlSchemaCheckCOSValidDefault
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - WXS_HAS_MIXED_CONTENT
    - WXS_HAS_SIMPLE_CONTENT
    - WXS_IS_COMPLEX
    - WXS_IS_SIMPLE
    - VERROR_INT
    - WXS_EMPTIABLE
    - xmlSchemaVCheckCVCSimpleType
    - VERROR
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaCheckCOSValidDefault(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \     const xmlChar *value,\n\t\t\t      xmlSchemaValPtr *val)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - transdata
    - inputdata
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25539
      start: 25531
    functionDepth: 0
    functionLinenumber: 25531
    functionLinenumberEnd: 25539
    functionName: xmlSchemaVContentModelCallback
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaVContentModelCallback(xmlRegExecCtxtPtr exec ATTRIBUTE_UNUSED,\n\t\t\t
      \      const xmlChar * name ATTRIBUTE_UNUSED,\n\t\t\t       void *transdata,
      void *inputdata)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaGetFreshElemInfo
      Src: /src/libxml2/xmlschemas.c:25544,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25552
      start: 25541
    functionDepth: 4
    functionLinenumber: 25541
    functionLinenumberEnd: 25552
    functionName: xmlSchemaValidatorPushElem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetFreshElemInfo
    - VERROR_INT
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidatorPushElem(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - vctxt
    - inode
    - type
    - value
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlSchemaNodeInfoPtr
    - xmlSchemaTypePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25568
      start: 25554
    functionDepth: 0
    functionLinenumber: 25554
    functionLinenumberEnd: 25568
    functionName: xmlSchemaVCheckINodeDataType
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaVCheckINodeDataType(xmlSchemaValidCtxtPtr vctxt,\n\t\t\t
      \    xmlSchemaNodeInfoPtr inode,\n\t\t\t     xmlSchemaTypePtr type,\n\t\t\t
      \    const xmlChar *value)"
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaClearAttrInfos
      Src: /src/libxml2/xmlschemas.c:25582,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/xmlschemas.c:25622,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25625,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25634,1
    - Dst: xmlRegExecNextValues
      Src: /src/libxml2/xmlschemas.c:25643,1
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/xmlschemas.c:25645,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25646,1
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:25675,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25685,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25686,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25688,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25689,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25694,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25712,1
    - Dst: xmlSchemaCheckCOSValidDefault
      Src: /src/libxml2/xmlschemas.c:25728,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25732,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25752,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25753,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25755,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25756,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25762,1
    - Dst: xmlSchemaNormalizeValue
      Src: /src/libxml2/xmlschemas.c:25780,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xmlschemas.c:25783,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:25785,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/xmlschemas.c:25787,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25790,1
    - Dst: xmlAddChild
      Src: /src/libxml2/xmlschemas.c:25794,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:25797,1
    - Dst: WXS_IS_SIMPLE
      Src: /src/libxml2/xmlschemas.c:25803,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25812,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25814,1
    - Dst: xmlSchemaVCheckINodeDataType
      Src: /src/libxml2/xmlschemas.c:25827,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:25832,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:25856,1
    - Dst: WXS_HAS_MIXED_CONTENT
      Src: /src/libxml2/xmlschemas.c:25865,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:25877,1
    - Dst: WXS_HAS_SIMPLE_CONTENT
      Src: /src/libxml2/xmlschemas.c:25890,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:25903,1
    - Dst: xmlSchemaXPathProcessHistory
      Src: /src/libxml2/xmlschemas.c:25930,1
    - Dst: xmlSchemaIDCFillNodeTables
      Src: /src/libxml2/xmlschemas.c:25951,1
    - Dst: xmlSchemaCheckCVCIDCKeyRef
      Src: /src/libxml2/xmlschemas.c:25958,1
    - Dst: xmlSchemaBubbleIDCNodeTables
      Src: /src/libxml2/xmlschemas.c:25970,1
    - Dst: xmlSchemaClearElemInfo
      Src: /src/libxml2/xmlschemas.c:25979,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 203
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26016
      start: 25575
    functionDepth: 13
    functionLinenumber: 25575
    functionLinenumberEnd: 26016
    functionName: xmlSchemaValidatorPopElem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaClearElemInfo
    - WXS_HAS_SIMPLE_CONTENT
    - xmlRegExecNextValues
    - VERROR_INT
    - xmlSchemaVCheckINodeDataType
    - xmlRegExecPushString
    - xmlSchemaBubbleIDCNodeTables
    - xmlSchemaFreeValue
    - xmlSchemaCheckCVCIDCKeyRef
    - VERROR
    - xmlFree
    - xmlSchemaXPathProcessHistory
    - xmlSchemaClearAttrInfos
    - xmlAddChild
    - WXS_HAS_MIXED_CONTENT
    - xmlStrEqual
    - xmlNewDocText
    - xmlRegNewExecCtxt
    - xmlSchemaNormalizeValue
    - WXS_IS_SIMPLE
    - xmlSchemaIDCFillNodeTables
    - INODE_NILLED
    - xmlSchemaCheckCOSValidDefault
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidatorPopElem(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26030,1
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:26040,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26046,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:26061,1
    - Dst: xmlSchemaGetMetaAttrInfo
      Src: /src/libxml2/xmlschemas.c:26071,1
    - Dst: xmlSchemaProcessXSIType
      Src: /src/libxml2/xmlschemas.c:26074,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26078,1
    - Dst: xmlSchemaGetBuiltInType
      Src: /src/libxml2/xmlschemas.c:26097,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26112,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26128,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26137,1
    - Dst: xmlRegNewExecCtxt
      Src: /src/libxml2/xmlschemas.c:26147,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26150,1
    - Dst: xmlRegExecPushString2
      Src: /src/libxml2/xmlschemas.c:26165,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26170,1
    - Dst: xmlRegExecErrInfo
      Src: /src/libxml2/xmlschemas.c:26175,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26198,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26206,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 80
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26208
      start: 26022
    functionDepth: 9
    functionLinenumber: 26022
    functionLinenumberEnd: 26208
    functionName: xmlSchemaValidateChildElem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlRegExecPushString2
    - xmlSchemaGetElem
    - xmlSchemaGetMetaAttrInfo
    - xmlSchemaProcessXSIType
    - VERROR_INT
    - INODE_NILLED
    - xmlRegExecErrInfo
    - xmlRegNewExecCtxt
    - VERROR
    - xmlSchemaGetBuiltInType
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidateChildElem(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: INODE_NILLED
      Src: /src/libxml2/xmlschemas.c:26249,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26255,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26267,1
    - Dst: xmlSchemaIsBlank
      Src: /src/libxml2/xmlschemas.c:26276,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26285,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlschemas.c:26335,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:26337,1
    - Dst: xmlStrlen
      Src: /src/libxml2/xmlschemas.c:26346,1
    - Dst: xmlStrncat
      Src: /src/libxml2/xmlschemas.c:26351,1
    - Dst: xmlStrncatNew
      Src: /src/libxml2/xmlschemas.c:26355,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 54
    argCount: 6
    argNames:
    - vctxt
    - nodeType
    - value
    - len
    - mode
    - consumed
    argTypes:
    - xmlSchemaValidCtxtPtr
    - int
    - xmlChar*
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26361
      start: 26233
    functionDepth: 3
    functionLinenumber: 26233
    functionLinenumberEnd: 26361
    functionName: xmlSchemaVPushText
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrlen
    - xmlStrndup
    - xmlSchemaIsBlank
    - INODE_NILLED
    - xmlStrncat
    - xmlStrncatNew
    - VERROR
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaVPushText(xmlSchemaValidCtxtPtr vctxt,\n\t\t  int nodeType,
      const xmlChar *value, int len,\n\t\t  int mode, int *consumed)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26370,1
    - Dst: xmlSchemaAssembleByXSI
      Src: /src/libxml2/xmlschemas.c:26385,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlschemas.c:26396,1
    - Dst: xmlSchemaValidateChildElem
      Src: /src/libxml2/xmlschemas.c:26404,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26407,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26417,1
    - Dst: xmlSchemaGetElem
      Src: /src/libxml2/xmlschemas.c:26426,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26431,1
    - Dst: xmlSchemaValidateElemWildcard
      Src: /src/libxml2/xmlschemas.c:26446,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26449,1
    - Dst: xmlSchemaValidateElemDecl
      Src: /src/libxml2/xmlschemas.c:26474,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26477,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26491,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:26498,1
    - Dst: xmlSchemaXPathEvaluate
      Src: /src/libxml2/xmlschemas.c:26508,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26511,1
    - Dst: WXS_IS_COMPLEX
      Src: /src/libxml2/xmlschemas.c:26519,1
    - Dst: xmlSchemaVAttributesComplex
      Src: /src/libxml2/xmlschemas.c:26523,1
    - Dst: xmlSchemaVAttributesSimple
      Src: /src/libxml2/xmlschemas.c:26527,1
    - Dst: xmlSchemaClearAttrInfos
      Src: /src/libxml2/xmlschemas.c:26533,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26535,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 129
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26550
      start: 26363
    functionDepth: 22
    functionLinenumber: 26363
    functionLinenumberEnd: 26550
    functionName: xmlSchemaValidateElem
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaAssembleByXSI
    - xmlSchemaGetElem
    - WXS_IS_COMPLEX
    - xmlSchemaValidateElemDecl
    - VERROR_INT
    - xmlSchemaValidateElemWildcard
    - xmlSchemaXPathEvaluate
    - xmlSchemaClearAttrInfos
    - xmlSchemaValidateChildElem
    - xmlSchemaVAttributesSimple
    - xmlSchemaVAttributesComplex
    - xmlHashScan
    - VERROR
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidateElem(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlschemas.c:26561,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/xmlschemas.c:26566,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlschemas.c:26569,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/xmlschemas.c:26576,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/xmlschemas.c:26577,1
    - Dst: xmlSchemaValidatorPushElem
      Src: /src/libxml2/xmlschemas.c:26582,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26583,1
    - Dst: xmlTextReaderLocalName
      Src: /src/libxml2/xmlschemas.c:26588,1
    - Dst: xmlTextReaderNamespaceUri
      Src: /src/libxml2/xmlschemas.c:26589,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/xmlschemas.c:26594,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26596,1
    - Dst: xmlTextReaderMoveToFirstAttribute
      Src: /src/libxml2/xmlschemas.c:26607,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26609,1
    - Dst: xmlSchemaValidatorPushAttribute
      Src: /src/libxml2/xmlschemas.c:26619,1
    - Dst: xmlTextReaderLocalName
      Src: /src/libxml2/xmlschemas.c:26620,1
    - Dst: xmlTextReaderNamespaceUri
      Src: /src/libxml2/xmlschemas.c:26621,1
    - Dst: xmlTextReaderValue
      Src: /src/libxml2/xmlschemas.c:26622,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26624,1
    - Dst: xmlTextReaderMoveToNextAttribute
      Src: /src/libxml2/xmlschemas.c:26628,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26630,1
    - Dst: xmlTextReaderMoveToElement
      Src: /src/libxml2/xmlschemas.c:26638,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26640,1
    - Dst: xmlSchemaValidateElem
      Src: /src/libxml2/xmlschemas.c:26648,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26651,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlschemas.c:26663,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/xmlschemas.c:26664,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlschemas.c:26666,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/xmlschemas.c:26667,1
    - Dst: xmlSchemaValidatorPopElem
      Src: /src/libxml2/xmlschemas.c:26690,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26693,1
    - Dst: xmlTextReaderValue
      Src: /src/libxml2/xmlschemas.c:26715,1
    - Dst: xmlSchemaVPushText
      Src: /src/libxml2/xmlschemas.c:26716,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:26719,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26721,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/xmlschemas.c:26735,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 136
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26742
      start: 26553
    functionDepth: 23
    functionLinenumber: 26553
    functionLinenumberEnd: 26742
    functionName: xmlSchemaVReaderWalk
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValidateElem
    - xmlTextReaderLocalName
    - xmlTextReaderMoveToNextAttribute
    - xmlFree
    - xmlTextReaderDepth
    - xmlTextReaderRead
    - xmlTextReaderNodeType
    - VERROR_INT
    - xmlTextReaderMoveToElement
    - xmlTextReaderNamespaceUri
    - xmlTextReaderMoveToFirstAttribute
    - xmlSchemaValidatorPushElem
    - xmlSchemaValidatorPopElem
    - xmlTextReaderIsEmptyElement
    - xmlTextReaderValue
    - xmlSchemaValidatorPushAttribute
    - xmlSchemaVPushText
    linkageType: ''
    returnType: int
    signature: int xmlSchemaVReaderWalk(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaVPushText
      Src: /src/libxml2/xmlschemas.c:26767,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26769,1
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlschemas.c:26772,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26774
      start: 26754
    functionDepth: 4
    functionLinenumber: 26754
    functionLinenumberEnd: 26774
    functionName: xmlSchemaSAXHandleText
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - VERROR_INT
    - xmlStopParser
    - xmlSchemaVPushText
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSAXHandleText(void *ctx,\n\t\t       const xmlChar *
      ch,\n\t\t       int len)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaVPushText
      Src: /src/libxml2/xmlschemas.c:26792,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26794,1
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlschemas.c:26797,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26799
      start: 26779
    functionDepth: 4
    functionLinenumber: 26779
    functionLinenumberEnd: 26799
    functionName: xmlSchemaSAXHandleCDataSection
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - VERROR_INT
    - xmlStopParser
    - xmlSchemaVPushText
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSAXHandleCDataSection(void *ctx,\n\t\t\t     const xmlChar
      * ch,\n\t\t\t     int len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26812
      start: 26801
    functionDepth: 0
    functionLinenumber: 26801
    functionLinenumberEnd: 26812
    functionName: xmlSchemaSAXHandleReference
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSAXHandleReference(void *ctx ATTRIBUTE_UNUSED,\n\t\t\t
      \   const xmlChar * name ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidatorPushElem
      Src: /src/libxml2/xmlschemas.c:26842,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26843,1
    - Dst: xmlSAX2GetLineNumber
      Src: /src/libxml2/xmlschemas.c:26851,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlschemas.c:26872,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:26875,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlschemas.c:26878,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:26880,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:26919,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:26921,1
    - Dst: xmlSchemaValidatorPushAttribute
      Src: /src/libxml2/xmlschemas.c:26942,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26946,1
    - Dst: xmlSchemaValidateElem
      Src: /src/libxml2/xmlschemas.c:26955,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26958,1
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlschemas.c:26969,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 84
    argCount: 9
    argNames:
    - ctx
    - localname
    - ATTRIBUTE_UNUSED
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted ATTRIBUTE_UNUSED
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26970
      start: 26814
    functionDepth: 23
    functionLinenumber: 26814
    functionLinenumberEnd: 26970
    functionName: xmlSchemaSAXHandleStartElementNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValidateElem
    - xmlSchemaVErrMemory
    - xmlRealloc
    - VERROR_INT
    - xmlStopParser
    - xmlSchemaValidatorPushElem
    - xmlMalloc
    - xmlSAX2GetLineNumber
    - xmlGrowCapacity
    - xmlSchemaValidatorPushAttribute
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSAXHandleStartElementNs(void *ctx,\n\t\t\t\t const xmlChar
      * localname,\n\t\t\t\t const xmlChar * prefix ATTRIBUTE_UNUSED,\n\t\t\t\t const
      xmlChar * URI,\n\t\t\t\t int nb_namespaces,\n\t\t\t\t const xmlChar ** namespaces,\n\t\t\t\t
      int nb_attributes,\n\t\t\t\t int nb_defaulted ATTRIBUTE_UNUSED,\n\t\t\t\t const
      xmlChar ** attributes)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:26994,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlschemas.c:26995,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:26996,1
    - Dst: xmlSchemaValidatorPopElem
      Src: /src/libxml2/xmlschemas.c:26999,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27002,1
    - Dst: xmlStopParser
      Src: /src/libxml2/xmlschemas.c:27012,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27013
      start: 26972
    functionDepth: 14
    functionLinenumber: 26972
    functionLinenumberEnd: 27013
    functionName: xmlSchemaSAXHandleEndElementNs
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValidatorPopElem
    - VERROR_INT
    - xmlStrEqual
    - xmlStopParser
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSAXHandleEndElementNs(void *ctx,\n\t\t\t       const
      xmlChar * localname ATTRIBUTE_UNUSED,\n\t\t\t       const xmlChar * prefix ATTRIBUTE_UNUSED,\n\t\t\t
      \      const xmlChar * URI ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:27032,1
    - Dst: xmlSchemaVErrMemory
      Src: /src/libxml2/xmlschemas.c:27034,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:27037,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:27039,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlschemas.c:27041,1
    - Dst: xmlSchemaItemListCreate
      Src: /src/libxml2/xmlschemas.c:27044,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/xmlschemas.c:27046,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - schema
    argTypes:
    - xmlSchema*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27051
      start: 27027
    functionDepth: 5
    functionLinenumber: 27027
    functionLinenumberEnd: 27051
    functionName: xmlSchemaNewValidCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 10
    functionsReached:
    - xmlSchemaVErrMemory
    - xmlMalloc
    - xmlSchemaFreeValidCtxt
    - xmlDictCreate
    - xmlSchemaItemListCreate
    - memset
    linkageType: ''
    returnType: xmlSchemaValidCtxt
    signature: 'xmlSchemaValidCtxt *

      xmlSchemaNewValidCtxt(xmlSchema *schema)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27065,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlschemas.c:27067,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - vctxt
    - filename
    argTypes:
    - xmlSchemaValidCtxt*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27070
      start: 27060
    functionDepth: 2
    functionLinenumber: 27060
    functionLinenumberEnd: 27070
    functionName: xmlSchemaValidateSetFilename
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlStrdup
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaValidateSetFilename(xmlSchemaValidCtxt *vctxt, const
      char *filename)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:27098,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27108,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27120,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27121,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27123,1
    - Dst: xmlSchemaIDCFreeKey
      Src: /src/libxml2/xmlschemas.c:27132,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27133,1
    - Dst: xmlSchemaFreeIDCStateObjList
      Src: /src/libxml2/xmlschemas.c:27143,1
    - Dst: xmlSchemaClearAttrInfos
      Src: /src/libxml2/xmlschemas.c:27150,1
    - Dst: xmlSchemaClearElemInfo
      Src: /src/libxml2/xmlschemas.c:27163,1
    - Dst: xmlSchemaItemListClear
      Src: /src/libxml2/xmlschemas.c:27166,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:27168,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/xmlschemas.c:27173,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27176,1
    - Dst: xmlSchemaIDCFreeMatcherList
      Src: /src/libxml2/xmlschemas.c:27190,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 69
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27194
      start: 27078
    functionDepth: 5
    functionLinenumber: 27078
    functionLinenumberEnd: 27194
    functionName: xmlSchemaClearValidCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaIDCFreeKey
    - xmlDictFree
    - xmlSchemaClearElemInfo
    - xmlFree
    - xmlSchemaFreeIDCStateObjList
    - xmlSchemaItemListClear
    - xmlSchemaClearAttrInfos
    - xmlDictCreate
    - xmlSchemaIDCFreeMatcherList
    - xmlSchemaFreeValue
    linkageType: ''
    returnType: void
    signature: void xmlSchemaClearValidCtxt(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFreeValue
      Src: /src/libxml2/xmlschemas.c:27207,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:27209,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27216,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27217,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27219,1
    - Dst: xmlSchemaIDCFreeKey
      Src: /src/libxml2/xmlschemas.c:27224,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27225,1
    - Dst: xmlSchemaFreeIDCStateObjList
      Src: /src/libxml2/xmlschemas.c:27229,1
    - Dst: xmlSchemaFreeIDCStateObjList
      Src: /src/libxml2/xmlschemas.c:27233,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27244,1
    - Dst: xmlSchemaClearAttrInfos
      Src: /src/libxml2/xmlschemas.c:27254,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27257,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27259,1
    - Dst: xmlSchemaClearElemInfo
      Src: /src/libxml2/xmlschemas.c:27269,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27270,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27272,1
    - Dst: xmlSchemaItemListFree
      Src: /src/libxml2/xmlschemas.c:27275,1
    - Dst: xmlDictFree
      Src: /src/libxml2/xmlschemas.c:27277,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27279,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27280,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 61
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27281
      start: 27201
    functionDepth: 4
    functionLinenumber: 27201
    functionLinenumberEnd: 27281
    functionName: xmlSchemaFreeValidCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 11
    functionsReached:
    - xmlSchemaIDCFreeKey
    - xmlDictFree
    - xmlSchemaClearElemInfo
    - xmlSchemaFreeParserCtxt
    - xmlFree
    - xmlSchemaFreeIDCStateObjList
    - xmlSchemaClearAttrInfos
    - xmlSchemaFreeValue
    - xmlSchemaItemListFree
    linkageType: ''
    returnType: void
    signature: void xmlSchemaFreeValidCtxt(xmlSchemaValidCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27296
      start: 27290
    functionDepth: 0
    functionLinenumber: 27290
    functionLinenumberEnd: 27296
    functionName: xmlSchemaIsValid
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaIsValid(xmlSchemaValidCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSetParserErrors
      Src: /src/libxml2/xmlschemas.c:27319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlSchemaValidityErrorFunc
    - xmlSchemaValidityWarningFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27320
      start: 27308
    functionDepth: 2
    functionLinenumber: 27308
    functionLinenumberEnd: 27320
    functionName: xmlSchemaSetValidErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 6
    functionsReached:
    - xmlSchemaSetParserErrors
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSetValidErrors(xmlSchemaValidCtxt *ctxt,\n                        xmlSchemaValidityErrorFunc
      err,\n                        xmlSchemaValidityWarningFunc warn, void *ctx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/xmlschemas.c:27340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctxt
    - serror
    - ctx
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlStructuredErrorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27341
      start: 27329
    functionDepth: 2
    functionLinenumber: 27329
    functionLinenumberEnd: 27341
    functionName: xmlSchemaSetValidStructuredErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 10
    functionsReached:
    - xmlSchemaSetParserStructuredErrors
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaSetValidStructuredErrors(xmlSchemaValidCtxt *ctxt,\n\t\t\t\t
      \ xmlStructuredErrorFunc serror, void *ctx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - ctxt
    - err
    - warn
    - ctx
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlSchemaValidityErrorFunc*
    - xmlSchemaValidityWarningFunc*
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27366
      start: 27352
    functionDepth: 0
    functionLinenumber: 27352
    functionLinenumberEnd: 27366
    functionName: xmlSchemaGetValidErrors
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaGetValidErrors(xmlSchemaValidCtxt *ctxt,\n\t\t\txmlSchemaValidityErrorFunc
      * err,\n\t\t\txmlSchemaValidityWarningFunc * warn, void **ctx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xmlSchemaValidCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27398
      start: 27377
    functionDepth: 0
    functionLinenumber: 27377
    functionLinenumberEnd: 27398
    functionName: xmlSchemaSetValidOptions
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaSetValidOptions(xmlSchemaValidCtxt *ctxt,\n\t\t\t int
      options)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27414
      start: 27406
    functionDepth: 0
    functionLinenumber: 27406
    functionLinenumberEnd: 27414
    functionName: xmlSchemaValidCtxtGetOptions
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidCtxtGetOptions(xmlSchemaValidCtxt *ctxt)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:27429,1
    - Dst: VERROR
      Src: /src/libxml2/xmlschemas.c:27432,1
    - Dst: xmlSchemaValidatorPushElem
      Src: /src/libxml2/xmlschemas.c:27447,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/xmlschemas.c:27471,1
    - Dst: xmlSchemaValidatorPushAttribute
      Src: /src/libxml2/xmlschemas.c:27473,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27483,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:27485,1
    - Dst: xmlSchemaValidateElem
      Src: /src/libxml2/xmlschemas.c:27494,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27497,1
    - Dst: xmlSchemaVPushText
      Src: /src/libxml2/xmlschemas.c:27517,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27520,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27533,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27558,1
    - Dst: xmlSchemaValidatorPopElem
      Src: /src/libxml2/xmlschemas.c:27562,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27565,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 116
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27586
      start: 27416
    functionDepth: 23
    functionLinenumber: 27416
    functionLinenumberEnd: 27586
    functionName: xmlSchemaVDocWalk
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValidateElem
    - xmlFree
    - VERROR_INT
    - xmlSchemaValidatorPushElem
    - xmlNodeListGetString
    - xmlSchemaValidatorPopElem
    - xmlDocGetRootElement
    - xmlSchemaValidatorPushAttribute
    - VERROR
    - xmlSchemaVPushText
    linkageType: ''
    returnType: int
    signature: int xmlSchemaVDocWalk(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaCreatePCtxtOnVCtxt
      Src: /src/libxml2/xmlschemas.c:27617,1
    - Dst: xmlSchemaNewSchema
      Src: /src/libxml2/xmlschemas.c:27624,1
    - Dst: xmlSchemaConstructionCtxtCreate
      Src: /src/libxml2/xmlschemas.c:27630,1
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlschemas.c:27643,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27647
      start: 27588
    functionDepth: 7
    functionLinenumber: 27588
    functionLinenumberEnd: 27647
    functionName: xmlSchemaPreRun
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaConstructionCtxtCreate
    - xmlSchemaCreatePCtxtOnVCtxt
    - xmlSchemaNewSchema
    - xmlHashScan
    linkageType: ''
    returnType: int
    signature: int xmlSchemaPreRun(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaFree
      Src: /src/libxml2/xmlschemas.c:27653,1
    - Dst: xmlSchemaClearValidCtxt
      Src: /src/libxml2/xmlschemas.c:27657,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27658
      start: 27649
    functionDepth: 6
    functionLinenumber: 27649
    functionLinenumberEnd: 27658
    functionName: xmlSchemaPostRun
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFree
    - xmlSchemaClearValidCtxt
    linkageType: ''
    returnType: void
    signature: void xmlSchemaPostRun(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPreRun
      Src: /src/libxml2/xmlschemas.c:27665,1
    - Dst: xmlSchemaVDocWalk
      Src: /src/libxml2/xmlschemas.c:27672,1
    - Dst: xmlSchemaVReaderWalk
      Src: /src/libxml2/xmlschemas.c:27679,1
    - Dst: xmlParseDocument
      Src: /src/libxml2/xmlschemas.c:27686,1
    - Dst: VERROR_INT
      Src: /src/libxml2/xmlschemas.c:27688,1
    - Dst: xmlSchemaPostRun
      Src: /src/libxml2/xmlschemas.c:27693,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27697
      start: 27660
    functionDepth: 24
    functionLinenumber: 27660
    functionLinenumberEnd: 27697
    functionName: xmlSchemaVStart
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - VERROR_INT
    - xmlSchemaVDocWalk
    - xmlSchemaVReaderWalk
    - xmlSchemaPostRun
    - xmlSchemaPreRun
    - xmlParseDocument
    linkageType: ''
    returnType: int
    signature: int xmlSchemaVStart(xmlSchemaValidCtxtPtr vctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaVStart
      Src: /src/libxml2/xmlschemas.c:27719,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - elem
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27720
      start: 27707
    functionDepth: 25
    functionLinenumber: 27707
    functionLinenumberEnd: 27720
    functionName: xmlSchemaValidateOneElement
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached:
    - xmlSchemaVStart
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidateOneElement(xmlSchemaValidCtxt *ctxt, xmlNode *elem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/xmlschemas.c:27737,1
    - Dst: xmlSchemaVStart
      Src: /src/libxml2/xmlschemas.c:27746,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27747
      start: 27730
    functionDepth: 25
    functionLinenumber: 27730
    functionLinenumberEnd: 27747
    functionName: xmlSchemaValidateDoc
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 4
    functionsReached:
    - xmlSchemaVStart
    - xmlDocGetRootElement
    linkageType: ''
    returnType: int
    signature: int xmlSchemaValidateDoc(xmlSchemaValidCtxt *ctxt, xmlDoc *doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::internalSubset
      Src: /src/libxml2/xmlschemas.c:27789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27791
      start: 27782
    functionDepth: 0
    functionLinenumber: 27782
    functionLinenumberEnd: 27791
    functionName: internalSubsetSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::internalSubset
    linkageType: ''
    returnType: void
    signature: "void internalSubsetSplit(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::isStandalone
      Src: /src/libxml2/xmlschemas.c:27799,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27801
      start: 27793
    functionDepth: 0
    functionLinenumber: 27793
    functionLinenumberEnd: 27801
    functionName: isStandaloneSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::isStandalone
    linkageType: ''
    returnType: int
    signature: int isStandaloneSplit(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::hasInternalSubset
      Src: /src/libxml2/xmlschemas.c:27809,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27811
      start: 27803
    functionDepth: 0
    functionLinenumber: 27803
    functionLinenumberEnd: 27811
    functionName: hasInternalSubsetSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::hasInternalSubset
    linkageType: ''
    returnType: int
    signature: int hasInternalSubsetSplit(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::hasExternalSubset
      Src: /src/libxml2/xmlschemas.c:27819,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27821
      start: 27813
    functionDepth: 0
    functionLinenumber: 27813
    functionLinenumberEnd: 27821
    functionName: hasExternalSubsetSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::hasExternalSubset
    linkageType: ''
    returnType: int
    signature: int hasExternalSubsetSplit(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::externalSubset
      Src: /src/libxml2/xmlschemas.c:27830,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27832
      start: 27823
    functionDepth: 0
    functionLinenumber: 27823
    functionLinenumberEnd: 27832
    functionName: externalSubsetSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::externalSubset
    linkageType: ''
    returnType: void
    signature: "void externalSubsetSplit(void *ctx, const xmlChar *name,\n\t       const
      xmlChar *ExternalID, const xmlChar *SystemID)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::resolveEntity
      Src: /src/libxml2/xmlschemas.c:27840,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27843
      start: 27834
    functionDepth: 0
    functionLinenumber: 27834
    functionLinenumberEnd: 27843
    functionName: resolveEntitySplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::resolveEntity
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: xmlParserInputPtr resolveEntitySplit(void *ctx, const xmlChar *publicId,
      const xmlChar *systemId)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::getEntity
      Src: /src/libxml2/xmlschemas.c:27851,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27853
      start: 27845
    functionDepth: 0
    functionLinenumber: 27845
    functionLinenumberEnd: 27853
    functionName: getEntitySplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::getEntity
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getEntitySplit(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::getParameterEntity
      Src: /src/libxml2/xmlschemas.c:27861,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27863
      start: 27855
    functionDepth: 0
    functionLinenumber: 27855
    functionLinenumberEnd: 27863
    functionName: getParameterEntitySplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::getParameterEntity
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr getParameterEntitySplit(void *ctx, const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::entityDecl
      Src: /src/libxml2/xmlschemas.c:27873,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 6
    argNames:
    - ctx
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27875
      start: 27866
    functionDepth: 0
    functionLinenumber: 27866
    functionLinenumberEnd: 27875
    functionName: entityDeclSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::entityDecl
    linkageType: ''
    returnType: void
    signature: "void entityDeclSplit(void *ctx, const xmlChar *name, int type,\n          const
      xmlChar *publicId, const xmlChar *systemId, xmlChar *content)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::attributeDecl
      Src: /src/libxml2/xmlschemas.c:27885,1
    - Dst: xmlFreeEnumeration
      Src: /src/libxml2/xmlschemas.c:27888,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 7
    argNames:
    - ctx
    - elem
    - name
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27890
      start: 27877
    functionDepth: 1
    functionLinenumber: 27877
    functionLinenumberEnd: 27890
    functionName: attributeDeclSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::attributeDecl
    - xmlFreeEnumeration
    linkageType: ''
    returnType: void
    signature: "void attributeDeclSplit(void *ctx, const xmlChar * elem,\n                   const
      xmlChar * name, int type, int def,\n                   const xmlChar * defaultValue,
      xmlEnumerationPtr tree)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::elementDecl
      Src: /src/libxml2/xmlschemas.c:27899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - type
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27900
      start: 27892
    functionDepth: 0
    functionLinenumber: 27892
    functionLinenumberEnd: 27900
    functionName: elementDeclSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::elementDecl
    linkageType: ''
    returnType: void
    signature: "void elementDeclSplit(void *ctx, const xmlChar *name, int type,\n\t
      \   xmlElementContentPtr content)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::notationDecl
      Src: /src/libxml2/xmlschemas.c:27909,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 4
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27911
      start: 27902
    functionDepth: 0
    functionLinenumber: 27902
    functionLinenumberEnd: 27911
    functionName: notationDeclSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::notationDecl
    linkageType: ''
    returnType: void
    signature: "void notationDeclSplit(void *ctx, const xmlChar *name,\n\t     const
      xmlChar *publicId, const xmlChar *systemId)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::unparsedEntityDecl
      Src: /src/libxml2/xmlschemas.c:27921,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 5
    argNames:
    - ctx
    - name
    - publicId
    - systemId
    - notationName
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27923
      start: 27913
    functionDepth: 0
    functionLinenumber: 27913
    functionLinenumberEnd: 27923
    functionName: unparsedEntityDeclSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::unparsedEntityDecl
    linkageType: ''
    returnType: void
    signature: "void unparsedEntityDeclSplit(void *ctx, const xmlChar *name,\n\t\t
      \  const xmlChar *publicId, const xmlChar *systemId,\n\t\t   const xmlChar *notationName)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::setDocumentLocator
      Src: /src/libxml2/xmlschemas.c:27931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - loc
    argTypes:
    - void*
    - xmlSAXLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27932
      start: 27925
    functionDepth: 0
    functionLinenumber: 27925
    functionLinenumberEnd: 27932
    functionName: setDocumentLocatorSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::setDocumentLocator
    linkageType: ''
    returnType: void
    signature: void setDocumentLocatorSplit(void *ctx, xmlSAXLocatorPtr loc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::startDocument
      Src: /src/libxml2/xmlschemas.c:27940,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27941
      start: 27934
    functionDepth: 0
    functionLinenumber: 27934
    functionLinenumberEnd: 27941
    functionName: startDocumentSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::startDocument
    linkageType: ''
    returnType: void
    signature: void startDocumentSplit(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::endDocument
      Src: /src/libxml2/xmlschemas.c:27949,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27950
      start: 27943
    functionDepth: 0
    functionLinenumber: 27943
    functionLinenumberEnd: 27950
    functionName: endDocumentSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::endDocument
    linkageType: ''
    returnType: void
    signature: void endDocumentSplit(void *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::processingInstruction
      Src: /src/libxml2/xmlschemas.c:27959,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27960
      start: 27952
    functionDepth: 0
    functionLinenumber: 27952
    functionLinenumberEnd: 27960
    functionName: processingInstructionSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::processingInstruction
    linkageType: ''
    returnType: void
    signature: "void processingInstructionSplit(void *ctx, const xmlChar *target,\n
      \                     const xmlChar *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::comment
      Src: /src/libxml2/xmlschemas.c:27968,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27969
      start: 27962
    functionDepth: 0
    functionLinenumber: 27962
    functionLinenumberEnd: 27969
    functionName: commentSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::comment
    linkageType: ''
    returnType: void
    signature: void commentSplit(void *ctx, const xmlChar *value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27982
      start: 27975
    functionDepth: 0
    functionLinenumber: 27975
    functionLinenumberEnd: 27982
    functionName: warningSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void warningSplit(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27990
      start: 27983
    functionDepth: 0
    functionLinenumber: 27983
    functionLinenumberEnd: 27990
    functionName: errorSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void errorSplit(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27998
      start: 27991
    functionDepth: 0
    functionLinenumber: 27991
    functionLinenumberEnd: 27998
    functionName: fatalErrorSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void fatalErrorSplit(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::characters
      Src: /src/libxml2/xmlschemas.c:28011,1
    - Dst: xmlSchemaSAXHandleText
      Src: /src/libxml2/xmlschemas.c:28013,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28014
      start: 28004
    functionDepth: 5
    functionLinenumber: 28004
    functionLinenumberEnd: 28014
    functionName: charactersSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::characters
    - xmlSchemaSAXHandleText
    linkageType: ''
    returnType: void
    signature: void charactersSplit(void *ctx, const xmlChar *ch, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::ignorableWhitespace
      Src: /src/libxml2/xmlschemas.c:28024,1
    - Dst: xmlSchemaSAXHandleText
      Src: /src/libxml2/xmlschemas.c:28026,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28027
      start: 28016
    functionDepth: 5
    functionLinenumber: 28016
    functionLinenumberEnd: 28027
    functionName: ignorableWhitespaceSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::ignorableWhitespace
    - xmlSchemaSAXHandleText
    linkageType: ''
    returnType: void
    signature: void ignorableWhitespaceSplit(void *ctx, const xmlChar *ch, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::cdataBlock
      Src: /src/libxml2/xmlschemas.c:28037,1
    - Dst: xmlSchemaSAXHandleCDataSection
      Src: /src/libxml2/xmlschemas.c:28039,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - value
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28040
      start: 28029
    functionDepth: 5
    functionLinenumber: 28029
    functionLinenumberEnd: 28040
    functionName: cdataBlockSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::cdataBlock
    - xmlSchemaSAXHandleCDataSection
    linkageType: ''
    returnType: void
    signature: void cdataBlockSplit(void *ctx, const xmlChar *value, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::reference
      Src: /src/libxml2/xmlschemas.c:28050,1
    - Dst: xmlSchemaSAXHandleReference
      Src: /src/libxml2/xmlschemas.c:28052,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28053
      start: 28042
    functionDepth: 1
    functionLinenumber: 28042
    functionLinenumberEnd: 28053
    functionName: referenceSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXHandleReference
    - xmlSchemaSAXPlugPtr::user_sax::reference
    linkageType: ''
    returnType: void
    signature: void referenceSplit(void *ctx, const xmlChar *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::startElementNs
      Src: /src/libxml2/xmlschemas.c:28066,1
    - Dst: xmlSchemaSAXHandleStartElementNs
      Src: /src/libxml2/xmlschemas.c:28071,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 9
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    - nb_namespaces
    - namespaces
    - nb_attributes
    - nb_defaulted
    - attributes
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - int
    - xmlChar**
    - int
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28075
      start: 28055
    functionDepth: 24
    functionLinenumber: 28055
    functionLinenumberEnd: 28075
    functionName: startElementNsSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::startElementNs
    - xmlSchemaSAXHandleStartElementNs
    linkageType: ''
    returnType: void
    signature: "void startElementNsSplit(void *ctx, const xmlChar * localname,\n\t\t
      \   const xmlChar * prefix, const xmlChar * URI,\n\t\t    int nb_namespaces,
      const xmlChar ** namespaces,\n\t\t    int nb_attributes, int nb_defaulted,\n\t\t
      \   const xmlChar ** attributes)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaSAXPlugPtr::user_sax::endElementNs
      Src: /src/libxml2/xmlschemas.c:28085,1
    - Dst: xmlSchemaSAXHandleEndElementNs
      Src: /src/libxml2/xmlschemas.c:28087,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - localname
    - prefix
    - URI
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28088
      start: 28077
    functionDepth: 15
    functionLinenumber: 28077
    functionLinenumberEnd: 28088
    functionName: endElementNsSplit
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaSAXPlugPtr::user_sax::endElementNs
    - xmlSchemaSAXHandleEndElementNs
    linkageType: ''
    returnType: void
    signature: "void endElementNsSplit(void *ctx, const xmlChar * localname,\n\t\t
      \   const xmlChar * prefix, const xmlChar * URI)"
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlschemas.c:28125,1
    - Dst: memset
      Src: /src/libxml2/xmlschemas.c:28129,1
    - Dst: xmlSchemaPreRun
      Src: /src/libxml2/xmlschemas.c:28230,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 87
    argCount: 3
    argNames:
    - ctxt
    - sax
    - user_data
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlSAXHandler**
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28232
      start: 28101
    functionDepth: 8
    functionLinenumber: 28101
    functionLinenumberEnd: 28232
    functionName: xmlSchemaSAXPlug
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlSchemaPreRun
    - memset
    linkageType: ''
    returnType: xmlSchemaSAXPlugStruct
    signature: "xmlSchemaSAXPlugStruct *\nxmlSchemaSAXPlug(xmlSchemaValidCtxt *ctxt,\n\t\t
      xmlSAXHandler **sax, void **user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaPostRun
      Src: /src/libxml2/xmlschemas.c:28251,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:28261,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - plug
    argTypes:
    - xmlSchemaSAXPlugStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28263
      start: 28241
    functionDepth: 7
    functionLinenumber: 28241
    functionLinenumberEnd: 28263
    functionName: xmlSchemaSAXUnplug
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 4
    functionsReached:
    - xmlSchemaPostRun
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSchemaSAXUnplug(xmlSchemaSAXPlugStruct *plug)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - vctxt
    - f
    - ctxt
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlSchemaValidityLocatorFunc
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28284
      start: 28276
    functionDepth: 0
    functionLinenumber: 28276
    functionLinenumberEnd: 28284
    functionName: xmlSchemaValidateSetLocator
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlSchemaValidateSetLocator(xmlSchemaValidCtxt *vctxt,\n                            xmlSchemaValidityLocatorFunc
      f,\n\t\t\t    void *ctxt)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - file
    - line
    argTypes:
    - void*
    - char**
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28317
      start: 28295
    functionDepth: 0
    functionLinenumber: 28295
    functionLinenumberEnd: 28317
    functionName: xmlSchemaValidateStreamLocator
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateStreamLocator(void *ctx, const char **file,\n
      \                              unsigned long *line)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSchemaValidateSetLocator
      Src: /src/libxml2/xmlschemas.c:28331,1
    - Dst: xmlSchemaSAXPlug
      Src: /src/libxml2/xmlschemas.c:28339,1
    - Dst: xmlSchemaVStart
      Src: /src/libxml2/xmlschemas.c:28347,1
    - Dst: xmlSchemaSAXUnplug
      Src: /src/libxml2/xmlschemas.c:28360,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - pctxt
    argTypes:
    - xmlSchemaValidCtxtPtr
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28363
      start: 28325
    functionDepth: 25
    functionLinenumber: 28325
    functionLinenumberEnd: 28363
    functionName: xmlSchemaValidateStreamInternal
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 0
    functionsReached:
    - xmlSchemaValidateSetLocator
    - xmlSchemaSAXUnplug
    - xmlSchemaSAXPlug
    - xmlSchemaVStart
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateStreamInternal(xmlSchemaValidCtxtPtr ctxt,\n
      \                                xmlParserCtxtPtr pctxt)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/xmlschemas.c:28394,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/xmlschemas.c:28398,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:28402,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/xmlschemas.c:28407,1
    - Dst: xmlNewIOInputStream
      Src: /src/libxml2/xmlschemas.c:28410,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/xmlschemas.c:28415,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/xmlschemas.c:28416,1
    - Dst: xmlSchemaValidateStreamInternal
      Src: /src/libxml2/xmlschemas.c:28423,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:28428,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 5
    argNames:
    - ctxt
    - input
    - enc
    - sax
    - user_data
    argTypes:
    - xmlSchemaValidCtxt*
    - xmlParserInputBuffer*
    - xmlCharEncoding
    - xmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28431
      start: 28378
    functionDepth: 26
    functionLinenumber: 28378
    functionLinenumberEnd: 28431
    functionName: xmlSchemaValidateStream
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlCtxtPushInput
    - xmlSchemaValidateStreamInternal
    - xmlCtxtUseOptions
    - xmlNewSAXParserCtxt
    - xmlFree
    - xmlNewParserCtxt
    - xmlNewIOInputStream
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateStream(xmlSchemaValidCtxt *ctxt,\n                        xmlParserInputBuffer
      *input, xmlCharEncoding enc,\n                        const xmlSAXHandler *sax,
      void *user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateURLParserCtxt
      Src: /src/libxml2/xmlschemas.c:28454,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlschemas.c:28458,1
    - Dst: xmlSchemaValidateStreamInternal
      Src: /src/libxml2/xmlschemas.c:28460,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/xmlschemas.c:28461,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctxt
    - filename
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlSchemaValidCtxt*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28463
      start: 28443
    functionDepth: 26
    functionLinenumber: 28443
    functionLinenumberEnd: 28463
    functionName: xmlSchemaValidateFile
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 2
    functionsReached:
    - xmlSchemaValidateStreamInternal
    - xmlCreateURLParserCtxt
    - xmlFreeParserCtxt
    - xmlFree
    linkageType: ''
    returnType: int
    signature: "int xmlSchemaValidateFile(xmlSchemaValidCtxt *ctxt,\n                      const
      char * filename,\n\t\t      int options ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaValidCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28478
      start: 28472
    functionDepth: 0
    functionLinenumber: 28472
    functionLinenumberEnd: 28478
    functionName: xmlSchemaValidCtxtGetParserCtxt
    functionSourceFile: /src/libxml2/xmlschemas.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlParserCtxt
    signature: 'xmlParserCtxt *

      xmlSchemaValidCtxtGetParserCtxt(xmlSchemaValidCtxt *ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: ERROR
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 62
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERROR(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - index
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: NXT
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 51
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(index)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: NEXTL
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEXTL(l)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/xmlregexp.c:93,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - sptr
    - numentries
    - tname
    argTypes:
    - xmlUnicodeRange*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 102
    functionName: xmlUnicodeLookup
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: xmlChRangeGroup
    signature: "xmlChRangeGroup *\nxmlUnicodeLookup(const xmlUnicodeRange *sptr, int
      numentries,\n                 const char *tname)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlUnicodeLookup
      Src: /src/libxml2/xmlregexp.c:115,1
    - Dst: xmlCharInRange
      Src: /src/libxml2/xmlregexp.c:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - code
    - block
    argTypes:
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 120
    functionName: xmlUCSIsBlock
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlCharInRange
    - xmlUnicodeLookup
    linkageType: ''
    returnType: int
    signature: int xmlUCSIsBlock(int code, const char *block)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlregexp.c:428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 429
    functionName: xmlRegexpErrMemory
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlRegexpErrMemory(xmlRegParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseError
      Src: /src/libxml2/xmlregexp.c:450,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:455,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctxt
    - extra
    argTypes:
    - xmlRegParserCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 437
    functionDepth: 5
    functionLinenumber: 437
    functionLinenumberEnd: 456
    functionName: xmlRegexpErrCompile
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: void
    signature: void xmlRegexpErrCompile(xmlRegParserCtxtPtr ctxt, const char *extra)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:487,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:489,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - dim1
    - dim2
    - elemSize
    argTypes:
    - size_t
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 474
    functionDepth: 0
    functionLinenumber: 474
    functionLinenumberEnd: 491
    functionName: xmlRegCalloc2
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlRegCalloc2(size_t dim1, size_t dim2, size_t elemSize)'
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:503,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:505,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:508,1
    - Dst: xmlRegexpIsDeterminist
      Src: /src/libxml2/xmlregexp.c:519,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:520,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:521,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:548,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:550,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:551,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:562,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:564,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:565,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:566,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:569,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:571,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:572,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:573,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:574,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:582,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:589,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:592,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:593,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:594,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:595,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:596,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:602,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:603,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:605,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:606,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:607,1
    - Dst: xmlRegCalloc2
      Src: /src/libxml2/xmlregexp.c:611,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:614,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:615,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:617,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:618,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:619,1
    - Dst: xmlRegCalloc2
      Src: /src/libxml2/xmlregexp.c:647,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:650,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:665,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:666,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:667,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:668,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:670,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:671,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:689,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:690,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:696,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:697,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:707,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:708,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 171
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 499
    functionDepth: 3
    functionLinenumber: 499
    functionLinenumberEnd: 719
    functionName: xmlRegEpxFromParse
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRegCalloc2
    - xmlRegexpIsDeterminist
    - xmlStrEqual
    - xmlFree
    - xmlMalloc
    - xmlRegexpErrMemory
    - xmlRegFreeState
    - xmlRegFreeAtom
    - memset
    linkageType: ''
    returnType: xmlRegexpPtr
    signature: xmlRegexpPtr xmlRegEpxFromParse(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:731,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:734,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:736,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:738,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - string
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 727
    functionDepth: 2
    functionLinenumber: 727
    functionLinenumberEnd: 748
    functionName: xmlRegNewParserCtxt
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlRegParserCtxtPtr
    signature: xmlRegParserCtxtPtr xmlRegNewParserCtxt(const xmlChar *string)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:765,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:767,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 5
    argNames:
    - ctxt
    - neg
    - type
    - start
    - end
    argTypes:
    - xmlRegParserCtxtPtr
    - int
    - xmlRegAtomType
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 760
    functionDepth: 3
    functionLinenumber: 760
    functionLinenumberEnd: 775
    functionName: xmlRegNewRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: xmlRegRangePtr
    signature: "xmlRegRangePtr xmlRegNewRange(xmlRegParserCtxtPtr ctxt,\n\t       int
      neg, xmlRegAtomType type, int start, int end)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:788,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - range
    argTypes:
    - xmlRegRangePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 790
    functionName: xmlRegFreeRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeRange(xmlRegRangePtr range)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewRange
      Src: /src/libxml2/xmlregexp.c:806,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:811,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:813,1
    - Dst: xmlRegFreeRange
      Src: /src/libxml2/xmlregexp.c:814,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctxt
    - range
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegRangePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 799
    functionDepth: 4
    functionLinenumber: 799
    functionLinenumberEnd: 819
    functionName: xmlRegCopyRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlRegexpErrMemory
    - xmlRegFreeRange
    - xmlRegNewRange
    linkageType: ''
    returnType: xmlRegRangePtr
    signature: xmlRegRangePtr xmlRegCopyRange(xmlRegParserCtxtPtr ctxt, xmlRegRangePtr
      range)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:832,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:834,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ctxt
    - type
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegAtomType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 828
    functionDepth: 3
    functionLinenumber: 828
    functionLinenumberEnd: 843
    functionName: xmlRegNewAtom
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRegexpErrMemory
    - memset
    linkageType: ''
    returnType: xmlRegAtomPtr
    signature: xmlRegAtomPtr xmlRegNewAtom(xmlRegParserCtxtPtr ctxt, xmlRegAtomType
      type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegFreeRange
      Src: /src/libxml2/xmlregexp.c:858,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:860,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:862,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:864,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:866,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:867,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 1
    argNames:
    - atom
    argTypes:
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 868
    functionName: xmlRegFreeAtom
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlRegFreeRange
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeAtom(xmlRegAtomPtr atom)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:881,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:883,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:886,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:894,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:897,1
    - Dst: xmlRegCopyRange
      Src: /src/libxml2/xmlregexp.c:901,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:910,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - ctxt
    - atom
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 877
    functionDepth: 5
    functionLinenumber: 877
    functionLinenumberEnd: 912
    functionName: xmlRegCopyAtom
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRegCopyRange
    - xmlRegexpErrMemory
    - xmlRegFreeAtom
    - memset
    linkageType: ''
    returnType: xmlRegAtomPtr
    signature: xmlRegAtomPtr xmlRegCopyAtom(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr
      atom)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:918,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:920,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:923,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 914
    functionDepth: 3
    functionLinenumber: 914
    functionLinenumberEnd: 927
    functionName: xmlRegNewState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlRegexpErrMemory
    - memset
    linkageType: ''
    returnType: xmlRegStatePtr
    signature: xmlRegStatePtr xmlRegNewState(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:940,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:942,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:943,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - state
    argTypes:
    - xmlRegStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 944
    functionName: xmlRegFreeState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeState(xmlRegStatePtr state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:958,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:961,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:962,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:966,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:967,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:970,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:971,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 951
    functionDepth: 2
    functionLinenumber: 951
    functionLinenumberEnd: 972
    functionName: xmlRegFreeParserCtxt
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegFreeAtom
    - xmlFree
    - xmlRegFreeState
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeParserCtxt(xmlRegParserCtxtPtr ctxt)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:985,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:987,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:989,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:991,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:993,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:995,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:997,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:999,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1001,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1003,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1005,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1007,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1009,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1011,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1013,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1015,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1017,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1019,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1021,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1023,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1025,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1027,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1029,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1031,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1033,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1035,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1037,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1039,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1041,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1043,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1045,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1047,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1049,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1051,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1053,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1055,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1057,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1059,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1061,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1063,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1065,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1067,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1069,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1071,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1073,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1075,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1077,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1079,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1081,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1083,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1085,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1087,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1089,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 162
    argCount: 2
    argNames:
    - output
    - type
    argTypes:
    - FILE*
    - xmlRegAtomType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 1091
    functionName: xmlRegPrintAtomType
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintAtomType(FILE *output, xmlRegAtomType type)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1097,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1099,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1101,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1103,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1105,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1107,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1109,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - output
    - type
    argTypes:
    - FILE*
    - xmlRegQuantType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1093
    functionDepth: 0
    functionLinenumber: 1093
    functionLinenumberEnd: 1113
    functionName: xmlRegPrintQuantType
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintQuantType(FILE *output, xmlRegQuantType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1116,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1118,1
    - Dst: xmlRegPrintAtomType
      Src: /src/libxml2/xmlregexp.c:1119,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - output
    - range
    argTypes:
    - FILE*
    - xmlRegRangePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1114
    functionDepth: 1
    functionLinenumber: 1114
    functionLinenumberEnd: 1121
    functionName: xmlRegPrintRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegPrintAtomType
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintRange(FILE *output, xmlRegRangePtr range)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1125,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1127,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1131,1
    - Dst: xmlRegPrintAtomType
      Src: /src/libxml2/xmlregexp.c:1132,1
    - Dst: xmlRegPrintQuantType
      Src: /src/libxml2/xmlregexp.c:1133,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1135,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1137,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1139,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1142,1
    - Dst: xmlRegPrintRange
      Src: /src/libxml2/xmlregexp.c:1144,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1146,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - output
    - atom
    argTypes:
    - FILE*
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1123
    functionDepth: 2
    functionLinenumber: 1123
    functionLinenumberEnd: 1148
    functionName: xmlRegPrintAtom
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegPrintAtomType
    - fprintf
    - xmlRegPrintQuantType
    - xmlRegPrintRange
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintAtom(FILE *output, xmlRegAtomPtr atom)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1157,1
    - Dst: xmlRegPrintAtomType
      Src: /src/libxml2/xmlregexp.c:1159,1
    - Dst: xmlRegPrintQuantType
      Src: /src/libxml2/xmlregexp.c:1160,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1161,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - output
    - regexp
    - atom
    argTypes:
    - FILE*
    - xmlRegexpPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1163
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1163
    functionName: xmlRegPrintAtomCompact
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegPrintAtomType
    - fprintf
    - xmlRegPrintQuantType
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintAtomCompact(FILE* output, xmlRegexpPtr regexp, int
      atom)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1167,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1169,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1173,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1178,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1180,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1183,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1186,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1188,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1191,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1195,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1196,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - output
    - trans
    argTypes:
    - FILE*
    - xmlRegTransPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1165
    functionDepth: 0
    functionLinenumber: 1165
    functionLinenumberEnd: 1197
    functionName: xmlRegPrintTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintTrans(FILE *output, xmlRegTransPtr trans)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1213,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1217,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 4
    argNames:
    - output
    - regexp
    - state
    - atom
    argTypes:
    - FILE*
    - xmlRegexpPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1250
      start: 1199
    functionDepth: 0
    functionLinenumber: 1199
    functionLinenumberEnd: 1250
    functionName: xmlRegPrintTransCompact
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlRegPrintTransCompact(\n    FILE* output,\n    xmlRegexpPtr
      regexp,\n    int state,\n    int atom\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1256,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1258,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1262,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1264,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1266,1
    - Dst: xmlRegPrintTrans
      Src: /src/libxml2/xmlregexp.c:1268,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - output
    - state
    argTypes:
    - FILE*
    - xmlRegStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1252
    functionDepth: 1
    functionLinenumber: 1252
    functionLinenumberEnd: 1270
    functionName: xmlRegPrintState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRegPrintTrans
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintState(FILE *output, xmlRegStatePtr state)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1285,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1289,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1293,1
    - Dst: xmlRegPrintAtomCompact
      Src: /src/libxml2/xmlregexp.c:1298,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1311,1
    - Dst: xmlRegPrintTransCompact
      Src: /src/libxml2/xmlregexp.c:1315,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 3
    argNames:
    - output
    - regexp
    - state
    argTypes:
    - FILE*
    - xmlRegexpPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1317
      start: 1272
    functionDepth: 2
    functionLinenumber: 1272
    functionLinenumberEnd: 1317
    functionName: xmlRegPrintStateCompact
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRegPrintTransCompact
    - xmlRegPrintAtomCompact
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintStateCompact(FILE* output, xmlRegexpPtr regexp, int
      state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1334,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1336,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1337,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1339,1
    - Dst: xmlRegPrintAtomCompact
      Src: /src/libxml2/xmlregexp.c:1340,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1343,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1344,1
    - Dst: xmlRegPrintStateCompact
      Src: /src/libxml2/xmlregexp.c:1346,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1349,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - output
    - regexp
    argTypes:
    - FILE*
    - xmlRegexpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1350
      start: 1326
    functionDepth: 3
    functionLinenumber: 1326
    functionLinenumberEnd: 1350
    functionName: xmlRegPrintCompact
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlRegPrintAtomCompact
    - xmlRegPrintStateCompact
    linkageType: ''
    returnType: void
    signature: void xmlRegPrintCompact(FILE* output, xmlRegexpPtr regexp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1358,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1360,1
    - Dst: xmlRegPrintCompact
      Src: /src/libxml2/xmlregexp.c:1364,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1368,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1369,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1370,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1372,1
    - Dst: xmlRegPrintAtom
      Src: /src/libxml2/xmlregexp.c:1373,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1375,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1376,1
    - Dst: xmlRegPrintState
      Src: /src/libxml2/xmlregexp.c:1378,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1380,1
    - Dst: fprintf
      Src: /src/libxml2/xmlregexp.c:1382,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - output
    - regexp
    argTypes:
    - FILE*
    - xmlRegexpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1352
    functionDepth: 4
    functionLinenumber: 1352
    functionLinenumberEnd: 1385
    functionName: xmlRegexpPrintInternal
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegPrintState
    - fprintf
    - xmlRegPrintAtom
    - xmlRegPrintCompact
    linkageType: ''
    returnType: void
    signature: void xmlRegexpPrintInternal(FILE *output, xmlRegexpPtr regexp)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1401,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1405,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1412,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1415,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1418,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1420,1
    - Dst: xmlRegNewRange
      Src: /src/libxml2/xmlregexp.c:1426,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 7
    argNames:
    - ctxt
    - atom
    - neg
    - type
    - start
    - end
    - blockName
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegAtomPtr
    - int
    - xmlRegAtomType
    - int
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1394
    functionDepth: 4
    functionLinenumber: 1394
    functionLinenumberEnd: 1433
    functionName: xmlRegAtomAddRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlRegexpErrMemory
    - xmlRegNewRange
    - xmlGrowCapacity
    - ERROR
    linkageType: ''
    returnType: xmlRegRangePtr
    signature: "xmlRegRangePtr xmlRegAtomAddRange(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr
      atom,\n\t           int neg, xmlRegAtomType type, int start, int end,\n\t\t
      \  xmlChar *blockName)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1441,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1444,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1447,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1449,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1435
    functionDepth: 3
    functionLinenumber: 1435
    functionLinenumberEnd: 1458
    functionName: xmlRegGetCounter
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlRegGetCounter(xmlRegParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1463,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1470,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1473,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1476,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1478,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - atom
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1460
    functionDepth: 3
    functionLinenumber: 1460
    functionLinenumberEnd: 1487
    functionName: xmlRegAtomPush
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - ERROR
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: int
    signature: int xmlRegAtomPush(xmlRegParserCtxtPtr ctxt, xmlRegAtomPtr atom)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1496,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1499,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1502,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1504,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ctxt
    - target
    - from
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1489
    functionDepth: 3
    functionLinenumber: 1489
    functionLinenumberEnd: 1512
    functionName: xmlRegStateAddTransTo
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: void
    signature: "void xmlRegStateAddTransTo(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr
      target,\n                      int from)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1522,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1526,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1549,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1552,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1555,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1557,1
    - Dst: xmlRegStateAddTransTo
      Src: /src/libxml2/xmlregexp.c:1570,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 6
    argNames:
    - ctxt
    - state
    - atom
    - target
    - counter
    - count
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegAtomPtr
    - xmlRegStatePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1571
      start: 1514
    functionDepth: 4
    functionLinenumber: 1514
    functionLinenumberEnd: 1571
    functionName: xmlRegStateAddTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlRegexpErrMemory
    - xmlRegStateAddTransTo
    - xmlGrowCapacity
    - ERROR
    linkageType: ''
    returnType: void
    signature: "void xmlRegStateAddTrans(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr
      state,\n\t            xmlRegAtomPtr atom, xmlRegStatePtr target,\n\t\t    int
      counter, int count)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:1581,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1584,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:1587,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:1589,1
    - Dst: xmlRegNewState
      Src: /src/libxml2/xmlregexp.c:1596,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1604
      start: 1573
    functionDepth: 4
    functionLinenumber: 1573
    functionLinenumberEnd: 1604
    functionName: xmlRegStatePush
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegNewState
    - xmlGrowCapacity
    - xmlRealloc
    - xmlRegexpErrMemory
    linkageType: ''
    returnType: xmlRegStatePtr
    signature: xmlRegStatePtr xmlRegStatePush(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1617,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1623,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1625,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ctxt
    - from
    - to
    - lax
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegStatePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1612
    functionDepth: 5
    functionLinenumber: 1612
    functionLinenumberEnd: 1627
    functionName: xmlFAGenerateAllTransition
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStatePush
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: int
    signature: "int xmlFAGenerateAllTransition(xmlRegParserCtxtPtr ctxt,\n\t\t\t   xmlRegStatePtr
      from, xmlRegStatePtr to,\n\t\t\t   int lax)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1638,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1643,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctxt
    - from
    - to
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1645
      start: 1634
    functionDepth: 5
    functionLinenumber: 1634
    functionLinenumberEnd: 1645
    functionName: xmlFAGenerateEpsilonTransition
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStatePush
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: int
    signature: "int xmlFAGenerateEpsilonTransition(xmlRegParserCtxtPtr ctxt,\n\t\t\t
      \      xmlRegStatePtr from, xmlRegStatePtr to)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1657,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctxt
    - from
    - to
    - counter
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegStatePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1653
    functionDepth: 5
    functionLinenumber: 1653
    functionLinenumberEnd: 1664
    functionName: xmlFAGenerateCountedEpsilonTransition
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStatePush
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: int
    signature: "int xmlFAGenerateCountedEpsilonTransition(xmlRegParserCtxtPtr ctxt,\n\t
      \   xmlRegStatePtr from, xmlRegStatePtr to, int counter)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1676,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1681,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctxt
    - from
    - to
    - counter
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegStatePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1672
    functionDepth: 5
    functionLinenumber: 1672
    functionLinenumberEnd: 1683
    functionName: xmlFAGenerateCountedTransition
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStatePush
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: int
    signature: "int xmlFAGenerateCountedTransition(xmlRegParserCtxtPtr ctxt,\n\t    xmlRegStatePtr
      from, xmlRegStatePtr to, int counter)"
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:1699,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1712,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1716,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1720,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1732,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1733,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1736,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1741,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1742,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1746,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1758,1
    - Dst: xmlRegCopyAtom
      Src: /src/libxml2/xmlregexp.c:1780,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:1787,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:1789,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:1793,1
    - Dst: xmlFAGenerateCountedEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1799,1
    - Dst: xmlFAGenerateCountedTransition
      Src: /src/libxml2/xmlregexp.c:1802,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1805,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:1813,1
    - Dst: xmlFAGenerateCountedTransition
      Src: /src/libxml2/xmlregexp.c:1819,1
    - Dst: xmlFAGenerateCountedEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1822,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1826,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:1841,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1851,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1855,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:1857,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1861,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:1875,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1878,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1888,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1893,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1897,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1898,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1902,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:1906,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:1911,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 145
    argCount: 4
    argNames:
    - ctxt
    - from
    - to
    - atom
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - xmlRegStatePtr
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1914
      start: 1692
    functionDepth: 6
    functionLinenumber: 1692
    functionLinenumberEnd: 1914
    functionName: xmlFAGenerateTransitions
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlRegAtomPush
    - xmlRegCopyAtom
    - xmlFAGenerateEpsilonTransition
    - xmlFAGenerateTransitions
    - xmlFAGenerateCountedTransition
    - xmlRegStateAddTrans
    - xmlRegGetCounter
    - xmlRegStatePush
    - xmlRegFreeAtom
    - ERROR
    - xmlFAGenerateCountedEpsilonTransition
    linkageType: ''
    returnType: int
    signature: "int xmlFAGenerateTransitions(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr
      from,\n\t                 xmlRegStatePtr to, xmlRegAtomPtr atom)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1962,1
    - Dst: xmlFAReduceEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:1965,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:1970,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 4
    argNames:
    - ctxt
    - fromnr
    - tonr
    - counter
    argTypes:
    - xmlRegParserCtxtPtr
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1974
      start: 1922
    functionDepth: 5
    functionLinenumber: 1922
    functionLinenumberEnd: 1974
    functionName: xmlFAReduceEpsilonTransitions
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFAReduceEpsilonTransitions
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: void
    signature: "void xmlFAReduceEpsilonTransitions(xmlRegParserCtxtPtr ctxt, int fromnr,\n\t
      \                     int tonr, int counter)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAFinishReduceEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:1996,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - tonr
    argTypes:
    - xmlRegParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1980
    functionDepth: 1
    functionLinenumber: 1980
    functionLinenumberEnd: 1998
    functionName: xmlFAFinishReduceEpsilonTransitions
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFAFinishReduceEpsilonTransitions
    linkageType: ''
    returnType: void
    signature: void xmlFAFinishReduceEpsilonTransitions(xmlRegParserCtxtPtr ctxt,
      int tonr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:2049,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 29
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2067
      start: 2020
    functionDepth: 5
    functionLinenumber: 2020
    functionLinenumberEnd: 2067
    functionName: xmlFAEliminateSimpleEpsilonTransitions
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStateAddTrans
    linkageType: ''
    returnType: void
    signature: void xmlFAEliminateSimpleEpsilonTransitions(xmlRegParserCtxtPtr ctxt)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAEliminateSimpleEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:2083,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:2087,1
    - Dst: xmlFAReduceEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:2121,1
    - Dst: xmlFAFinishReduceEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:2123,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:2198,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 85
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2203
      start: 2071
    functionDepth: 6
    functionLinenumber: 2071
    functionLinenumberEnd: 2203
    functionName: xmlFAEliminateEpsilonTransitions
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAFinishReduceEpsilonTransitions
    - xmlRegFreeState
    - xmlFAReduceEpsilonTransitions
    - xmlFAEliminateSimpleEpsilonTransitions
    linkageType: ''
    returnType: void
    signature: void xmlFAEliminateEpsilonTransitions(xmlRegParserCtxtPtr ctxt)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegCheckCharacterRange
      Src: /src/libxml2/xmlregexp.c:2254,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:2267,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 94
    argCount: 2
    argNames:
    - range1
    - range2
    argTypes:
    - xmlRegRangePtr
    - xmlRegRangePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2366
      start: 2205
    functionDepth: 1
    functionLinenumber: 2205
    functionLinenumberEnd: 2366
    functionName: xmlFACompareRanges
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegCheckCharacterRange
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlFACompareRanges(xmlRegRangePtr range1, xmlRegRangePtr range2)
  - BBCount: 64
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 93
    EdgeCount: 93
    ICount: 110
    argCount: 2
    argNames:
    - type1
    - type2
    argTypes:
    - xmlRegAtomType
    - xmlRegAtomType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2565
      start: 2376
    functionDepth: 0
    functionLinenumber: 2376
    functionLinenumberEnd: 2565
    functionName: xmlFACompareAtomTypes
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlFACompareAtomTypes(xmlRegAtomType type1, xmlRegAtomType type2)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:2595,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 3
    argNames:
    - atom1
    - atom2
    - deep
    argTypes:
    - xmlRegAtomPtr
    - xmlRegAtomPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2608
      start: 2576
    functionDepth: 1
    functionLinenumber: 2576
    functionLinenumberEnd: 2608
    functionName: xmlFAEqualAtoms
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlFAEqualAtoms(xmlRegAtomPtr atom1, xmlRegAtomPtr atom2, int deep)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlFACompareAtomTypes
      Src: /src/libxml2/xmlregexp.c:2639,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xmlregexp.c:2651,1
    - Dst: xmlStrchr
      Src: /src/libxml2/xmlregexp.c:2652,1
    - Dst: xmlRegStrEqualWildcard
      Src: /src/libxml2/xmlregexp.c:2658,1
    - Dst: xmlRegCheckCharacter
      Src: /src/libxml2/xmlregexp.c:2667,1
    - Dst: xmlFACompareRanges
      Src: /src/libxml2/xmlregexp.c:2684,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 69
    argCount: 3
    argNames:
    - atom1
    - atom2
    - deep
    argTypes:
    - xmlRegAtomPtr
    - xmlRegAtomPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2705
      start: 2619
    functionDepth: 2
    functionLinenumber: 2619
    functionLinenumberEnd: 2705
    functionName: xmlFACompareAtoms
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegCheckCharacter
    - xmlRegStrEqualWildcard
    - xmlFACompareRanges
    - xmlFACompareAtomTypes
    - xmlStrchr
    linkageType: ''
    returnType: int
    signature: int xmlFACompareAtoms(xmlRegAtomPtr atom1, xmlRegAtomPtr atom2, int
      deep)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFARecurseDeterminism
      Src: /src/libxml2/xmlregexp.c:2748,1
    - Dst: xmlFACompareAtoms
      Src: /src/libxml2/xmlregexp.c:2756,1
    - Dst: xmlFAEqualAtoms
      Src: /src/libxml2/xmlregexp.c:2759,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 5
    argNames:
    - ctxt
    - state
    - fromnr
    - tonr
    - atom
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    - int
    - int
    - xmlRegAtomPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2717
    functionDepth: 3
    functionLinenumber: 2717
    functionLinenumberEnd: 2766
    functionName: xmlFARecurseDeterminism
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFACompareAtoms
    - xmlFAEqualAtoms
    - xmlFARecurseDeterminism
    linkageType: ''
    returnType: int
    signature: "int xmlFARecurseDeterminism(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr
      state,\n\t                int fromnr, int tonr, xmlRegAtomPtr atom)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAFinishRecurseDeterminism
      Src: /src/libxml2/xmlregexp.c:2788,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - state
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2790
      start: 2774
    functionDepth: 1
    functionLinenumber: 2774
    functionLinenumberEnd: 2790
    functionName: xmlFAFinishRecurseDeterminism
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFAFinishRecurseDeterminism
    linkageType: ''
    returnType: void
    signature: void xmlFAFinishRecurseDeterminism(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr
      state)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAEqualAtoms
      Src: /src/libxml2/xmlregexp.c:2844,1
    - Dst: xmlFACompareAtoms
      Src: /src/libxml2/xmlregexp.c:2885,1
    - Dst: xmlFAEqualAtoms
      Src: /src/libxml2/xmlregexp.c:2892,1
    - Dst: xmlFARecurseDeterminism
      Src: /src/libxml2/xmlregexp.c:2906,1
    - Dst: xmlFAFinishRecurseDeterminism
      Src: /src/libxml2/xmlregexp.c:2908,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 74
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2945
      start: 2798
    functionDepth: 4
    functionLinenumber: 2798
    functionLinenumberEnd: 2945
    functionName: xmlFAComputesDeterminism
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFACompareAtoms
    - xmlFAFinishRecurseDeterminism
    - xmlFAEqualAtoms
    - xmlFARecurseDeterminism
    linkageType: ''
    returnType: int
    signature: int xmlFAComputesDeterminism(xmlRegParserCtxtPtr ctxt)
  - BBCount: 57
    BranchProfiles: []
    Callsites:
    - Dst: IS_LETTER
      Src: /src/libxml2/xmlregexp.c:2981,1
    - Dst: IS_LETTER
      Src: /src/libxml2/xmlregexp.c:2988,1
    - Dst: IS_DIGIT
      Src: /src/libxml2/xmlregexp.c:2988,1
    - Dst: IS_COMBINING
      Src: /src/libxml2/xmlregexp.c:2991,1
    - Dst: IS_EXTENDER
      Src: /src/libxml2/xmlregexp.c:2991,1
    - Dst: xmlUCSIsCatNd
      Src: /src/libxml2/xmlregexp.c:2997,1
    - Dst: xmlUCSIsCatP
      Src: /src/libxml2/xmlregexp.c:3003,1
    - Dst: xmlUCSIsCatZ
      Src: /src/libxml2/xmlregexp.c:3005,1
    - Dst: xmlUCSIsCatC
      Src: /src/libxml2/xmlregexp.c:3007,1
    - Dst: xmlUCSIsCatL
      Src: /src/libxml2/xmlregexp.c:3010,1
    - Dst: xmlUCSIsCatLu
      Src: /src/libxml2/xmlregexp.c:3013,1
    - Dst: xmlUCSIsCatLl
      Src: /src/libxml2/xmlregexp.c:3016,1
    - Dst: xmlUCSIsCatLt
      Src: /src/libxml2/xmlregexp.c:3019,1
    - Dst: xmlUCSIsCatLm
      Src: /src/libxml2/xmlregexp.c:3022,1
    - Dst: xmlUCSIsCatLo
      Src: /src/libxml2/xmlregexp.c:3025,1
    - Dst: xmlUCSIsCatM
      Src: /src/libxml2/xmlregexp.c:3028,1
    - Dst: xmlUCSIsCatMn
      Src: /src/libxml2/xmlregexp.c:3031,1
    - Dst: xmlUCSIsCatMc
      Src: /src/libxml2/xmlregexp.c:3034,1
    - Dst: xmlUCSIsCatMe
      Src: /src/libxml2/xmlregexp.c:3037,1
    - Dst: xmlUCSIsCatN
      Src: /src/libxml2/xmlregexp.c:3040,1
    - Dst: xmlUCSIsCatNd
      Src: /src/libxml2/xmlregexp.c:3043,1
    - Dst: xmlUCSIsCatNl
      Src: /src/libxml2/xmlregexp.c:3046,1
    - Dst: xmlUCSIsCatNo
      Src: /src/libxml2/xmlregexp.c:3049,1
    - Dst: xmlUCSIsCatP
      Src: /src/libxml2/xmlregexp.c:3052,1
    - Dst: xmlUCSIsCatPc
      Src: /src/libxml2/xmlregexp.c:3055,1
    - Dst: xmlUCSIsCatPd
      Src: /src/libxml2/xmlregexp.c:3058,1
    - Dst: xmlUCSIsCatPs
      Src: /src/libxml2/xmlregexp.c:3061,1
    - Dst: xmlUCSIsCatPe
      Src: /src/libxml2/xmlregexp.c:3064,1
    - Dst: xmlUCSIsCatPi
      Src: /src/libxml2/xmlregexp.c:3067,1
    - Dst: xmlUCSIsCatPf
      Src: /src/libxml2/xmlregexp.c:3070,1
    - Dst: xmlUCSIsCatPo
      Src: /src/libxml2/xmlregexp.c:3073,1
    - Dst: xmlUCSIsCatZ
      Src: /src/libxml2/xmlregexp.c:3076,1
    - Dst: xmlUCSIsCatZs
      Src: /src/libxml2/xmlregexp.c:3079,1
    - Dst: xmlUCSIsCatZl
      Src: /src/libxml2/xmlregexp.c:3082,1
    - Dst: xmlUCSIsCatZp
      Src: /src/libxml2/xmlregexp.c:3085,1
    - Dst: xmlUCSIsCatS
      Src: /src/libxml2/xmlregexp.c:3088,1
    - Dst: xmlUCSIsCatSm
      Src: /src/libxml2/xmlregexp.c:3091,1
    - Dst: xmlUCSIsCatSc
      Src: /src/libxml2/xmlregexp.c:3094,1
    - Dst: xmlUCSIsCatSk
      Src: /src/libxml2/xmlregexp.c:3097,1
    - Dst: xmlUCSIsCatSo
      Src: /src/libxml2/xmlregexp.c:3100,1
    - Dst: xmlUCSIsCatC
      Src: /src/libxml2/xmlregexp.c:3103,1
    - Dst: xmlUCSIsCatCc
      Src: /src/libxml2/xmlregexp.c:3106,1
    - Dst: xmlUCSIsCatCf
      Src: /src/libxml2/xmlregexp.c:3109,1
    - Dst: xmlUCSIsCatCo
      Src: /src/libxml2/xmlregexp.c:3112,1
    - Dst: xmlUCSIsBlock
      Src: /src/libxml2/xmlregexp.c:3120,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 157
    argCount: 6
    argNames:
    - type
    - codepoint
    - neg
    - start
    - end
    - blockName
    argTypes:
    - xmlRegAtomType
    - int
    - int
    - int
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3126
      start: 2953
    functionDepth: 2
    functionLinenumber: 2953
    functionLinenumberEnd: 3126
    functionName: xmlRegCheckCharacterRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlUCSIsCatLu
    - xmlUCSIsCatSk
    - xmlUCSIsCatPf
    - xmlUCSIsCatZl
    - xmlUCSIsCatSo
    - xmlUCSIsCatPd
    - xmlUCSIsCatMe
    - xmlUCSIsCatMn
    - xmlUCSIsCatNo
    - IS_DIGIT
    - xmlUCSIsCatPc
    - xmlUCSIsCatPi
    - xmlUCSIsCatLt
    - xmlUCSIsBlock
    - xmlUCSIsCatM
    - xmlUCSIsCatZs
    - xmlUCSIsCatSm
    - xmlUCSIsCatLo
    - xmlUCSIsCatZ
    - IS_LETTER
    - xmlUCSIsCatCf
    - IS_EXTENDER
    - xmlUCSIsCatCo
    - xmlUCSIsCatMc
    - xmlUCSIsCatP
    - xmlUCSIsCatS
    - xmlUCSIsCatCc
    - xmlUCSIsCatPs
    - xmlUCSIsCatSc
    - xmlUCSIsCatN
    - xmlUCSIsCatL
    - xmlUCSIsCatLl
    - xmlUCSIsCatC
    - xmlUCSIsCatPe
    - IS_COMBINING
    - xmlUCSIsCatNl
    - xmlUCSIsCatNd
    - xmlUCSIsCatZp
    - xmlUCSIsCatLm
    - xmlUCSIsCatPo
    linkageType: ''
    returnType: int
    signature: "int xmlRegCheckCharacterRange(xmlRegAtomType type, int codepoint,
      int neg,\n\t                  int start, int end, const xmlChar *blockName)"
  - BBCount: 61
    BranchProfiles: []
    Callsites:
    - Dst: IS_CHAR
      Src: /src/libxml2/xmlregexp.c:3133,1
    - Dst: xmlRegCheckCharacterRange
      Src: /src/libxml2/xmlregexp.c:3148,1
    - Dst: xmlRegCheckCharacterRange
      Src: /src/libxml2/xmlregexp.c:3154,1
    - Dst: xmlRegCheckCharacterRange
      Src: /src/libxml2/xmlregexp.c:3162,1
    - Dst: xmlRegCheckCharacterRange
      Src: /src/libxml2/xmlregexp.c:3221,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 86
    argCount: 2
    argNames:
    - atom
    - codepoint
    argTypes:
    - xmlRegAtomPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3228
      start: 3128
    functionDepth: 3
    functionLinenumber: 3128
    functionLinenumberEnd: 3228
    functionName: xmlRegCheckCharacter
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlRegCheckCharacterRange
    - IS_CHAR
    linkageType: ''
    returnType: int
    signature: int xmlRegCheckCharacter(xmlRegAtomPtr atom, int codepoint)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:3251,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:3257,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:3265,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:3273,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:3279,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 1
    argNames:
    - exec
    argTypes:
    - xmlRegExecCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3283
      start: 3236
    functionDepth: 1
    functionLinenumber: 3236
    functionLinenumberEnd: 3283
    functionName: xmlFARegExecSave
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlMalloc
    - memcpy
    - xmlGrowCapacity
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlFARegExecSave(xmlRegExecCtxtPtr exec)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:3303,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - exec
    argTypes:
    - xmlRegExecCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3307
      start: 3285
    functionDepth: 0
    functionLinenumber: 3285
    functionLinenumberEnd: 3307
    functionName: xmlFARegExecRollBack
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: void
    signature: void xmlFARegExecRollBack(xmlRegExecCtxtPtr exec)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:3336,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:3340,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:3404,1
    - Dst: xmlRegCheckCharacter
      Src: /src/libxml2/xmlregexp.c:3410,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:3435,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:3467,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:3474,1
    - Dst: xmlRegCheckCharacter
      Src: /src/libxml2/xmlregexp.c:3480,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:3522,1
    - Dst: xmlFARegExecRollBack
      Src: /src/libxml2/xmlregexp.c:3566,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3578,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3580,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3585,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 217
    argCount: 2
    argNames:
    - comp
    - content
    argTypes:
    - xmlRegexpPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3591
      start: 3315
    functionDepth: 4
    functionLinenumber: 3315
    functionLinenumberEnd: 3591
    functionName: xmlFARegExec
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegCheckCharacter
    - xmlFree
    - xmlMalloc
    - xmlGetUTF8Char
    - xmlFARegExecSave
    - xmlFARegExecRollBack
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlFARegExec(xmlRegexpPtr comp, const xmlChar *content)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:3618,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:3621,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:3641,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3644,1
    - Dst: memset
      Src: /src/libxml2/xmlregexp.c:3647,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 3
    argNames:
    - comp
    - callback
    - data
    argTypes:
    - xmlRegexp*
    - xmlRegExecCallbacks
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3660
      start: 3610
    functionDepth: 0
    functionLinenumber: 3610
    functionLinenumberEnd: 3660
    functionName: xmlRegNewExecCtxt
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 10
    functionsReached:
    - xmlMalloc
    - xmlFree
    - memset
    linkageType: ''
    returnType: xmlRegExecCtxt
    signature: 'xmlRegExecCtxt *

      xmlRegNewExecCtxt(xmlRegexp *comp, xmlRegExecCallbacks callback, void *data)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3680,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3682,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3685,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3691,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3693,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3696,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3697,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 23
    argCount: 1
    argNames:
    - exec
    argTypes:
    - xmlRegExecCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3698
      start: 3669
    functionDepth: 0
    functionLinenumber: 3669
    functionLinenumberEnd: 3698
    functionName: xmlRegFreeExecCtxt
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 9
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeExecCtxt(xmlRegExecCtxt *exec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:3703,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:3707,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - exec
    - value
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3714
      start: 3700
    functionDepth: 2
    functionLinenumber: 3700
    functionLinenumberEnd: 3714
    functionName: xmlRegExecSetErrString
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlRegExecSetErrString(xmlRegExecCtxtPtr exec, const xmlChar *value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/xmlregexp.c:3723,1
    - Dst: xmlRealloc
      Src: /src/libxml2/xmlregexp.c:3733,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:3744,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 3
    argNames:
    - exec
    - value
    - data
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3754
      start: 3716
    functionDepth: 2
    functionLinenumber: 3716
    functionLinenumberEnd: 3754
    functionName: xmlFARegExecSaveInputString
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: void
    signature: "void xmlFARegExecSaveInputString(xmlRegExecCtxtPtr exec, const xmlChar
      *value,\n\t                    void *data)"
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - expStr
    - valStr
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3802
      start: 3767
    functionDepth: 0
    functionLinenumber: 3767
    functionLinenumberEnd: 3802
    functionName: xmlRegStrEqualWildcard
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlRegStrEqualWildcard(const xmlChar *expStr, const xmlChar *valStr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStrEqualWildcard
      Src: /src/libxml2/xmlregexp.c:3842,1
    - Dst: xmlRegExecCtxtPtr::callback
      Src: /src/libxml2/xmlregexp.c:3845,1
    - Dst: xmlRegExecSetErrString
      Src: /src/libxml2/xmlregexp.c:3866,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 4
    argNames:
    - exec
    - comp
    - value
    - data
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlRegexpPtr
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3868
      start: 3814
    functionDepth: 3
    functionLinenumber: 3814
    functionLinenumberEnd: 3868
    functionName: xmlRegCompactPushString
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegStrEqualWildcard
    - xmlRegExecCtxtPtr::callback
    - xmlRegExecSetErrString
    linkageType: ''
    returnType: int
    signature: "int xmlRegCompactPushString(xmlRegExecCtxtPtr exec,\n\t                xmlRegexpPtr
      comp,\n\t                const xmlChar *value,\n\t                void *data)"
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegCompactPushString
      Src: /src/libxml2/xmlregexp.c:3897,1
    - Dst: xmlFARegExecSaveInputString
      Src: /src/libxml2/xmlregexp.c:3910,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:3957,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:3964,1
    - Dst: xmlRegStrEqualWildcard
      Src: /src/libxml2/xmlregexp.c:4007,1
    - Dst: xmlFARegExecSaveInputString
      Src: /src/libxml2/xmlregexp.c:4031,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:4033,1
    - Dst: xmlFARegExecSaveInputString
      Src: /src/libxml2/xmlregexp.c:4064,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:4066,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlregexp.c:4070,1
    - Dst: xmlRegExecCtxtPtr::callback
      Src: /src/libxml2/xmlregexp.c:4090,1
    - Dst: xmlFARegExecSaveInputString
      Src: /src/libxml2/xmlregexp.c:4095,1
    - Dst: xmlFARegExecSave
      Src: /src/libxml2/xmlregexp.c:4097,1
    - Dst: xmlRegExecSetErrString
      Src: /src/libxml2/xmlregexp.c:4113,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:4116,1
    - Dst: xmlRegExecSetErrString
      Src: /src/libxml2/xmlregexp.c:4151,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:4155,1
    - Dst: xmlFARegExecRollBack
      Src: /src/libxml2/xmlregexp.c:4163,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 205
    argCount: 4
    argNames:
    - exec
    - value
    - data
    - compound
    argTypes:
    - xmlRegExecCtxtPtr
    - xmlChar*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4178
      start: 3880
    functionDepth: 4
    functionLinenumber: 3880
    functionLinenumberEnd: 4178
    functionName: xmlRegExecPushStringInternal
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlRegCompactPushString
    - xmlFARegExecSaveInputString
    - xmlRegStrEqualWildcard
    - memcpy
    - xmlFARegExecSave
    - xmlRegExecCtxtPtr::callback
    - xmlFARegExecRollBack
    - xmlRegExecSetErrString
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecPushStringInternal(xmlRegExecCtxtPtr exec, const xmlChar
      *value,\n\t                     void *data, int compound)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecPushStringInternal
      Src: /src/libxml2/xmlregexp.c:4194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - exec
    - value
    - data
    argTypes:
    - xmlRegExecCtxt*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4195
      start: 4191
    functionDepth: 5
    functionLinenumber: 4191
    functionLinenumberEnd: 4195
    functionName: xmlRegExecPushString
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 11
    functionsReached:
    - xmlRegExecPushStringInternal
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecPushString(xmlRegExecCtxt *exec, const xmlChar *value,\n\t
      \            void *data)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecPushString
      Src: /src/libxml2/xmlregexp.c:4224,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:4226,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:4227,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:4230,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:4238,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:4240,1
    - Dst: xmlRegCompactPushString
      Src: /src/libxml2/xmlregexp.c:4244,1
    - Dst: xmlRegExecPushStringInternal
      Src: /src/libxml2/xmlregexp.c:4246,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:4249,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 4
    argNames:
    - exec
    - value
    - value2
    - data
    argTypes:
    - xmlRegExecCtxt*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4251
      start: 4209
    functionDepth: 6
    functionLinenumber: 4209
    functionLinenumberEnd: 4251
    functionName: xmlRegExecPushString2
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 5
    functionsReached:
    - xmlRegCompactPushString
    - strlen
    - xmlFree
    - xmlMalloc
    - xmlRegExecPushStringInternal
    - xmlRegExecPushString
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecPushString2(xmlRegExecCtxt *exec, const xmlChar *value,\n
      \                     const xmlChar *value2, void *data)"
  - BBCount: 32
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 107
    argCount: 6
    argNames:
    - exec
    - err
    - nbval
    - nbneg
    - values
    - terminal
    argTypes:
    - xmlRegExecCtxtPtr
    - int
    - int*
    - int*
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4407
      start: 4265
    functionDepth: 0
    functionLinenumber: 4265
    functionLinenumberEnd: 4407
    functionName: xmlRegExecGetValues
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecGetValues(xmlRegExecCtxtPtr exec, int err,\n                    int
      *nbval, int *nbneg,\n\t\t    xmlChar **values, int *terminal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecGetValues
      Src: /src/libxml2/xmlregexp.c:4429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - exec
    - nbval
    - nbneg
    - values
    - terminal
    argTypes:
    - xmlRegExecCtxt*
    - int*
    - int*
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4430
      start: 4426
    functionDepth: 1
    functionLinenumber: 4426
    functionLinenumberEnd: 4430
    functionName: xmlRegExecNextValues
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlRegExecGetValues
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecNextValues(xmlRegExecCtxt *exec, int *nbval, int *nbneg,\n
      \                    xmlChar **values, int *terminal)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegExecGetValues
      Src: /src/libxml2/xmlregexp.c:4462,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - exec
    - string
    - nbval
    - nbneg
    - values
    - terminal
    argTypes:
    - xmlRegExecCtxt*
    - xmlChar**
    - int*
    - int*
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4463
      start: 4451
    functionDepth: 1
    functionLinenumber: 4451
    functionLinenumberEnd: 4463
    functionName: xmlRegExecErrInfo
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlRegExecGetValues
    linkageType: ''
    returnType: int
    signature: "int xmlRegExecErrInfo(xmlRegExecCtxt *exec, const xmlChar **string,\n
      \                 int *nbval, int *nbneg, xmlChar **values, int *terminal)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:4477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - exec
    argTypes:
    - xmlRegExecCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4479
      start: 4472
    functionDepth: 0
    functionLinenumber: 4472
    functionLinenumberEnd: 4479
    functionName: xmlRegExecClearErrors
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlRegExecClearErrors(xmlRegExecCtxt* exec)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:4499,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4501,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4510
      start: 4493
    functionDepth: 1
    functionLinenumber: 4493
    functionLinenumberEnd: 4510
    functionName: xmlFAIsChar
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - ERROR
    - xmlGetUTF8Char
    linkageType: ''
    returnType: int
    signature: int xmlFAIsChar(xmlRegParserCtxtPtr ctxt)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4698,1
    - Dst: xmlStrndup
      Src: /src/libxml2/xmlregexp.c:4719,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:4721,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4723,1
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:4727,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:4729,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:4734,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:4736,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 199
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4739
      start: 4527
    functionDepth: 5
    functionLinenumber: 4527
    functionLinenumberEnd: 4739
    functionName: xmlFAParseCharProp
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegAtomAddRange
    - xmlFree
    - xmlStrndup
    - xmlRegNewAtom
    - xmlRegexpErrMemory
    - ERROR
    linkageType: ''
    returnType: void
    signature: void xmlFAParseCharProp(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4755,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4760
      start: 4741
    functionDepth: 1
    functionLinenumber: 4741
    functionLinenumberEnd: 4760
    functionName: parse_escaped_codeunit
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - ERROR
    linkageType: ''
    returnType: int
    signature: int parse_escaped_codeunit(xmlRegParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: parse_escaped_codeunit
      Src: /src/libxml2/xmlregexp.c:4764,1
    - Dst: parse_escaped_codeunit
      Src: /src/libxml2/xmlregexp.c:4770,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4776,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4780
      start: 4762
    functionDepth: 2
    functionLinenumber: 4762
    functionLinenumberEnd: 4780
    functionName: parse_escaped_codepoint
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - parse_escaped_codeunit
    - ERROR
    linkageType: ''
    returnType: int
    signature: int parse_escaped_codepoint(xmlRegParserCtxtPtr ctxt)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:4799,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:4801,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4808,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4816,1
    - Dst: xmlFAParseCharProp
      Src: /src/libxml2/xmlregexp.c:4820,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4822,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4829,1
    - Dst: xmlFAParseCharProp
      Src: /src/libxml2/xmlregexp.c:4833,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4837,1
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:4865,1
    - Dst: parse_escaped_codepoint
      Src: /src/libxml2/xmlregexp.c:4878,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:4900,1
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:4943,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:4945,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4949,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 132
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4951
      start: 4793
    functionDepth: 6
    functionLinenumber: 4793
    functionLinenumberEnd: 4951
    functionName: xmlFAParseCharClassEsc
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAParseCharProp
    - xmlRegAtomAddRange
    - xmlRegNewAtom
    - parse_escaped_codepoint
    - ERROR
    linkageType: ''
    returnType: void
    signature: void xmlFAParseCharClassEsc(xmlRegParserCtxtPtr ctxt)
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4971,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4988,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:4995,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:4997,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5001,1
    - Dst: NXT
      Src: /src/libxml2/xmlregexp.c:5008,1
    - Dst: NEXTL
      Src: /src/libxml2/xmlregexp.c:5009,1
    - Dst: NEXTL
      Src: /src/libxml2/xmlregexp.c:5012,1
    - Dst: NXT
      Src: /src/libxml2/xmlregexp.c:5014,1
    - Dst: NXT
      Src: /src/libxml2/xmlregexp.c:5014,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:5015,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5033,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:5039,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5041,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5045,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5051,1
    - Dst: NEXTL
      Src: /src/libxml2/xmlregexp.c:5053,1
    - Dst: xmlRegAtomAddRange
      Src: /src/libxml2/xmlregexp.c:5054,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 117
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5057
      start: 4964
    functionDepth: 5
    functionLinenumber: 4964
    functionLinenumberEnd: 5057
    functionName: xmlFAParseCharRange
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegAtomAddRange
    - NXT
    - NEXTL
    - xmlGetUTF8Char
    - ERROR
    linkageType: ''
    returnType: void
    signature: void xmlFAParseCharRange(xmlRegParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParseCharClassEsc
      Src: /src/libxml2/xmlregexp.c:5068,1
    - Dst: xmlFAParseCharRange
      Src: /src/libxml2/xmlregexp.c:5070,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5074
      start: 5064
    functionDepth: 7
    functionLinenumber: 5064
    functionLinenumberEnd: 5074
    functionName: xmlFAParsePosCharGroup
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAParseCharRange
    - xmlFAParseCharClassEsc
    linkageType: ''
    returnType: void
    signature: void xmlFAParsePosCharGroup(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParsePosCharGroup
      Src: /src/libxml2/xmlregexp.c:5091,1
    - Dst: NXT
      Src: /src/libxml2/xmlregexp.c:5095,1
    - Dst: xmlFAParseCharGroup
      Src: /src/libxml2/xmlregexp.c:5099,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5104,1
    - Dst: xmlFAParsePosCharGroup
      Src: /src/libxml2/xmlregexp.c:5108,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5111
      start: 5084
    functionDepth: 8
    functionLinenumber: 5084
    functionLinenumberEnd: 5111
    functionName: xmlFAParseCharGroup
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFAParseCharGroup
    - xmlFAParsePosCharGroup
    - ERROR
    - NXT
    linkageType: ''
    returnType: void
    signature: void xmlFAParseCharGroup(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5123,1
    - Dst: xmlFAParseCharGroup
      Src: /src/libxml2/xmlregexp.c:5126,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5130,1
    - Dst: xmlFAParseCharClassEsc
      Src: /src/libxml2/xmlregexp.c:5133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5135
      start: 5119
    functionDepth: 9
    functionLinenumber: 5119
    functionLinenumberEnd: 5135
    functionName: xmlFAParseCharClass
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlRegNewAtom
    - ERROR
    - xmlFAParseCharClassEsc
    - xmlFAParseCharGroup
    linkageType: ''
    returnType: void
    signature: void xmlFAParseCharClass(xmlRegParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5168
      start: 5143
    functionDepth: 0
    functionLinenumber: 5143
    functionLinenumberEnd: 5168
    functionName: xmlFAParseQuantExact
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlFAParseQuantExact(xmlRegParserCtxtPtr ctxt)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParseQuantExact
      Src: /src/libxml2/xmlregexp.c:5200,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5204,1
    - Dst: xmlFAParseQuantExact
      Src: /src/libxml2/xmlregexp.c:5211,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5215,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5222,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 47
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5234
      start: 5179
    functionDepth: 1
    functionLinenumber: 5179
    functionLinenumberEnd: 5234
    functionName: xmlFAParseQuantifier
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - ERROR
    - xmlFAParseQuantExact
    linkageType: ''
    returnType: int
    signature: int xmlFAParseQuantifier(xmlRegParserCtxtPtr ctxt)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAIsChar
      Src: /src/libxml2/xmlregexp.c:5245,1
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5247,1
    - Dst: xmlGetUTF8Char
      Src: /src/libxml2/xmlregexp.c:5251,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5253,1
    - Dst: NEXTL
      Src: /src/libxml2/xmlregexp.c:5257,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5270,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:5277,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:5279,1
    - Dst: xmlFAParseRegExp
      Src: /src/libxml2/xmlregexp.c:5285,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5290,1
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5292,1
    - Dst: xmlFAParseCharClass
      Src: /src/libxml2/xmlregexp.c:5301,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 60
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5305
      start: 5241
    functionDepth: 10
    functionLinenumber: 5241
    functionLinenumberEnd: 5305
    functionName: xmlFAParseAtom
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAIsChar
    - xmlFAParseRegExp
    - xmlFAParseCharClass
    - xmlFAGenerateEpsilonTransition
    - NEXTL
    - xmlRegNewAtom
    - xmlGetUTF8Char
    - ERROR
    linkageType: ''
    returnType: int
    signature: int xmlFAParseAtom(xmlRegParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParseAtom
      Src: /src/libxml2/xmlregexp.c:5317,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5321,1
    - Dst: xmlFAParseQuantifier
      Src: /src/libxml2/xmlregexp.c:5323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRegParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5325
      start: 5312
    functionDepth: 11
    functionLinenumber: 5312
    functionLinenumberEnd: 5325
    functionName: xmlFAParsePiece
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAParseQuantifier
    - xmlFAParseAtom
    - ERROR
    linkageType: ''
    returnType: int
    signature: int xmlFAParsePiece(xmlRegParserCtxtPtr ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParsePiece
      Src: /src/libxml2/xmlregexp.c:5342,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:5345,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:5347,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5350,1
    - Dst: xmlFAParsePiece
      Src: /src/libxml2/xmlregexp.c:5358,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:5360,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5363,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - ctxt
    - to
    argTypes:
    - xmlRegParserCtxtPtr
    - xmlRegStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5372
      start: 5336
    functionDepth: 12
    functionLinenumber: 5336
    functionLinenumberEnd: 5372
    functionName: xmlFAParseBranch
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 0
    functionsReached:
    - xmlFAParsePiece
    - xmlRegFreeAtom
    - xmlFAGenerateEpsilonTransition
    - xmlFAGenerateTransitions
    linkageType: ''
    returnType: int
    signature: int xmlFAParseBranch(xmlRegParserCtxtPtr ctxt, xmlRegStatePtr to)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAParseBranch
      Src: /src/libxml2/xmlregexp.c:5387,1
    - Dst: xmlFAParseBranch
      Src: /src/libxml2/xmlregexp.c:5400,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - top
    argTypes:
    - xmlRegParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5406
      start: 5380
    functionDepth: 13
    functionLinenumber: 5380
    functionLinenumberEnd: 5406
    functionName: xmlFAParseRegExp
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlFAParseBranch
    linkageType: ''
    returnType: void
    signature: void xmlFAParseRegExp(xmlRegParserCtxtPtr ctxt, int top)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewParserCtxt
      Src: /src/libxml2/xmlregexp.c:5445,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:5450,1
    - Dst: xmlFAParseRegExp
      Src: /src/libxml2/xmlregexp.c:5457,1
    - Dst: ERROR
      Src: /src/libxml2/xmlregexp.c:5459,1
    - Dst: xmlFAEliminateEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:5468,1
    - Dst: xmlRegEpxFromParse
      Src: /src/libxml2/xmlregexp.c:5473,1
    - Dst: xmlRegFreeParserCtxt
      Src: /src/libxml2/xmlregexp.c:5476,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - regexp
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5478
      start: 5437
    functionDepth: 14
    functionLinenumber: 5437
    functionLinenumberEnd: 5478
    functionName: xmlRegexpCompile
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 4
    functionsReached:
    - xmlFAParseRegExp
    - xmlRegEpxFromParse
    - xmlRegFreeParserCtxt
    - xmlFAEliminateEpsilonTransitions
    - xmlRegStatePush
    - xmlRegNewParserCtxt
    - ERROR
    linkageType: ''
    returnType: xmlRegexp
    signature: 'xmlRegexp *

      xmlRegexpCompile(const xmlChar *regexp)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFARegExec
      Src: /src/libxml2/xmlregexp.c:5491,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - comp
    - content
    argTypes:
    - xmlRegexp*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5492
      start: 5487
    functionDepth: 5
    functionLinenumber: 5487
    functionLinenumberEnd: 5492
    functionName: xmlRegexpExec
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 5
    functionsReached:
    - xmlFARegExec
    linkageType: ''
    returnType: int
    signature: int xmlRegexpExec(xmlRegexp *comp, const xmlChar *content)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewAutomata
      Src: /src/libxml2/xmlregexp.c:5519,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:5526,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5527,1
    - Dst: xmlFAComputesDeterminism
      Src: /src/libxml2/xmlregexp.c:5535,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/xmlregexp.c:5538,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - comp
    argTypes:
    - xmlRegexp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5541
      start: 5509
    functionDepth: 5
    functionLinenumber: 5509
    functionLinenumberEnd: 5541
    functionName: xmlRegexpIsDeterminist
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 7
    functionsReached:
    - xmlFreeAutomata
    - xmlFree
    - xmlFAComputesDeterminism
    - xmlNewAutomata
    - xmlRegFreeState
    linkageType: ''
    returnType: int
    signature: int xmlRegexpIsDeterminist(xmlRegexp *comp)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5555,1
    - Dst: xmlRegFreeState
      Src: /src/libxml2/xmlregexp.c:5558,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5559,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5563,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5564,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5567,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5569,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5571,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5574,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5575,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlregexp.c:5578,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 1
    argNames:
    - regexp
    argTypes:
    - xmlRegexp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5579
      start: 5548
    functionDepth: 2
    functionLinenumber: 5548
    functionLinenumberEnd: 5579
    functionName: xmlRegFreeRegexp
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 9
    functionsReached:
    - xmlRegFreeAtom
    - xmlFree
    - xmlRegFreeState
    linkageType: ''
    returnType: void
    signature: void xmlRegFreeRegexp(xmlRegexp *regexp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewParserCtxt
      Src: /src/libxml2/xmlregexp.c:5598,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:5603,1
    - Dst: xmlFreeAutomata
      Src: /src/libxml2/xmlregexp.c:5605,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5615
      start: 5594
    functionDepth: 5
    functionLinenumber: 5594
    functionLinenumberEnd: 5615
    functionName: xmlNewAutomata
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 7
    functionsReached:
    - xmlFreeAutomata
    - xmlRegStatePush
    - xmlRegNewParserCtxt
    linkageType: ''
    returnType: xmlAutomata
    signature: 'xmlAutomata *

      xmlNewAutomata(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegFreeParserCtxt
      Src: /src/libxml2/xmlregexp.c:5628,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - am
    argTypes:
    - xmlAutomata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5629
      start: 5624
    functionDepth: 3
    functionLinenumber: 5624
    functionLinenumberEnd: 5629
    functionName: xmlFreeAutomata
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 8
    functionsReached:
    - xmlRegFreeParserCtxt
    linkageType: ''
    returnType: void
    signature: void xmlFreeAutomata(xmlAutomata *am)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - am
    - flags
    argTypes:
    - xmlAutomata*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5644
      start: 5639
    functionDepth: 0
    functionLinenumber: 5639
    functionLinenumberEnd: 5644
    functionName: xmlAutomataSetFlags
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlAutomataSetFlags(xmlAutomata *am, int flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - am
    argTypes:
    - xmlAutomata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5659
      start: 5654
    functionDepth: 0
    functionLinenumber: 5654
    functionLinenumberEnd: 5659
    functionName: xmlAutomataGetInitState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: xmlAutomataState
    signature: 'xmlAutomataState *

      xmlAutomataGetInitState(xmlAutomata *am)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - am
    - state
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5676
      start: 5670
    functionDepth: 0
    functionLinenumber: 5670
    functionLinenumberEnd: 5676
    functionName: xmlAutomataSetFinalState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlAutomataSetFinalState(xmlAutomata *am, xmlAutomataState *state)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5702,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5706,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5708,1
    - Dst: xmlRegexpErrMemory
      Src: /src/libxml2/xmlregexp.c:5709,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:5713,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5714,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 5
    argNames:
    - am
    - from
    - to
    - token
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5720
      start: 5694
    functionDepth: 7
    functionLinenumber: 5694
    functionLinenumberEnd: 5720
    functionName: xmlAutomataNewTransition
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlFAGenerateTransitions
    - xmlRegNewAtom
    - xmlRegexpErrMemory
    - xmlRegFreeAtom
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewTransition(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t xmlAutomataState *to, const xmlChar *token,\n\t\t\t void *data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5745,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5750,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5755,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5756,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:5758,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5760,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5763,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5765,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:5771,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5772,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 6
    argNames:
    - am
    - from
    - to
    - token
    - token2
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5778
      start: 5737
    functionDepth: 7
    functionLinenumber: 5737
    functionLinenumberEnd: 5778
    functionName: xmlAutomataNewTransition2
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 6
    functionsReached:
    - xmlStrdup
    - strlen
    - xmlFAGenerateTransitions
    - xmlMalloc
    - xmlRegNewAtom
    - memcpy
    - xmlRegFreeAtom
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewTransition2(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t  xmlAutomataState *to, const xmlChar *token,\n\t\t\t  const xmlChar
      *token2, void *data)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5806,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5812,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5817,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5818,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:5820,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5822,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5825,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5827,1
    - Dst: snprintf
      Src: /src/libxml2/xmlregexp.c:5832,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5834,1
    - Dst: xmlFAGenerateTransitions
      Src: /src/libxml2/xmlregexp.c:5836,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5837,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 6
    argNames:
    - am
    - from
    - to
    - token
    - token2
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - xmlChar*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5844
      start: 5797
    functionDepth: 7
    functionLinenumber: 5797
    functionLinenumberEnd: 5844
    functionName: xmlAutomataNewNegTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - strlen
    - xmlFAGenerateTransitions
    - xmlMalloc
    - xmlRegNewAtom
    - snprintf
    - memcpy
    - xmlRegFreeAtom
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewNegTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t       xmlAutomataState *to, const xmlChar *token,\n\t\t       const
      xmlChar *token2, void *data)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5878,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5882,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5889,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:5890,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:5892,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5895,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:5897,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:5912,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:5920,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:5924,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:5925,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:5934,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:5938,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 61
    argCount: 8
    argNames:
    - am
    - from
    - to
    - token
    - token2
    - min
    - max
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5940
      start: 5864
    functionDepth: 6
    functionLinenumber: 5864
    functionLinenumberEnd: 5940
    functionName: xmlAutomataNewCountTrans2
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlRegAtomPush
    - strlen
    - xmlFAGenerateEpsilonTransition
    - xmlRegStateAddTrans
    - xmlMalloc
    - xmlRegNewAtom
    - xmlRegGetCounter
    - memcpy
    - xmlRegFreeAtom
    - xmlRegStatePush
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewCountTrans2(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t xmlAutomataState *to, const xmlChar *token,\n\t\t\t const xmlChar
      *token2,\n\t\t\t int min, int max, void *data)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:5972,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:5975,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:5988,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:5996,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:6000,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:6001,1
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:6010,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:6014,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 47
    argCount: 7
    argNames:
    - am
    - from
    - to
    - token
    - min
    - max
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6016
      start: 5959
    functionDepth: 6
    functionLinenumber: 5959
    functionLinenumberEnd: 6016
    functionName: xmlAutomataNewCountTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlRegAtomPush
    - xmlFAGenerateEpsilonTransition
    - xmlRegStateAddTrans
    - xmlRegGetCounter
    - xmlRegNewAtom
    - xmlRegStatePush
    - xmlRegFreeAtom
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewCountTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t xmlAutomataState *to, const xmlChar *token,\n\t\t\t int min,
      int max, void *data)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:6051,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:6055,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:6062,1
    - Dst: strlen
      Src: /src/libxml2/xmlregexp.c:6063,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlregexp.c:6065,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:6068,1
    - Dst: memcpy
      Src: /src/libxml2/xmlregexp.c:6070,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:6082,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:6090,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:6094,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:6095,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:6101,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 8
    argNames:
    - am
    - from
    - to
    - token
    - token2
    - min
    - max
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6103
      start: 6037
    functionDepth: 5
    functionLinenumber: 6037
    functionLinenumberEnd: 6103
    functionName: xmlAutomataNewOnceTrans2
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlStrdup
    - xmlRegAtomPush
    - strlen
    - xmlRegStateAddTrans
    - xmlMalloc
    - xmlRegNewAtom
    - xmlRegGetCounter
    - memcpy
    - xmlRegFreeAtom
    - xmlRegStatePush
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewOnceTrans2(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t xmlAutomataState *to, const xmlChar *token,\n\t\t\t const xmlChar
      *token2,\n\t\t\t int min, int max, void *data)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegNewAtom
      Src: /src/libxml2/xmlregexp.c:6138,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlregexp.c:6141,1
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:6149,1
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:6157,1
    - Dst: xmlRegStateAddTrans
      Src: /src/libxml2/xmlregexp.c:6161,1
    - Dst: xmlRegAtomPush
      Src: /src/libxml2/xmlregexp.c:6162,1
    - Dst: xmlRegFreeAtom
      Src: /src/libxml2/xmlregexp.c:6168,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 7
    argNames:
    - am
    - from
    - to
    - token
    - min
    - max
    - data
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - xmlChar*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6170
      start: 6125
    functionDepth: 5
    functionLinenumber: 6125
    functionLinenumberEnd: 6170
    functionName: xmlAutomataNewOnceTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlRegAtomPush
    - xmlRegStateAddTrans
    - xmlRegGetCounter
    - xmlRegNewAtom
    - xmlRegStatePush
    - xmlRegFreeAtom
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewOnceTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t\t xmlAutomataState *to, const xmlChar *token,\n\t\t\t int min,
      int max, void *data)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegStatePush
      Src: /src/libxml2/xmlregexp.c:6184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - am
    argTypes:
    - xmlAutomata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6185
      start: 6180
    functionDepth: 5
    functionLinenumber: 6180
    functionLinenumberEnd: 6185
    functionName: xmlAutomataNewState
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 6
    functionsReached:
    - xmlRegStatePush
    linkageType: ''
    returnType: xmlAutomataState
    signature: 'xmlAutomataState *

      xmlAutomataNewState(xmlAutomata *am)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAGenerateEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:6204,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - am
    - from
    - to
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6208
      start: 6199
    functionDepth: 6
    functionLinenumber: 6199
    functionLinenumberEnd: 6208
    functionName: xmlAutomataNewEpsilon
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 8
    functionsReached:
    - xmlFAGenerateEpsilonTransition
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewEpsilon(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t      xmlAutomataState *to)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAGenerateAllTransition
      Src: /src/libxml2/xmlregexp.c:6229,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - am
    - from
    - to
    - lax
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6233
      start: 6224
    functionDepth: 6
    functionLinenumber: 6224
    functionLinenumberEnd: 6233
    functionName: xmlAutomataNewAllTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 3
    functionsReached:
    - xmlFAGenerateAllTransition
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewAllTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\t       xmlAutomataState *to, int lax)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegGetCounter
      Src: /src/libxml2/xmlregexp.c:6252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - am
    - min
    - max
    argTypes:
    - xmlAutomata*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6258
      start: 6245
    functionDepth: 4
    functionLinenumber: 6245
    functionLinenumberEnd: 6258
    functionName: xmlAutomataNewCounter
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 5
    functionsReached:
    - xmlRegGetCounter
    linkageType: ''
    returnType: int
    signature: int xmlAutomataNewCounter(xmlAutomata *am, int min, int max)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAGenerateCountedEpsilonTransition
      Src: /src/libxml2/xmlregexp.c:6278,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - am
    - from
    - to
    - counter
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6282
      start: 6273
    functionDepth: 6
    functionLinenumber: 6273
    functionLinenumberEnd: 6282
    functionName: xmlAutomataNewCountedTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 5
    functionsReached:
    - xmlFAGenerateCountedEpsilonTransition
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewCountedTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\txmlAutomataState *to, int counter)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAGenerateCountedTransition
      Src: /src/libxml2/xmlregexp.c:6302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 4
    argNames:
    - am
    - from
    - to
    - counter
    argTypes:
    - xmlAutomata*
    - xmlAutomataState*
    - xmlAutomataState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6306
      start: 6297
    functionDepth: 6
    functionLinenumber: 6297
    functionLinenumberEnd: 6306
    functionName: xmlAutomataNewCounterTrans
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 5
    functionsReached:
    - xmlFAGenerateCountedTransition
    linkageType: ''
    returnType: xmlAutomataState
    signature: "xmlAutomataState *\nxmlAutomataNewCounterTrans(xmlAutomata *am, xmlAutomataState
      *from,\n\t\txmlAutomataState *to, int counter)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAEliminateEpsilonTransitions
      Src: /src/libxml2/xmlregexp.c:6322,1
    - Dst: xmlRegEpxFromParse
      Src: /src/libxml2/xmlregexp.c:6326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - am
    argTypes:
    - xmlAutomata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6329
      start: 6317
    functionDepth: 7
    functionLinenumber: 6317
    functionLinenumberEnd: 6329
    functionName: xmlAutomataCompile
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 6
    functionsReached:
    - xmlFAEliminateEpsilonTransitions
    - xmlRegEpxFromParse
    linkageType: ''
    returnType: xmlRegexp
    signature: 'xmlRegexp *

      xmlAutomataCompile(xmlAutomata *am)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFAComputesDeterminism
      Src: /src/libxml2/xmlregexp.c:6346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - am
    argTypes:
    - xmlAutomata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6348
      start: 6339
    functionDepth: 5
    functionLinenumber: 6339
    functionLinenumberEnd: 6348
    functionName: xmlAutomataIsDeterminist
    functionSourceFile: /src/libxml2/xmlregexp.c
    functionUses: 2
    functionsReached:
    - xmlFAComputesDeterminism
    linkageType: ''
    returnType: int
    signature: int xmlAutomataIsDeterminist(xmlAutomata *am)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: xmlC11NNormalizeAttr
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC11NNormalizeAttr( a )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: xmlC11NNormalizeComment
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC11NNormalizeComment( a )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: xmlC11NNormalizePI
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC11NNormalizePI( a )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: xmlC11NNormalizeText
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC11NNormalizeText( a )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - node
    - ','
    - parent
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionName: xmlC14NIsVisible
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC14NIsVisible( ctx, node, parent )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: xmlC14NIsExclusive
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlC14NIsExclusive( ctx )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/c14n.c:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlC14NCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 143
    functionName: xmlC14NErrMemory
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlC14NErrMemory(xmlC14NCtxPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/c14n.c:155,1
    - Dst: xmlVRaiseError
      Src: /src/libxml2/c14n.c:156,1
    - Dst: va_end
      Src: /src/libxml2/c14n.c:160,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ctxt
    - node
    - code
    - str1
    - msg
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 145
    functionDepth: 4
    functionLinenumber: 145
    functionLinenumberEnd: 163
    functionName: xmlC14NErrFull
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrMemory
    - va_end
    - xmlVRaiseError
    - va_start
    linkageType: ''
    returnType: void
    signature: "void xmlC14NErrFull(xmlC14NCtxPtr ctxt, xmlNodePtr node, int code,
      const char *str1,\n               const char *msg, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrFull
      Src: /src/libxml2/c14n.c:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlC14NCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 5
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: xmlC14NErrParam
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrFull
    linkageType: ''
    returnType: void
    signature: void xmlC14NErrParam(xmlC14NCtxPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrFull
      Src: /src/libxml2/c14n.c:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - node_type
    - extra
    argTypes:
    - xmlC14NCtxPtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 5
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: xmlC14NErrInvalidNode
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrFull
    linkageType: ''
    returnType: void
    signature: "void xmlC14NErrInvalidNode(xmlC14NCtxPtr ctxt, const char *node_type,\n
      \                     const char *extra)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrFull
      Src: /src/libxml2/c14n.c:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctxt
    - node_type
    - extra
    argTypes:
    - xmlC14NCtxPtr
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 199
    functionDepth: 5
    functionLinenumber: 199
    functionLinenumberEnd: 204
    functionName: xmlC14NErrUnknownNode
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrFull
    linkageType: ''
    returnType: void
    signature: void xmlC14NErrUnknownNode(xmlC14NCtxPtr ctxt, int node_type, const
      char *extra)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrFull
      Src: /src/libxml2/c14n.c:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - ns_uri
    argTypes:
    - xmlC14NCtxPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 212
    functionDepth: 5
    functionLinenumber: 212
    functionLinenumberEnd: 217
    functionName: xmlC14NErrRelativeNamespace
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrFull
    linkageType: ''
    returnType: void
    signature: void xmlC14NErrRelativeNamespace(xmlC14NCtxPtr ctxt, const char *ns_uri)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrFull
      Src: /src/libxml2/c14n.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctxt
    - node
    - error
    - msg
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 229
    functionDepth: 5
    functionLinenumber: 229
    functionLinenumberEnd: 234
    functionName: xmlC14NErr
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrFull
    linkageType: ''
    returnType: void
    signature: "void xmlC14NErr(xmlC14NCtxPtr ctxt, xmlNodePtr node, int error,\n
      \          const char * msg)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/c14n.c:248,1
    - Dst: memcpy
      Src: /src/libxml2/c14n.c:252,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/libxml2/c14n.c:265,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - user_data
    - node
    - parent
    argTypes:
    - void*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 269
    functionName: xmlC14NIsNodeInNodeset
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetContains
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlC14NIsNodeInNodeset(void *user_data, xmlNodePtr node, xmlNodePtr
      parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/c14n.c:275,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 280
    functionName: xmlC14NVisibleNsStackCreate
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: xmlC14NVisibleNsStackPtr
    signature: xmlC14NVisibleNsStackPtr xmlC14NVisibleNsStackCreate(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:285,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:289,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:290,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:293,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:294,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:296,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:297,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlC14NVisibleNsStackPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 282
    functionDepth: 6
    functionLinenumber: 282
    functionLinenumberEnd: 299
    functionName: xmlC14NVisibleNsStackDestroy
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlC14NVisibleNsStackDestroy(xmlC14NVisibleNsStackPtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/c14n.c:313,1
    - Dst: xmlRealloc
      Src: /src/libxml2/c14n.c:317,1
    - Dst: xmlRealloc
      Src: /src/libxml2/c14n.c:322,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - cur
    - ns
    - node
    argTypes:
    - xmlC14NVisibleNsStackPtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 335
    functionName: xmlC14NVisibleNsStackAdd
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlGrowCapacity
    - xmlRealloc
    linkageType: ''
    returnType: int
    signature: int xmlC14NVisibleNsStackAdd(xmlC14NVisibleNsStackPtr cur, xmlNsPtr
      ns, xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - cur
    - state
    argTypes:
    - xmlC14NVisibleNsStackPtr
    - xmlC14NVisibleNsStackPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 337
    functionDepth: 6
    functionLinenumber: 337
    functionLinenumberEnd: 347
    functionName: xmlC14NVisibleNsStackSave
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    linkageType: ''
    returnType: void
    signature: void xmlC14NVisibleNsStackSave(xmlC14NVisibleNsStackPtr cur, xmlC14NVisibleNsStackPtr
      state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - cur
    - state
    argTypes:
    - xmlC14NVisibleNsStackPtr
    - xmlC14NVisibleNsStackPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 349
    functionDepth: 6
    functionLinenumber: 349
    functionLinenumberEnd: 358
    functionName: xmlC14NVisibleNsStackRestore
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    linkageType: ''
    returnType: void
    signature: void xmlC14NVisibleNsStackRestore(xmlC14NVisibleNsStackPtr cur, xmlC14NVisibleNsStackPtr
      state)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlC14NVisibleNsStackPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 360
    functionDepth: 6
    functionLinenumber: 360
    functionLinenumberEnd: 368
    functionName: xmlC14NVisibleNsStackShift
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    linkageType: ''
    returnType: void
    signature: void xmlC14NVisibleNsStackShift(xmlC14NVisibleNsStackPtr cur)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - str1
    - str2
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 379
    functionName: xmlC14NStrEqual
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlC14NStrEqual(const xmlChar *str1, const xmlChar *str2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:397,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:407,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:407,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:414,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:415,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - cur
    - ns
    argTypes:
    - xmlC14NVisibleNsStackPtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 388
    functionDepth: 6
    functionLinenumber: 388
    functionLinenumberEnd: 420
    functionName: xmlC14NVisibleNsStackFind
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    - xmlC14NStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlC14NVisibleNsStackFind(xmlC14NVisibleNsStackPtr cur, xmlNsPtr
      ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:430,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:440,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:440,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:447,1
    - Dst: xmlC14NStrEqual
      Src: /src/libxml2/c14n.c:448,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:449,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - cur
    - ns
    - ctx
    argTypes:
    - xmlC14NVisibleNsStackPtr
    - xmlNsPtr
    - xmlC14NCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 422
    functionDepth: 6
    functionLinenumber: 422
    functionLinenumberEnd: 457
    functionName: xmlExcC14NVisibleNsStackFind
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NIsVisible
    - xmlC14NErrParam
    - xmlC14NStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlExcC14NVisibleNsStackFind(xmlC14NVisibleNsStackPtr cur, xmlNsPtr
      ns, xmlC14NCtxPtr ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:475,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 477
    functionName: xmlC14NIsXmlNs
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlC14NIsXmlNs(xmlNsPtr ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxml2/c14n.c:499,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - data1
    - data2
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 487
    functionDepth: 1
    functionLinenumber: 487
    functionLinenumberEnd: 500
    functionName: xmlC14NNsCompare
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xmlC14NNsCompare(const void *data1, const void *data2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:515,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:520,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:521,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:522,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:524,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/c14n.c:527,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - ns
    - ctx
    argTypes:
    - xmlNs*
    - xmlC14NCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 510
    functionDepth: 6
    functionLinenumber: 510
    functionLinenumberEnd: 532
    functionName: xmlC14NPrintNamespaces
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    - xmlOutputBufferWriteQuotedString
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlC14NPrintNamespaces(const xmlNs *ns, xmlC14NCtxPtr ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NPrintNamespaces
      Src: /src/libxml2/c14n.c:536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ns
    - ctx
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 534
    functionDepth: 7
    functionLinenumber: 534
    functionLinenumberEnd: 537
    functionName: xmlC14NPrintNamespacesWalker
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NPrintNamespaces
    linkageType: ''
    returnType: int
    signature: int xmlC14NPrintNamespacesWalker(const void *ns, void *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:587,1
    - Dst: xmlListCreate
      Src: /src/libxml2/c14n.c:594,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:596,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/c14n.c:603,1
    - Dst: xmlC14NIsXmlNs
      Src: /src/libxml2/c14n.c:605,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:605,1
    - Dst: xmlC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:606,1
    - Dst: xmlC14NVisibleNsStackAdd
      Src: /src/libxml2/c14n.c:608,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:609,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:614,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:616,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:635,1
    - Dst: xmlC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:636,1
    - Dst: xmlC14NPrintNamespaces
      Src: /src/libxml2/c14n.c:637,1
    - Dst: xmlListWalk
      Src: /src/libxml2/c14n.c:645,1
    - Dst: xmlListDelete
      Src: /src/libxml2/c14n.c:651,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 3
    argNames:
    - ctx
    - cur
    - visible
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 577
    functionDepth: 7
    functionLinenumber: 577
    functionLinenumberEnd: 653
    functionName: xmlC14NProcessNamespacesAxis
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NIsXmlNs
    - xmlC14NVisibleNsStackFind
    - xmlStrlen
    - xmlListWalk
    - xmlListInsert
    - xmlSearchNs
    - xmlListCreate
    - xmlC14NPrintNamespaces
    - xmlC14NIsVisible
    - xmlC14NErrParam
    - xmlListDelete
    - xmlC14NErrMemory
    - xmlC14NVisibleNsStackAdd
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur,
      int visible)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:697,1
    - Dst: xmlC14NIsExclusive
      Src: /src/libxml2/c14n.c:701,1
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:702,1
    - Dst: xmlListCreate
      Src: /src/libxml2/c14n.c:710,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:712,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:730,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:731,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/c14n.c:736,1
    - Dst: xmlC14NIsXmlNs
      Src: /src/libxml2/c14n.c:737,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:737,1
    - Dst: xmlC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:738,1
    - Dst: xmlC14NVisibleNsStackAdd
      Src: /src/libxml2/c14n.c:740,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:741,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:746,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:748,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/c14n.c:759,1
    - Dst: xmlC14NIsXmlNs
      Src: /src/libxml2/c14n.c:762,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:763,1
    - Dst: xmlExcC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:764,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:765,1
    - Dst: xmlC14NVisibleNsStackAdd
      Src: /src/libxml2/c14n.c:769,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:770,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:774,1
    - Dst: xmlC14NIsXmlNs
      Src: /src/libxml2/c14n.c:787,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:787,1
    - Dst: xmlExcC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:788,1
    - Dst: xmlC14NVisibleNsStackAdd
      Src: /src/libxml2/c14n.c:789,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:790,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:794,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:796,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:799,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:799,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:811,1
    - Dst: xmlExcC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:813,1
    - Dst: xmlC14NPrintNamespaces
      Src: /src/libxml2/c14n.c:815,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:820,1
    - Dst: xmlC14NVisibleNsStackFind
      Src: /src/libxml2/c14n.c:821,1
    - Dst: xmlC14NPrintNamespaces
      Src: /src/libxml2/c14n.c:822,1
    - Dst: xmlListWalk
      Src: /src/libxml2/c14n.c:831,1
    - Dst: xmlListDelete
      Src: /src/libxml2/c14n.c:837,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 100
    argCount: 3
    argNames:
    - ctx
    - cur
    - visible
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 685
    functionDepth: 7
    functionLinenumber: 685
    functionLinenumberEnd: 839
    functionName: xmlExcC14NProcessNamespacesAxis
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlC14NIsXmlNs
    - xmlC14NVisibleNsStackFind
    - xmlC14NVisibleNsStackAdd
    - xmlStrlen
    - xmlListInsert
    - xmlListWalk
    - xmlSearchNs
    - xmlListCreate
    - xmlC14NPrintNamespaces
    - xmlC14NIsVisible
    - xmlC14NErrParam
    - xmlListDelete
    - xmlC14NErrMemory
    - xmlC14NIsExclusive
    - xmlExcC14NVisibleNsStackFind
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlExcC14NProcessNamespacesAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur,
      int visible)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NIsXmlNs
      Src: /src/libxml2/c14n.c:855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 851
    functionDepth: 2
    functionLinenumber: 851
    functionLinenumberEnd: 856
    functionName: xmlC14NIsXmlAttr
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NIsXmlNs
    linkageType: ''
    returnType: int
    signature: int xmlC14NIsXmlAttr(xmlAttrPtr attr)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/libxml2/c14n.c:883,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/c14n.c:900,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/c14n.c:902,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - data1
    - data2
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 866
    functionDepth: 1
    functionLinenumber: 866
    functionLinenumberEnd: 905
    functionName: xmlC14NAttrsCompare
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xmlC14NAttrsCompare(const void *data1, const void *data2)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:927,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:931,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:932,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:933,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:935,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:937,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:938,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/c14n.c:940,1
    - Dst: xmlC11NNormalizeAttr
      Src: /src/libxml2/c14n.c:943,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:944,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:946,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:947,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:949,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:953,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - data
    - user
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 918
    functionDepth: 7
    functionLinenumber: 918
    functionLinenumberEnd: 955
    functionName: xmlC14NPrintAttrs
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlStrlen
    - xmlNodeListGetString
    - xmlC14NErrParam
    - xmlC11NNormalizeAttr
    - xmlC14NErrMemory
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlC14NPrintAttrs(const void *data, void *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:966,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/c14n.c:967,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - ctx
    - cur
    - name
    - ns
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 962
    functionDepth: 5
    functionLinenumber: 962
    functionLinenumberEnd: 976
    functionName: xmlC14NFindHiddenParentAttr
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NIsVisible
    - xmlHasNsProp
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr xmlC14NFindHiddenParentAttr(xmlC14NCtxPtr ctx, xmlNodePtr
      cur, const xmlChar * name, const xmlChar * ns)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:994,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/c14n.c:999,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1001,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1007,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/c14n.c:1010,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/c14n.c:1013,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1015,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1017,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:1023,1
    - Dst: xmlStrcat
      Src: /src/libxml2/c14n.c:1025,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1027,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1028,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1030,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/c14n.c:1038,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1040,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1041,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1044,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1046,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1053,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1054,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:1063,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1064,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/c14n.c:1069,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1071,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1073,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1078,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 2
    argNames:
    - ctx
    - xml_base_attr
    argTypes:
    - xmlC14NCtxPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 983
    functionDepth: 9
    functionLinenumber: 983
    functionLinenumberEnd: 1080
    functionName: xmlC14NFixupBaseAttr
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErr
    - xmlHasNsProp
    - xmlStrEqual
    - xmlFree
    - xmlStrlen
    - xmlNodeListGetString
    - xmlC14NErrParam
    - xmlC14NIsVisible
    - xmlBuildURISafe
    - xmlNewNsProp
    - xmlC14NErrMemory
    - xmlStrcat
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr xmlC14NFixupBaseAttr(xmlC14NCtxPtr ctx, xmlAttrPtr xml_base_attr)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1125,1
    - Dst: xmlListCreate
      Src: /src/libxml2/c14n.c:1132,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1134,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1157,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1158,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1167,1
    - Dst: xmlC14NIsXmlAttr
      Src: /src/libxml2/c14n.c:1179,1
    - Dst: xmlListSearch
      Src: /src/libxml2/c14n.c:1180,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1181,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1203,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1204,1
    - Dst: xmlC14NIsXmlAttr
      Src: /src/libxml2/c14n.c:1246,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1248,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1249,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:1255,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:1259,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/c14n.c:1265,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1271,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1272,1
    - Dst: xmlC14NFindHiddenParentAttr
      Src: /src/libxml2/c14n.c:1285,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1288,1
    - Dst: xmlC14NFindHiddenParentAttr
      Src: /src/libxml2/c14n.c:1291,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1294,1
    - Dst: xmlC14NFindHiddenParentAttr
      Src: /src/libxml2/c14n.c:1300,1
    - Dst: xmlC14NFixupBaseAttr
      Src: /src/libxml2/c14n.c:1303,1
    - Dst: xmlListInsert
      Src: /src/libxml2/c14n.c:1305,1
    - Dst: xmlListWalk
      Src: /src/libxml2/c14n.c:1321,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/c14n.c:1326,1
    - Dst: xmlListDelete
      Src: /src/libxml2/c14n.c:1327,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 101
    argCount: 3
    argNames:
    - ctx
    - cur
    - parent_visible
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1112
    functionDepth: 10
    functionLinenumber: 1112
    functionLinenumberEnd: 1329
    functionName: xmlC14NProcessAttrsAxis
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlListWalk
    - xmlListInsert
    - xmlC14NIsXmlAttr
    - xmlC14NFindHiddenParentAttr
    - xmlListCreate
    - xmlC14NIsVisible
    - xmlC14NErrParam
    - xmlC14NFixupBaseAttr
    - xmlFreePropList
    - xmlListDelete
    - xmlC14NErrMemory
    - xmlListSearch
    linkageType: ''
    returnType: int
    signature: int xmlC14NProcessAttrsAxis(xmlC14NCtxPtr ctx, xmlNodePtr cur, int
      parent_visible)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1344,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:1350,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/c14n.c:1354,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1357,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1359,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:1363,1
    - Dst: xmlC14NErrRelativeNamespace
      Src: /src/libxml2/c14n.c:1364,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/c14n.c:1365,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/c14n.c:1368,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - ctx
    - cur
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1338
    functionDepth: 8
    functionLinenumber: 1338
    functionLinenumberEnd: 1373
    functionName: xmlC14NCheckForRelativeNamespaces
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErr
    - xmlStrlen
    - xmlC14NErrParam
    - xmlFreeURI
    - xmlC14NErrMemory
    - xmlParseURISafe
    - xmlC14NErrRelativeNamespace
    linkageType: ''
    returnType: int
    signature: int xmlC14NCheckForRelativeNamespaces(xmlC14NCtxPtr ctx, xmlNodePtr
      cur)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1403,1
    - Dst: xmlC14NCheckForRelativeNamespaces
      Src: /src/libxml2/c14n.c:1412,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:1418,1
    - Dst: xmlC14NVisibleNsStackSave
      Src: /src/libxml2/c14n.c:1419,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1428,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:1430,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1431,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1433,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1435,1
    - Dst: xmlC14NIsExclusive
      Src: /src/libxml2/c14n.c:1438,1
    - Dst: xmlC14NProcessNamespacesAxis
      Src: /src/libxml2/c14n.c:1439,1
    - Dst: xmlExcC14NProcessNamespacesAxis
      Src: /src/libxml2/c14n.c:1441,1
    - Dst: xmlC14NVisibleNsStackShift
      Src: /src/libxml2/c14n.c:1447,1
    - Dst: xmlC14NProcessAttrsAxis
      Src: /src/libxml2/c14n.c:1450,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1455,1
    - Dst: xmlC14NProcessNodeList
      Src: /src/libxml2/c14n.c:1458,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1463,1
    - Dst: xmlStrlen
      Src: /src/libxml2/c14n.c:1464,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1465,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1467,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1469,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1470,1
    - Dst: xmlC14NVisibleNsStackRestore
      Src: /src/libxml2/c14n.c:1481,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 58
    argCount: 3
    argNames:
    - ctx
    - cur
    - visible
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1483
      start: 1395
    functionDepth: 11
    functionLinenumber: 1395
    functionLinenumberEnd: 1483
    functionName: xmlC14NProcessElementNode
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrlen
    - xmlC14NProcessAttrsAxis
    - xmlC14NProcessNamespacesAxis
    - xmlC14NProcessNodeList
    - xmlExcC14NProcessNamespacesAxis
    - xmlC14NErrParam
    - xmlC14NVisibleNsStackSave
    - xmlC14NIsExclusive
    - xmlC14NCheckForRelativeNamespaces
    - xmlC14NVisibleNsStackRestore
    - xmlOutputBufferWriteString
    - xmlC14NVisibleNsStackShift
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlC14NProcessElementNode(xmlC14NCtxPtr ctx, xmlNodePtr cur, int
      visible)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1499,1
    - Dst: xmlC14NIsVisible
      Src: /src/libxml2/c14n.c:1503,1
    - Dst: xmlC14NProcessElementNode
      Src: /src/libxml2/c14n.c:1506,1
    - Dst: xmlC11NNormalizeText
      Src: /src/libxml2/c14n.c:1522,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1524,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1526,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1528,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1548,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1550,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1553,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1558,1
    - Dst: xmlC11NNormalizePI
      Src: /src/libxml2/c14n.c:1561,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1563,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1565,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1567,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1573,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1575,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1597,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1599,1
    - Dst: xmlC11NNormalizeComment
      Src: /src/libxml2/c14n.c:1606,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1608,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1610,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1612,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1618,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/c14n.c:1620,1
    - Dst: xmlC14NProcessNodeList
      Src: /src/libxml2/c14n.c:1632,1
    - Dst: xmlC14NErrInvalidNode
      Src: /src/libxml2/c14n.c:1637,1
    - Dst: xmlC14NErrInvalidNode
      Src: /src/libxml2/c14n.c:1640,1
    - Dst: xmlC14NErrInvalidNode
      Src: /src/libxml2/c14n.c:1643,1
    - Dst: xmlC14NErrInvalidNode
      Src: /src/libxml2/c14n.c:1646,1
    - Dst: xmlC14NErrUnknownNode
      Src: /src/libxml2/c14n.c:1664,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 108
    argCount: 2
    argNames:
    - ctx
    - cur
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1492
    functionDepth: 12
    functionLinenumber: 1492
    functionLinenumberEnd: 1669
    functionName: xmlC14NProcessNode
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC11NNormalizePI
    - xmlC11NNormalizeComment
    - xmlC14NErrInvalidNode
    - xmlC14NProcessElementNode
    - xmlFree
    - xmlC14NProcessNodeList
    - xmlC14NIsVisible
    - xmlC11NNormalizeText
    - xmlC14NErrParam
    - xmlC14NErrUnknownNode
    - xmlC14NErrMemory
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlC14NProcessNode(xmlC14NCtxPtr ctx, xmlNodePtr cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1684,1
    - Dst: xmlC14NProcessNode
      Src: /src/libxml2/c14n.c:1689,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - cur
    argTypes:
    - xmlC14NCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1678
    functionDepth: 13
    functionLinenumber: 1678
    functionLinenumberEnd: 1692
    functionName: xmlC14NProcessNodeList
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 2
    functionsReached:
    - xmlC14NErrParam
    - xmlC14NProcessNode
    linkageType: ''
    returnType: int
    signature: int xmlC14NProcessNodeList(xmlC14NCtxPtr ctx, xmlNodePtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1705,1
    - Dst: xmlC14NVisibleNsStackDestroy
      Src: /src/libxml2/c14n.c:1710,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:1712,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlC14NCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1701
    functionDepth: 7
    functionLinenumber: 1701
    functionLinenumberEnd: 1713
    functionName: xmlC14NFreeCtx
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErrParam
    - xmlC14NVisibleNsStackDestroy
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlC14NFreeCtx(xmlC14NCtxPtr ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1743,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1751,1
    - Dst: xmlMalloc
      Src: /src/libxml2/c14n.c:1759,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1761,1
    - Dst: memset
      Src: /src/libxml2/c14n.c:1764,1
    - Dst: xmlC14NVisibleNsStackCreate
      Src: /src/libxml2/c14n.c:1776,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1779,1
    - Dst: xmlC14NFreeCtx
      Src: /src/libxml2/c14n.c:1780,1
    - Dst: xmlC14NIsExclusive
      Src: /src/libxml2/c14n.c:1789,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 7
    argNames:
    - doc
    - is_visible_callback
    - user_data
    - mode
    - inclusive_ns_prefixes
    - with_comments
    - buf
    argTypes:
    - xmlDocPtr
    - xmlC14NIsVisibleCallback
    - void*
    - xmlC14NMode
    - xmlChar**
    - int
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1794
      start: 1734
    functionDepth: 8
    functionLinenumber: 1734
    functionLinenumberEnd: 1794
    functionName: xmlC14NNewCtx
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlC14NErr
    - xmlC14NFreeCtx
    - xmlMalloc
    - xmlC14NErrParam
    - xmlC14NErrMemory
    - xmlC14NIsExclusive
    - xmlC14NVisibleNsStackCreate
    - memset
    linkageType: ''
    returnType: xmlC14NCtxPtr
    signature: "xmlC14NCtxPtr xmlC14NNewCtx(xmlDocPtr doc,\n\t      xmlC14NIsVisibleCallback
      is_visible_callback, void* user_data,\n              xmlC14NMode mode, xmlChar
      ** inclusive_ns_prefixes,\n              int with_comments, xmlOutputBufferPtr
      buf)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1827,1
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1840,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1848,1
    - Dst: xmlC14NNewCtx
      Src: /src/libxml2/c14n.c:1853,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1857,1
    - Dst: xmlC14NProcessNodeList
      Src: /src/libxml2/c14n.c:1873,1
    - Dst: xmlC14NFreeCtx
      Src: /src/libxml2/c14n.c:1875,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/c14n.c:1883,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:1885,1
    - Dst: xmlC14NFreeCtx
      Src: /src/libxml2/c14n.c:1886,1
    - Dst: xmlC14NFreeCtx
      Src: /src/libxml2/c14n.c:1893,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 7
    argNames:
    - doc
    - is_visible_callback
    - user_data
    - mode
    - inclusive_ns_prefixes
    - with_comments
    - buf
    argTypes:
    - xmlDoc*
    - xmlC14NIsVisibleCallback
    - void*
    - int
    - xmlChar**
    - int
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1817
    functionDepth: 14
    functionLinenumber: 1817
    functionLinenumberEnd: 1895
    functionName: xmlC14NExecute
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 1
    functionsReached:
    - xmlC14NErr
    - xmlC14NNewCtx
    - xmlOutputBufferFlush
    - xmlC14NFreeCtx
    - xmlC14NProcessNodeList
    - xmlC14NErrParam
    linkageType: ''
    returnType: int
    signature: "int xmlC14NExecute(xmlDoc *doc, xmlC14NIsVisibleCallback is_visible_callback,\n\t
      void* user_data, int mode, xmlChar **inclusive_ns_prefixes,\n\t int with_comments,
      xmlOutputBuffer *buf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NExecute
      Src: /src/libxml2/c14n.c:1920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - doc
    - nodes
    - mode
    - inclusive_ns_prefixes
    - with_comments
    - buf
    argTypes:
    - xmlDoc*
    - xmlNodeSet*
    - int
    - xmlChar**
    - int
    - xmlOutputBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1916
    functionDepth: 15
    functionLinenumber: 1916
    functionLinenumberEnd: 1927
    functionName: xmlC14NDocSaveTo
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 1
    functionsReached:
    - xmlC14NExecute
    linkageType: ''
    returnType: int
    signature: "int xmlC14NDocSaveTo(xmlDoc *doc, xmlNodeSet *nodes,\n                 int
      mode, xmlChar ** inclusive_ns_prefixes,\n                 int with_comments,
      xmlOutputBuffer *buf)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:1958,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/c14n.c:1967,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1969,1
    - Dst: xmlC14NDocSaveTo
      Src: /src/libxml2/c14n.c:1976,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/c14n.c:1979,1
    - Dst: xmlBufUse
      Src: /src/libxml2/c14n.c:1983,1
    - Dst: xmlStrndup
      Src: /src/libxml2/c14n.c:1985,1
    - Dst: xmlBufContent
      Src: /src/libxml2/c14n.c:1985,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/c14n.c:1987,1
    - Dst: xmlC14NErrMemory
      Src: /src/libxml2/c14n.c:1990,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 6
    argNames:
    - doc
    - nodes
    - mode
    - inclusive_ns_prefixes
    - with_comments
    - doc_txt_ptr
    argTypes:
    - xmlDoc*
    - xmlNodeSet*
    - int
    - xmlChar**
    - int
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1949
    functionDepth: 16
    functionLinenumber: 1949
    functionLinenumberEnd: 1994
    functionName: xmlC14NDocDumpMemory
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 3
    functionsReached:
    - xmlBufContent
    - xmlBufUse
    - xmlStrndup
    - xmlAllocOutputBuffer
    - xmlC14NErrParam
    - xmlOutputBufferClose
    - xmlC14NErrMemory
    - xmlC14NDocSaveTo
    linkageType: ''
    returnType: int
    signature: "int xmlC14NDocDumpMemory(xmlDoc *doc, xmlNodeSet *nodes,\n                     int
      mode, xmlChar ** inclusive_ns_prefixes,\n                     int with_comments,
      xmlChar ** doc_txt_ptr)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlC14NErrParam
      Src: /src/libxml2/c14n.c:2026,1
    - Dst: xmlGetCompressMode
      Src: /src/libxml2/c14n.c:2031,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/c14n.c:2037,1
    - Dst: xmlC14NErr
      Src: /src/libxml2/c14n.c:2039,1
    - Dst: xmlC14NDocSaveTo
      Src: /src/libxml2/c14n.c:2046,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/c14n.c:2049,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/c14n.c:2056,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 7
    argNames:
    - doc
    - nodes
    - mode
    - inclusive_ns_prefixes
    - with_comments
    - filename
    - compression
    argTypes:
    - xmlDoc*
    - xmlNodeSet*
    - int
    - xmlChar**
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2058
      start: 2017
    functionDepth: 16
    functionLinenumber: 2017
    functionLinenumberEnd: 2058
    functionName: xmlC14NDocSave
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 1
    functionsReached:
    - xmlC14NErr
    - xmlC14NErrParam
    - xmlOutputBufferClose
    - xmlGetCompressMode
    - xmlC14NDocSaveTo
    - xmlOutputBufferCreateFilename
    linkageType: ''
    returnType: int
    signature: "int xmlC14NDocSave(xmlDoc *doc, xmlNodeSet *nodes,\n               int
      mode, xmlChar ** inclusive_ns_prefixes,\n               int with_comments, const
      char *filename, int compression)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/c14n.c:2086,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/c14n.c:2097,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:2099,1
    - Dst: xmlRealloc
      Src: /src/libxml2/c14n.c:2102,1
    - Dst: xmlFree
      Src: /src/libxml2/c14n.c:2104,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 78
    argCount: 2
    argNames:
    - input
    - mode
    argTypes:
    - xmlChar*
    - xmlC14NNormalizationMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2169
      start: 2070
    functionDepth: 1
    functionLinenumber: 2070
    functionLinenumberEnd: 2169
    functionName: xmlC11NNormalizeString
    functionSourceFile: /src/libxml2/c14n.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlGrowCapacity
    - xmlRealloc
    - xmlFree
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlC11NNormalizeString(const xmlChar * input,\n                       xmlC14NNormalizationMode
      mode)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: isatty
      Src: /src/libxml2/xmlcatalog.c:83,1
    - Dst: readline
      Src: /src/libxml2/xmlcatalog.c:87,1
    - Dst: add_history
      Src: /src/libxml2/xmlcatalog.c:92,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:100,1
    - Dst: fflush
      Src: /src/libxml2/xmlcatalog.c:101,1
    - Dst: fgets
      Src: /src/libxml2/xmlcatalog.c:102,1
    - Dst: strlen
      Src: /src/libxml2/xmlcatalog.c:105,1
    - Dst: malloc
      Src: /src/libxml2/xmlcatalog.c:106,1
    - Dst: memcpy
      Src: /src/libxml2/xmlcatalog.c:108,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - prompt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 111
    functionName: xmlShellReadline
    functionSourceFile: /src/libxml2/xmlcatalog.c
    functionUses: 0
    functionsReached:
    - strlen
    - isatty
    - fgets
    - memcpy
    - readline
    - add_history
    - malloc
    - fprintf
    - fflush
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlShellReadline(const char *prompt)'
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: xmlShellReadline
      Src: /src/libxml2/xmlcatalog.c:123,1
    - Dst: free
      Src: /src/libxml2/xmlcatalog.c:142,1
    - Dst: memset
      Src: /src/libxml2/xmlcatalog.c:149,1
    - Dst: memset
      Src: /src/libxml2/xmlcatalog.c:165,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:202,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:203,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:204,1
    - Dst: free
      Src: /src/libxml2/xmlcatalog.c:205,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:209,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:211,1
    - Dst: xmlCatalogResolvePublic
      Src: /src/libxml2/xmlcatalog.c:213,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:215,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:217,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:218,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:221,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:223,1
    - Dst: xmlCatalogResolveSystem
      Src: /src/libxml2/xmlcatalog.c:225,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:227,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:229,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:230,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:233,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:235,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/xmlcatalog.c:238,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/xmlcatalog.c:241,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:244,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:246,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:248,1
    - Dst: xmlCatalogRemove
      Src: /src/libxml2/xmlcatalog.c:250,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:252,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:255,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:257,1
    - Dst: xmlCatalogResolve
      Src: /src/libxml2/xmlcatalog.c:259,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:262,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:264,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:265,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:268,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:270,1
    - Dst: xmlCatalogDump
      Src: /src/libxml2/xmlcatalog.c:272,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:274,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:276,1
    - Dst: xmlCatalogSetDebug
      Src: /src/libxml2/xmlcatalog.c:279,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:281,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:283,1
    - Dst: xmlCatalogSetDebug
      Src: /src/libxml2/xmlcatalog.c:287,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:290,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:291,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:293,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:294,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:295,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:296,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:297,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:298,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:299,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:300,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:301,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:302,1
    - Dst: free
      Src: /src/libxml2/xmlcatalog.c:304,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 173
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 113
    functionDepth: 19
    functionLinenumber: 113
    functionLinenumberEnd: 306
    functionName: usershell
    functionSourceFile: /src/libxml2/xmlcatalog.c
    functionUses: 0
    functionsReached:
    - free
    - xmlCatalogAdd
    - xmlFree
    - strcmp
    - xmlCatalogResolve
    - xmlCatalogSetDebug
    - printf
    - xmlCatalogResolveSystem
    - xmlCatalogRemove
    - xmlCatalogDump
    - xmlShellReadline
    - xmlCatalogResolvePublic
    - memset
    linkageType: ''
    returnType: void
    signature: void usershell(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:315,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 335
    functionName: usage
    functionSourceFile: /src/libxml2/xmlcatalog.c
    functionUses: 5
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 55
    BranchProfiles: []
    Callsites:
    - Dst: _setmode
      Src: /src/libxml2/xmlcatalog.c:342,1
    - Dst: _fileno
      Src: /src/libxml2/xmlcatalog.c:342,1
    - Dst: _setmode
      Src: /src/libxml2/xmlcatalog.c:343,1
    - Dst: _fileno
      Src: /src/libxml2/xmlcatalog.c:343,1
    - Dst: _setmode
      Src: /src/libxml2/xmlcatalog.c:344,1
    - Dst: _fileno
      Src: /src/libxml2/xmlcatalog.c:344,1
    - Dst: usage
      Src: /src/libxml2/xmlcatalog.c:348,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:354,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:359,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:360,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:361,1
    - Dst: xmlCatalogSetDebug
      Src: /src/libxml2/xmlcatalog.c:363,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:364,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:365,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:367,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:368,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:372,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:373,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:376,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:377,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:380,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:381,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:383,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:384,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:387,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:388,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:396,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:397,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:401,1
    - Dst: usage
      Src: /src/libxml2/xmlcatalog.c:402,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:408,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:409,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:417,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:418,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:427,1
    - Dst: usage
      Src: /src/libxml2/xmlcatalog.c:428,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/xmlcatalog.c:439,1
    - Dst: xmlLoadCatalog
      Src: /src/libxml2/xmlcatalog.c:442,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/xmlcatalog.c:444,1
    - Dst: xmlCatalogResolvePublic
      Src: /src/libxml2/xmlcatalog.c:452,1
    - Dst: xmlCatalogConvert
      Src: /src/libxml2/xmlcatalog.c:459,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:464,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:469,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:469,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:470,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:470,1
    - Dst: xmlLoadSGMLSuperCatalog
      Src: /src/libxml2/xmlcatalog.c:481,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:483,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:484,1
    - Dst: xmlNewCatalog
      Src: /src/libxml2/xmlcatalog.c:486,1
    - Dst: xmlACatalogAdd
      Src: /src/libxml2/xmlcatalog.c:487,1
    - Dst: xmlLoadSGMLSuperCatalog
      Src: /src/libxml2/xmlcatalog.c:491,1
    - Dst: xmlNewCatalog
      Src: /src/libxml2/xmlcatalog.c:493,1
    - Dst: xmlACatalogAdd
      Src: /src/libxml2/xmlcatalog.c:495,1
    - Dst: xmlACatalogRemove
      Src: /src/libxml2/xmlcatalog.c:500,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:504,1
    - Dst: xmlCatalogIsEmpty
      Src: /src/libxml2/xmlcatalog.c:509,1
    - Dst: xmlLoadSGMLSuperCatalog
      Src: /src/libxml2/xmlcatalog.c:510,1
    - Dst: xmlACatalogRemove
      Src: /src/libxml2/xmlcatalog.c:513,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:516,1
    - Dst: xmlCatalogIsEmpty
      Src: /src/libxml2/xmlcatalog.c:527,1
    - Dst: remove
      Src: /src/libxml2/xmlcatalog.c:528,1
    - Dst: fopen
      Src: /src/libxml2/xmlcatalog.c:530,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:532,1
    - Dst: xmlACatalogDump
      Src: /src/libxml2/xmlcatalog.c:537,1
    - Dst: fclose
      Src: /src/libxml2/xmlcatalog.c:538,1
    - Dst: xmlCatalogIsEmpty
      Src: /src/libxml2/xmlcatalog.c:542,1
    - Dst: remove
      Src: /src/libxml2/xmlcatalog.c:543,1
    - Dst: fopen
      Src: /src/libxml2/xmlcatalog.c:545,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:547,1
    - Dst: xmlACatalogDump
      Src: /src/libxml2/xmlcatalog.c:554,1
    - Dst: fclose
      Src: /src/libxml2/xmlcatalog.c:555,1
    - Dst: xmlACatalogDump
      Src: /src/libxml2/xmlcatalog.c:560,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/xmlcatalog.c:564,1
    - Dst: xmlFreeCatalog
      Src: /src/libxml2/xmlcatalog.c:565,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:569,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:570,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/xmlcatalog.c:572,1
    - Dst: xmlCatalogAdd
      Src: /src/libxml2/xmlcatalog.c:575,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:579,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:583,1
    - Dst: strcmp
      Src: /src/libxml2/xmlcatalog.c:584,1
    - Dst: xmlCatalogRemove
      Src: /src/libxml2/xmlcatalog.c:585,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:587,1
    - Dst: usershell
      Src: /src/libxml2/xmlcatalog.c:597,1
    - Dst: xmlParseURI
      Src: /src/libxml2/xmlcatalog.c:603,1
    - Dst: xmlCatalogResolvePublic
      Src: /src/libxml2/xmlcatalog.c:605,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:607,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:610,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:611,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/xmlcatalog.c:614,1
    - Dst: xmlCatalogResolveSystem
      Src: /src/libxml2/xmlcatalog.c:615,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:617,1
    - Dst: xmlCatalogResolveURI
      Src: /src/libxml2/xmlcatalog.c:618,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:620,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:623,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:624,1
    - Dst: printf
      Src: /src/libxml2/xmlcatalog.c:627,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlcatalog.c:628,1
    - Dst: LIBXML_SGML_CATALOG_ENABLED
      Src: /src/libxml2/xmlcatalog.c:634,1
    - Dst: fopen
      Src: /src/libxml2/xmlcatalog.c:645,1
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:647,1
    - Dst: xmlCatalogDump
      Src: /src/libxml2/xmlcatalog.c:651,1
    - Dst: xmlCatalogDump
      Src: /src/libxml2/xmlcatalog.c:654,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/xmlcatalog.c:661,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 229
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 336
    functionDepth: 20
    functionLinenumber: 336
    functionLinenumberEnd: 663
    functionName: main
    functionSourceFile: /src/libxml2/xmlcatalog.c
    functionUses: 0
    functionsReached:
    - xmlCatalogConvert
    - xmlCatalogRemove
    - xmlCleanupParser
    - fclose
    - xmlCatalogIsEmpty
    - xmlCatalogResolveSystem
    - xmlInitializeCatalog
    - LIBXML_SGML_CATALOG_ENABLED
    - xmlFree
    - xmlLoadCatalog
    - _setmode
    - strcmp
    - xmlACatalogDump
    - xmlACatalogAdd
    - xmlFreeCatalog
    - xmlFreeURI
    - remove
    - fprintf
    - xmlCatalogAdd
    - xmlLoadSGMLSuperCatalog
    - xmlCatalogSetDebug
    - _fileno
    - xmlNewCatalog
    - xmlParseURI
    - xmlCatalogResolvePublic
    - usershell
    - usage
    - fopen
    - printf
    - xmlCatalogDump
    - xmlACatalogRemove
    - xmlCatalogResolveURI
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/xmlcatalog.c:666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 665
    functionDepth: 0
    functionLinenumber: 665
    functionLinenumberEnd: 668
    functionName: main
    functionSourceFile: /src/libxml2/xmlcatalog.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlRaiseMemoryError
      Src: /src/libxml2/xmlsave.c:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: xmlSaveErrMemory
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlRaiseMemoryError
    linkageType: ''
    returnType: void
    signature: void xmlSaveErrMemory(xmlOutputBufferPtr out)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlIsCatastrophicError
      Src: /src/libxml2/xmlsave.c:84,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:88,1
    - Dst: xmlErrString
      Src: /src/libxml2/xmlsave.c:98,1
    - Dst: xmlRaiseError
      Src: /src/libxml2/xmlsave.c:102,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:107,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 4
    argNames:
    - out
    - code
    - node
    - extra
    argTypes:
    - xmlOutputBufferPtr
    - int
    - xmlNodePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 74
    functionDepth: 5
    functionLinenumber: 74
    functionLinenumberEnd: 108
    functionName: xmlSaveErr
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlRaiseError
    - xmlIsCatastrophicError
    - xmlSaveErrMemory
    - xmlErrString
    linkageType: ''
    returnType: void
    signature: "void xmlSaveErr(xmlOutputBufferPtr out, int code, xmlNodePtr node,\n
      \          const char *extra)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/libxml2/xmlsave.c:133,1
    - Dst: memcpy
      Src: /src/libxml2/xmlsave.c:140,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - indent
    argTypes:
    - xmlSaveCtxt*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 143
    functionName: xmlSaveSetIndentString
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - memcpy
    - strlen
    linkageType: ''
    returnType: int
    signature: int xmlSaveSetIndentString(xmlSaveCtxt *ctxt, const char *indent)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveSetIndentString
      Src: /src/libxml2/xmlsave.c:156,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - xmlSaveCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 168
    functionName: xmlSaveCtxtInit
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlSaveSetIndentString
    linkageType: ''
    returnType: void
    signature: void xmlSaveCtxtInit(xmlSaveCtxtPtr ctxt, int options)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:178,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:180,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:181,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSaveCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 182
    functionName: xmlFreeSaveCtxt
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferClose
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeSaveCtxt(xmlSaveCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlsave.c:194,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:196,1
    - Dst: memset
      Src: /src/libxml2/xmlsave.c:199,1
    - Dst: xmlOpenCharEncodingHandler
      Src: /src/libxml2/xmlsave.c:204,1
    - Dst: xmlSaveErr
      Src: /src/libxml2/xmlsave.c:207,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:208,1
    - Dst: xmlStrdup
      Src: /src/libxml2/xmlsave.c:211,1
    - Dst: xmlSaveCtxtInit
      Src: /src/libxml2/xmlsave.c:214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - encoding
    - options
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 189
    functionDepth: 6
    functionLinenumber: 189
    functionLinenumberEnd: 217
    functionName: xmlNewSaveCtxt
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSaveCtxtInit
    - xmlSaveErrMemory
    - xmlFreeSaveCtxt
    - xmlSaveErr
    - xmlMalloc
    - memset
    - xmlOpenCharEncodingHandler
    linkageType: ''
    returnType: xmlSaveCtxtPtr
    signature: xmlSaveCtxtPtr xmlNewSaveCtxt(const char *encoding, int options)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSerializeText
      Src: /src/libxml2/xmlsave.c:230,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctxt
    - text
    - flags
    argTypes:
    - xmlSaveCtxt*
    - xmlChar*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 231
    functionName: xmlSaveWriteText
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlSerializeText
    linkageType: ''
    returnType: void
    signature: void xmlSaveWriteText(xmlSaveCtxt *ctxt, const xmlChar *text, unsigned
      flags)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveWriteText
      Src: /src/libxml2/xmlsave.c:249,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:252,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:253,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:254,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlSaveCtxt*
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 239
    functionDepth: 4
    functionLinenumber: 239
    functionLinenumberEnd: 262
    functionName: xmlSaveWriteAttrContent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlSaveWriteText
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlSaveWriteAttrContent(xmlSaveCtxt *ctxt, xmlAttrPtr attr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:272,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:273,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:276,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:277,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:279,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:280,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:283,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:284,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - buf
    - nota
    argTypes:
    - xmlOutputBufferPtr
    - xmlNotationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 270
    functionDepth: 5
    functionLinenumber: 270
    functionLinenumberEnd: 288
    functionName: xmlBufDumpNotationDecl
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlOutputBufferWriteQuotedString
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpNotationDecl(xmlOutputBufferPtr buf, xmlNotationPtr
      nota)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufDumpNotationDecl
      Src: /src/libxml2/xmlsave.c:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - nota
    - buf
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 297
    functionDepth: 6
    functionLinenumber: 297
    functionLinenumberEnd: 301
    functionName: xmlBufDumpNotationDeclScan
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlBufDumpNotationDecl
    linkageType: ''
    returnType: void
    signature: "void xmlBufDumpNotationDeclScan(void *nota, void *buf,\n                           const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashScan
      Src: /src/libxml2/xmlsave.c:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - table
    argTypes:
    - xmlOutputBufferPtr
    - xmlNotationTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 309
    functionDepth: 2
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionName: xmlBufDumpNotationTable
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpNotationTable(xmlOutputBufferPtr buf, xmlNotationTablePtr
      table)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:326,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:329,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:332,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - buf
    - cur
    argTypes:
    - xmlOutputBufferPtr
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 320
    functionDepth: 3
    functionLinenumber: 320
    functionLinenumberEnd: 335
    functionName: xmlBufDumpElementOccur
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpElementOccur(xmlOutputBufferPtr buf, xmlElementContentPtr
      cur)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:350,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:358,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:362,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:364,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:366,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:374,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:388,1
    - Dst: xmlBufDumpElementOccur
      Src: /src/libxml2/xmlsave.c:389,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:393,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:395,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:405,1
    - Dst: xmlBufDumpElementOccur
      Src: /src/libxml2/xmlsave.c:406,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 45
    argCount: 2
    argNames:
    - buf
    - content
    argTypes:
    - xmlOutputBufferPtr
    - xmlElementContentPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 343
    functionDepth: 4
    functionLinenumber: 343
    functionLinenumberEnd: 407
    functionName: xmlBufDumpElementContent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlBufDumpElementOccur
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: "void xmlBufDumpElementContent(xmlOutputBufferPtr buf,\n                         xmlElementContentPtr
      content)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:418,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:420,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:421,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:423,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:424,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:428,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:431,1
    - Dst: xmlBufDumpElementContent
      Src: /src/libxml2/xmlsave.c:435,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:442,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - buf
    - elem
    argTypes:
    - xmlOutputBufferPtr
    - xmlElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 416
    functionDepth: 5
    functionLinenumber: 416
    functionLinenumberEnd: 443
    functionName: xmlBufDumpElementDecl
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlBufDumpElementContent
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpElementDecl(xmlOutputBufferPtr buf, xmlElementPtr elem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:454,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:456,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:461,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - cur
    argTypes:
    - xmlOutputBufferPtr
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 451
    functionDepth: 4
    functionLinenumber: 451
    functionLinenumberEnd: 462
    functionName: xmlBufDumpEnumeration
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpEnumeration(xmlOutputBufferPtr buf, xmlEnumerationPtr
      cur)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:474,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:475,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:476,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:478,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:479,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:481,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:485,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:488,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:491,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:494,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:497,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:500,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:503,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:506,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:509,1
    - Dst: xmlBufDumpEnumeration
      Src: /src/libxml2/xmlsave.c:510,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:513,1
    - Dst: xmlBufDumpEnumeration
      Src: /src/libxml2/xmlsave.c:514,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:525,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:528,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:531,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:539,1
    - Dst: xmlSaveWriteText
      Src: /src/libxml2/xmlsave.c:540,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:541,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:544,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - xmlSaveCtxtPtr
    - xmlAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 470
    functionDepth: 5
    functionLinenumber: 470
    functionLinenumberEnd: 545
    functionName: xmlSaveWriteAttributeDecl
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlSaveWriteText
    - xmlOutputBufferWriteString
    - xmlBufDumpEnumeration
    linkageType: ''
    returnType: void
    signature: void xmlSaveWriteAttributeDecl(xmlSaveCtxtPtr ctxt, xmlAttributePtr
      attr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:561,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:566,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:567,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:572,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:573,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:581,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:582,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - buf
    - content
    argTypes:
    - xmlOutputBufferPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 554
    functionDepth: 3
    functionLinenumber: 554
    functionLinenumberEnd: 583
    functionName: xmlBufDumpEntityContent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpEntityContent(xmlOutputBufferPtr buf, const xmlChar
      *content)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:595,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:597,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:598,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:599,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:605,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:606,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:607,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:609,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:611,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:616,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:618,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:620,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:631,1
    - Dst: xmlBufDumpEntityContent
      Src: /src/libxml2/xmlsave.c:633,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:636,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 2
    argNames:
    - buf
    - ent
    argTypes:
    - xmlOutputBufferPtr
    - xmlEntityPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 591
    functionDepth: 5
    functionLinenumber: 591
    functionLinenumberEnd: 637
    functionName: xmlBufDumpEntityDecl
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlBufDumpEntityContent
    - xmlOutputBufferWriteQuotedString
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlBufDumpEntityDecl(xmlOutputBufferPtr buf, xmlEntityPtr ent)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlOpenCharEncodingHandler
      Src: /src/libxml2/xmlsave.c:655,1
    - Dst: xmlSaveErr
      Src: /src/libxml2/xmlsave.c:657,1
    - Dst: xmlBufCreate
      Src: /src/libxml2/xmlsave.c:664,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:666,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:667,1
    - Dst: xmlCharEncOutput
      Src: /src/libxml2/xmlsave.c:681,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - encoding
    argTypes:
    - xmlSaveCtxtPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 645
    functionDepth: 6
    functionLinenumber: 645
    functionLinenumberEnd: 684
    functionName: xmlSaveSwitchEncoding
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlSaveErrMemory
    - xmlCharEncOutput
    - xmlSaveErr
    - xmlBufCreate
    - xmlCharEncCloseFunc
    - xmlOpenCharEncodingHandler
    linkageType: ''
    returnType: int
    signature: int xmlSaveSwitchEncoding(xmlSaveCtxtPtr ctxt, const char *encoding)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlsave.c:690,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:693,1
    - Dst: xmlBufFree
      Src: /src/libxml2/xmlsave.c:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSaveCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 686
    functionDepth: 3
    functionLinenumber: 686
    functionLinenumberEnd: 703
    functionName: xmlSaveClearEncoding
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferFlush
    - xmlBufFree
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: int
    signature: int xmlSaveClearEncoding(xmlSaveCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:728,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - extra
    argTypes:
    - xmlSaveCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 715
    functionDepth: 3
    functionLinenumber: 715
    functionLinenumberEnd: 729
    functionName: xmlSaveWriteIndent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: void
    signature: void xmlSaveWriteIndent(xmlSaveCtxtPtr ctxt, int extra)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:743,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:745,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - ctxt
    - extra
    argTypes:
    - xmlSaveCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 737
    functionDepth: 3
    functionLinenumber: 737
    functionLinenumberEnd: 750
    functionName: xmlOutputBufferWriteWSNonSig
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    linkageType: ''
    returnType: void
    signature: void xmlOutputBufferWriteWSNonSig(xmlSaveCtxtPtr ctxt, int extra)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:771,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:775,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:777,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:781,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:782,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:784,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:785,1
    - Dst: xmlSerializeText
      Src: /src/libxml2/xmlsave.c:786,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:787,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 3
    argNames:
    - buf
    - cur
    - ctxt
    argTypes:
    - xmlOutputBufferPtr
    - xmlNsPtr
    - xmlSaveCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 761
    functionDepth: 4
    functionLinenumber: 761
    functionLinenumberEnd: 789
    functionName: xmlNsDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlOutputBufferWrite
    - xmlOutputBufferWriteWSNonSig
    - xmlSerializeText
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlNsDumpOutput(xmlOutputBufferPtr buf, xmlNsPtr cur, xmlSaveCtxtPtr
      ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNsDumpOutput
      Src: /src/libxml2/xmlsave.c:801,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 798
    functionDepth: 5
    functionLinenumber: 798
    functionLinenumberEnd: 804
    functionName: xmlNsListDumpOutputCtxt
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlNsDumpOutput
    linkageType: ''
    returnType: void
    signature: void xmlNsListDumpOutputCtxt(xmlSaveCtxtPtr ctxt, xmlNsPtr cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNsDumpOutput
      Src: /src/libxml2/xmlsave.c:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - buf
    - cur
    argTypes:
    - xmlOutputBuffer*
    - xmlNs*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 812
    functionDepth: 5
    functionLinenumber: 812
    functionLinenumberEnd: 818
    functionName: xmlNsListDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlNsDumpOutput
    linkageType: ''
    returnType: void
    signature: void xmlNsListDumpOutput(xmlOutputBuffer *buf, xmlNs *cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:836,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:837,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:839,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:840,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:841,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:842,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:844,1
    - Dst: xmlOutputBufferWriteQuotedString
      Src: /src/libxml2/xmlsave.c:845,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:850,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:853,1
    - Dst: xmlBufDumpNotationTable
      Src: /src/libxml2/xmlsave.c:860,1
    - Dst: xmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:867,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:871,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 2
    argNames:
    - ctxt
    - dtd
    argTypes:
    - xmlSaveCtxtPtr
    - xmlDtdPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 826
    functionDepth: 5
    functionLinenumber: 826
    functionLinenumberEnd: 872
    functionName: xmlDtdDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlBufDumpNotationTable
    - xmlOutputBufferWrite
    - xmlNodeDumpOutputInternal
    - xmlOutputBufferWriteQuotedString
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlDtdDumpOutput(xmlSaveCtxtPtr ctxt, xmlDtdPtr dtd)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:888,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:890,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:892,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:893,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:895,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:896,1
    - Dst: htmlIsBooleanAttr
      Src: /src/libxml2/xmlsave.c:903,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:904,1
    - Dst: xmlSaveWriteAttrContent
      Src: /src/libxml2/xmlsave.c:908,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:910,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 880
    functionDepth: 5
    functionLinenumber: 880
    functionLinenumberEnd: 911
    functionName: xmlAttrDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlOutputBufferWriteWSNonSig
    - xmlSaveWriteAttrContent
    - htmlIsBooleanAttr
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: void
    signature: void xmlAttrDumpOutput(xmlSaveCtxtPtr ctxt, xmlAttrPtr cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlsave.c:925,1
    - Dst: xmlSaveSwitchEncoding
      Src: /src/libxml2/xmlsave.c:936,1
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/xmlsave.c:944,1
    - Dst: xmlSaveClearEncoding
      Src: /src/libxml2/xmlsave.c:947,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 920
    functionDepth: 7
    functionLinenumber: 920
    functionLinenumberEnd: 951
    functionName: htmlNodeDumpOutputInternal
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlSaveClearEncoding
    - htmlNodeDumpInternal
    - xmlSaveSwitchEncoding
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int htmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur)
  - BBCount: 56
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveDocInternal
      Src: /src/libxml2/xmlsave.c:977,1
    - Dst: xmlDtdDumpOutput
      Src: /src/libxml2/xmlsave.c:981,1
    - Dst: xmlBufDumpElementDecl
      Src: /src/libxml2/xmlsave.c:994,1
    - Dst: xmlSaveWriteAttributeDecl
      Src: /src/libxml2/xmlsave.c:998,1
    - Dst: xmlBufDumpEntityDecl
      Src: /src/libxml2/xmlsave.c:1002,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1007,1
    - Dst: xmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:1015,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1019,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1021,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1022,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1024,1
    - Dst: xmlNsListDumpOutputCtxt
      Src: /src/libxml2/xmlsave.c:1026,1
    - Dst: xmlAttrDumpOutput
      Src: /src/libxml2/xmlsave.c:1028,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1033,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1034,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1037,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1038,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1040,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1042,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1044,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1046,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1047,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1064,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1065,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1066,1
    - Dst: xmlOutputBufferWriteEscape
      Src: /src/libxml2/xmlsave.c:1080,1
    - Dst: xmlOutputBufferWriteEscape
      Src: /src/libxml2/xmlsave.c:1084,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1092,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1098,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1101,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1102,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1105,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1107,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1108,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1111,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1113,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1114,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1116,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1117,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1123,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1126,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1127,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1128,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1133,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1134,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1135,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1140,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1147,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1148,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1150,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1156,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1157,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1158,1
    - Dst: xmlAttrDumpOutput
      Src: /src/libxml2/xmlsave.c:1164,1
    - Dst: xmlNsDumpOutput
      Src: /src/libxml2/xmlsave.c:1168,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1181,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1194,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1196,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1198,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1200,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1203,1
    - Dst: xmlOutputBufferWriteWSNonSig
      Src: /src/libxml2/xmlsave.c:1205,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1206,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 199
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 960
    functionDepth: 6
    functionLinenumber: 960
    functionLinenumberEnd: 1215
    functionName: xmlNodeDumpOutputInternal
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlSaveDocInternal
    - xmlBufDumpElementDecl
    - xmlOutputBufferWriteEscape
    - xmlAttrDumpOutput
    - xmlOutputBufferWrite
    - xmlSaveWriteAttributeDecl
    - xmlNsListDumpOutputCtxt
    - xmlOutputBufferWriteWSNonSig
    - xmlNsDumpOutput
    - xmlNodeDumpOutputInternal
    - xmlSaveWriteIndent
    - xmlBufDumpEntityDecl
    - xmlOutputBufferWriteString
    - xmlDtdDumpOutput
    linkageType: ''
    returnType: void
    signature: void xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlsave.c:1234,1
    - Dst: xmlSaveSwitchEncoding
      Src: /src/libxml2/xmlsave.c:1254,1
    - Dst: htmlNodeDumpInternal
      Src: /src/libxml2/xmlsave.c:1262,1
    - Dst: xmlSaveSwitchEncoding
      Src: /src/libxml2/xmlsave.c:1271,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1280,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1282,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1284,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1285,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1287,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1288,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1289,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1293,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1296,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1299,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/xmlsave.c:1306,1
    - Dst: xmlIsXHTML
      Src: /src/libxml2/xmlsave.c:1308,1
    - Dst: xhtmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:1320,1
    - Dst: xmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:1323,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1326,1
    - Dst: xmlSaveClearEncoding
      Src: /src/libxml2/xmlsave.c:1336,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 73
    argCount: 3
    argNames:
    - ctxt
    - cur
    - encoding
    argTypes:
    - xmlSaveCtxtPtr
    - xmlDocPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1224
    functionDepth: 7
    functionLinenumber: 1224
    functionLinenumberEnd: 1340
    functionName: xmlSaveDocInternal
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlGetIntSubset
    - xmlOutputBufferWrite
    - htmlNodeDumpInternal
    - xmlNodeDumpOutputInternal
    - xmlSaveClearEncoding
    - xhtmlNodeDumpOutput
    - xmlSaveSwitchEncoding
    - xmlInitParser
    - xmlIsXHTML
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlSaveDocInternal(xmlSaveCtxtPtr ctxt, xmlDocPtr cur,\n                   const
      xmlChar *encoding)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1361,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1367,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1371,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1373,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1375,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1379,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1383,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1387,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1391,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1393,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1395,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1399,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1403,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1407,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 56
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1355
    functionDepth: 1
    functionLinenumber: 1355
    functionLinenumberEnd: 1412
    functionName: xhtmlIsEmpty
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xhtmlIsEmpty(xmlNodePtr node)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1433,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1436,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1439,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1442,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1443,1
    - Dst: xmlAttrDumpOutput
      Src: /src/libxml2/xmlsave.c:1445,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1453,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1454,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1455,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1456,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1457,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1458,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1459,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1460,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1461,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1462,1
    - Dst: xmlSaveWriteAttrContent
      Src: /src/libxml2/xmlsave.c:1463,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1464,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1471,1
    - Dst: xmlSaveWriteAttrContent
      Src: /src/libxml2/xmlsave.c:1472,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1473,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1476,1
    - Dst: xmlSaveWriteAttrContent
      Src: /src/libxml2/xmlsave.c:1477,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1478,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 34
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1420
    functionDepth: 6
    functionLinenumber: 1420
    functionLinenumberEnd: 1480
    functionName: xhtmlAttrListDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferWrite
    - xmlSaveWriteAttrContent
    - xmlStrEqual
    - xmlAttrDumpOutput
    linkageType: ''
    returnType: void
    signature: void xhtmlAttrListDumpOutput(xmlSaveCtxtPtr ctxt, xmlAttrPtr cur)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveDocInternal
      Src: /src/libxml2/xmlsave.c:1506,1
    - Dst: xmlNsDumpOutput
      Src: /src/libxml2/xmlsave.c:1510,1
    - Dst: xmlDtdDumpOutput
      Src: /src/libxml2/xmlsave.c:1514,1
    - Dst: xmlBufDumpElementDecl
      Src: /src/libxml2/xmlsave.c:1527,1
    - Dst: xmlSaveWriteAttributeDecl
      Src: /src/libxml2/xmlsave.c:1531,1
    - Dst: xmlBufDumpEntityDecl
      Src: /src/libxml2/xmlsave.c:1535,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1542,1
    - Dst: xhtmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:1550,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1554,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1556,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1557,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1560,1
    - Dst: xmlNsListDumpOutputCtxt
      Src: /src/libxml2/xmlsave.c:1562,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1563,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1568,1
    - Dst: xhtmlAttrListDumpOutput
      Src: /src/libxml2/xmlsave.c:1572,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1576,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1577,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/xmlsave.c:1581,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/xmlsave.c:1585,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:1588,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/xmlsave.c:1590,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:1592,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:1595,1
    - Dst: xhtmlIsEmpty
      Src: /src/libxml2/xmlsave.c:1606,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1610,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1613,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1615,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1616,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1618,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1622,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1625,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1627,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1629,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1631,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1636,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1638,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1640,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1642,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1643,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1646,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1649,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1650,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1652,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1656,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1659,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1661,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1677,1
    - Dst: xmlOutputBufferWriteEscape
      Src: /src/libxml2/xmlsave.c:1692,1
    - Dst: xmlSaveWriteText
      Src: /src/libxml2/xmlsave.c:1695,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1700,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1706,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1707,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1709,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1710,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1713,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1715,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1716,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1717,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1723,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1724,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1725,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1730,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1731,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1732,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1737,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1744,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1745,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1747,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1753,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1754,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1755,1
    - Dst: xmlAttrDumpOutput
      Src: /src/libxml2/xmlsave.c:1761,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1772,1
    - Dst: xmlSaveWriteIndent
      Src: /src/libxml2/xmlsave.c:1785,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1787,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1789,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1791,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/libxml2/xmlsave.c:1794,1
    - Dst: xmlOutputBufferWrite
      Src: /src/libxml2/xmlsave.c:1795,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 239
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxtPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1806
      start: 1488
    functionDepth: 11
    functionLinenumber: 1488
    functionLinenumberEnd: 1806
    functionName: xhtmlNodeDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlSaveWriteText
    - xmlSaveWriteAttributeDecl
    - xmlSaveWriteIndent
    - xhtmlAttrListDumpOutput
    - xmlStrcasecmp
    - xmlOutputBufferWriteString
    - xmlFree
    - xmlBufDumpEntityDecl
    - xmlSaveDocInternal
    - xhtmlIsEmpty
    - xmlStrEqual
    - xmlDtdDumpOutput
    - xmlBufDumpElementDecl
    - xmlOutputBufferWriteEscape
    - xmlSaveErrMemory
    - xmlAttrDumpOutput
    - xmlNsDumpOutput
    - xmlOutputBufferWrite
    - xmlNsListDumpOutputCtxt
    - xmlNodeGetAttrValue
    - xhtmlNodeDumpOutput
    linkageType: ''
    returnType: void
    signature: void xhtmlNodeDumpOutput(xmlSaveCtxtPtr ctxt, xmlNodePtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSaveCtxt
      Src: /src/libxml2/xmlsave.c:1835,1
    - Dst: xmlOutputBufferCreateFd
      Src: /src/libxml2/xmlsave.c:1837,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:1839,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:1840,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - fd
    - encoding
    - options
    argTypes:
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1830
    functionDepth: 7
    functionLinenumber: 1830
    functionLinenumberEnd: 1844
    functionName: xmlSaveToFd
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlFreeSaveCtxt
    - xmlOutputBufferCreateFd
    - xmlNewSaveCtxt
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: xmlSaveCtxt
    signature: 'xmlSaveCtxt *

      xmlSaveToFd(int fd, const char *encoding, int options)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSaveCtxt
      Src: /src/libxml2/xmlsave.c:1867,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/xmlsave.c:1869,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:1872,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:1873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - filename
    - encoding
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1861
    functionDepth: 7
    functionLinenumber: 1861
    functionLinenumberEnd: 1877
    functionName: xmlSaveToFilename
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlFreeSaveCtxt
    - xmlOutputBufferCreateFilename
    - xmlNewSaveCtxt
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: xmlSaveCtxt
    signature: 'xmlSaveCtxt *

      xmlSaveToFilename(const char *filename, const char *encoding, int options)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSaveCtxt
      Src: /src/libxml2/xmlsave.c:1900,1
    - Dst: xmlOutputBufferCreateBuffer
      Src: /src/libxml2/xmlsave.c:1902,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:1904,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:1905,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - buffer
    - encoding
    - options
    argTypes:
    - xmlBuffer*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1895
    functionDepth: 7
    functionLinenumber: 1895
    functionLinenumberEnd: 1909
    functionName: xmlSaveToBuffer
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 12
    functionsReached:
    - xmlFreeSaveCtxt
    - xmlCharEncCloseFunc
    - xmlNewSaveCtxt
    - xmlOutputBufferCreateBuffer
    linkageType: ''
    returnType: xmlSaveCtxt
    signature: 'xmlSaveCtxt *

      xmlSaveToBuffer(xmlBuffer *buffer, const char *encoding, int options)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewSaveCtxt
      Src: /src/libxml2/xmlsave.c:1935,1
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/xmlsave.c:1937,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/xmlsave.c:1939,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:1940,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - iowrite
    - ioclose
    - ioctx
    - encoding
    - options
    argTypes:
    - xmlOutputWriteCallback
    - xmlOutputCloseCallback
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1928
    functionDepth: 7
    functionLinenumber: 1928
    functionLinenumberEnd: 1944
    functionName: xmlSaveToIO
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlFreeSaveCtxt
    - xmlOutputBufferCreateIO
    - xmlNewSaveCtxt
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: xmlSaveCtxt
    signature: "xmlSaveCtxt *\nxmlSaveToIO(xmlOutputWriteCallback iowrite,\n            xmlOutputCloseCallback
      ioclose,\n            void *ioctx, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveDocInternal
      Src: /src/libxml2/xmlsave.c:1963,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - doc
    argTypes:
    - xmlSaveCtxt*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1957
    functionDepth: 8
    functionLinenumber: 1957
    functionLinenumberEnd: 1966
    functionName: xmlSaveDoc
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 5
    functionsReached:
    - xmlSaveDocInternal
    linkageType: ''
    returnType: long
    signature: long xmlSaveDoc(xmlSaveCtxt *ctxt, xmlDoc *doc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xhtmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:1985,1
    - Dst: htmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:1992,1
    - Dst: xmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:1996,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxt*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1977
    functionDepth: 12
    functionLinenumber: 1977
    functionLinenumberEnd: 1998
    functionName: xmlSaveTree
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 7
    functionsReached:
    - xhtmlNodeDumpOutput
    - xmlNodeDumpOutputInternal
    - htmlNodeDumpOutputInternal
    linkageType: ''
    returnType: long
    signature: long xmlSaveTree(xmlSaveCtxt *ctxt, xmlNode *cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufDumpNotationDecl
      Src: /src/libxml2/xmlsave.c:2011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxt*
    - xmlNotation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2013
      start: 2007
    functionDepth: 6
    functionLinenumber: 2007
    functionLinenumberEnd: 2013
    functionName: xmlSaveNotationDecl
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlBufDumpNotationDecl
    linkageType: ''
    returnType: int
    signature: int xmlSaveNotationDecl(xmlSaveCtxt *ctxt, xmlNotation *cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufDumpNotationTable
      Src: /src/libxml2/xmlsave.c:2026,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - cur
    argTypes:
    - xmlSaveCtxt*
    - xmlNotationTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2022
    functionDepth: 3
    functionLinenumber: 2022
    functionLinenumberEnd: 2028
    functionName: xmlSaveNotationTable
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlBufDumpNotationTable
    linkageType: ''
    returnType: int
    signature: int xmlSaveNotationTable(xmlSaveCtxt *ctxt, xmlNotationTable *cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlsave.c:2042,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSaveCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2037
    functionDepth: 3
    functionLinenumber: 2037
    functionLinenumberEnd: 2043
    functionName: xmlSaveFlush
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferFlush
    linkageType: ''
    returnType: int
    signature: int xmlSaveFlush(xmlSaveCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFlush
      Src: /src/libxml2/xmlsave.c:2058,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:2059,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSaveCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2052
    functionDepth: 4
    functionLinenumber: 2052
    functionLinenumberEnd: 2061
    functionName: xmlSaveClose
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 7
    functionsReached:
    - xmlSaveFlush
    - xmlFreeSaveCtxt
    linkageType: ''
    returnType: int
    signature: int xmlSaveClose(xmlSaveCtxt *ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2080,1
    - Dst: xmlFreeSaveCtxt
      Src: /src/libxml2/xmlsave.c:2087,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSaveCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2072
    functionDepth: 3
    functionLinenumber: 2072
    functionLinenumberEnd: 2089
    functionName: xmlSaveFinish
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 7
    functionsReached:
    - xmlOutputBufferClose
    - xmlFreeSaveCtxt
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors xmlSaveFinish(xmlSaveCtxt *ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctxt
    - escape
    argTypes:
    - xmlSaveCtxt*
    - xmlCharEncodingOutputFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2107
      start: 2101
    functionDepth: 0
    functionLinenumber: 2101
    functionLinenumberEnd: 2107
    functionName: xmlSaveSetEscape
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSaveSetEscape(xmlSaveCtxt *ctxt, xmlCharEncodingOutputFunc escape)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - xmlSaveCtxt*
    - xmlCharEncodingOutputFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2124
      start: 2118
    functionDepth: 0
    functionLinenumber: 2118
    functionLinenumberEnd: 2124
    functionName: xmlSaveSetAttrEscape
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSaveSetAttrEscape(xmlSaveCtxt *ctxt,\n                     xmlCharEncodingOutputFunc
      escape ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSerializeText
      Src: /src/libxml2/xmlsave.c:2147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - buf
    - doc
    - string
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2148
      start: 2139
    functionDepth: 2
    functionLinenumber: 2139
    functionLinenumberEnd: 2148
    functionName: xmlBufAttrSerializeTxtContent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlSerializeText
    linkageType: ''
    returnType: void
    signature: "void xmlBufAttrSerializeTxtContent(xmlOutputBuffer *buf, xmlDoc *doc,\n
      \                             const xmlChar *string)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateBuffer
      Src: /src/libxml2/xmlsave.c:2167,1
    - Dst: xmlBufAttrSerializeTxtContent
      Src: /src/libxml2/xmlsave.c:2168,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlsave.c:2169,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:2171,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/xmlsave.c:2171,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - buf
    - doc
    - ATTRIBUTE_UNUSED
    - string
    argTypes:
    - xmlBuffer*
    - xmlDoc*
    - xmlAttr*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2173
      start: 2158
    functionDepth: 3
    functionLinenumber: 2158
    functionLinenumberEnd: 2173
    functionName: xmlAttrSerializeTxtContent
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlOutputBufferCreateBuffer
    - xmlOutputBufferFlush
    - xmlBufAttrSerializeTxtContent
    - xmlOutputBufferClose
    linkageType: ''
    returnType: void
    signature: "void xmlAttrSerializeTxtContent(xmlBuffer *buf, xmlDoc *doc,\n                           xmlAttr
      *attr ATTRIBUTE_UNUSED,\n                           const xmlChar *string)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufFromBuffer
      Src: /src/libxml2/xmlsave.c:2208,1
    - Dst: xmlBufNodeDump
      Src: /src/libxml2/xmlsave.c:2211,1
    - Dst: xmlBufBackToBuffer
      Src: /src/libxml2/xmlsave.c:2212,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 5
    argNames:
    - buf
    - doc
    - cur
    - level
    - format
    argTypes:
    - xmlBuffer*
    - xmlDoc*
    - xmlNode*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2216
      start: 2194
    functionDepth: 3
    functionLinenumber: 2194
    functionLinenumberEnd: 2216
    functionName: xmlNodeDump
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 4
    functionsReached:
    - xmlBufBackToBuffer
    - xmlBufNodeDump
    - xmlBufFromBuffer
    linkageType: ''
    returnType: int
    signature: "int xmlNodeDump(xmlBuffer *buf, xmlDoc *doc, xmlNode *cur, int level,\n
      \           int format)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlsave.c:2244,1
    - Dst: xmlMalloc
      Src: /src/libxml2/xmlsave.c:2252,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:2254,1
    - Dst: memset
      Src: /src/libxml2/xmlsave.c:2257,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlsave.c:2265,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:2266,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlsave.c:2270,1
    - Dst: xmlFree
      Src: /src/libxml2/xmlsave.c:2271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 5
    argNames:
    - buf
    - doc
    - cur
    - level
    - format
    argTypes:
    - xmlBuf*
    - xmlDoc*
    - xmlNode*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2273
      start: 2236
    functionDepth: 4
    functionLinenumber: 2236
    functionLinenumberEnd: 2273
    functionName: xmlBufNodeDump
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlSaveErrMemory
    - xmlNodeDumpOutput
    - xmlFree
    - xmlBufUse
    - xmlMalloc
    - xmlInitParser
    - memset
    linkageType: ''
    returnType: size_t
    signature: "size_t xmlBufNodeDump(xmlBuf *buf, xmlDoc *doc, xmlNode *cur, int
      level,\n            int format)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlsave.c:2290,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/xmlsave.c:2296,1
    - Dst: htmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:2301,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:2304,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2305,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - f
    - doc
    - cur
    argTypes:
    - FILE*
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2306
      start: 2285
    functionDepth: 8
    functionLinenumber: 2285
    functionLinenumberEnd: 2306
    functionName: xmlElemDump
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 3
    functionsReached:
    - xmlInitParser
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlNodeDumpOutput
    - htmlNodeDumpOutput
    linkageType: ''
    returnType: void
    signature: void xmlElemDump(FILE * f, xmlDoc *doc, xmlNode *cur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/xmlsave.c:2344,1
    - Dst: memset
      Src: /src/libxml2/xmlsave.c:2356,1
    - Dst: xmlSaveCtxtInit
      Src: /src/libxml2/xmlsave.c:2364,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/xmlsave.c:2367,1
    - Dst: xmlIsXHTML
      Src: /src/libxml2/xmlsave.c:2369,1
    - Dst: xhtmlNodeDumpOutput
      Src: /src/libxml2/xmlsave.c:2375,1
    - Dst: xmlNodeDumpOutputInternal
      Src: /src/libxml2/xmlsave.c:2378,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 6
    argNames:
    - buf
    - doc
    - cur
    - level
    - format
    - encoding
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - xmlNode*
    - int
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2379
      start: 2331
    functionDepth: 12
    functionLinenumber: 2331
    functionLinenumberEnd: 2379
    functionName: xmlNodeDumpOutput
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 6
    functionsReached:
    - xmlSaveCtxtInit
    - xmlGetIntSubset
    - xmlNodeDumpOutputInternal
    - xhtmlNodeDumpOutput
    - xmlInitParser
    - xmlIsXHTML
    - memset
    linkageType: ''
    returnType: void
    signature: "void xmlNodeDumpOutput(xmlOutputBuffer *buf, xmlDoc *doc, xmlNode
      *cur,\n                  int level, int format, const char *encoding)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/xmlsave.c:2387,1
    - Dst: xmlSaveCtxtInit
      Src: /src/libxml2/xmlsave.c:2401,1
    - Dst: xmlSaveDocInternal
      Src: /src/libxml2/xmlsave.c:2403,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - buf
    - doc
    - encoding
    - format
    argTypes:
    - xmlOutputBufferPtr
    - xmlDocPtr
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2404
      start: 2381
    functionDepth: 8
    functionLinenumber: 2381
    functionLinenumberEnd: 2404
    functionName: xmlDocDumpInternal
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 0
    functionsReached:
    - xmlSaveDocInternal
    - xmlSaveCtxtInit
    - memset
    linkageType: ''
    returnType: void
    signature: "void xmlDocDumpInternal(xmlOutputBufferPtr buf, xmlDocPtr doc, const
      char *encoding,\n                   int format)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/xmlsave.c:2442,1
    - Dst: xmlSaveErrMemory
      Src: /src/libxml2/xmlsave.c:2444,1
    - Dst: xmlDocDumpInternal
      Src: /src/libxml2/xmlsave.c:2448,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/xmlsave.c:2450,1
    - Dst: xmlBufUse
      Src: /src/libxml2/xmlsave.c:2454,1
    - Dst: xmlBufDetach
      Src: /src/libxml2/xmlsave.c:2455,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2458,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 5
    argNames:
    - out_doc
    - doc_txt_ptr
    - doc_txt_len
    - txt_encoding
    - format
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2459
      start: 2426
    functionDepth: 9
    functionLinenumber: 2426
    functionLinenumberEnd: 2459
    functionName: xmlDocDumpFormatMemoryEnc
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 2
    functionsReached:
    - xmlSaveErrMemory
    - xmlOutputBufferFlush
    - xmlBufUse
    - xmlBufDetach
    - xmlDocDumpInternal
    - xmlAllocOutputBuffer
    - xmlOutputBufferClose
    linkageType: ''
    returnType: void
    signature: "void xmlDocDumpFormatMemoryEnc(xmlDoc *out_doc, xmlChar **doc_txt_ptr,\n\t\tint
      * doc_txt_len, const char * txt_encoding,\n\t\tint format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/xmlsave.c:2471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cur
    - mem
    - size
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2472
      start: 2469
    functionDepth: 10
    functionLinenumber: 2469
    functionLinenumberEnd: 2472
    functionName: xmlDocDumpMemory
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 8
    functionsReached:
    - xmlDocDumpFormatMemoryEnc
    linkageType: ''
    returnType: void
    signature: void xmlDocDumpMemory(xmlDoc *cur, xmlChar**mem, int *size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/xmlsave.c:2485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - cur
    - mem
    - size
    - format
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2486
      start: 2483
    functionDepth: 10
    functionLinenumber: 2483
    functionLinenumberEnd: 2486
    functionName: xmlDocDumpFormatMemory
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlDocDumpFormatMemoryEnc
    linkageType: ''
    returnType: void
    signature: void xmlDocDumpFormatMemory(xmlDoc *cur, xmlChar**mem, int *size, int
      format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/xmlsave.c:2500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - out_doc
    - doc_txt_ptr
    - doc_txt_len
    - txt_encoding
    argTypes:
    - xmlDoc*
    - xmlChar**
    - int*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2502
      start: 2497
    functionDepth: 10
    functionLinenumber: 2497
    functionLinenumberEnd: 2502
    functionName: xmlDocDumpMemoryEnc
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlDocDumpFormatMemoryEnc
    linkageType: ''
    returnType: void
    signature: "void xmlDocDumpMemoryEnc(xmlDoc *out_doc, xmlChar **doc_txt_ptr,\n\t
      \           int * doc_txt_len, const char * txt_encoding)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/xmlsave.c:2526,1
    - Dst: xmlDocDumpInternal
      Src: /src/libxml2/xmlsave.c:2529,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - f
    - cur
    - format
    argTypes:
    - FILE*
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2532
      start: 2518
    functionDepth: 9
    functionLinenumber: 2518
    functionLinenumberEnd: 2532
    functionName: xmlDocFormatDump
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlDocDumpInternal
    linkageType: ''
    returnType: int
    signature: int xmlDocFormatDump(FILE *f, xmlDoc *cur, int format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlDocFormatDump
      Src: /src/libxml2/xmlsave.c:2546,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - f
    - cur
    argTypes:
    - FILE*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2547
      start: 2544
    functionDepth: 10
    functionLinenumber: 2544
    functionLinenumberEnd: 2547
    functionName: xmlDocDump
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 4
    functionsReached:
    - xmlDocFormatDump
    linkageType: ''
    returnType: int
    signature: int xmlDocDump(FILE *f, xmlDoc *cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/xmlsave.c:2561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buf
    - cur
    - encoding
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2562
      start: 2559
    functionDepth: 1
    functionLinenumber: 2559
    functionLinenumberEnd: 2562
    functionName: xmlSaveFileTo
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlSaveFormatFileTo
    linkageType: ''
    returnType: int
    signature: int xmlSaveFileTo(xmlOutputBuffer *buf, xmlDoc *cur, const char *encoding)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2591,1
    - Dst: xmlDocDumpInternal
      Src: /src/libxml2/xmlsave.c:2595,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2597,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - buf
    - cur
    - encoding
    - format
    argTypes:
    - xmlOutputBuffer*
    - xmlDoc*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2598
      start: 2583
    functionDepth: 9
    functionLinenumber: 2583
    functionLinenumberEnd: 2598
    functionName: xmlSaveFormatFileTo
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 3
    functionsReached:
    - xmlOutputBufferClose
    - xmlDocDumpInternal
    linkageType: ''
    returnType: int
    signature: "int xmlSaveFormatFileTo(xmlOutputBuffer *buf, xmlDoc *cur,\n                    const
      char *encoding, int format)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetCompressMode
      Src: /src/libxml2/xmlsave.c:2627,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/libxml2/xmlsave.c:2632,1
    - Dst: xmlDocDumpInternal
      Src: /src/libxml2/xmlsave.c:2635,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/xmlsave.c:2637,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - filename
    - cur
    - encoding
    - format
    argTypes:
    - char*
    - xmlDoc*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2638
      start: 2618
    functionDepth: 9
    functionLinenumber: 2618
    functionLinenumberEnd: 2638
    functionName: xmlSaveFormatFileEnc
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlGetCompressMode
    - xmlOutputBufferCreateFilename
    - xmlDocDumpInternal
    - xmlOutputBufferClose
    linkageType: ''
    returnType: int
    signature: "int xmlSaveFormatFileEnc( const char * filename, xmlDoc *cur,\n\t\t\tconst
      char * encoding, int format )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFormatFileEnc
      Src: /src/libxml2/xmlsave.c:2651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filename
    - cur
    - encoding
    argTypes:
    - char*
    - xmlDoc*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2652
      start: 2649
    functionDepth: 10
    functionLinenumber: 2649
    functionLinenumberEnd: 2652
    functionName: xmlSaveFileEnc
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlSaveFormatFileEnc
    linkageType: ''
    returnType: int
    signature: int xmlSaveFileEnc(const char *filename, xmlDoc *cur, const char *encoding)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFormatFileEnc
      Src: /src/libxml2/xmlsave.c:2664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filename
    - cur
    - format
    argTypes:
    - char*
    - xmlDoc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2665
      start: 2662
    functionDepth: 10
    functionLinenumber: 2662
    functionLinenumberEnd: 2665
    functionName: xmlSaveFormatFile
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 1
    functionsReached:
    - xmlSaveFormatFileEnc
    linkageType: ''
    returnType: int
    signature: int xmlSaveFormatFile(const char *filename, xmlDoc *cur, int format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveFormatFileEnc
      Src: /src/libxml2/xmlsave.c:2677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filename
    - cur
    argTypes:
    - char*
    - xmlDoc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2675
    functionDepth: 10
    functionLinenumber: 2675
    functionLinenumberEnd: 2678
    functionName: xmlSaveFile
    functionSourceFile: /src/libxml2/xmlsave.c
    functionUses: 6
    functionsReached:
    - xmlSaveFormatFileEnc
    linkageType: ''
    returnType: int
    signature: int xmlSaveFile(const char *filename, xmlDoc *cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCharStrdup
      Src: /src/libxml2/globals.c:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cur
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: xmlPosixStrdup
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlPosixStrdup(const char *cur)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/globals.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 350
    functionDepth: 4
    functionLinenumber: 350
    functionLinenumberEnd: 352
    functionName: xmlInitGlobals
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlInitParser
    linkageType: ''
    returnType: void
    signature: void xmlInitGlobals(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitMutex
      Src: /src/libxml2/globals.c:358,1
    - Dst: pthread_key_create
      Src: /src/libxml2/globals.c:361,1
    - Dst: TlsAlloc
      Src: /src/libxml2/globals.c:365,1
    - Dst: xmlInitGlobalState
      Src: /src/libxml2/globals.c:368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 370
    functionName: xmlInitGlobalsInternal
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - pthread_key_create
    - TlsAlloc
    - xmlInitMutex
    - xmlInitGlobalState
    linkageType: ''
    returnType: void
    signature: void xmlInitGlobalsInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 379
    functionName: xmlCleanupGlobals
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlCleanupGlobals(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: pthread_getspecific
      Src: /src/libxml2/globals.c:396,1
    - Dst: xmlFreeGlobalState
      Src: /src/libxml2/globals.c:398,1
    - Dst: pthread_key_delete
      Src: /src/libxml2/globals.c:399,1
    - Dst: TlsFree
      Src: /src/libxml2/globals.c:403,1
    - Dst: xmlResetError
      Src: /src/libxml2/globals.c:408,1
    - Dst: xmlCleanupMutex
      Src: /src/libxml2/globals.c:411,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 412
    functionName: xmlCleanupGlobalsInternal
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - TlsFree
    - pthread_getspecific
    - xmlFreeGlobalState
    - xmlResetError
    - pthread_key_delete
    - xmlCleanupMutex
    linkageType: ''
    returnType: void
    signature: void xmlCleanupGlobalsInternal(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlResetError
      Src: /src/libxml2/globals.c:426,1
    - Dst: free
      Src: /src/libxml2/globals.c:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - state
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 430
    functionName: xmlFreeGlobalState
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - free
    - xmlResetError
    linkageType: ''
    returnType: void
    signature: void xmlFreeGlobalState(void *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UnregisterWait
      Src: /src/libxml2/globals.c:437,1
    - Dst: CloseHandle
      Src: /src/libxml2/globals.c:438,1
    - Dst: xmlFreeGlobalState
      Src: /src/libxml2/globals.c:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctxt
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 433
    functionDepth: 2
    functionLinenumber: 433
    functionLinenumberEnd: 440
    functionName: xmlGlobalStateDtor
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - UnregisterWait
    - xmlFreeGlobalState
    - CloseHandle
    linkageType: ''
    returnType: void
    signature: void xmlGlobalStateDtor(void *ctxt, unsigned char timedOut ATTRIBUTE_UNUSED)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentProcess
      Src: /src/libxml2/globals.c:444,1
    - Dst: DuplicateHandle
      Src: /src/libxml2/globals.c:448,1
    - Dst: GetCurrentThread
      Src: /src/libxml2/globals.c:448,1
    - Dst: RegisterWaitForSingleObject
      Src: /src/libxml2/globals.c:453,1
    - Dst: CloseHandle
      Src: /src/libxml2/globals.c:455,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - gs
    argTypes:
    - xmlGlobalState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 462
    functionName: xmlRegisterGlobalStateDtor
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - DuplicateHandle
    - CloseHandle
    - GetCurrentThread
    - RegisterWaitForSingleObject
    - GetCurrentProcess
    linkageType: ''
    returnType: int
    signature: int xmlRegisterGlobalStateDtor(xmlGlobalState *gs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/libxml2/globals.c:482,1
    - Dst: xmlAbort
      Src: /src/libxml2/globals.c:492,1
    - Dst: memset
      Src: /src/libxml2/globals.c:496,1
    - Dst: xmlInitGlobalState
      Src: /src/libxml2/globals.c:497,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - allowFailure
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 499
    functionName: xmlNewGlobalState
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlAbort
    - malloc
    - xmlInitGlobalState
    - memset
    linkageType: ''
    returnType: xmlGlobalStatePtr
    signature: xmlGlobalStatePtr xmlNewGlobalState(int allowFailure)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/globals.c:508,1
    - Dst: xmlInitGlobalState
      Src: /src/libxml2/globals.c:513,1
    - Dst: pthread_getspecific
      Src: /src/libxml2/globals.c:515,1
    - Dst: xmlNewGlobalState
      Src: /src/libxml2/globals.c:517,1
    - Dst: TlsGetValue
      Src: /src/libxml2/globals.c:519,1
    - Dst: xmlNewGlobalState
      Src: /src/libxml2/globals.c:521,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - allowFailure
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 502
    functionDepth: 4
    functionLinenumber: 502
    functionLinenumberEnd: 527
    functionName: xmlGetThreadLocalStorage
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlNewGlobalState
    - xmlInitGlobalState
    - pthread_getspecific
    - xmlInitParser
    - TlsGetValue
    linkageType: ''
    returnType: xmlGlobalStatePtr
    signature: xmlGlobalStatePtr xmlGetThreadLocalStorage(int allowFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - allowFailure ATTRIBUTE_UNUSED
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 534
    functionName: xmlGetThreadLocalStorage
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlGlobalStatePtr
    signature: xmlGlobalStatePtr xmlGetThreadLocalStorage(int allowFailure ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGlobalRandom
      Src: /src/libxml2/globals.c:540,1
    - Dst: xmlGlobalRandom
      Src: /src/libxml2/globals.c:541,1
    - Dst: memset
      Src: /src/libxml2/globals.c:543,1
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:554,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:587,1
    - Dst: pthread_setspecific
      Src: /src/libxml2/globals.c:594,1
    - Dst: TlsSetValue
      Src: /src/libxml2/globals.c:597,1
    - Dst: xmlRegisterGlobalStateDtor
      Src: /src/libxml2/globals.c:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 32
    argCount: 1
    argNames:
    - gs
    argTypes:
    - xmlGlobalStatePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 538
    functionDepth: 2
    functionLinenumber: 538
    functionLinenumberEnd: 603
    functionName: xmlInitGlobalState
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 3
    functionsReached:
    - xmlRegisterGlobalStateDtor
    - xmlMutexUnlock
    - TlsSetValue
    - pthread_setspecific
    - xmlMutexLock
    - xmlGlobalRandom
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlInitGlobalState(xmlGlobalStatePtr gs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 5
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: __xmlLastError
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlError
    signature: 'xmlError *

      __xmlLastError(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 610
    functionDepth: 5
    functionLinenumber: 610
    functionLinenumberEnd: 613
    functionName: __xmlDoValidityCheckingDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlDoValidityCheckingDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 615
    functionDepth: 5
    functionLinenumber: 615
    functionLinenumberEnd: 618
    functionName: __xmlGetWarningsDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlGetWarningsDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 620
    functionDepth: 5
    functionLinenumber: 620
    functionLinenumberEnd: 623
    functionName: __xmlKeepBlanksDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlKeepBlanksDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 628
    functionName: __xmlLineNumbersDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlLineNumbersDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 630
    functionDepth: 5
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionName: __xmlLoadExtDtdDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlLoadExtDtdDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 635
    functionDepth: 5
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionName: __xmlPedanticParserDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlPedanticParserDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 5
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: __xmlSubstituteEntitiesDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlSubstituteEntitiesDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 646
    functionDepth: 5
    functionLinenumber: 646
    functionLinenumberEnd: 649
    functionName: __xmlIndentTreeOutput
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlIndentTreeOutput(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 651
    functionDepth: 5
    functionLinenumber: 651
    functionLinenumberEnd: 654
    functionName: __xmlTreeIndentString
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: char
    signature: 'char **

      __xmlTreeIndentString(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 656
    functionDepth: 5
    functionLinenumber: 656
    functionLinenumberEnd: 659
    functionName: __xmlSaveNoEmptyTags
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: 'int *

      __xmlSaveNoEmptyTags(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 662
    functionDepth: 5
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionName: __xmlGenericError
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlGenericErrorFunc
    signature: 'xmlGenericErrorFunc *

      __xmlGenericError(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 667
    functionDepth: 5
    functionLinenumber: 667
    functionLinenumberEnd: 670
    functionName: __xmlGenericErrorContext
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: void
    signature: 'void **

      __xmlGenericErrorContext(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 672
    functionDepth: 5
    functionLinenumber: 672
    functionLinenumberEnd: 675
    functionName: __xmlStructuredError
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlStructuredErrorFunc
    signature: 'xmlStructuredErrorFunc *

      __xmlStructuredError(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 677
    functionDepth: 5
    functionLinenumber: 677
    functionLinenumberEnd: 680
    functionName: __xmlStructuredErrorContext
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: void
    signature: 'void **

      __xmlStructuredErrorContext(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 682
    functionDepth: 5
    functionLinenumber: 682
    functionLinenumberEnd: 685
    functionName: __xmlRegisterNodeDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlRegisterNodeFunc
    signature: 'xmlRegisterNodeFunc *

      __xmlRegisterNodeDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 687
    functionDepth: 5
    functionLinenumber: 687
    functionLinenumberEnd: 690
    functionName: __xmlDeregisterNodeDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlDeregisterNodeFunc
    signature: 'xmlDeregisterNodeFunc *

      __xmlDeregisterNodeDefaultValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 5
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: __xmlParserInputBufferCreateFilenameValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlParserInputBufferCreateFilenameFunc
    signature: 'xmlParserInputBufferCreateFilenameFunc *

      __xmlParserInputBufferCreateFilenameValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 697
    functionDepth: 5
    functionLinenumber: 697
    functionLinenumberEnd: 700
    functionName: __xmlOutputBufferCreateFilenameValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlOutputBufferCreateFilenameFunc
    signature: 'xmlOutputBufferCreateFilenameFunc *

      __xmlOutputBufferCreateFilenameValue(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 5
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: __xmlMalloc
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlMallocFunc
    signature: 'xmlMallocFunc *

      __xmlMalloc(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 5
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: __xmlMallocAtomic
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlMallocFunc
    signature: 'xmlMallocFunc *

      __xmlMallocAtomic(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 5
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: __xmlRealloc
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlReallocFunc
    signature: 'xmlReallocFunc *

      __xmlRealloc(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 718
    functionDepth: 5
    functionLinenumber: 718
    functionLinenumberEnd: 721
    functionName: __xmlFree
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlFreeFunc
    signature: 'xmlFreeFunc *

      __xmlFree(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 723
    functionDepth: 5
    functionLinenumber: 723
    functionLinenumberEnd: 726
    functionName: __xmlMemStrdup
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlStrdupFunc
    signature: 'xmlStrdupFunc *

      __xmlMemStrdup(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 732
    functionDepth: 5
    functionLinenumber: 732
    functionLinenumberEnd: 735
    functionName: xmlGetLocalRngState
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: unsigned
    signature: 'unsigned *

      xmlGetLocalRngState(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 750
    functionDepth: 5
    functionLinenumber: 750
    functionLinenumberEnd: 757
    functionName: xmlCheckThreadLocalStorage
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 2
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: int
    signature: int xmlCheckThreadLocalStorage(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetThreadLocalStorage
      Src: /src/libxml2/globals.c:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 762
    functionDepth: 5
    functionLinenumber: 762
    functionLinenumberEnd: 765
    functionName: xmlGetLastErrorInternal
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 5
    functionsReached:
    - xmlGetThreadLocalStorage
    linkageType: ''
    returnType: xmlError
    signature: 'xmlError *

      xmlGetLastErrorInternal(void)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeGlobalState
      Src: /src/libxml2/globals.c:806,1
    - Dst: TlsGetValue
      Src: /src/libxml2/globals.c:811,1
    - Dst: xmlFreeGlobalState
      Src: /src/libxml2/globals.c:813,1
    - Dst: TlsSetValue
      Src: /src/libxml2/globals.c:814,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/globals.c:823,1
    - Dst: TlsFree
      Src: /src/libxml2/globals.c:825,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - HINSTANCE
    - fdwReason
    - lpvReserved
    argTypes:
    - ATTRIBUTE_UNUSED
    - DWORD
    - ATTRIBUTE_UNUSED
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 798
    functionDepth: 3
    functionLinenumber: 798
    functionLinenumberEnd: 832
    functionName: DllMain
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 0
    functionsReached:
    - TlsSetValue
    - xmlCleanupParser
    - TlsFree
    - xmlFreeGlobalState
    - TlsGetValue
    linkageType: ''
    returnType: BOOL
    signature: "BOOL DllMain(ATTRIBUTE_UNUSED HINSTANCE hinstDLL, DWORD fdwReason,\n
      \       ATTRIBUTE_UNUSED LPVOID lpvReserved)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:845,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlGenericErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 843
    functionDepth: 1
    functionLinenumber: 843
    functionLinenumberEnd: 852
    functionName: xmlThrDefSetGenericErrorFunc
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: void
    signature: void xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:864,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:867,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - handler
    argTypes:
    - void*
    - xmlStructuredErrorFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 862
    functionDepth: 1
    functionLinenumber: 862
    functionLinenumberEnd: 868
    functionName: xmlThrDefSetStructuredErrorFunc
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: void
    signature: void xmlThrDefSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc
      handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:880,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 878
    functionDepth: 1
    functionLinenumber: 878
    functionLinenumberEnd: 885
    functionName: xmlThrDefDoValidityCheckingDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefDoValidityCheckingDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:897,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 895
    functionDepth: 1
    functionLinenumber: 895
    functionLinenumberEnd: 902
    functionName: xmlThrDefGetWarningsDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefGetWarningsDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:916,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:919,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 914
    functionDepth: 1
    functionLinenumber: 914
    functionLinenumberEnd: 921
    functionName: xmlThrDefIndentTreeOutput
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefIndentTreeOutput(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:933,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 938
    functionName: xmlThrDefTreeIndentString
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: char
    signature: char * xmlThrDefTreeIndentString(const char * v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:950,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 948
    functionDepth: 1
    functionLinenumber: 948
    functionLinenumberEnd: 955
    functionName: xmlThrDefSaveNoEmptyTags
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefSaveNoEmptyTags(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:969,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 967
    functionDepth: 1
    functionLinenumber: 967
    functionLinenumberEnd: 974
    functionName: xmlThrDefKeepBlanksDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefKeepBlanksDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 986
    functionName: xmlThrDefLineNumbersDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlThrDefLineNumbersDefaultValue(int v ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:998,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1001,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 996
    functionDepth: 1
    functionLinenumber: 996
    functionLinenumberEnd: 1003
    functionName: xmlThrDefLoadExtDtdDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefLoadExtDtdDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1015,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1013
    functionDepth: 1
    functionLinenumber: 1013
    functionLinenumberEnd: 1020
    functionName: xmlThrDefPedanticParserDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefPedanticParserDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1032,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1035,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1030
    functionDepth: 1
    functionLinenumber: 1030
    functionLinenumberEnd: 1037
    functionName: xmlThrDefSubstituteEntitiesDefaultValue
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: int
    signature: int xmlThrDefSubstituteEntitiesDefaultValue(int v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1052,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1057,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlRegisterNodeFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1047
    functionDepth: 1
    functionLinenumber: 1047
    functionLinenumberEnd: 1060
    functionName: xmlThrDefRegisterNodeDefault
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: xmlRegisterNodeFunc
    signature: xmlRegisterNodeFunc xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc
      func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1075,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlDeregisterNodeFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1083
      start: 1070
    functionDepth: 1
    functionLinenumber: 1070
    functionLinenumberEnd: 1083
    functionName: xmlThrDefDeregisterNodeDefault
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: xmlDeregisterNodeFunc
    signature: xmlDeregisterNodeFunc xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc
      func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1099,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlParserInputBufferCreateFilenameFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1094
    functionDepth: 1
    functionLinenumber: 1094
    functionLinenumberEnd: 1109
    functionName: xmlThrDefParserInputBufferCreateFilenameDefault
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: xmlParserInputBufferCreateFilenameFunc
    signature: xmlParserInputBufferCreateFilenameFunc xmlThrDefParserInputBufferCreateFilenameDefault(xmlParserInputBufferCreateFilenameFunc
      func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMutexLock
      Src: /src/libxml2/globals.c:1125,1
    - Dst: xmlMutexUnlock
      Src: /src/libxml2/globals.c:1133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - func
    argTypes:
    - xmlOutputBufferCreateFilenameFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1120
    functionDepth: 1
    functionLinenumber: 1120
    functionLinenumberEnd: 1136
    functionName: xmlThrDefOutputBufferCreateFilenameDefault
    functionSourceFile: /src/libxml2/globals.c
    functionUses: 1
    functionsReached:
    - xmlMutexLock
    - xmlMutexUnlock
    linkageType: ''
    returnType: xmlOutputBufferCreateFilenameFunc
    signature: xmlOutputBufferCreateFilenameFunc xmlThrDefOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc
      func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: IS_HEX_DIGIT
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_HEX_DIGIT(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: IS_UPPER
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_UPPER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: IS_ALNUM
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_ALNUM(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErrMemory
      Src: /src/libxml2/HTMLparser.c:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: htmlErrMemory
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErrMemory
    linkageType: ''
    returnType: void
    signature: void htmlErrMemory(xmlParserCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtErr
      Src: /src/libxml2/HTMLparser.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctxt
    - error
    - msg
    - str1
    - str2
    argTypes:
    - xmlParserCtxtPtr
    - xmlParserErrors
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 6
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: htmlParseErr
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtErr
    linkageType: ''
    returnType: void
    signature: "void htmlParseErr(xmlParserCtxtPtr ctxt, xmlParserErrors error,\n
      \            const char *msg, const xmlChar *str1, const xmlChar *str2)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:155,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:157,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/HTMLparser.c:163,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:166,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:169,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:171,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 152
    functionDepth: 4
    functionLinenumber: 152
    functionLinenumberEnd: 180
    functionName: htmlnamePush
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlGrowCapacity
    - xmlStrEqual
    - htmlErrMemory
    linkageType: ''
    returnType: int
    signature: int htmlnamePush(htmlParserCtxtPtr ctxt, const xmlChar * value)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 204
    functionName: htmlnamePop
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlnamePop(htmlParserCtxtPtr ctxt)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/HTMLparser.c:220,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:223,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:226,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:228,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - htmlParserCtxtPtr
    - htmlParserNodeInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 213
    functionDepth: 4
    functionLinenumber: 213
    functionLinenumberEnd: 237
    functionName: htmlNodeInfoPush
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlRealloc
    - xmlGrowCapacity
    - htmlErrMemory
    linkageType: ''
    returnType: int
    signature: int htmlNodeInfoPush(htmlParserCtxtPtr ctxt, htmlParserNodeInfo *value)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 258
    functionName: htmlNodeInfoPop
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: htmlParserNodeInfo
    signature: 'htmlParserNodeInfo *

      htmlNodeInfoPop(htmlParserCtxtPtr ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: SKIP
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SKIP(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 289
    functionName: NXT
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 53
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NXT(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 291
    functionName: UPP
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UPP(val)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasestr
      Src: /src/libxml2/HTMLparser.c:340,1
    - Dst: xmlStrcasestr
      Src: /src/libxml2/HTMLparser.c:343,1
    - Dst: xmlStrcasestr
      Src: /src/libxml2/HTMLparser.c:346,1
    - Dst: IS_ALNUM
      Src: /src/libxml2/HTMLparser.c:351,1
    - Dst: xmlStrndup
      Src: /src/libxml2/HTMLparser.c:356,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:358,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 28
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 323
    functionDepth: 4
    functionLinenumber: 323
    functionLinenumberEnd: 360
    functionName: htmlFindEncoding
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlStrndup
    - htmlErrMemory
    - IS_ALNUM
    - xmlStrcasestr
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlFindEncoding(xmlParserCtxtPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mask
    - c
    argTypes:
    - htmlAsciiMask
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 367
    functionName: htmlMaskMatch
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int htmlMaskMatch(htmlAsciiMask mask, unsigned c)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:422,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 46
    argCount: 4
    argNames:
    - ctxt
    - str
    - len
    - partial
    argTypes:
    - xmlParserCtxtPtr
    - xmlChar*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 369
    functionDepth: 7
    functionLinenumber: 369
    functionLinenumberEnd: 428
    functionName: htmlValidateUtf8
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseErr
    linkageType: ''
    returnType: int
    signature: "int htmlValidateUtf8(xmlParserCtxtPtr ctxt, const xmlChar *str, size_t
      len,\n                 int partial)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:445,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:459,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 480
    functionName: htmlSkipBlankChars
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - PARSER_STOPPED
    - IS_WS_HTML
    linkageType: ''
    returnType: int
    signature: int htmlSkipBlankChars(xmlParserCtxtPtr ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserAddNodeInfo
      Src: /src/libxml2/HTMLparser.c:1236,1
    - Dst: htmlNodeInfoPop
      Src: /src/libxml2/HTMLparser.c:1237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1226
    functionDepth: 4
    functionLinenumber: 1226
    functionLinenumberEnd: 1239
    functionName: htmlParserFinishElementParsing
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlNodeInfoPop
    - xmlParserAddNodeInfo
    linkageType: ''
    returnType: void
    signature: void htmlParserFinishElementParsing(htmlParserCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1244
    functionDepth: 0
    functionLinenumber: 1244
    functionLinenumberEnd: 1246
    functionName: htmlInitAutoClose
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void htmlInitAutoClose(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - key
    - member
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1248
    functionDepth: 0
    functionLinenumber: 1248
    functionLinenumberEnd: 1254
    functionName: htmlCompareTags
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int htmlCompareTags(const void *key, const void *member)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: bsearch
      Src: /src/libxml2/HTMLparser.c:1269,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1272
      start: 1264
    functionDepth: 0
    functionLinenumber: 1264
    functionLinenumberEnd: 1272
    functionName: htmlTagLookup
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - bsearch
    linkageType: ''
    returnType: htmlElemDesc
    signature: 'htmlElemDesc *

      htmlTagLookup(const xmlChar *tag)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1283,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1278
    functionDepth: 1
    functionLinenumber: 1278
    functionLinenumberEnd: 1287
    functionName: htmlGetEndPriority
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int htmlGetEndPriority (const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/libxml2/HTMLparser.c:1296,1
    - Dst: strcmp
      Src: /src/libxml2/HTMLparser.c:1298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - vkey
    - member
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1301
      start: 1290
    functionDepth: 0
    functionLinenumber: 1290
    functionLinenumberEnd: 1301
    functionName: htmlCompareStartClose
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int htmlCompareStartClose(const void *vkey, const void *member)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bsearch
      Src: /src/libxml2/HTMLparser.c:1319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - newtag
    - oldtag
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1311
    functionDepth: 0
    functionLinenumber: 1311
    functionLinenumberEnd: 1323
    functionName: htmlCheckAutoClose
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - bsearch
    linkageType: ''
    returnType: int
    signature: int htmlCheckAutoClose(const xmlChar * newtag, const xmlChar * oldtag)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: htmlGetEndPriority
      Src: /src/libxml2/HTMLparser.c:1340,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1344,1
    - Dst: htmlGetEndPriority
      Src: /src/libxml2/HTMLparser.c:1352,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1358,1
    - Dst: htmlTagLookup
      Src: /src/libxml2/HTMLparser.c:1359,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:1361,1
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:1365,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:1367,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:1368,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 2
    argNames:
    - ctxt
    - newtag
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1331
    functionDepth: 7
    functionLinenumber: 1331
    functionLinenumberEnd: 1370
    functionName: htmlAutoCloseOnClose
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlGetEndPriority
    - xmlStrEqual
    - htmlParserFinishElementParsing
    - htmlTagLookup
    - htmlParseErr
    - htmlnamePop
    - htmlParserCtxtPtr::sax::endElement
    linkageType: ''
    returnType: void
    signature: void htmlAutoCloseOnClose(htmlParserCtxtPtr ctxt, const xmlChar * newtag)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:1388,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:1390,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:1391,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1377
    functionDepth: 5
    functionLinenumber: 1377
    functionLinenumberEnd: 1393
    functionName: htmlAutoCloseOnEnd
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlnamePop
    - htmlParserFinishElementParsing
    - htmlParserCtxtPtr::sax::endElement
    linkageType: ''
    returnType: void
    signature: void htmlAutoCloseOnEnd(htmlParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlCheckAutoClose
      Src: /src/libxml2/HTMLparser.c:1416,1
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:1417,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:1419,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:1420,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - ctxt
    - newtag
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1406
    functionDepth: 5
    functionLinenumber: 1406
    functionLinenumberEnd: 1422
    functionName: htmlAutoClose
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParserFinishElementParsing
    - htmlnamePop
    - htmlCheckAutoClose
    - htmlParserCtxtPtr::sax::endElement
    linkageType: ''
    returnType: void
    signature: void htmlAutoClose(htmlParserCtxtPtr ctxt, const xmlChar * newtag)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1442,1
    - Dst: htmlCheckAutoClose
      Src: /src/libxml2/HTMLparser.c:1443,1
    - Dst: htmlAutoCloseTag
      Src: /src/libxml2/HTMLparser.c:1446,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - doc
    - name
    - elem
    argTypes:
    - xmlDoc*
    - xmlChar*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1437
    functionDepth: 1
    functionLinenumber: 1437
    functionLinenumberEnd: 1450
    functionName: htmlAutoCloseTag
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - htmlAutoCloseTag
    - xmlStrEqual
    - htmlCheckAutoClose
    linkageType: ''
    returnType: int
    signature: int htmlAutoCloseTag(xmlDoc *doc, const xmlChar *name, xmlNode *elem)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlAutoCloseTag
      Src: /src/libxml2/HTMLparser.c:1470,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - doc
    - elem
    argTypes:
    - xmlDoc*
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1474
      start: 1463
    functionDepth: 2
    functionLinenumber: 1463
    functionLinenumberEnd: 1474
    functionName: htmlIsAutoClosed
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlAutoCloseTag
    linkageType: ''
    returnType: int
    signature: int htmlIsAutoClosed(xmlDoc *doc, xmlNode *elem)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1492,1
    - Dst: htmlnamePush
      Src: /src/libxml2/HTMLparser.c:1495,1
    - Dst: htmlParserCtxtPtr::sax::startElement
      Src: /src/libxml2/HTMLparser.c:1497,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1499,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1499,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1502,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1503,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1504,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1505,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1506,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1507,1
    - Dst: htmlnamePush
      Src: /src/libxml2/HTMLparser.c:1516,1
    - Dst: htmlParserCtxtPtr::sax::startElement
      Src: /src/libxml2/HTMLparser.c:1518,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1519,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1520,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1521,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1527,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1530,1
    - Dst: htmlnamePush
      Src: /src/libxml2/HTMLparser.c:1535,1
    - Dst: htmlParserCtxtPtr::sax::startElement
      Src: /src/libxml2/HTMLparser.c:1537,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 38
    argCount: 2
    argNames:
    - ctxt
    - newtag
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1484
    functionDepth: 5
    functionLinenumber: 1484
    functionLinenumberEnd: 1539
    functionName: htmlCheckImplied
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParserCtxtPtr::sax::startElement
    - xmlStrEqual
    - htmlnamePush
    linkageType: ''
    returnType: void
    signature: void htmlCheckImplied(htmlParserCtxtPtr ctxt, const xmlChar *newtag)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1554,1
    - Dst: htmlAutoClose
      Src: /src/libxml2/HTMLparser.c:1555,1
    - Dst: htmlCheckImplied
      Src: /src/libxml2/HTMLparser.c:1556,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1547
    functionDepth: 6
    functionLinenumber: 1547
    functionLinenumberEnd: 1557
    functionName: htmlStartCharData
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlAutoClose
    - xmlStrEqual
    - htmlCheckImplied
    linkageType: ''
    returnType: void
    signature: void htmlStartCharData(htmlParserCtxtPtr ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1581,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1585
      start: 1567
    functionDepth: 1
    functionLinenumber: 1567
    functionLinenumberEnd: 1585
    functionName: htmlIsScriptAttribute
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int htmlIsScriptAttribute(const xmlChar *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:1899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1904
      start: 1893
    functionDepth: 1
    functionLinenumber: 1893
    functionLinenumberEnd: 1904
    functionName: htmlEntityLookup
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: htmlEntityDesc
    signature: 'htmlEntityDesc *

      htmlEntityLookup(const xmlChar *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vkey
    - vdesc
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1906
    functionDepth: 0
    functionLinenumber: 1906
    functionLinenumberEnd: 1912
    functionName: htmlCompareEntityDesc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int htmlCompareEntityDesc(const void *vkey, const void *vdesc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bsearch
      Src: /src/libxml2/HTMLparser.c:1930,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1934
      start: 1924
    functionDepth: 0
    functionLinenumber: 1924
    functionLinenumberEnd: 1934
    functionName: htmlEntityValueLookup
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - bsearch
    linkageType: ''
    returnType: htmlEntityDesc
    signature: 'htmlEntityDesc *

      htmlEntityValueLookup(unsigned int value)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: htmlEntityValueLookup
      Src: /src/libxml2/HTMLparser.c:2007,1
    - Dst: snprintf
      Src: /src/libxml2/HTMLparser.c:2010,1
    - Dst: strlen
      Src: /src/libxml2/HTMLparser.c:2016,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2021,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 4
    argNames:
    - out
    - outlen
    - in
    - inlen
    argTypes:
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 1951
    functionDepth: 1
    functionLinenumber: 1951
    functionLinenumberEnd: 2034
    functionName: htmlUTF8ToHtml
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - memcpy
    - strlen
    - snprintf
    - htmlEntityValueLookup
    linkageType: ''
    returnType: int
    signature: "int htmlUTF8ToHtml(unsigned char* out, int *outlen,\n               const
      unsigned char* in, int *inlen)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: htmlEntityValueLookup
      Src: /src/libxml2/HTMLparser.c:2113,1
    - Dst: snprintf
      Src: /src/libxml2/HTMLparser.c:2115,1
    - Dst: strlen
      Src: /src/libxml2/HTMLparser.c:2120,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2124,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 67
    argCount: 5
    argNames:
    - out
    - outlen
    - in
    - inlen
    - quoteChar
    argTypes:
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2133
      start: 2052
    functionDepth: 1
    functionLinenumber: 2052
    functionLinenumberEnd: 2133
    functionName: htmlEncodeEntities
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 4
    functionsReached:
    - memcpy
    - strlen
    - snprintf
    - htmlEntityValueLookup
    linkageType: ''
    returnType: int
    signature: "int htmlEncodeEntities(unsigned char* out, int *outlen,\n\t\t   const
      unsigned char* in, int *inlen, int quoteChar)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:2171,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2177,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2179,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2183,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/HTMLparser.c:2184,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:2186,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:2187,1
    - Dst: xmlGetLastChild
      Src: /src/libxml2/HTMLparser.c:2193,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2202,1
    - Dst: xmlNodeIsText
      Src: /src/libxml2/HTMLparser.c:2206,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2212,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 45
    argCount: 3
    argNames:
    - ctxt
    - str
    - len
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2164
    functionDepth: 1
    functionLinenumber: 2164
    functionLinenumberEnd: 2218
    functionName: areBlanks
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlGetIntSubset
    - xmlStrEqual
    - IS_WS_HTML
    - xmlGetLastChild
    - xmlStrcasecmp
    - xmlNodeIsText
    linkageType: ''
    returnType: int
    signature: int areBlanks(htmlParserCtxtPtr ctxt, const xmlChar *str, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:2235,1
    - Dst: memset
      Src: /src/libxml2/HTMLparser.c:2238,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/HTMLparser.c:2260,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:2262,1
    - Dst: xmlRegisterNodeDefaultValue
      Src: /src/libxml2/HTMLparser.c:2267,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - URI
    - publicId
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2228
    functionDepth: 3
    functionLinenumber: 2228
    functionLinenumberEnd: 2269
    functionName: htmlNewDocNoDtD
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 4
    functionsReached:
    - xmlFree
    - xmlRegisterNodeDefaultValue
    - xmlMalloc
    - xmlCreateIntSubset
    - memset
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlNewDocNoDtD(const xmlChar *URI, const xmlChar *publicId)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/HTMLparser.c:2281,1
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/HTMLparser.c:2285,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - URI
    - publicId
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2286
      start: 2278
    functionDepth: 4
    functionLinenumber: 2278
    functionLinenumberEnd: 2286
    functionName: htmlNewDoc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 3
    functionsReached:
    - htmlNewDocNoDtD
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlNewDoc(const xmlChar *URI, const xmlChar *publicId)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:2317,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/HTMLparser.c:2333,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:2350,1
    - Dst: IS_UPPER
      Src: /src/libxml2/HTMLparser.c:2361,1
    - Dst: htmlValidateUtf8
      Src: /src/libxml2/HTMLparser.c:2366,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2370,1
    - Dst: xmlDictLookupHashed
      Src: /src/libxml2/HTMLparser.c:2392,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:2394,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 57
    argCount: 2
    argNames:
    - ctxt
    - attr
    argTypes:
    - htmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2311
    functionDepth: 8
    functionLinenumber: 2311
    functionLinenumberEnd: 2397
    functionName: htmlParseHTMLName
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlValidateUtf8
    - IS_WS_HTML
    - PARSER_PROGRESSIVE
    - xmlDictLookupHashed
    - memcpy
    - IS_UPPER
    - xmlParserGrow
    - htmlErrMemory
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString htmlParseHTMLName(htmlParserCtxtPtr ctxt, int attr)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - c
    - out
    - osize
    argTypes:
    - int
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2433
      start: 2406
    functionDepth: 0
    functionLinenumber: 2406
    functionLinenumberEnd: 2433
    functionName: htmlCodePointToUtf8
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlCodePointToUtf8(int c, xmlChar *out, int *osize)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/HTMLparser.c:2452,1
    - Dst: strncmp
      Src: /src/libxml2/HTMLparser.c:2479,1
    - Dst: strncmp
      Src: /src/libxml2/HTMLparser.c:2486,1
    - Dst: IS_ALNUM
      Src: /src/libxml2/HTMLparser.c:2500,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 54
    argCount: 5
    argNames:
    - string
    - slen
    - isAttr
    - nlen
    - rlen
    argTypes:
    - xmlChar*
    - size_t
    - int
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2535
      start: 2441
    functionDepth: 1
    functionLinenumber: 2441
    functionLinenumberEnd: 2535
    functionName: htmlFindEntityPrefix
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - strncmp
    - IS_ASCII_LETTER
    - IS_ALNUM
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nhtmlFindEntityPrefix(const xmlChar *string, size_t slen,
      int isAttr,\n                     int *nlen, int *rlen)"
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:2557,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:2566,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:2568,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:2576,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:2592,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/HTMLparser.c:2602,1
    - Dst: htmlMaskMatch
      Src: /src/libxml2/HTMLparser.c:2622,1
    - Dst: IS_HEX_DIGIT
      Src: /src/libxml2/HTMLparser.c:2685,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/HTMLparser.c:2691,1
    - Dst: htmlFindEntityPrefix
      Src: /src/libxml2/HTMLparser.c:2699,1
    - Dst: htmlFindEncoding
      Src: /src/libxml2/HTMLparser.c:2745,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/HTMLparser.c:2748,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/HTMLparser.c:2751,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:2752,1
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:2756,1
    - Dst: htmlValidateUtf8
      Src: /src/libxml2/HTMLparser.c:2760,1
    - Dst: htmlCodePointToUtf8
      Src: /src/libxml2/HTMLparser.c:2782,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:2789,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:2796,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:2799,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2808,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2814,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:2835,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:2837,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:2839,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 231
    argCount: 5
    argNames:
    - ctxt
    - mask
    - comment
    - refs
    - maxLength
    argTypes:
    - htmlParserCtxtPtr
    - htmlAsciiMask
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2848
      start: 2548
    functionDepth: 9
    functionLinenumber: 2548
    functionLinenumberEnd: 2848
    functionName: htmlParseData
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlValidateUtf8
    - htmlMaskMatch
    - xmlRealloc
    - xmlFree
    - htmlCodePointToUtf8
    - PARSER_PROGRESSIVE
    - xmlSwitchEncodingName
    - memcpy
    - xmlMalloc
    - htmlParseErr
    - PARSER_STOPPED
    - htmlFindEncoding
    - htmlFindEntityPrefix
    - xmlSwitchEncoding
    - IS_HEX_DIGIT
    - xmlParserGrow
    - IS_ASCII_DIGIT
    - htmlErrMemory
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nhtmlParseData(htmlParserCtxtPtr ctxt, htmlAsciiMask mask,\n
      \             int comment, int refs, int maxLength)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - htmlParserCtxt*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2857
    functionDepth: 0
    functionLinenumber: 2857
    functionLinenumberEnd: 2861
    functionName: htmlParseEntityRef
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: htmlEntityDesc
    signature: "htmlEntityDesc *\nhtmlParseEntityRef(htmlParserCtxt *ctxt ATTRIBUTE_UNUSED,\n
      \                  const xmlChar **str ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:2881,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:2882,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:2884,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:2886,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:2887,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:2889,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:2891,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2894
      start: 2873
    functionDepth: 10
    functionLinenumber: 2873
    functionLinenumberEnd: 2894
    functionName: htmlParseAttValue
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseData
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlParseAttValue(htmlParserCtxtPtr ctxt)'
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2905,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:2906,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:2914,1
    - Dst: htmlParserCtxtPtr::sax::ignorableWhitespace
      Src: /src/libxml2/HTMLparser.c:2920,1
    - Dst: htmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/HTMLparser.c:2923,1
    - Dst: htmlStartCharData
      Src: /src/libxml2/HTMLparser.c:2933,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:2935,1
    - Dst: areBlanks
      Src: /src/libxml2/HTMLparser.c:2941,1
    - Dst: htmlParserCtxtPtr::sax::ignorableWhitespace
      Src: /src/libxml2/HTMLparser.c:2943,1
    - Dst: htmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/HTMLparser.c:2946,1
    - Dst: htmlParserCtxtPtr::sax::cdataBlock
      Src: /src/libxml2/HTMLparser.c:2952,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 35
    argCount: 4
    argNames:
    - ctxt
    - buf
    - size
    - mode
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2954
      start: 2896
    functionDepth: 7
    functionLinenumber: 2896
    functionLinenumberEnd: 2954
    functionName: htmlCharDataSAXCallback
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - htmlStartCharData
    - htmlParserCtxtPtr::sax::characters
    - IS_WS_HTML
    - areBlanks
    - htmlParserCtxtPtr::sax::cdataBlock
    - htmlParserCtxtPtr::sax::ignorableWhitespace
    - PARSER_STOPPED
    linkageType: ''
    returnType: void
    signature: "void htmlCharDataSAXCallback(htmlParserCtxtPtr ctxt, const xmlChar
      *buf,\n                        int size, int mode)"
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:2971,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:2979,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:2995,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/HTMLparser.c:3006,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:3125,1
    - Dst: IS_HEX_DIGIT
      Src: /src/libxml2/HTMLparser.c:3180,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/HTMLparser.c:3186,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/HTMLparser.c:3203,1
    - Dst: IS_ASCII_DIGIT
      Src: /src/libxml2/HTMLparser.c:3204,1
    - Dst: htmlFindEntityPrefix
      Src: /src/libxml2/HTMLparser.c:3216,1
    - Dst: htmlFindEncoding
      Src: /src/libxml2/HTMLparser.c:3289,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/HTMLparser.c:3292,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/HTMLparser.c:3295,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3296,1
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:3300,1
    - Dst: htmlValidateUtf8
      Src: /src/libxml2/HTMLparser.c:3304,1
    - Dst: htmlCodePointToUtf8
      Src: /src/libxml2/HTMLparser.c:3331,1
    - Dst: htmlCharDataSAXCallback
      Src: /src/libxml2/HTMLparser.c:3336,1
    - Dst: htmlCharDataSAXCallback
      Src: /src/libxml2/HTMLparser.c:3341,1
    CyclomaticComplexity: 122
    EdgeCount: 122
    ICount: 284
    argCount: 2
    argNames:
    - ctxt
    - partial
    argTypes:
    - htmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3361
      start: 2964
    functionDepth: 9
    functionLinenumber: 2964
    functionLinenumberEnd: 3361
    functionName: htmlParseCharData
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlValidateUtf8
    - xmlFree
    - IS_WS_HTML
    - htmlCodePointToUtf8
    - PARSER_PROGRESSIVE
    - xmlSwitchEncodingName
    - PARSER_STOPPED
    - htmlFindEncoding
    - htmlFindEntityPrefix
    - xmlSwitchEncoding
    - IS_HEX_DIGIT
    - xmlParserGrow
    - IS_ASCII_DIGIT
    - IS_ASCII_LETTER
    - htmlCharDataSAXCallback
    linkageType: ''
    returnType: int
    signature: int htmlParseCharData(htmlParserCtxtPtr ctxt, int partial)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:3378,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3380,1
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:3383,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/HTMLparser.c:3385,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3388,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:3389,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3390,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:3392,1
    - Dst: htmlParserCtxtPtr::sax::comment
      Src: /src/libxml2/HTMLparser.c:3402,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3404,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - ctxt
    - bogus
    argTypes:
    - htmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3405
      start: 3369
    functionDepth: 10
    functionLinenumber: 3369
    functionLinenumberEnd: 3405
    functionName: htmlParseComment
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - htmlParserCtxtPtr::sax::comment
    - PARSER_PROGRESSIVE
    - NXT
    - htmlParseData
    - xmlParserGrow
    - SKIP
    linkageType: ''
    returnType: void
    signature: void htmlParseComment(htmlParserCtxtPtr ctxt, int bogus)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3434,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:3435,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3437,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3439,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:3440,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3448
      start: 3426
    functionDepth: 10
    functionLinenumber: 3426
    functionLinenumberEnd: 3448
    functionName: htmlParseDoctypeLiteral
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseData
    - SKIP
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      htmlParseDoctypeLiteral(htmlParserCtxtPtr ctxt)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_PROGRESSIVE
      Src: /src/libxml2/HTMLparser.c:3454,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:3463,1
    - Dst: xmlParserGrow
      Src: /src/libxml2/HTMLparser.c:3471,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3503
      start: 3450
    functionDepth: 8
    functionLinenumber: 3450
    functionLinenumberEnd: 3503
    functionName: htmlSkipBogusDoctype
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlParserGrow
    - PARSER_PROGRESSIVE
    - PARSER_STOPPED
    linkageType: ''
    returnType: void
    signature: void htmlSkipBogusDoctype(htmlParserCtxtPtr ctxt)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3523,1
    - Dst: htmlParseData
      Src: /src/libxml2/HTMLparser.c:3528,1
    - Dst: IS_UPPER
      Src: /src/libxml2/HTMLparser.c:3534,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3545,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3546,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3546,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3547,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3547,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3548,1
    - Dst: htmlParseDoctypeLiteral
      Src: /src/libxml2/HTMLparser.c:3550,1
    - Dst: htmlParseDoctypeLiteral
      Src: /src/libxml2/HTMLparser.c:3554,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3555,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3556,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3556,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3557,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:3557,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3558,1
    - Dst: htmlParseDoctypeLiteral
      Src: /src/libxml2/HTMLparser.c:3560,1
    - Dst: htmlSkipBogusDoctype
      Src: /src/libxml2/HTMLparser.c:3564,1
    - Dst: htmlParserCtxtPtr::sax::internalSubset
      Src: /src/libxml2/HTMLparser.c:3571,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3573,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3574,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3575,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 36
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3576
      start: 3511
    functionDepth: 11
    functionLinenumber: 3511
    functionLinenumberEnd: 3576
    functionName: htmlParseDocTypeDecl
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - htmlParseDoctypeLiteral
    - htmlSkipBogusDoctype
    - IS_UPPER
    - htmlParserCtxtPtr::sax::internalSubset
    - htmlParseData
    - UPP
    - SKIP
    linkageType: ''
    returnType: void
    signature: void htmlParseDocTypeDecl(htmlParserCtxtPtr ctxt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseHTMLName
      Src: /src/libxml2/HTMLparser.c:3603,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3612,1
    - Dst: htmlParseAttValue
      Src: /src/libxml2/HTMLparser.c:3614,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctxt
    - value
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3619
      start: 3597
    functionDepth: 11
    functionLinenumber: 3597
    functionLinenumberEnd: 3619
    functionName: htmlParseAttribute
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseHTMLName
    - htmlParseAttValue
    - SKIP
    linkageType: ''
    returnType: xmlHashedString
    signature: xmlHashedString htmlParseAttribute(htmlParserCtxtPtr ctxt, xmlChar
      **value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreateCharEncodingHandler
      Src: /src/libxml2/HTMLparser.c:3630,1
    - Dst: xmlFatalErr
      Src: /src/libxml2/HTMLparser.c:3636,1
    - Dst: xmlEncInputChunk
      Src: /src/libxml2/HTMLparser.c:3646,1
    - Dst: xmlCharEncCloseFunc
      Src: /src/libxml2/HTMLparser.c:3648,1
    - Dst: memcmp
      Src: /src/libxml2/HTMLparser.c:3652,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:3653,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ctxt
    - encoding
    argTypes:
    - htmlParserCtxt*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3659
      start: 3621
    functionDepth: 7
    functionLinenumber: 3621
    functionLinenumberEnd: 3659
    functionName: htmlCharEncCheckAsciiCompatible
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseErr
    - xmlCreateCharEncodingHandler
    - memcmp
    - xmlEncInputChunk
    - xmlFatalErr
    - xmlCharEncCloseFunc
    linkageType: ''
    returnType: int
    signature: "int htmlCharEncCheckAsciiCompatible(htmlParserCtxt *ctxt,\n                                const
      xmlChar *encoding)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:3683,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:3684,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:3686,1
    - Dst: xmlStrdup
      Src: /src/libxml2/HTMLparser.c:3687,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3689,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/HTMLparser.c:3691,1
    - Dst: htmlParseContentType
      Src: /src/libxml2/HTMLparser.c:3701,1
    - Dst: xmlStrndup
      Src: /src/libxml2/HTMLparser.c:3702,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3704,1
    - Dst: htmlCharEncCheckAsciiCompatible
      Src: /src/libxml2/HTMLparser.c:3709,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3710,1
    - Dst: xmlSetDeclaredEncoding
      Src: /src/libxml2/HTMLparser.c:3714,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - ctxt
    - atts
    argTypes:
    - htmlParserCtxtPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3716
      start: 3667
    functionDepth: 8
    functionLinenumber: 3667
    functionLinenumberEnd: 3716
    functionName: htmlCheckMeta
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - htmlCharEncCheckAsciiCompatible
    - xmlFree
    - xmlStrndup
    - xmlSetDeclaredEncoding
    - htmlParseContentType
    - xmlStrcasecmp
    - htmlErrMemory
    linkageType: ''
    returnType: void
    signature: void htmlCheckMeta(htmlParserCtxtPtr ctxt, const xmlChar **atts)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - ctxt
    - size
    - name
    - hashValue
    - aindex
    argTypes:
    - xmlParserCtxtPtr
    - unsigned
    - xmlChar*
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3756
      start: 3729
    functionDepth: 0
    functionLinenumber: 3729
    functionLinenumberEnd: 3756
    functionName: htmlAttrHashInsert
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int htmlAttrHashInsert(xmlParserCtxtPtr ctxt, unsigned size, const
      xmlChar *name,\n                   unsigned hashValue, int aindex)"
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3789,1
    - Dst: htmlParseHTMLName
      Src: /src/libxml2/HTMLparser.c:3795,1
    - Dst: htmlAutoClose
      Src: /src/libxml2/HTMLparser.c:3803,1
    - Dst: htmlCheckImplied
      Src: /src/libxml2/HTMLparser.c:3808,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:3814,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:3815,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:3822,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:3823,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:3829,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:3832,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:3833,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:3851,1
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:3852,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:3857,1
    - Dst: htmlParseAttribute
      Src: /src/libxml2/HTMLparser.c:3862,1
    - Dst: xmlGrowCapacity
      Src: /src/libxml2/HTMLparser.c:3874,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3878,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:3885,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3887,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:3893,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3895,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3913,1
    - Dst: xmlRealloc
      Src: /src/libxml2/HTMLparser.c:3937,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:3939,1
    - Dst: memset
      Src: /src/libxml2/HTMLparser.c:3947,1
    - Dst: htmlAttrHashInsert
      Src: /src/libxml2/HTMLparser.c:3956,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:3966,1
    - Dst: strcmp
      Src: /src/libxml2/HTMLparser.c:3994,1
    - Dst: htmlCheckMeta
      Src: /src/libxml2/HTMLparser.c:3995,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:4006,1
    - Dst: htmlnamePush
      Src: /src/libxml2/HTMLparser.c:4009,1
    - Dst: htmlParserCtxtPtr::sax::startElement
      Src: /src/libxml2/HTMLparser.c:4012,1
    - Dst: htmlParserCtxtPtr::sax::startElement
      Src: /src/libxml2/HTMLparser.c:4014,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:4022,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 144
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4025
      start: 3776
    functionDepth: 12
    functionLinenumber: 3776
    functionLinenumberEnd: 4025
    functionName: htmlParseStartTag
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlCheckImplied
    - htmlAutoClose
    - htmlErrMemory
    - htmlnamePush
    - xmlRealloc
    - xmlFree
    - htmlCheckMeta
    - strcmp
    - xmlGrowCapacity
    - xmlStrEqual
    - htmlParseAttribute
    - NXT
    - htmlParseErr
    - htmlParseHTMLName
    - htmlnamePop
    - memset
    - SKIP
    - PARSER_STOPPED
    - htmlAttrHashInsert
    - htmlParserCtxtPtr::sax::startElement
    linkageType: ''
    returnType: void
    signature: void htmlParseStartTag(htmlParserCtxtPtr ctxt)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4049,1
    - Dst: htmlStartCharData
      Src: /src/libxml2/HTMLparser.c:4052,1
    - Dst: htmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/HTMLparser.c:4055,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4061,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/HTMLparser.c:4065,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4066,1
    - Dst: htmlParseHTMLName
      Src: /src/libxml2/HTMLparser.c:4070,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4080,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4086,1
    - Dst: htmlParseAttribute
      Src: /src/libxml2/HTMLparser.c:4091,1
    - Dst: xmlFree
      Src: /src/libxml2/HTMLparser.c:4093,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4099,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4100,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4101,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:4108,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4117,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4118,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4119,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4129,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:4133,1
    - Dst: htmlAutoCloseOnClose
      Src: /src/libxml2/HTMLparser.c:4143,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4150,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:4151,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/HTMLparser.c:4160,1
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:4161,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:4163,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:4164,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 69
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4166
      start: 4040
    functionDepth: 12
    functionLinenumber: 4040
    functionLinenumberEnd: 4166
    functionName: htmlParseEndTag
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlStartCharData
    - xmlFree
    - htmlParserCtxtPtr::sax::characters
    - htmlParseAttribute
    - xmlStrEqual
    - htmlParserFinishElementParsing
    - NXT
    - htmlParseComment
    - htmlAutoCloseOnClose
    - htmlParseErr
    - htmlnamePop
    - htmlParserCtxtPtr::sax::endElement
    - htmlParseHTMLName
    - IS_ASCII_LETTER
    - SKIP
    linkageType: ''
    returnType: void
    signature: void htmlParseEndTag(htmlParserCtxtPtr ctxt)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:4179,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4186,1
    - Dst: htmlParseEndTag
      Src: /src/libxml2/HTMLparser.c:4187,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4188,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4192,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4192,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4193,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4193,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4194,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4194,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4195,1
    - Dst: htmlParseDocTypeDecl
      Src: /src/libxml2/HTMLparser.c:4196,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4197,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4197,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4198,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4199,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4201,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4202,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4204,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4205,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4206,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/HTMLparser.c:4207,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4207,1
    - Dst: htmlParseElementInternal
      Src: /src/libxml2/HTMLparser.c:4208,1
    - Dst: htmlStartCharData
      Src: /src/libxml2/HTMLparser.c:4210,1
    - Dst: htmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/HTMLparser.c:4213,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4214,1
    - Dst: htmlParseCharData
      Src: /src/libxml2/HTMLparser.c:4217,1
    - Dst: htmlAutoCloseOnEnd
      Src: /src/libxml2/HTMLparser.c:4225,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 40
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4226
      start: 4175
    functionDepth: 13
    functionLinenumber: 4175
    functionLinenumberEnd: 4226
    functionName: htmlParseContent
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseDocTypeDecl
    - htmlStartCharData
    - htmlParserCtxtPtr::sax::characters
    - htmlAutoCloseOnEnd
    - NXT
    - htmlParseComment
    - PARSER_STOPPED
    - htmlParseEndTag
    - htmlParseElementInternal
    - UPP
    - htmlParseCharData
    - IS_ASCII_LETTER
    - SKIP
    linkageType: ''
    returnType: void
    signature: void htmlParseContent(htmlParserCtxtPtr ctxt)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseStartTag
      Src: /src/libxml2/HTMLparser.c:4249,1
    - Dst: htmlNodeInfoPush
      Src: /src/libxml2/HTMLparser.c:4255,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4260,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4261,1
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:4262,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:4265,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:4267,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4273,1
    - Dst: htmlTagLookup
      Src: /src/libxml2/HTMLparser.c:4278,1
    - Dst: htmlParserFinishElementParsing
      Src: /src/libxml2/HTMLparser.c:4284,1
    - Dst: htmlParserCtxtPtr::sax::endElement
      Src: /src/libxml2/HTMLparser.c:4287,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:4289,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 39
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4297
      start: 4233
    functionDepth: 13
    functionLinenumber: 4233
    functionLinenumberEnd: 4297
    functionName: htmlParseElementInternal
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlParseStartTag
    - htmlTagLookup
    - htmlParserFinishElementParsing
    - NXT
    - htmlNodeInfoPush
    - htmlParserCtxtPtr::sax::endElement
    - htmlnamePop
    - SKIP
    linkageType: ''
    returnType: int
    signature: int htmlParseElementInternal(htmlParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseElementInternal
      Src: /src/libxml2/HTMLparser.c:4314,1
    - Dst: htmlParseContent
      Src: /src/libxml2/HTMLparser.c:4323,1
    - Dst: htmlAutoCloseOnEnd
      Src: /src/libxml2/HTMLparser.c:4329,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4331
      start: 4306
    functionDepth: 14
    functionLinenumber: 4306
    functionLinenumberEnd: 4331
    functionName: htmlParseElement
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlParseContent
    - htmlAutoCloseOnEnd
    - htmlParseElementInternal
    linkageType: ''
    returnType: void
    signature: void htmlParseElement(htmlParserCtxt *ctxt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/libxml2/HTMLparser.c:4344,1
    - Dst: htmlErrMemory
      Src: /src/libxml2/HTMLparser.c:4346,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:4350,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/HTMLparser.c:4351,1
    - Dst: htmlnamePush
      Src: /src/libxml2/HTMLparser.c:4355,1
    - Dst: nodePush
      Src: /src/libxml2/HTMLparser.c:4356,1
    - Dst: htmlParseContent
      Src: /src/libxml2/HTMLparser.c:4358,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/HTMLparser.c:4363,1
    - Dst: nodePop
      Src: /src/libxml2/HTMLparser.c:4379,1
    - Dst: htmlnamePop
      Src: /src/libxml2/HTMLparser.c:4380,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/HTMLparser.c:4382,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/HTMLparser.c:4384,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - ctxt
    - input
    argTypes:
    - htmlParserCtxt*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4386
      start: 4338
    functionDepth: 14
    functionLinenumber: 4338
    functionLinenumberEnd: 4386
    functionName: htmlCtxtParseContentInternal
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlNewDocNode
    - xmlParserCheckEOF
    - htmlParseContent
    - nodePush
    - nodePop
    - htmlnamePop
    - xmlCtxtPopInput
    - htmlErrMemory
    - xmlFreeNode
    - htmlnamePush
    linkageType: ''
    returnType: xmlNode
    signature: 'xmlNode *

      htmlCtxtParseContentInternal(htmlParserCtxt *ctxt, xmlParserInput *input)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: htmlParserCtxt*::sax::setDocumentLocator
      Src: /src/libxml2/HTMLparser.c:4402,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/HTMLparser.c:4406,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/HTMLparser.c:4419,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/HTMLparser.c:4420,1
    - Dst: htmlParserCtxt*::sax::startDocument
      Src: /src/libxml2/HTMLparser.c:4428,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4436,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4437,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4437,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4438,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4439,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4440,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4440,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4441,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4441,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4442,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4442,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:4443,1
    - Dst: htmlParseDocTypeDecl
      Src: /src/libxml2/HTMLparser.c:4444,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4447,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4448,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4450,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:4451,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:4452,1
    - Dst: htmlParseContent
      Src: /src/libxml2/HTMLparser.c:4464,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/HTMLparser.c:4469,1
    - Dst: htmlParserCtxt*::sax::endDocument
      Src: /src/libxml2/HTMLparser.c:4475,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 44
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4479
      start: 4396
    functionDepth: 14
    functionLinenumber: 4396
    functionLinenumberEnd: 4479
    functionName: htmlParseDocument
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlParserCtxt*::sax::setDocumentLocator
    - htmlParseDocTypeDecl
    - UPP
    - xmlParserCheckEOF
    - htmlParseContent
    - NXT
    - htmlParseComment
    - htmlParserCtxt*::sax::startDocument
    - xmlDetectEncoding
    - htmlParserCtxt*::sax::endDocument
    - xmlSwitchEncoding
    - xmlStrncmp
    - SKIP
    linkageType: ''
    returnType: int
    signature: int htmlParseDocument(htmlParserCtxt *ctxt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/HTMLparser.c:4507,1
    - Dst: xmlDictCreate
      Src: /src/libxml2/HTMLparser.c:4509,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:4514,1
    - Dst: memset
      Src: /src/libxml2/HTMLparser.c:4518,1
    - Dst: xmlSAX2InitHtmlDefaultSAXHandler
      Src: /src/libxml2/HTMLparser.c:4519,1
    - Dst: memcpy
      Src: /src/libxml2/HTMLparser.c:4522,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:4528,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:4540,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:4548,1
    - Dst: xmlInitNodeInfoSeq
      Src: /src/libxml2/HTMLparser.c:4572,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 59
    argCount: 3
    argNames:
    - ctxt
    - sax
    - userData
    argTypes:
    - htmlParserCtxtPtr
    - htmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4574
      start: 4496
    functionDepth: 5
    functionLinenumber: 4496
    functionLinenumberEnd: 4574
    functionName: htmlInitParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlSAX2InitHtmlDefaultSAXHandler
    - xmlMalloc
    - xmlDictCreate
    - xmlInitNodeInfoSeq
    - memcpy
    - memset
    linkageType: ''
    returnType: int
    signature: "int htmlInitParserCtxt(htmlParserCtxtPtr ctxt, const htmlSAXHandler
      *sax,\n                   void *userData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4586
      start: 4582
    functionDepth: 4
    functionLinenumber: 4582
    functionLinenumberEnd: 4586
    functionName: htmlFreeParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 6
    functionsReached:
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: void
    signature: void htmlFreeParserCtxt(htmlParserCtxt *ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/HTMLparser.c:4605,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4606
      start: 4602
    functionDepth: 1
    functionLinenumber: 4602
    functionLinenumberEnd: 4606
    functionName: htmlNewParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 5
    functionsReached:
    - htmlNewSAXParserCtxt
    linkageType: ''
    returnType: htmlParserCtxt
    signature: 'htmlParserCtxt *

      htmlNewParserCtxt(void)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/libxml2/HTMLparser.c:4628,1
    - Dst: xmlMalloc
      Src: /src/libxml2/HTMLparser.c:4630,1
    - Dst: memset
      Src: /src/libxml2/HTMLparser.c:4633,1
    - Dst: htmlInitParserCtxt
      Src: /src/libxml2/HTMLparser.c:4634,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4635,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - sax
    - userData
    argTypes:
    - htmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4639
      start: 4623
    functionDepth: 6
    functionLinenumber: 4623
    functionLinenumberEnd: 4639
    functionName: htmlNewSAXParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 3
    functionsReached:
    - htmlFreeParserCtxt
    - htmlInitParserCtxt
    - xmlMalloc
    - xmlInitParser
    - memset
    linkageType: ''
    returnType: htmlParserCtxt
    signature: 'htmlParserCtxt *

      htmlNewSAXParserCtxt(const htmlSAXHandler *sax, void *userData)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:4651,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/HTMLparser.c:4655,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4657,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:4661,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:4662,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4663,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - url
    - buffer
    - size
    - encoding
    argTypes:
    - char*
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4668
      start: 4641
    functionDepth: 9
    functionLinenumber: 4641
    functionLinenumberEnd: 4668
    functionName: htmlCreateMemoryParserCtxtInternal
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtNewInputFromMemory
    - htmlNewParserCtxt
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: htmlParserCtxtPtr
    signature: "htmlParserCtxtPtr htmlCreateMemoryParserCtxtInternal(const char *url,\n
      \                                  const char *buffer, size_t size,\n                                   const
      char *encoding)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: htmlCreateMemoryParserCtxtInternal
      Src: /src/libxml2/HTMLparser.c:4685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4686
      start: 4680
    functionDepth: 10
    functionLinenumber: 4680
    functionLinenumberEnd: 4686
    functionName: htmlCreateMemoryParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlCreateMemoryParserCtxtInternal
    linkageType: ''
    returnType: htmlParserCtxt
    signature: 'htmlParserCtxt *

      htmlCreateMemoryParserCtxt(const char *buffer, int size)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:4705,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/HTMLparser.c:4709,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4712,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:4716,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:4717,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:4718,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - str
    - url
    - encoding
    argTypes:
    - xmlChar*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4723
      start: 4696
    functionDepth: 9
    functionLinenumber: 4696
    functionLinenumberEnd: 4723
    functionName: htmlCreateDocParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlCtxtPushInput
    - htmlNewParserCtxt
    - xmlCtxtNewInputFromString
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: htmlParserCtxtPtr
    signature: "htmlParserCtxtPtr htmlCreateDocParserCtxt(const xmlChar *str, const
      char *url,\n                        const char *encoding)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4780,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4785,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4792,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4799,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4808,1
    - Dst: IS_WS_HTML
      Src: /src/libxml2/HTMLparser.c:4823,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 68
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4838
      start: 4749
    functionDepth: 1
    functionLinenumber: 4749
    functionLinenumberEnd: 4838
    functionName: htmlParseLookupGt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - IS_WS_HTML
    linkageType: ''
    returnType: int
    signature: int htmlParseLookupGt(xmlParserCtxtPtr ctxt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/libxml2/HTMLparser.c:4863,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 5
    argNames:
    - ctxt
    - startDelta
    - str
    - strLen
    - extraLen
    argTypes:
    - xmlParserCtxtPtr
    - size_t
    - char*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4892
      start: 4849
    functionDepth: 0
    functionLinenumber: 4849
    functionLinenumberEnd: 4892
    functionName: htmlParseLookupString
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - strstr
    linkageType: ''
    returnType: int
    signature: "int htmlParseLookupString(xmlParserCtxtPtr ctxt, size_t startDelta,\n
      \                     const char *str, size_t strLen, size_t extraLen)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlParseLookupString
      Src: /src/libxml2/HTMLparser.c:4910,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4919,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4920,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4920,1
    - Dst: NXT
      Src: /src/libxml2/HTMLparser.c:4924,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4932
      start: 4903
    functionDepth: 1
    functionLinenumber: 4903
    functionLinenumberEnd: 4932
    functionName: htmlParseLookupCommentEnd
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseLookupString
    - NXT
    linkageType: ''
    returnType: int
    signature: int htmlParseLookupCommentEnd(htmlParserCtxtPtr ctxt)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:4944,1
    - Dst: xmlDetectEncoding
      Src: /src/libxml2/HTMLparser.c:4966,1
    - Dst: xmlStrncmp
      Src: /src/libxml2/HTMLparser.c:4979,1
    - Dst: xmlSwitchEncoding
      Src: /src/libxml2/HTMLparser.c:4980,1
    - Dst: htmlParserCtxtPtr::sax::setDocumentLocator
      Src: /src/libxml2/HTMLparser.c:4987,1
    - Dst: htmlParserCtxtPtr::sax::startDocument
      Src: /src/libxml2/HTMLparser.c:4992,1
    - Dst: htmlParseLookupGt
      Src: /src/libxml2/HTMLparser.c:5002,1
    - Dst: htmlParseElementInternal
      Src: /src/libxml2/HTMLparser.c:5005,1
    - Dst: htmlParseCharData
      Src: /src/libxml2/HTMLparser.c:5030,1
    - Dst: htmlParseLookupCommentEnd
      Src: /src/libxml2/HTMLparser.c:5048,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:5050,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:5051,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5058,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5058,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5059,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5059,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5060,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5060,1
    - Dst: UPP
      Src: /src/libxml2/HTMLparser.c:5061,1
    - Dst: htmlParseLookupString
      Src: /src/libxml2/HTMLparser.c:5063,1
    - Dst: htmlParseDocTypeDecl
      Src: /src/libxml2/HTMLparser.c:5066,1
    - Dst: htmlParseLookupString
      Src: /src/libxml2/HTMLparser.c:5071,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:5073,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:5074,1
    - Dst: htmlParseLookupString
      Src: /src/libxml2/HTMLparser.c:5078,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:5080,1
    - Dst: htmlParseComment
      Src: /src/libxml2/HTMLparser.c:5081,1
    - Dst: IS_ASCII_LETTER
      Src: /src/libxml2/HTMLparser.c:5086,1
    - Dst: htmlStartCharData
      Src: /src/libxml2/HTMLparser.c:5091,1
    - Dst: htmlParserCtxtPtr::sax::characters
      Src: /src/libxml2/HTMLparser.c:5094,1
    - Dst: SKIP
      Src: /src/libxml2/HTMLparser.c:5096,1
    - Dst: htmlParseLookupString
      Src: /src/libxml2/HTMLparser.c:5105,1
    - Dst: htmlParseCharData
      Src: /src/libxml2/HTMLparser.c:5109,1
    - Dst: htmlParseLookupGt
      Src: /src/libxml2/HTMLparser.c:5118,1
    - Dst: htmlParseEndTag
      Src: /src/libxml2/HTMLparser.c:5120,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:5126,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 123
    argCount: 2
    argNames:
    - ctxt
    - terminate
    argTypes:
    - htmlParserCtxtPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5132
      start: 4942
    functionDepth: 14
    functionLinenumber: 4942
    functionLinenumberEnd: 5132
    functionName: htmlParseTryOrFinish
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - htmlParseDocTypeDecl
    - htmlParseLookupGt
    - IS_ASCII_LETTER
    - htmlParserCtxtPtr::sax::setDocumentLocator
    - htmlParseLookupString
    - htmlStartCharData
    - htmlParserCtxtPtr::sax::characters
    - xmlDetectEncoding
    - htmlParserCtxtPtr::sax::startDocument
    - htmlParseEndTag
    - htmlParseCharData
    - htmlParseErr
    - UPP
    - xmlSwitchEncoding
    - SKIP
    - htmlParseLookupCommentEnd
    - htmlParseComment
    - PARSER_STOPPED
    - htmlParseElementInternal
    - xmlStrncmp
    linkageType: ''
    returnType: void
    signature: void htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PARSER_STOPPED
      Src: /src/libxml2/HTMLparser.c:5164,1
    - Dst: xmlParserInputBufferPush
      Src: /src/libxml2/HTMLparser.c:5171,1
    - Dst: xmlBufUpdateInput
      Src: /src/libxml2/HTMLparser.c:5172,1
    - Dst: htmlParseErr
      Src: /src/libxml2/HTMLparser.c:5174,1
    - Dst: htmlParseTryOrFinish
      Src: /src/libxml2/HTMLparser.c:5180,1
    - Dst: htmlAutoCloseOnEnd
      Src: /src/libxml2/HTMLparser.c:5183,1
    - Dst: xmlParserCheckEOF
      Src: /src/libxml2/HTMLparser.c:5188,1
    - Dst: htmlParserCtxt*::sax::endDocument
      Src: /src/libxml2/HTMLparser.c:5191,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 22
    argCount: 4
    argNames:
    - ctxt
    - chunk
    - size
    - terminate
    argTypes:
    - htmlParserCtxt*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5197
      start: 5156
    functionDepth: 15
    functionLinenumber: 5156
    functionLinenumberEnd: 5197
    functionName: htmlParseChunk
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 7
    functionsReached:
    - htmlParseTryOrFinish
    - xmlParserCheckEOF
    - xmlBufUpdateInput
    - htmlParseErr
    - htmlParserCtxt*::sax::endDocument
    - PARSER_STOPPED
    - xmlParserInputBufferPush
    - htmlAutoCloseOnEnd
    linkageType: ''
    returnType: int
    signature: "int htmlParseChunk(htmlParserCtxt *ctxt, const char *chunk, int size,\n
      \             int terminate)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/HTMLparser.c:5225,1
    - Dst: xmlGetCharEncodingName
      Src: /src/libxml2/HTMLparser.c:5229,1
    - Dst: xmlNewPushInput
      Src: /src/libxml2/HTMLparser.c:5230,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5232,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:5236,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5237,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5238,1
    - Dst: xmlSwitchEncodingName
      Src: /src/libxml2/HTMLparser.c:5243,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - sax
    - user_data
    - chunk
    - size
    - filename
    - enc
    argTypes:
    - htmlSAXHandler*
    - void*
    - char*
    - int
    - char*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5246
      start: 5217
    functionDepth: 9
    functionLinenumber: 5217
    functionLinenumberEnd: 5246
    functionName: htmlCreatePushParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 7
    functionsReached:
    - xmlCtxtPushInput
    - htmlFreeParserCtxt
    - htmlNewSAXParserCtxt
    - xmlFreeParserCtxt
    - xmlSwitchEncodingName
    - xmlGetCharEncodingName
    - xmlNewPushInput
    - xmlFreeInputStream
    linkageType: ''
    returnType: htmlParserCtxt
    signature: "htmlParserCtxt *\nhtmlCreatePushParserCtxt(htmlSAXHandler *sax, void
      *user_data,\n                         const char *chunk, int size, const char
      *filename,\n\t\t\t xmlCharEncoding enc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlCreateDocParserCtxt
      Src: /src/libxml2/HTMLparser.c:5273,1
    - Dst: htmlParseDocument
      Src: /src/libxml2/HTMLparser.c:5282,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - cur
    - encoding
    - sax
    - userData
    argTypes:
    - xmlChar*
    - char*
    - htmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5287
      start: 5264
    functionDepth: 15
    functionLinenumber: 5264
    functionLinenumberEnd: 5287
    functionName: htmlSAXParseDoc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlFreeParserCtxt
    - htmlCreateDocParserCtxt
    - htmlParseDocument
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlSAXParseDoc(const xmlChar *cur, const char *encoding,\n
      \               htmlSAXHandler *sax, void *userData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlSAXParseDoc
      Src: /src/libxml2/HTMLparser.c:5303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cur
    - encoding
    argTypes:
    - xmlChar*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5304
      start: 5301
    functionDepth: 16
    functionLinenumber: 5301
    functionLinenumberEnd: 5304
    functionName: htmlParseDoc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlSAXParseDoc
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlParseDoc(const xmlChar *cur, const char *encoding)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5330,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/HTMLparser.c:5335,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5337,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:5340,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5341,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5342,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - filename
    - encoding
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5347
      start: 5321
    functionDepth: 9
    functionLinenumber: 5321
    functionLinenumberEnd: 5347
    functionName: htmlCreateFileParserCtxt
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtNewInputFromUrl
    - htmlNewParserCtxt
    - xmlFreeParserCtxt
    - xmlFreeInputStream
    linkageType: ''
    returnType: htmlParserCtxt
    signature: 'htmlParserCtxt *

      htmlCreateFileParserCtxt(const char *filename, const char *encoding)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlCreateFileParserCtxt
      Src: /src/libxml2/HTMLparser.c:5372,1
    - Dst: htmlParseDocument
      Src: /src/libxml2/HTMLparser.c:5380,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5387,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 4
    argNames:
    - filename
    - encoding
    - sax
    - userData
    argTypes:
    - char*
    - char*
    - htmlSAXHandler*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5390
      start: 5365
    functionDepth: 15
    functionLinenumber: 5365
    functionLinenumberEnd: 5390
    functionName: htmlSAXParseFile
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlCreateFileParserCtxt
    - htmlFreeParserCtxt
    - htmlParseDocument
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlSAXParseFile(const char *filename, const char *encoding,
      htmlSAXHandler *sax,\n                 void *userData)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlSAXParseFile
      Src: /src/libxml2/HTMLparser.c:5402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filename
    - encoding
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5403
      start: 5400
    functionDepth: 16
    functionLinenumber: 5400
    functionLinenumberEnd: 5403
    functionName: htmlParseFile
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - htmlSAXParseFile
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlParseFile(const char *filename, const char *encoding)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5420
      start: 5414
    functionDepth: 0
    functionLinenumber: 5414
    functionLinenumberEnd: 5420
    functionName: htmlHandleOmittedElem
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int htmlHandleOmittedElem(int val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - htmlElemDesc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5433
      start: 5429
    functionDepth: 0
    functionLinenumber: 5429
    functionLinenumberEnd: 5433
    functionName: htmlElementAllowedHere
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int htmlElementAllowedHere(const htmlElemDesc* parent ATTRIBUTE_UNUSED,\n
      \                      const xmlChar* elt ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - htmlElemDesc*
    - htmlElemDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5446
      start: 5442
    functionDepth: 0
    functionLinenumber: 5442
    functionLinenumberEnd: 5446
    functionName: htmlElementStatusHere
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: htmlStatus
    signature: "htmlStatus htmlElementStatusHere(const htmlElemDesc* parent ATTRIBUTE_UNUSED,\n
      \                     const htmlElemDesc* elt ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - htmlElemDesc*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5461
      start: 5456
    functionDepth: 0
    functionLinenumber: 5456
    functionLinenumberEnd: 5461
    functionName: htmlAttrAllowed
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: htmlStatus
    signature: "htmlStatus htmlAttrAllowed(const htmlElemDesc* elt ATTRIBUTE_UNUSED,\n
      \               const xmlChar* attr ATTRIBUTE_UNUSED,\n                int legacy
      ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - htmlParserCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5494
      start: 5490
    functionDepth: 2
    functionLinenumber: 5490
    functionLinenumberEnd: 5494
    functionName: htmlCtxtReset
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - xmlCtxtReset
    linkageType: ''
    returnType: void
    signature: void htmlCtxtReset(htmlParserCtxt *ctxt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlDictSetLimit
      Src: /src/libxml2/HTMLparser.c:5539,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctxt
    - options
    - keepMask
    argTypes:
    - xmlParserCtxtPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5551
      start: 5496
    functionDepth: 1
    functionLinenumber: 5496
    functionLinenumberEnd: 5551
    functionName: htmlCtxtSetOptionsInternal
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 0
    functionsReached:
    - xmlDictSetLimit
    linkageType: ''
    returnType: int
    signature: int htmlCtxtSetOptionsInternal(xmlParserCtxtPtr ctxt, int options,
      int keepMask)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtSetOptionsInternal
      Src: /src/libxml2/HTMLparser.c:5569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - htmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5570
      start: 5566
    functionDepth: 2
    functionLinenumber: 5566
    functionLinenumberEnd: 5570
    functionName: htmlCtxtSetOptions
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - htmlCtxtSetOptionsInternal
    linkageType: ''
    returnType: int
    signature: int htmlCtxtSetOptions(htmlParserCtxt *ctxt, int options)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtSetOptionsInternal
      Src: /src/libxml2/HTMLparser.c:5609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctxt
    - options
    argTypes:
    - htmlParserCtxt*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5610
      start: 5592
    functionDepth: 2
    functionLinenumber: 5592
    functionLinenumberEnd: 5610
    functionName: htmlCtxtUseOptions
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 4
    functionsReached:
    - htmlCtxtSetOptionsInternal
    linkageType: ''
    returnType: int
    signature: int htmlCtxtUseOptions(htmlParserCtxt *ctxt, int options)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFatalErr
      Src: /src/libxml2/HTMLparser.c:5627,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5628,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5634,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/HTMLparser.c:5634,1
    - Dst: xmlCtxtPushInput
      Src: /src/libxml2/HTMLparser.c:5636,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5637,1
    - Dst: htmlParseDocument
      Src: /src/libxml2/HTMLparser.c:5642,1
    - Dst: xmlCtxtGetDocument
      Src: /src/libxml2/HTMLparser.c:5644,1
    - Dst: xmlFreeInputStream
      Src: /src/libxml2/HTMLparser.c:5648,1
    - Dst: xmlCtxtPopInput
      Src: /src/libxml2/HTMLparser.c:5648,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctxt
    - input
    argTypes:
    - htmlParserCtxt*
    - xmlParserInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5651
      start: 5621
    functionDepth: 15
    functionLinenumber: 5621
    functionLinenumberEnd: 5651
    functionName: htmlCtxtParseDocument
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - xmlCtxtPushInput
    - xmlCtxtGetDocument
    - xmlFatalErr
    - xmlCtxtPopInput
    - htmlParseDocument
    - xmlFreeInputStream
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlCtxtParseDocument(htmlParserCtxt *ctxt, xmlParserInput *input)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5673,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5677,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/HTMLparser.c:5679,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5683,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5685,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - str
    - url
    - encoding
    - options
    argTypes:
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5687
      start: 5665
    functionDepth: 16
    functionLinenumber: 5665
    functionLinenumberEnd: 5687
    functionName: htmlReadDoc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 5
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCtxtNewInputFromString
    - htmlNewParserCtxt
    - htmlCtxtParseDocument
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlReadDoc(const xmlChar *str, const char *url, const char
      *encoding,\n            int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5707,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5711,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/HTMLparser.c:5713,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5716,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5718,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - filename
    - encoding
    - options
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5720
      start: 5700
    functionDepth: 16
    functionLinenumber: 5700
    functionLinenumberEnd: 5720
    functionName: htmlReadFile
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 2
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCtxtNewInputFromUrl
    - htmlNewParserCtxt
    - htmlCtxtParseDocument
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlReadFile(const char *filename, const char *encoding, int options)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5746,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5750,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/HTMLparser.c:5752,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5756,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5758,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - buffer
    - size
    - url
    - encoding
    - options
    argTypes:
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5760
      start: 5735
    functionDepth: 16
    functionLinenumber: 5735
    functionLinenumberEnd: 5760
    functionName: htmlReadMemory
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCtxtNewInputFromMemory
    - htmlNewParserCtxt
    - htmlCtxtParseDocument
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlReadMemory(const char *buffer, int size, const char
      *url,\n               const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5784,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5788,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/HTMLparser.c:5790,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5793,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - fd
    - url
    - encoding
    - options
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5797
      start: 5777
    functionDepth: 16
    functionLinenumber: 5777
    functionLinenumberEnd: 5797
    functionName: htmlReadFd
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlFreeParserCtxt
    - htmlNewParserCtxt
    - xmlCtxtNewInputFromFd
    - htmlCtxtParseDocument
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: 'xmlDoc *

      htmlReadFd(int fd, const char *url, const char *encoding, int options)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/HTMLparser.c:5821,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5825,1
    - Dst: xmlCtxtNewInputFromIO
      Src: /src/libxml2/HTMLparser.c:5827,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5831,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/HTMLparser.c:5833,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 6
    argNames:
    - ioread
    - ioclose
    - ioctx
    - url
    - encoding
    - options
    argTypes:
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5835
      start: 5813
    functionDepth: 16
    functionLinenumber: 5813
    functionLinenumberEnd: 5835
    functionName: htmlReadIO
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlFreeParserCtxt
    - xmlCtxtNewInputFromIO
    - htmlNewParserCtxt
    - htmlCtxtParseDocument
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlReadIO(xmlInputReadCallback ioread, xmlInputCloseCallback
      ioclose,\n          void *ioctx, const char *url, const char *encoding, int
      options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5858,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5859,1
    - Dst: xmlCtxtNewInputFromString
      Src: /src/libxml2/HTMLparser.c:5861,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5866,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ctxt
    - str
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - xmlChar*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5867
      start: 5849
    functionDepth: 16
    functionLinenumber: 5849
    functionLinenumberEnd: 5867
    functionName: htmlCtxtReadDoc
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlCtxtParseDocument
    - xmlCtxtNewInputFromString
    - htmlCtxtReset
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlCtxtReadDoc(xmlParserCtxt *ctxt, const xmlChar *str,\n
      \               const char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5890,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5891,1
    - Dst: xmlCtxtNewInputFromUrl
      Src: /src/libxml2/HTMLparser.c:5893,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5897,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - ctxt
    - filename
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5898
      start: 5881
    functionDepth: 16
    functionLinenumber: 5881
    functionLinenumberEnd: 5898
    functionName: htmlCtxtReadFile
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 4
    functionsReached:
    - htmlCtxtParseDocument
    - xmlCtxtNewInputFromUrl
    - htmlCtxtReset
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlCtxtReadFile(xmlParserCtxt *ctxt, const char *filename,\n
      \               const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5923,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5924,1
    - Dst: xmlCtxtNewInputFromMemory
      Src: /src/libxml2/HTMLparser.c:5926,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - ctxt
    - buffer
    - size
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5932
      start: 5914
    functionDepth: 16
    functionLinenumber: 5914
    functionLinenumberEnd: 5932
    functionName: htmlCtxtReadMemory
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlCtxtParseDocument
    - htmlCtxtReset
    - xmlCtxtNewInputFromMemory
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlCtxtReadMemory(xmlParserCtxt *ctxt, const char *buffer,
      int size,\n                  const char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5958,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5959,1
    - Dst: xmlCtxtNewInputFromFd
      Src: /src/libxml2/HTMLparser.c:5961,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:5965,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 5
    argNames:
    - ctxt
    - fd
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5966
      start: 5949
    functionDepth: 16
    functionLinenumber: 5949
    functionLinenumberEnd: 5966
    functionName: htmlCtxtReadFd
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 3
    functionsReached:
    - htmlCtxtParseDocument
    - xmlCtxtNewInputFromFd
    - htmlCtxtReset
    - htmlCtxtUseOptions
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlCtxtReadFd(xmlParserCtxt *ctxt, int fd,\n              const
      char *URL, const char *encoding, int options)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: htmlCtxtReset
      Src: /src/libxml2/HTMLparser.c:5993,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/HTMLparser.c:5994,1
    - Dst: xmlCtxtNewInputFromIO
      Src: /src/libxml2/HTMLparser.c:5996,1
    - Dst: htmlCtxtParseDocument
      Src: /src/libxml2/HTMLparser.c:6001,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - ctxt
    - ioread
    - ioclose
    - ioctx
    - URL
    - encoding
    - options
    argTypes:
    - xmlParserCtxt*
    - xmlInputReadCallback
    - xmlInputCloseCallback
    - void*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6002
      start: 5982
    functionDepth: 16
    functionLinenumber: 5982
    functionLinenumberEnd: 6002
    functionName: htmlCtxtReadIO
    functionSourceFile: /src/libxml2/HTMLparser.c
    functionUses: 1
    functionsReached:
    - htmlCtxtParseDocument
    - htmlCtxtReset
    - htmlCtxtUseOptions
    - xmlCtxtNewInputFromIO
    linkageType: ''
    returnType: xmlDoc
    signature: "xmlDoc *\nhtmlCtxtReadIO(xmlParserCtxt *ctxt, xmlInputReadCallback
      ioread,\n              xmlInputCloseCallback ioclose, void *ioctx,\n\t      const
      char *URL,\n              const char *encoding, int options)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: XML_HAS_ATTRIBUTE
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_HAS_ATTRIBUTE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: XML_HAS_ATTRIBUTE
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_HAS_ATTRIBUTE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: XML_PTR_TO_INT
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_PTR_TO_INT(p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: XML_INT_TO_PTR
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_INT_TO_PTR(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: ATTRIBUTE_COUNTED_BY
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ATTRIBUTE_COUNTED_BY(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: ATTRIBUTE_NO_SANITIZE
    functionSourceFile: /src/libxml2/libxml.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ATTRIBUTE_NO_SANITIZE(arg)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/entities.c:96,1
    - Dst: xmlDictOwns
      Src: /src/libxml2/entities.c:98,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:99,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:101,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:103,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:105,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:107,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:109,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:110,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 1
    argNames:
    - entity
    argTypes:
    - xmlEntity*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 82
    functionDepth: 4
    functionLinenumber: 82
    functionLinenumberEnd: 111
    functionName: xmlFreeEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 3
    functionsReached:
    - xmlFreeNodeList
    - xmlFree
    - xmlDictOwns
    linkageType: ''
    returnType: void
    signature: void xmlFreeEntity(xmlEntity *entity)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/entities.c:122,1
    - Dst: memset
      Src: /src/libxml2/entities.c:125,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:134,1
    - Dst: xmlDictLookup
      Src: /src/libxml2/entities.c:136,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:140,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:145,1
    - Dst: xmlStrlen
      Src: /src/libxml2/entities.c:150,1
    - Dst: xmlStrndup
      Src: /src/libxml2/entities.c:151,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/entities.c:165,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 6
    argNames:
    - doc
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - xmlDocPtr
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 116
    functionDepth: 5
    functionLinenumber: 116
    functionLinenumberEnd: 167
    functionName: xmlCreateEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlStrlen
    - xmlStrndup
    - xmlMalloc
    - xmlFreeEntity
    - xmlDictLookup
    - memset
    linkageType: ''
    returnType: xmlEntityPtr
    signature: "xmlEntityPtr xmlCreateEntity(xmlDocPtr doc, const xmlChar *name, int
      type,\n\t        const xmlChar *publicId, const xmlChar *systemId,\n\t        const
      xmlChar *content)"
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/entities.c:211,1
    - Dst: xmlStrcasecmp
      Src: /src/libxml2/entities.c:230,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:237,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/entities.c:246,1
    - Dst: xmlHashCreateDict
      Src: /src/libxml2/entities.c:255,1
    - Dst: xmlCreateEntity
      Src: /src/libxml2/entities.c:264,1
    - Dst: xmlHashAdd
      Src: /src/libxml2/entities.c:268,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/entities.c:270,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/entities.c:276,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 81
    argCount: 8
    argNames:
    - doc
    - extSubset
    - name
    - type
    - publicId
    - systemId
    - content
    - out
    argTypes:
    - xmlDoc*
    - int
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlEntity**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 184
    functionDepth: 6
    functionLinenumber: 184
    functionLinenumberEnd: 296
    functionName: xmlAddEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    - xmlCreateEntity
    - xmlGetPredefinedEntity
    - xmlHashCreateDict
    - xmlFreeEntity
    - xmlStrcasecmp
    - xmlHashAdd
    linkageType: ''
    returnType: int
    signature: "int xmlAddEntity(xmlDoc *doc, int extSubset, const xmlChar *name,
      int type,\n\t  const xmlChar *publicId, const xmlChar *systemId,\n\t  const
      xmlChar *content, xmlEntity **out)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:309,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:313,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:317,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:319,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/entities.c:323,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 330
    functionName: xmlGetPredefinedEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 4
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlGetPredefinedEntity(const xmlChar *name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddEntity
      Src: /src/libxml2/entities.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - doc
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 345
    functionDepth: 7
    functionLinenumber: 345
    functionLinenumberEnd: 353
    functionName: xmlAddDtdEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlAddEntity
    linkageType: ''
    returnType: xmlEntity
    signature: "xmlEntity *\nxmlAddDtdEntity(xmlDoc *doc, const xmlChar *name, int
      type,\n\t        const xmlChar *publicId, const xmlChar *systemId,\n\t\tconst
      xmlChar *content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddEntity
      Src: /src/libxml2/entities.c:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - doc
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 368
    functionDepth: 7
    functionLinenumber: 368
    functionLinenumberEnd: 376
    functionName: xmlAddDocEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlAddEntity
    linkageType: ''
    returnType: xmlEntity
    signature: "xmlEntity *\nxmlAddDocEntity(xmlDoc *doc, const xmlChar *name, int
      type,\n\t        const xmlChar *publicId, const xmlChar *systemId,\n\t        const
      xmlChar *content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlAddDocEntity
      Src: /src/libxml2/entities.c:399,1
    - Dst: xmlCreateEntity
      Src: /src/libxml2/entities.c:403,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 6
    argNames:
    - doc
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - xmlDoc*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 394
    functionDepth: 8
    functionLinenumber: 394
    functionLinenumberEnd: 404
    functionName: xmlNewEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlCreateEntity
    - xmlAddDocEntity
    linkageType: ''
    returnType: xmlEntity
    signature: "xmlEntity *\nxmlNewEntity(xmlDoc *doc, const xmlChar *name, int type,\n\t
      \    const xmlChar *publicId, const xmlChar *systemId,\n\t     const xmlChar
      *content)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/entities.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - table
    - name
    argTypes:
    - xmlEntitiesTablePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 413
    functionDepth: 2
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionName: xmlGetEntityFromTable
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    linkageType: ''
    returnType: xmlEntityPtr
    signature: xmlEntityPtr xmlGetEntityFromTable(xmlEntitiesTablePtr table, const
      xmlChar *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetEntityFromTable
      Src: /src/libxml2/entities.c:435,1
    - Dst: xmlGetEntityFromTable
      Src: /src/libxml2/entities.c:441,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 426
    functionDepth: 3
    functionLinenumber: 426
    functionLinenumberEnd: 444
    functionName: xmlGetParameterEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlGetEntityFromTable
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlGetParameterEntity(xmlDoc *doc, const xmlChar *name)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetEntityFromTable
      Src: /src/libxml2/entities.c:461,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 453
    functionDepth: 3
    functionLinenumber: 453
    functionLinenumberEnd: 464
    functionName: xmlGetDtdEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlGetEntityFromTable
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlGetDtdEntity(xmlDoc *doc, const xmlChar *name)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetEntityFromTable
      Src: /src/libxml2/entities.c:482,1
    - Dst: xmlGetEntityFromTable
      Src: /src/libxml2/entities.c:490,1
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/entities.c:496,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - doc
    - name
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 474
    functionDepth: 3
    functionLinenumber: 474
    functionLinenumberEnd: 497
    functionName: xmlGetDocEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 15
    functionsReached:
    - xmlGetEntityFromTable
    - xmlGetPredefinedEntity
    linkageType: ''
    returnType: xmlEntity
    signature: 'xmlEntity *

      xmlGetDocEntity(const xmlDoc *doc, const xmlChar *name)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlEscapeText
      Src: /src/libxml2/entities.c:532,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 2
    argNames:
    - doc
    - input
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 520
    functionDepth: 2
    functionLinenumber: 520
    functionLinenumberEnd: 533
    functionName: xmlEncodeEntitiesReentrant
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlEscapeText
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlEncodeEntitiesReentrant(xmlDoc *doc, const xmlChar *input)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlEscapeText
      Src: /src/libxml2/entities.c:552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - input
    argTypes:
    - xmlDoc*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 546
    functionDepth: 2
    functionLinenumber: 546
    functionLinenumberEnd: 553
    functionName: xmlEncodeSpecialChars
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlEscapeText
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlEncodeSpecialChars(const xmlDoc *doc ATTRIBUTE_UNUSED,\n
      \                     const xmlChar *input)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/entities.c:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 562
    functionDepth: 5
    functionLinenumber: 562
    functionLinenumberEnd: 565
    functionName: xmlCreateEntitiesTable
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlHashCreate
    linkageType: ''
    returnType: xmlEntitiesTable
    signature: 'xmlEntitiesTable *

      xmlCreateEntitiesTable(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFreeEntity
      Src: /src/libxml2/entities.c:576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - entity
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 573
    functionDepth: 5
    functionLinenumber: 573
    functionLinenumberEnd: 577
    functionName: xmlFreeEntityWrapper
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 0
    functionsReached:
    - xmlFreeEntity
    linkageType: ''
    returnType: void
    signature: void xmlFreeEntityWrapper(void *entity, const xmlChar *name ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/entities.c:588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlEntitiesTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 589
    functionName: xmlFreeEntitiesTable
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFreeEntitiesTable(xmlEntitiesTable *table)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/entities.c:603,1
    - Dst: memset
      Src: /src/libxml2/entities.c:606,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:611,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:616,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:621,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:626,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:631,1
    - Dst: xmlStrdup
      Src: /src/libxml2/entities.c:636,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/entities.c:643,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 2
    argNames:
    - payload
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 598
    functionDepth: 5
    functionLinenumber: 598
    functionLinenumberEnd: 645
    functionName: xmlCopyEntity
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlStrdup
    - xmlFreeEntity
    - memset
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlCopyEntity(void *payload, const xmlChar *name ATTRIBUTE_UNUSED)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCopySafe
      Src: /src/libxml2/entities.c:657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - table
    argTypes:
    - xmlEntitiesTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 655
    functionDepth: 6
    functionLinenumber: 655
    functionLinenumberEnd: 658
    functionName: xmlCopyEntitiesTable
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 2
    functionsReached:
    - xmlHashCopySafe
    linkageType: ''
    returnType: xmlEntitiesTable
    signature: 'xmlEntitiesTable *

      xmlCopyEntitiesTable(xmlEntitiesTable *table)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/entities.c:678,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/entities.c:679,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/entities.c:680,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:681,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/entities.c:681,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - ent
    argTypes:
    - xmlBuffer*
    - xmlEntity*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 671
    functionDepth: 13
    functionLinenumber: 671
    functionLinenumberEnd: 682
    functionName: xmlDumpEntityDecl
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveTree
    - xmlSaveFinish
    - xmlSaveToBuffer
    linkageType: ''
    returnType: void
    signature: void xmlDumpEntityDecl(xmlBuffer *buf, xmlEntity *ent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveTree
      Src: /src/libxml2/entities.c:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ent
    - save
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 692
    functionDepth: 13
    functionLinenumber: 692
    functionLinenumberEnd: 696
    functionName: xmlDumpEntityDeclScan
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 0
    functionsReached:
    - xmlSaveTree
    linkageType: ''
    returnType: void
    signature: "void xmlDumpEntityDeclScan(void *ent, void *save,\n                      const
      xmlChar *name ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/entities.c:714,1
    - Dst: xmlHashScan
      Src: /src/libxml2/entities.c:715,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/entities.c:716,1
    - Dst: xmlFree
      Src: /src/libxml2/entities.c:717,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/entities.c:717,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - buf
    - table
    argTypes:
    - xmlBuffer*
    - xmlEntitiesTable*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 707
    functionDepth: 8
    functionLinenumber: 707
    functionLinenumberEnd: 718
    functionName: xmlDumpEntitiesTable
    functionSourceFile: /src/libxml2/entities.c
    functionUses: 1
    functionsReached:
    - xmlBufferDetach
    - xmlFree
    - xmlSaveFinish
    - xmlSaveToBuffer
    - xmlHashScan
    linkageType: ''
    returnType: void
    signature: void xmlDumpEntitiesTable(xmlBuffer *buf, xmlEntitiesTable *table)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:213,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:215,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:217,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 219
    functionName: xmlPythonFileCloseRaw
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_CallMethod
    - Py_DECREF
    linkageType: ''
    returnType: int
    signature: int xmlPythonFileCloseRaw (void * context)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:245,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:247,1
    - Dst: PyBytes_Check
      Src: /src/libxml2/python/libxml.c:249,1
    - Dst: PyBytes_Size
      Src: /src/libxml2/python/libxml.c:250,1
    - Dst: PyBytes_AsString
      Src: /src/libxml2/python/libxml.c:251,1
    - Dst: PyUnicode_Check
      Src: /src/libxml2/python/libxml.c:253,1
    - Dst: PyUnicode_AsUTF8AndSize
      Src: /src/libxml2/python/libxml.c:259,1
    - Dst: PyUnicode_AsUTF8String
      Src: /src/libxml2/python/libxml.c:264,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:266,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:267,1
    - Dst: PyBytes_Size
      Src: /src/libxml2/python/libxml.c:270,1
    - Dst: PyBytes_AsString
      Src: /src/libxml2/python/libxml.c:271,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:275,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:276,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:280,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:281,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:284,1
    - Dst: memcpy
      Src: /src/libxml2/python/libxml.c:289,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:290,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:293,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 297
    functionName: xmlPythonFileReadRaw
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyUnicode_Check
    - PyUnicode_AsUTF8String
    - PyBytes_AsString
    - PyBytes_Size
    - PyBytes_Check
    - Py_DECREF
    - PyUnicode_AsUTF8AndSize
    - printf
    - memcpy
    - PyObject_CallMethod
    linkageType: ''
    returnType: int
    signature: int xmlPythonFileReadRaw (void * context, char * buffer, int len)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:323,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:325,1
    - Dst: PyBytes_Check
      Src: /src/libxml2/python/libxml.c:327,1
    - Dst: PyBytes_Size
      Src: /src/libxml2/python/libxml.c:328,1
    - Dst: PyBytes_AsString
      Src: /src/libxml2/python/libxml.c:329,1
    - Dst: PyUnicode_Check
      Src: /src/libxml2/python/libxml.c:331,1
    - Dst: PyUnicode_AsUTF8AndSize
      Src: /src/libxml2/python/libxml.c:337,1
    - Dst: PyUnicode_AsUTF8String
      Src: /src/libxml2/python/libxml.c:342,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:344,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:345,1
    - Dst: PyBytes_Size
      Src: /src/libxml2/python/libxml.c:348,1
    - Dst: PyBytes_AsString
      Src: /src/libxml2/python/libxml.c:349,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:353,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:354,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:358,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:359,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:362,1
    - Dst: memcpy
      Src: /src/libxml2/python/libxml.c:367,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:368,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:371,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 375
    functionName: xmlPythonFileRead
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyUnicode_Check
    - PyUnicode_AsUTF8String
    - PyBytes_AsString
    - PyBytes_Size
    - PyBytes_Check
    - Py_DECREF
    - PyUnicode_AsUTF8AndSize
    - printf
    - memcpy
    - PyObject_CallMethod
    linkageType: ''
    returnType: int
    signature: int xmlPythonFileRead (void * context, char * buffer, int len)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: PY_IMPORT_STRING_SIZE
      Src: /src/libxml2/python/libxml.c:397,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:399,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:400,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:402,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:403,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:406,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:408,1
    - Dst: PyLong_Check
      Src: /src/libxml2/python/libxml.c:410,1
    - Dst: PyLong_AsLong
      Src: /src/libxml2/python/libxml.c:411,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:412,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:415,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:417,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:418,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 421
    functionName: xmlPythonFileWrite
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_DECREF
    - PY_IMPORT_STRING_SIZE
    - PyLong_Check
    - PyLong_AsLong
    - PyObject_HasAttrString
    - printf
    - PyObject_CallMethod
    linkageType: ''
    returnType: int
    signature: int xmlPythonFileWrite (void * context, const char * buffer, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:436,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:437,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:438,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:439,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 445
    functionName: xmlPythonFileClose
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_HasAttrString
    - PyObject_CallMethod
    - Py_DECREF
    linkageType: ''
    returnType: int
    signature: int xmlPythonFileClose (void * context)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/python/libxml.c:465,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - encoder
    argTypes:
    - PyObject*
    - xmlCharEncodingHandlerPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 458
    functionDepth: 4
    functionLinenumber: 458
    functionLinenumberEnd: 469
    functionName: xmlOutputBufferCreatePythonFile
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferCreateIO
    linkageType: ''
    returnType: xmlOutputBufferPtr
    signature: "xmlOutputBufferPtr xmlOutputBufferCreatePythonFile(PyObject *file,
      \n\t                        xmlCharEncodingHandlerPtr encoder)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:480,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/python/libxml.c:484,1
    - Dst: xmlOutputBufferCreatePythonFile
      Src: /src/libxml2/python/libxml.c:486,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:488,1
    - Dst: libxml_xmlOutputBufferPtrWrap
      Src: /src/libxml2/python/libxml.c:489,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 471
    functionDepth: 5
    functionLinenumber: 471
    functionLinenumberEnd: 491
    functionName: libxml_xmlCreateOutputBuffer
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_xmlOutputBufferPtrWrap
    - xmlOutputBufferCreatePythonFile
    - xmlFindCharEncodingHandler
    - PyArg_ParseTuple
    - printf
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCreateOutputBuffer(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:508,1
    - Dst: PyoutputBuffer_Get
      Src: /src/libxml2/python/libxml.c:512,1
    - Dst: fprintf
      Src: /src/libxml2/python/libxml.c:514,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:516,1
    - Dst: fprintf
      Src: /src/libxml2/python/libxml.c:521,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:523,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:528,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 534
    functionName: libxml_outputBufferGetPythonFile
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - fprintf
    - PyoutputBuffer_Get
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_outputBufferGetPythonFile(ATTRIBUTE_UNUSED PyObject
      *self,\n                                    PyObject *args)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:543,1
    - Dst: PyoutputBuffer_Get
      Src: /src/libxml2/python/libxml.c:545,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:548,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:552,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:553,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 536
    functionDepth: 2
    functionLinenumber: 536
    functionLinenumberEnd: 555
    functionName: libxml_xmlOutputBufferClose
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_INCREF
    - libxml_intWrap
    - PyoutputBuffer_Get
    - PyArg_ParseTuple
    - xmlOutputBufferClose
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlOutputBufferClose(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:564,1
    - Dst: PyoutputBuffer_Get
      Src: /src/libxml2/python/libxml.c:566,1
    - Dst: xmlOutputBufferFlush
      Src: /src/libxml2/python/libxml.c:568,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 557
    functionDepth: 3
    functionLinenumber: 557
    functionLinenumberEnd: 571
    functionName: libxml_xmlOutputBufferFlush
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlOutputBufferFlush
    - PyArg_ParseTuple
    - libxml_intWrap
    - PyoutputBuffer_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlOutputBufferFlush(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:583,1
    - Dst: PyoutputBuffer_Get
      Src: /src/libxml2/python/libxml.c:585,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:586,1
    - Dst: xmlSaveFileTo
      Src: /src/libxml2/python/libxml.c:588,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 573
    functionDepth: 2
    functionLinenumber: 573
    functionLinenumberEnd: 594
    functionName: libxml_xmlSaveFileTo
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlSaveFileTo
    - libxml_intWrap
    - PyoutputBuffer_Get
    - PyArg_ParseTuple
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSaveFileTo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:607,1
    - Dst: PyoutputBuffer_Get
      Src: /src/libxml2/python/libxml.c:609,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:610,1
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/python/libxml.c:612,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:616,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 596
    functionDepth: 10
    functionLinenumber: 596
    functionLinenumberEnd: 618
    functionName: libxml_xmlSaveFormatFileTo
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_intWrap
    - xmlSaveFormatFileTo
    - PyoutputBuffer_Get
    - PyArg_ParseTuple
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSaveFormatFileTo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/libxml2/python/libxml.c:639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - encoding
    argTypes:
    - PyObject*
    - xmlCharEncoding
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 632
    functionDepth: 5
    functionLinenumber: 632
    functionLinenumberEnd: 643
    functionName: xmlParserInputBufferCreatePythonFile
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlParserInputBufferCreateIO
    linkageType: ''
    returnType: xmlParserInputBufferPtr
    signature: "xmlParserInputBufferPtr xmlParserInputBufferCreatePythonFile(PyObject
      *file, \n\t                        xmlCharEncoding encoding)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:654,1
    - Dst: xmlParseCharEncoding
      Src: /src/libxml2/python/libxml.c:658,1
    - Dst: xmlParserInputBufferCreatePythonFile
      Src: /src/libxml2/python/libxml.c:660,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:662,1
    - Dst: libxml_xmlParserInputBufferPtrWrap
      Src: /src/libxml2/python/libxml.c:663,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 645
    functionDepth: 6
    functionLinenumber: 645
    functionLinenumberEnd: 665
    functionName: libxml_xmlCreateInputBuffer
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlParseCharEncoding
    - PyArg_ParseTuple
    - printf
    - xmlParserInputBufferCreatePythonFile
    - libxml_xmlParserInputBufferPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCreateInputBuffer(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: libxml_xmlParserCtxtPtrWrap
      Src: /src/libxml2/python/libxml.c:684,1
    - Dst: PyObject_CallFunction
      Src: /src/libxml2/python/libxml.c:686,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:688,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:691,1
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/libxml2/python/libxml.c:694,1
    - Dst: xmlNewIOInputStream
      Src: /src/libxml2/python/libxml.c:698,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:704,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:709,1
    - Dst: xmlStrdup
      Src: /src/libxml2/python/libxml.c:711,1
    - Dst: defaultExternalEntityLoader
      Src: /src/libxml2/python/libxml.c:716,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - URL
    - ID
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 676
    functionDepth: 9
    functionLinenumber: 676
    functionLinenumberEnd: 719
    functionName: pythonExternalEntityLoader
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - Py_XDECREF
    - Py_DECREF
    - defaultExternalEntityLoader
    - xmlParserInputBufferCreateIO
    - PyObject_HasAttrString
    - xmlNewIOInputStream
    - printf
    - PyObject_CallFunction
    - libxml_xmlParserCtxtPtrWrap
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr pythonExternalEntityLoader(const char *URL, const
      char *ID,\n\t\t\t   xmlParserCtxtPtr ctxt)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:726,1
    - Dst: PyCallable_Check
      Src: /src/libxml2/python/libxml.c:730,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:731,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxml2/python/libxml.c:736,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:738,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:740,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/libxml2/python/libxml.c:741,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:743,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 721
    functionDepth: 1
    functionLinenumber: 721
    functionLinenumberEnd: 745
    functionName: libxml_xmlSetEntityLoader
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - Py_XDECREF
    - PyErr_SetString
    - xmlSetExternalEntityLoader
    - PyLong_FromLong
    - PyArg_ParseTuple
    - PyCallable_Check
    - xmlGetExternalEntityLoader
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSetEntityLoader(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - URI
    argTypes:
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 761
    functionName: pythonInputMatchCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int pythonInputMatchCallback(ATTRIBUTE_UNUSED const char *URI)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_CallFunction
      Src: /src/libxml2/python/libxml.c:768,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:771,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 775
    functionName: pythonInputOpenCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_CallFunction
    - Py_DECREF
    linkageType: ''
    returnType: void
    signature: 'void *

      pythonInputOpenCallback(const char *URI)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:782,1
    - Dst: PyCallable_Check
      Src: /src/libxml2/python/libxml.c:786,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:787,1
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/python/libxml.c:796,1
    - Dst: PyErr_NoMemory
      Src: /src/libxml2/python/libxml.c:800,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:802,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:805,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 777
    functionDepth: 5
    functionLinenumber: 777
    functionLinenumberEnd: 807
    functionName: libxml_xmlRegisterInputCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyErr_NoMemory
    - Py_INCREF
    - PyErr_SetString
    - PyArg_ParseTuple
    - PyCallable_Check
    - xmlRegisterInputCallbacks
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlRegisterInputCallback(ATTRIBUTE_UNUSED PyObject
      *self,\n                                PyObject *args)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlPopInputCallbacks
      Src: /src/libxml2/python/libxml.c:814,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:820,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:823,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:828,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:832,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - ATTRIBUTE_UNUSED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 809
    functionDepth: 5
    functionLinenumber: 809
    functionLinenumberEnd: 834
    functionName: libxml_xmlUnregisterInputCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyErr_SetString
    - Py_INCREF
    - xmlPopInputCallbacks
    - Py_DECREF
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlUnregisterInputCallback(ATTRIBUTE_UNUSED PyObject
      *self,\n                                ATTRIBUTE_UNUSED PyObject *args)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:855,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:857,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:865,1
    - Dst: PyDict_New
      Src: /src/libxml2/python/libxml.c:868,1
    - Dst: PyDict_New
      Src: /src/libxml2/python/libxml.c:870,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/libxml.c:872,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/libxml.c:875,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:877,1
    - Dst: PyDict_SetItem
      Src: /src/libxml2/python/libxml.c:880,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:881,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:882,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:887,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:890,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:892,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:893,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:894,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:895,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 3
    argNames:
    - user_data
    - name
    - attrs
    argTypes:
    - void*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 842
    functionDepth: 0
    functionLinenumber: 842
    functionLinenumberEnd: 897
    functionName: pythonStartElement
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyDict_SetItem
    - Py_XDECREF
    - PyDict_New
    - Py_DECREF
    - PY_IMPORT_STRING
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonStartElement(void *user_data, const xmlChar * name,\n                   const
      xmlChar ** attrs)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:906,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:907,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:908,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:909,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:910,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - user_data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 912
    functionName: pythonStartDocument
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonStartDocument(void *user_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:921,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:922,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:923,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:924,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:925,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:930,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - user_data
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 914
    functionDepth: 0
    functionLinenumber: 914
    functionLinenumberEnd: 931
    functionName: pythonEndDocument
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonEndDocument(void *user_data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:940,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:941,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:943,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:944,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:945,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:946,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:947,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:949,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:950,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:951,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - user_data
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 933
    functionDepth: 0
    functionLinenumber: 933
    functionLinenumberEnd: 953
    functionName: pythonEndElement
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonEndElement(void *user_data, const xmlChar * name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:962,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:963,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:965,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:966,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:967,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - user_data
    - name
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 969
    functionName: pythonReference
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonReference(void *user_data, const xmlChar * name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:979,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:981,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:985,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:988,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:990,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:991,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:992,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - user_data
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 971
    functionDepth: 0
    functionLinenumber: 971
    functionLinenumberEnd: 994
    functionName: pythonCharacters
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonCharacters(void *user_data, const xmlChar * ch, int len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1004,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1006,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1010,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1013,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1015,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - user_data
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 996
    functionDepth: 0
    functionLinenumber: 996
    functionLinenumberEnd: 1017
    functionName: pythonIgnorableWhitespace
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_HasAttrString
    - Py_XDECREF
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonIgnorableWhitespace(void *user_data, const xmlChar * ch,
      int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1027,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1028,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - user_data
    - target
    - data
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1032
    functionName: pythonProcessingInstruction
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_HasAttrString
    - Py_XDECREF
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonProcessingInstruction(void *user_data,\n                            const
      xmlChar * target, const xmlChar * data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1041,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1042,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1043,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1044,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - user_data
    - value
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1034
    functionDepth: 0
    functionLinenumber: 1034
    functionLinenumberEnd: 1047
    functionName: pythonComment
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonComment(void *user_data, const xmlChar * value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1058,1
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1059,1
    - Dst: vsnprintf
      Src: /src/libxml2/python/libxml.c:1060,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1061,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1062,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1063,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1064,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1065,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - user_data
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1049
    functionDepth: 0
    functionLinenumber: 1049
    functionLinenumberEnd: 1067
    functionName: pythonWarning
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - va_end
    - PyErr_Occurred
    - vsnprintf
    - PyObject_HasAttrString
    - va_start
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonWarning(void *user_data, const char *msg, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1078,1
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1079,1
    - Dst: vsnprintf
      Src: /src/libxml2/python/libxml.c:1080,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1081,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1082,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1083,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1084,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1085,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - user_data
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1069
    functionDepth: 0
    functionLinenumber: 1069
    functionLinenumberEnd: 1087
    functionName: pythonError
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - va_end
    - PyErr_Occurred
    - vsnprintf
    - PyObject_HasAttrString
    - va_start
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonError(void *user_data, const char *msg, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1098,1
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1099,1
    - Dst: vsnprintf
      Src: /src/libxml2/python/libxml.c:1100,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1101,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1102,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1103,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1104,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - user_data
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1089
    functionDepth: 0
    functionLinenumber: 1089
    functionLinenumberEnd: 1107
    functionName: pythonFatalError
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - va_end
    - PyErr_Occurred
    - vsnprintf
    - PyObject_HasAttrString
    - va_start
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonFatalError(void *user_data, const char *msg, ...)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1117,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1119,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1123,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1125,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1126,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1127,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1128,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - user_data
    - ch
    - len
    argTypes:
    - void*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1109
    functionDepth: 0
    functionLinenumber: 1109
    functionLinenumberEnd: 1130
    functionName: pythonCdataBlock
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: void pythonCdataBlock(void *user_data, const xmlChar * ch, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1141,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1142,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - user_data
    - name
    - externalID
    - systemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1146
      start: 1132
    functionDepth: 0
    functionLinenumber: 1132
    functionLinenumberEnd: 1146
    functionName: pythonExternalSubset
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyObject_HasAttrString
    - Py_XDECREF
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonExternalSubset(void *user_data,\n                     const
      xmlChar * name,\n                     const xmlChar * externalID, const xmlChar
      * systemID)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1159,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1160,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1163,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1164,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1165,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - user_data
    - name
    - type
    - publicId
    - systemId
    - content
    argTypes:
    - void*
    - xmlChar*
    - int
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1148
    functionDepth: 0
    functionLinenumber: 1148
    functionLinenumberEnd: 1167
    functionName: pythonEntityDecl
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonEntityDecl(void *user_data,\n                 const xmlChar
      * name,\n                 int type,\n                 const xmlChar * publicId,\n
      \                const xmlChar * systemId, xmlChar * content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1181,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1182,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1185,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1186,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - user_data
    - name
    - publicId
    - systemId
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1171
    functionDepth: 0
    functionLinenumber: 1171
    functionLinenumberEnd: 1189
    functionName: pythonNotationDecl
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonNotationDecl(void *user_data,\n                   const
      xmlChar * name,\n                   const xmlChar * publicId, const xmlChar
      * systemId)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1208,1
    - Dst: PyList_New
      Src: /src/libxml2/python/libxml.c:1213,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/libxml.c:1216,1
    - Dst: PyList_SetItem
      Src: /src/libxml2/python/libxml.c:1217,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:1218,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1221,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1224,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1225,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1226,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1227,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 7
    argNames:
    - user_data
    - elem
    - name
    - type
    - def
    - defaultValue
    - tree
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - int
    - int
    - xmlChar*
    - xmlEnumerationPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1191
    functionDepth: 0
    functionLinenumber: 1191
    functionLinenumberEnd: 1230
    functionName: pythonAttributeDecl
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyList_SetItem
    - Py_XDECREF
    - Py_DECREF
    - PyList_New
    - PY_IMPORT_STRING
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonAttributeDecl(void *user_data,\n                    const
      xmlChar * elem,\n                    const xmlChar * name,\n                    int
      type,\n                    int def,\n                    const xmlChar * defaultValue,
      xmlEnumerationPtr tree)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1242,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:1244,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1248,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1250,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1251,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - user_data
    - name
    - type
    - xmlElementContentPtr
    argTypes:
    - void*
    - xmlChar*
    - int
    - ATTRIBUTE_UNUSED
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1232
    functionDepth: 0
    functionLinenumber: 1232
    functionLinenumberEnd: 1254
    functionName: pythonElementDecl
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - printf
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonElementDecl(void *user_data,\n                  const xmlChar
      * name,\n                  int type, ATTRIBUTE_UNUSED xmlElementContentPtr content)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1267,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1268,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1270,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1271,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - user_data
    - name
    - publicId
    - systemId
    - notationName
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1256
    functionDepth: 0
    functionLinenumber: 1256
    functionLinenumberEnd: 1274
    functionName: pythonUnparsedEntityDecl
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonUnparsedEntityDecl(void *user_data,\n                         const
      xmlChar * name,\n                         const xmlChar * publicId,\n                         const
      xmlChar * systemId,\n                         const xmlChar * notationName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/libxml.c:1284,1
    - Dst: PyObject_CallMethod
      Src: /src/libxml2/python/libxml.c:1285,1
    - Dst: PyErr_Occurred
      Src: /src/libxml2/python/libxml.c:1287,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1288,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - user_data
    - name
    - ExternalID
    - SystemID
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1276
    functionDepth: 0
    functionLinenumber: 1276
    functionLinenumberEnd: 1291
    functionName: pythonInternalSubset
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - PyErr_Occurred
    - PyObject_HasAttrString
    - PyErr_Print
    - PyObject_CallMethod
    linkageType: ''
    returnType: void
    signature: "void pythonInternalSubset(void *user_data, const xmlChar * name,\n
      \                    const xmlChar * ExternalID, const xmlChar * SystemID)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1347,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1354,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/python/libxml.c:1357,1
    - Dst: libxml_xmlParserCtxtPtrWrap
      Src: /src/libxml2/python/libxml.c:1358,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1360
      start: 1335
    functionDepth: 4
    functionLinenumber: 1335
    functionLinenumberEnd: 1360
    functionName: libxml_xmlCreatePushParser
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - Py_INCREF
    - xmlCreatePushParserCtxt
    - libxml_xmlParserCtxtPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlCreatePushParser(ATTRIBUTE_UNUSED PyObject *
      self,\n                           PyObject * args)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1375,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1382,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/python/libxml.c:1385,1
    - Dst: libxml_xmlParserCtxtPtrWrap
      Src: /src/libxml2/python/libxml.c:1387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1389
      start: 1363
    functionDepth: 10
    functionLinenumber: 1363
    functionLinenumberEnd: 1389
    functionName: libxml_htmlCreatePushParser
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - htmlCreatePushParserCtxt
    - Py_INCREF
    - libxml_xmlParserCtxtPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_htmlCreatePushParser(ATTRIBUTE_UNUSED PyObject
      * self,\n                            PyObject * args)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1403,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1408,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1412,1
    - Dst: xmlNewSAXParserCtxt
      Src: /src/libxml2/python/libxml.c:1414,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/python/libxml.c:1415,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/python/libxml.c:1416,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1419
      start: 1394
    functionDepth: 14
    functionLinenumber: 1394
    functionLinenumberEnd: 1419
    functionName: libxml_xmlSAXParseFile
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_INCREF
    - xmlNewSAXParserCtxt
    - xmlCtxtReadFile
    - PyArg_ParseTuple
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSAXParseFile(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1432,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1438,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1442,1
    - Dst: htmlNewSAXParserCtxt
      Src: /src/libxml2/python/libxml.c:1444,1
    - Dst: htmlCtxtReadFile
      Src: /src/libxml2/python/libxml.c:1445,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/python/libxml.c:1446,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1447,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1423
    functionDepth: 17
    functionLinenumber: 1423
    functionLinenumberEnd: 1449
    functionName: libxml_htmlSAXParseFile
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - htmlFreeParserCtxt
    - Py_INCREF
    - htmlNewSAXParserCtxt
    - htmlCtxtReadFile
    - PyArg_ParseTuple
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_htmlSAXParseFile(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:1473,1
    - Dst: vsnprintf
      Src: /src/libxml2/python/libxml.c:1477,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - ap
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1467
    functionDepth: 0
    functionLinenumber: 1467
    functionLinenumberEnd: 1480
    functionName: libxml_buildMessage
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - vsnprintf
    linkageType: ''
    returnType: char
    signature: 'char *

      libxml_buildMessage(const char *msg, va_list ap)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1493,1
    - Dst: vfprintf
      Src: /src/libxml2/python/libxml.c:1494,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1495,1
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1497,1
    - Dst: vsnprintf
      Src: /src/libxml2/python/libxml.c:1498,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1499,1
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1501,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1502,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1503,1
    - Dst: libxml_charPtrConstWrap
      Src: /src/libxml2/python/libxml.c:1504,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1505,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:1506,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1507,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - ATTRIBUTE_UNUSED*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1510
      start: 1482
    functionDepth: 0
    functionLinenumber: 1482
    functionLinenumberEnd: 1510
    functionName: libxml_xmlErrorFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - va_end
    - vsnprintf
    - libxml_charPtrConstWrap
    - va_start
    - PyObject_CallObject
    - vfprintf
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: "void libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const
      char *msg,\n                           ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/python/libxml.c:1515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1512
    functionDepth: 1
    functionLinenumber: 1512
    functionLinenumberEnd: 1519
    functionName: libxml_xmlErrorInitialize
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlSetGenericErrorFunc
    linkageType: ''
    returnType: void
    signature: void libxml_xmlErrorInitialize(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1529,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1535,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1538,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1541,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1542,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1548,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1521
    functionDepth: 0
    functionLinenumber: 1521
    functionLinenumberEnd: 1550
    functionName: libxml_xmlRegisterErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyArg_ParseTuple
    - libxml_intWrap
    - Py_XDECREF
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlRegisterErrorHandler(ATTRIBUTE_UNUSED PyObject
      * self,\n                               PyObject * args)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1591,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1592,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1593,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1594,1
    - Dst: libxml_constcharPtrWrap
      Src: /src/libxml2/python/libxml.c:1594,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1595,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1595,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1596,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1597,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:1598,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1602,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1604,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1605,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - ctx
    - error
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1566
    functionDepth: 0
    functionLinenumber: 1566
    functionLinenumberEnd: 1606
    functionName: libxml_xmlParserCtxtErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - Py_INCREF
    - libxml_intWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    - libxml_constcharPtrWrap
    linkageType: ''
    returnType: void
    signature: void libxml_xmlParserCtxtErrorHandler(void *ctx, const xmlError *error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1618,1
    - Dst: PyparserCtxt_Get
      Src: /src/libxml2/python/libxml.c:1621,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:1623,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1625,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:1628,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1635,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1636,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1638,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1639,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/python/libxml.c:1643,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/python/libxml.c:1646,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1649,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1608
    functionDepth: 1
    functionLinenumber: 1608
    functionLinenumberEnd: 1651
    functionName: libxml_xmlParserCtxtSetErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - Py_XDECREF
    - xmlCtxtSetErrorHandler
    - libxml_intWrap
    - PyparserCtxt_Get
    - xmlMalloc
    - PyArg_ParseTuple
    - memset
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserCtxtSetErrorHandler(ATTRIBUTE_UNUSED PyObject *self, PyObject
      *args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1661,1
    - Dst: PyparserCtxt_Get
      Src: /src/libxml2/python/libxml.c:1664,1
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1665,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1669,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1670,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1671,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1672,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1676,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1677,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1678,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1679,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1653
    functionDepth: 0
    functionLinenumber: 1653
    functionLinenumberEnd: 1682
    functionName: libxml_xmlParserCtxtGetErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - PyparserCtxt_Get
    - PyArg_ParseTuple
    - PyTuple_SetItem
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserCtxtGetErrorHandler(ATTRIBUTE_UNUSED PyObject *self, PyObject
      *args)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1690,1
    - Dst: PyparserCtxt_Get
      Src: /src/libxml2/python/libxml.c:1692,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1697,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1698,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:1699,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/python/libxml.c:1701,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1704,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1706
      start: 1684
    functionDepth: 4
    functionLinenumber: 1684
    functionLinenumberEnd: 1706
    functionName: libxml_xmlFreeParserCtxt
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - xmlFree
    - Py_INCREF
    - PyparserCtxt_Get
    - PyArg_ParseTuple
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlFreeParserCtxt(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1730,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1731,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:1731,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1732,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1733,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:1734,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1738,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1740,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1741,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - severity
    - str
    argTypes:
    - void*
    - ATTRIBUTE_UNUSED
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1721
    functionDepth: 0
    functionLinenumber: 1721
    functionLinenumberEnd: 1742
    functionName: libxml_xmlValidCtxtGenericErrorFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlValidCtxtGenericErrorFuncHandler(void *ctx, ATTRIBUTE_UNUSED
      int severity, char *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1753,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1754,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:1754,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1755,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1756,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:1757,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1761,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1763,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1764,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - severity
    - str
    argTypes:
    - void*
    - ATTRIBUTE_UNUSED
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1765
      start: 1744
    functionDepth: 0
    functionLinenumber: 1744
    functionLinenumberEnd: 1765
    functionName: libxml_xmlValidCtxtGenericWarningFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlValidCtxtGenericWarningFuncHandler(void *ctx, ATTRIBUTE_UNUSED
      int severity, char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1772,1
    - Dst: libxml_xmlValidCtxtGenericErrorFuncHandler
      Src: /src/libxml2/python/libxml.c:1773,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:1773,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1775
      start: 1767
    functionDepth: 1
    functionLinenumber: 1767
    functionLinenumberEnd: 1775
    functionName: libxml_xmlValidCtxtErrorFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_xmlValidCtxtGenericErrorFuncHandler
    - libxml_buildMessage
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void libxml_xmlValidCtxtErrorFuncHandler(void *ctx, const char *msg,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:1782,1
    - Dst: libxml_xmlValidCtxtGenericWarningFuncHandler
      Src: /src/libxml2/python/libxml.c:1783,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:1783,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:1784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1777
    functionDepth: 1
    functionLinenumber: 1777
    functionLinenumberEnd: 1785
    functionName: libxml_xmlValidCtxtWarningFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_buildMessage
    - libxml_xmlValidCtxtGenericWarningFuncHandler
    - va_start
    - va_end
    linkageType: ''
    returnType: void
    signature: void libxml_xmlValidCtxtWarningFuncHandler(void *ctx, const char *msg,
      ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1798,1
    - Dst: PyValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:1802,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:1803,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1805,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:1808,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1812,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1813,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1816,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1817,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1820,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1821,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1828,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1830
      start: 1787
    functionDepth: 1
    functionLinenumber: 1787
    functionLinenumberEnd: 1830
    functionName: libxml_xmlSetValidErrors
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - Py_XDECREF
    - PyValidCtxt_Get
    - libxml_intWrap
    - xmlMalloc
    - PyArg_ParseTuple
    - memset
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSetValidErrors(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1839,1
    - Dst: PyValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:1841,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1846,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1847,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1848,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:1849,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/python/libxml.c:1852,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:1853,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1855
      start: 1833
    functionDepth: 1
    functionLinenumber: 1833
    functionLinenumberEnd: 1855
    functionName: libxml_xmlFreeValidCtxt
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - xmlFree
    - Py_INCREF
    - PyValidCtxt_Get
    - xmlFreeValidCtxt
    - PyArg_ParseTuple
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlFreeValidCtxt(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1882,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1883,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1884,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1885,1
    - Dst: libxml_charPtrConstWrap
      Src: /src/libxml2/python/libxml.c:1885,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1886,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1886,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1887,1
    - Dst: libxml_xmlTextReaderLocatorPtrWrap
      Src: /src/libxml2/python/libxml.c:1887,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:1888,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:1892,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1894,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1895,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - arg
    - msg
    - severity
    - locator
    argTypes:
    - void*
    - char*
    - xmlParserSeverities
    - xmlTextReaderLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1896
      start: 1872
    functionDepth: 1
    functionLinenumber: 1872
    functionLinenumberEnd: 1896
    functionName: libxml_xmlTextReaderErrorCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_intWrap
    - libxml_charPtrConstWrap
    - PyObject_CallObject
    - PyErr_Print
    - libxml_xmlTextReaderLocatorPtrWrap
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: "void libxml_xmlTextReaderErrorCallback(void *arg, \n\t\t\t\t  const
      char *msg,\n\t\t\t\t  xmlParserSeverities severity,\n\t\t\t\t  xmlTextReaderLocatorPtr
      locator)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1910,1
    - Dst: PyxmlTextReader_Get
      Src: /src/libxml2/python/libxml.c:1912,1
    - Dst: xmlTextReaderGetErrorHandler
      Src: /src/libxml2/python/libxml.c:1914,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1919,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:1920,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:1921,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1929,1
    - Dst: xmlTextReaderSetErrorHandler
      Src: /src/libxml2/python/libxml.c:1933,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:1937,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1939,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1942,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1944,1
    - Dst: xmlTextReaderSetErrorHandler
      Src: /src/libxml2/python/libxml.c:1946,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:1951,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1898
    functionDepth: 2
    functionLinenumber: 1898
    functionLinenumberEnd: 1953
    functionName: libxml_xmlTextReaderSetErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - Py_XDECREF
    - xmlFree
    - xmlTextReaderSetErrorHandler
    - libxml_intWrap
    - PyxmlTextReader_Get
    - PyArg_ParseTuple
    - xmlMalloc
    - xmlTextReaderGetErrorHandler
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlTextReaderSetErrorHandler(ATTRIBUTE_UNUSED PyObject *self, PyObject
      *args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1965,1
    - Dst: PyxmlTextReader_Get
      Src: /src/libxml2/python/libxml.c:1967,1
    - Dst: xmlTextReaderGetErrorHandler
      Src: /src/libxml2/python/libxml.c:1968,1
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:1969,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1973,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1974,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1975,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1976,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1981,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1982,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:1983,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:1984,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1955
    functionDepth: 1
    functionLinenumber: 1955
    functionLinenumberEnd: 1987
    functionName: libxml_xmlTextReaderGetErrorHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - PyxmlTextReader_Get
    - PyArg_ParseTuple
    - PyTuple_SetItem
    - xmlTextReaderGetErrorHandler
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlTextReaderGetErrorHandler(ATTRIBUTE_UNUSED PyObject *self, PyObject
      *args)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:1997,1
    - Dst: PyCapsule_CheckExact
      Src: /src/libxml2/python/libxml.c:1999,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2000,1
    - Dst: PyxmlTextReader_Get
      Src: /src/libxml2/python/libxml.c:2003,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2005,1
    - Dst: xmlTextReaderGetErrorHandler
      Src: /src/libxml2/python/libxml.c:2009,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2014,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2015,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:2016,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/python/libxml.c:2024,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2025,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 1989
    functionDepth: 2
    functionLinenumber: 1989
    functionLinenumberEnd: 2027
    functionName: libxml_xmlFreeTextReader
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - Py_INCREF
    - xmlFree
    - xmlFreeTextReader
    - PyCapsule_CheckExact
    - PyxmlTextReader_Get
    - PyArg_ParseTuple
    - xmlTextReaderGetErrorHandler
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlFreeTextReader(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2061,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2062,1
    - Dst: printf
      Src: /src/libxml2/python/libxml.c:2067,1
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:2073,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2074,1
    - Dst: libxml_xmlXPathParserContextPtrWrap
      Src: /src/libxml2/python/libxml.c:2074,1
    - Dst: xmlXPathValuePop
      Src: /src/libxml2/python/libxml.c:2076,1
    - Dst: libxml_xmlXPathObjectPtrWrap
      Src: /src/libxml2/python/libxml.c:2077,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2078,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:2080,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/libxml.c:2081,1
    - Dst: libxml_xmlXPathObjectPtrConvert
      Src: /src/libxml2/python/libxml.c:2083,1
    - Dst: xmlXPathValuePush
      Src: /src/libxml2/python/libxml.c:2084,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 2037
    functionDepth: 5
    functionLinenumber: 2037
    functionLinenumberEnd: 2085
    functionName: libxml_xmlXPathFuncCallback
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyTuple_New
    - libxml_xmlXPathParserContextPtrWrap
    - xmlStrEqual
    - Py_DECREF
    - libxml_xmlXPathObjectPtrWrap
    - xmlXPathValuePop
    - printf
    - PyObject_CallObject
    - libxml_xmlXPathObjectPtrConvert
    - xmlXPathValuePush
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlXPathFuncCallback(xmlXPathParserContextPtr ctxt, int
      nargs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2101,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2102,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 3
    argNames:
    - ctxt
    - name
    - ns_uri
    argTypes:
    - void*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2107
      start: 2087
    functionDepth: 1
    functionLinenumber: 2087
    functionLinenumberEnd: 2107
    functionName: libxml_xmlXPathFuncLookupFunc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    linkageType: ''
    returnType: xmlXPathFunction
    signature: "xmlXPathFunction libxml_xmlXPathFuncLookupFunc(void *ctxt, const xmlChar
      * name,\n                              const xmlChar * ns_uri)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:2117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2127
      start: 2109
    functionDepth: 0
    functionLinenumber: 2109
    functionLinenumberEnd: 2127
    functionName: libxml_xpathCallbacksInitialize
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    linkageType: ''
    returnType: void
    signature: void libxml_xpathCallbacksInitialize(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2142,1
    - Dst: PyxmlXPathContext_Get
      Src: /src/libxml2/python/libxml.c:2147,1
    - Dst: libxml_xpathCallbacksInitialize
      Src: /src/libxml2/python/libxml.c:2149,1
    - Dst: xmlXPathRegisterFuncLookup
      Src: /src/libxml2/python/libxml.c:2150,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:2153,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2158,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2159,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2160,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2161,1
    - Dst: xmlRealloc
      Src: /src/libxml2/python/libxml.c:2169,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2174,1
    - Dst: xmlStrdup
      Src: /src/libxml2/python/libxml.c:2176,1
    - Dst: xmlStrdup
      Src: /src/libxml2/python/libxml.c:2177,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:2182,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2184
      start: 2129
    functionDepth: 2
    functionLinenumber: 2129
    functionLinenumberEnd: 2184
    functionName: libxml_xmlRegisterXPathFunction
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - xmlStrdup
    - libxml_xpathCallbacksInitialize
    - PyxmlXPathContext_Get
    - xmlStrEqual
    - Py_XDECREF
    - xmlXPathRegisterFuncLookup
    - xmlRealloc
    - libxml_intWrap
    - PyArg_ParseTuple
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlRegisterXPathFunction(ATTRIBUTE_UNUSED PyObject
      * self,\n                                PyObject * args)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2199,1
    - Dst: PyxmlXPathContext_Get
      Src: /src/libxml2/python/libxml.c:2204,1
    - Dst: libxml_xmlXPathObjectPtrConvert
      Src: /src/libxml2/python/libxml.c:2205,1
    - Dst: xmlXPathRegisterVariableNS
      Src: /src/libxml2/python/libxml.c:2207,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:2208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2210
      start: 2186
    functionDepth: 6
    functionLinenumber: 2186
    functionLinenumberEnd: 2210
    functionName: libxml_xmlXPathRegisterVariable
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyxmlXPathContext_Get
    - xmlXPathRegisterVariableNS
    - libxml_intWrap
    - PyArg_ParseTuple
    - libxml_xmlXPathObjectPtrConvert
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_xmlXPathRegisterVariable(ATTRIBUTE_UNUSED PyObject
      * self,\n                                PyObject * args)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2225,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2227,1
    - Dst: libxml_constxmlCharPtrWrap
      Src: /src/libxml2/python/libxml.c:2253,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2256
      start: 2218
    functionDepth: 0
    functionLinenumber: 2218
    functionLinenumberEnd: 2256
    functionName: libxml_name
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_constxmlCharPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_name(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2265,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2267,1
    - Dst: libxml_xmlDocPtrWrap
      Src: /src/libxml2/python/libxml.c:2287,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2289
      start: 2258
    functionDepth: 0
    functionLinenumber: 2258
    functionLinenumberEnd: 2289
    functionName: libxml_doc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlDocPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_doc(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2298,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2300,1
    - Dst: libxml_xmlAttrPtrWrap
      Src: /src/libxml2/python/libxml.c:2305,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2307
      start: 2291
    functionDepth: 0
    functionLinenumber: 2291
    functionLinenumberEnd: 2307
    functionName: libxml_properties
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - libxml_xmlAttrPtrWrap
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_properties(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2316,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2318,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2342,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2309
    functionDepth: 0
    functionLinenumber: 2309
    functionLinenumberEnd: 2344
    functionName: libxml_next
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlNodePtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_next(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2353,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2355,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2375,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2377
      start: 2346
    functionDepth: 0
    functionLinenumber: 2346
    functionLinenumberEnd: 2377
    functionName: libxml_prev
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlNodePtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_prev(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2386,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2388,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2411,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 2379
    functionDepth: 0
    functionLinenumber: 2379
    functionLinenumberEnd: 2413
    functionName: libxml_children
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlNodePtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_children(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2422,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2424,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2447,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2449
      start: 2415
    functionDepth: 0
    functionLinenumber: 2415
    functionLinenumberEnd: 2449
    functionName: libxml_last
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlNodePtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_last(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2458,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2460,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2483,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2485
      start: 2451
    functionDepth: 0
    functionLinenumber: 2451
    functionLinenumberEnd: 2485
    functionName: libxml_parent
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - libxml_xmlNodePtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_parent(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2494,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2496,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2498,1
    - Dst: libxml_constxmlCharPtrWrap
      Src: /src/libxml2/python/libxml.c:2565,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2567
      start: 2487
    functionDepth: 0
    functionLinenumber: 2487
    functionLinenumberEnd: 2567
    functionName: libxml_type
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - Py_INCREF
    - libxml_constxmlCharPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_type(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2582,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2585,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2588,1
    - Dst: libxml_xmlNsPtrWrap
      Src: /src/libxml2/python/libxml.c:2592,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2594
      start: 2574
    functionDepth: 0
    functionLinenumber: 2574
    functionLinenumberEnd: 2594
    functionName: libxml_xmlNodeGetNsDefs
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - Py_INCREF
    - libxml_xmlNsPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNodeGetNsDefs(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2606,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2609,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2613,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/python/libxml.c:2626,1
    - Dst: libxml_xmlNsPtrWrap
      Src: /src/libxml2/python/libxml.c:2641,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2596
    functionDepth: 1
    functionLinenumber: 2596
    functionLinenumberEnd: 2643
    functionName: libxml_xmlNodeRemoveNsDef
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - Py_INCREF
    - libxml_xmlNsPtrWrap
    - PyArg_ParseTuple
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNodeRemoveNsDef(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2653,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2655,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2660,1
    - Dst: libxml_xmlNsPtrWrap
      Src: /src/libxml2/python/libxml.c:2664,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2645
    functionDepth: 0
    functionLinenumber: 2645
    functionLinenumberEnd: 2666
    functionName: libxml_xmlNodeGetNs
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - Py_INCREF
    - libxml_xmlNsPtrWrap
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNodeGetNs(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2689,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2692,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2695,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2716,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/python/libxml.c:2722,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2724,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/python/libxml.c:2728,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/python/libxml.c:2730,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2731,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/python/libxml.c:2735,1
    - Dst: xmlSaveTree
      Src: /src/libxml2/python/libxml.c:2737,1
    - Dst: xmlSaveClose
      Src: /src/libxml2/python/libxml.c:2738,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/python/libxml.c:2740,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/python/libxml.c:2742,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:2743,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2675
    functionDepth: 13
    functionLinenumber: 2675
    functionLinenumberEnd: 2746
    functionName: libxml_serializeNode
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlSaveClose
    - xmlBufferDetach
    - Py_INCREF
    - xmlSaveTree
    - xmlSaveDoc
    - libxml_charPtrWrap
    - PyArg_ParseTuple
    - xmlBufferCreate
    - xmlSaveToBuffer
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_serializeNode(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2762,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:2765,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:2767,1
    - Dst: PyFile_Get
      Src: /src/libxml2/python/libxml.c:2769,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:2771,1
    - Dst: htmlGetMetaEncoding
      Src: /src/libxml2/python/libxml.c:2784,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/python/libxml.c:2788,1
    - Dst: PyFile_Release
      Src: /src/libxml2/python/libxml.c:2790,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:2791,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/python/libxml.c:2796,1
    - Dst: xmlFindCharEncodingHandler
      Src: /src/libxml2/python/libxml.c:2798,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/python/libxml.c:2801,1
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/python/libxml.c:2803,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxml2/python/libxml.c:2806,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:2807,1
    - Dst: htmlNodeDumpFormatOutput
      Src: /src/libxml2/python/libxml.c:2809,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:2810,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/python/libxml.c:2813,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:2814,1
    - Dst: PyFile_Release
      Src: /src/libxml2/python/libxml.c:2816,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:2817,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2748
    functionDepth: 13
    functionLinenumber: 2748
    functionLinenumberEnd: 2818
    functionName: libxml_saveNodeTo
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - htmlDocContentDumpFormatOutput
    - htmlGetMetaEncoding
    - PyFile_Release
    - xmlSaveFormatFileTo
    - htmlNodeDumpFormatOutput
    - xmlFindCharEncodingHandler
    - PyLong_FromLong
    - PyArg_ParseTuple
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlNodeDumpOutput
    - PyxmlNode_Get
    - PyFile_Get
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_saveNodeTo(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2833,1
    - Dst: xmlNewNode
      Src: /src/libxml2/python/libxml.c:2835,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2838,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/libxml.c:2841,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2843
      start: 2826
    functionDepth: 2
    functionLinenumber: 2826
    functionLinenumberEnd: 2843
    functionName: libxml_xmlNewNode
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - xmlNewNode
    - libxml_xmlNodePtrWrap
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNewNode(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2860,1
    - Dst: PyparserCtxt_Get
      Src: /src/libxml2/python/libxml.c:2863,1
    - Dst: xmlCtxtGetCatalogs
      Src: /src/libxml2/python/libxml.c:2866,1
    - Dst: xmlCtxtSetCatalogs
      Src: /src/libxml2/python/libxml.c:2867,1
    - Dst: xmlCatalogAddLocal
      Src: /src/libxml2/python/libxml.c:2867,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:2870,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2872
      start: 2853
    functionDepth: 5
    functionLinenumber: 2853
    functionLinenumberEnd: 2872
    functionName: libxml_addLocalCatalog
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_INCREF
    - xmlCtxtGetCatalogs
    - xmlCatalogAddLocal
    - PyparserCtxt_Get
    - xmlCtxtSetCatalogs
    - PyArg_ParseTuple
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_addLocalCatalog(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:2899,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2900,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:2900,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2901,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2902,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:2903,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:2907,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2909,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2910,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2911
      start: 2890
    functionDepth: 0
    functionLinenumber: 2890
    functionLinenumberEnd: 2911
    functionName: libxml_xmlRelaxNGValidityGenericErrorFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlRelaxNGValidityGenericErrorFuncHandler(void *ctx, char
      *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:2922,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2923,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:2923,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:2924,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2925,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:2926,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:2930,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2932,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2934
      start: 2913
    functionDepth: 0
    functionLinenumber: 2913
    functionLinenumberEnd: 2934
    functionName: libxml_xmlRelaxNGValidityGenericWarningFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlRelaxNGValidityGenericWarningFuncHandler(void *ctx,
      char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:2941,1
    - Dst: libxml_xmlRelaxNGValidityGenericErrorFuncHandler
      Src: /src/libxml2/python/libxml.c:2942,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:2942,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:2943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2944
      start: 2936
    functionDepth: 1
    functionLinenumber: 2936
    functionLinenumberEnd: 2944
    functionName: libxml_xmlRelaxNGValidityErrorFunc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_xmlRelaxNGValidityGenericErrorFuncHandler
    - va_end
    - libxml_buildMessage
    - va_start
    linkageType: ''
    returnType: void
    signature: void libxml_xmlRelaxNGValidityErrorFunc(void *ctx, const char *msg,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:2951,1
    - Dst: libxml_xmlRelaxNGValidityGenericWarningFuncHandler
      Src: /src/libxml2/python/libxml.c:2952,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:2952,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:2953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2954
      start: 2946
    functionDepth: 1
    functionLinenumber: 2946
    functionLinenumberEnd: 2954
    functionName: libxml_xmlRelaxNGValidityWarningFunc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - va_end
    - libxml_buildMessage
    - va_start
    - libxml_xmlRelaxNGValidityGenericWarningFuncHandler
    linkageType: ''
    returnType: void
    signature: void libxml_xmlRelaxNGValidityWarningFunc(void *ctx, const char *msg,
      ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:2967,1
    - Dst: PyrelaxNgValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:2971,1
    - Dst: xmlRelaxNGGetValidErrors
      Src: /src/libxml2/python/libxml.c:2972,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:2974,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:2981,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:2983,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:2986,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2990,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2991,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2994,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2995,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:2998,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:2999,1
    - Dst: xmlRelaxNGSetValidErrors
      Src: /src/libxml2/python/libxml.c:3002,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:3004,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 2956
    functionDepth: 1
    functionLinenumber: 2956
    functionLinenumberEnd: 3006
    functionName: libxml_xmlRelaxNGSetValidErrors
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - Py_XDECREF
    - libxml_intWrap
    - xmlMalloc
    - PyArg_ParseTuple
    - PyrelaxNgValidCtxt_Get
    - xmlRelaxNGSetValidErrors
    - xmlRelaxNGGetValidErrors
    - memset
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRelaxNGSetValidErrors(ATTRIBUTE_UNUSED PyObject * self, PyObject *
      args)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3014,1
    - Dst: PyrelaxNgValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:3016,1
    - Dst: xmlRelaxNGGetValidErrors
      Src: /src/libxml2/python/libxml.c:3018,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3022,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3023,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3024,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3025,1
    - Dst: xmlRelaxNGFreeValidCtxt
      Src: /src/libxml2/python/libxml.c:3029,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:3030,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3008
    functionDepth: 6
    functionLinenumber: 3008
    functionLinenumberEnd: 3032
    functionName: libxml_xmlRelaxNGFreeValidCtxt
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XDECREF
    - xmlFree
    - Py_INCREF
    - xmlRelaxNGFreeValidCtxt
    - PyArg_ParseTuple
    - PyrelaxNgValidCtxt_Get
    - xmlRelaxNGGetValidErrors
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRelaxNGFreeValidCtxt(ATTRIBUTE_UNUSED PyObject *self, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:3053,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:3054,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:3054,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:3055,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:3056,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:3057,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:3061,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3063,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3064,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3065
      start: 3044
    functionDepth: 0
    functionLinenumber: 3044
    functionLinenumberEnd: 3065
    functionName: libxml_xmlSchemaValidityGenericErrorFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlSchemaValidityGenericErrorFuncHandler(void *ctx, char
      *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_New
      Src: /src/libxml2/python/libxml.c:3076,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:3077,1
    - Dst: libxml_charPtrWrap
      Src: /src/libxml2/python/libxml.c:3077,1
    - Dst: PyTuple_SetItem
      Src: /src/libxml2/python/libxml.c:3078,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:3079,1
    - Dst: PyObject_CallObject
      Src: /src/libxml2/python/libxml.c:3080,1
    - Dst: PyErr_Print
      Src: /src/libxml2/python/libxml.c:3084,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3086,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3087,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3088
      start: 3067
    functionDepth: 0
    functionLinenumber: 3067
    functionLinenumberEnd: 3088
    functionName: libxml_xmlSchemaValidityGenericWarningFuncHandler
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - PyTuple_New
    - Py_XDECREF
    - libxml_charPtrWrap
    - PyObject_CallObject
    - PyErr_Print
    - PyTuple_SetItem
    linkageType: ''
    returnType: void
    signature: void libxml_xmlSchemaValidityGenericWarningFuncHandler(void *ctx, char
      *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:3095,1
    - Dst: libxml_xmlSchemaValidityGenericErrorFuncHandler
      Src: /src/libxml2/python/libxml.c:3096,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:3096,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:3097,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3090
    functionDepth: 1
    functionLinenumber: 3090
    functionLinenumberEnd: 3098
    functionName: libxml_xmlSchemaValidityErrorFunc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - va_end
    - libxml_xmlSchemaValidityGenericErrorFuncHandler
    - libxml_buildMessage
    - va_start
    linkageType: ''
    returnType: void
    signature: void libxml_xmlSchemaValidityErrorFunc(void *ctx, const char *msg,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/libxml2/python/libxml.c:3105,1
    - Dst: libxml_xmlSchemaValidityGenericWarningFuncHandler
      Src: /src/libxml2/python/libxml.c:3106,1
    - Dst: libxml_buildMessage
      Src: /src/libxml2/python/libxml.c:3106,1
    - Dst: va_end
      Src: /src/libxml2/python/libxml.c:3107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3108
      start: 3100
    functionDepth: 1
    functionLinenumber: 3100
    functionLinenumberEnd: 3108
    functionName: libxml_xmlSchemaValidityWarningFunc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - libxml_xmlSchemaValidityGenericWarningFuncHandler
    - va_end
    - libxml_buildMessage
    - va_start
    linkageType: ''
    returnType: void
    signature: void libxml_xmlSchemaValidityWarningFunc(void *ctx, const char *msg,
      ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3121,1
    - Dst: PySchemaValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:3125,1
    - Dst: xmlSchemaGetValidErrors
      Src: /src/libxml2/python/libxml.c:3126,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:3128,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:3135,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:3137,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:3140,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3144,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:3145,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3148,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:3149,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3152,1
    - Dst: Py_XINCREF
      Src: /src/libxml2/python/libxml.c:3153,1
    - Dst: xmlSchemaSetValidErrors
      Src: /src/libxml2/python/libxml.c:3156,1
    - Dst: libxml_intWrap
      Src: /src/libxml2/python/libxml.c:3158,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3160
      start: 3110
    functionDepth: 3
    functionLinenumber: 3110
    functionLinenumberEnd: 3160
    functionName: libxml_xmlSchemaSetValidErrors
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - Py_XINCREF
    - xmlSchemaGetValidErrors
    - Py_XDECREF
    - xmlSchemaSetValidErrors
    - libxml_intWrap
    - PySchemaValidCtxt_Get
    - xmlMalloc
    - PyArg_ParseTuple
    - memset
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSchemaSetValidErrors(ATTRIBUTE_UNUSED PyObject * self, PyObject *
      args)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3169,1
    - Dst: PySchemaValidCtxt_Get
      Src: /src/libxml2/python/libxml.c:3171,1
    - Dst: xmlSchemaGetValidErrors
      Src: /src/libxml2/python/libxml.c:3173,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3177,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3178,1
    - Dst: Py_XDECREF
      Src: /src/libxml2/python/libxml.c:3179,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3180,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/python/libxml.c:3184,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/libxml.c:3185,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3187
      start: 3162
    functionDepth: 5
    functionLinenumber: 3162
    functionLinenumberEnd: 3187
    functionName: libxml_xmlSchemaFreeValidCtxt
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlSchemaGetValidErrors
    - Py_XDECREF
    - xmlFree
    - Py_INCREF
    - PySchemaValidCtxt_Get
    - PyArg_ParseTuple
    - xmlSchemaFreeValidCtxt
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSchemaFreeValidCtxt(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_Check
      Src: /src/libxml2/python/libxml.c:3205,1
    - Dst: PyList_Check
      Src: /src/libxml2/python/libxml.c:3207,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3214,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:3219,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3221,1
    - Dst: PyTuple_GET_SIZE
      Src: /src/libxml2/python/libxml.c:3227,1
    - Dst: PyList_GET_SIZE
      Src: /src/libxml2/python/libxml.c:3228,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:3230,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3233,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3234,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:3237,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3244,1
    - Dst: PyTuple_GET_ITEM
      Src: /src/libxml2/python/libxml.c:3245,1
    - Dst: PyList_GET_ITEM
      Src: /src/libxml2/python/libxml.c:3246,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - py_nodeset
    - result
    argTypes:
    - PyObject*
    - xmlNodeSetPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3253
      start: 3199
    functionDepth: 0
    functionLinenumber: 3199
    functionLinenumberEnd: 3253
    functionName: PyxmlNodeSet_Convert
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - PyErr_SetString
    - PyList_Check
    - PyList_GET_ITEM
    - xmlMalloc
    - PyList_GET_SIZE
    - PyTuple_GET_ITEM
    - PyTuple_Check
    - PyxmlNode_Get
    - PyTuple_GET_SIZE
    - memset
    linkageType: ''
    returnType: int
    signature: int PyxmlNodeSet_Convert(PyObject *py_nodeset, xmlNodeSetPtr *result)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PyTuple_Check
      Src: /src/libxml2/python/libxml.c:3266,1
    - Dst: PyList_Check
      Src: /src/libxml2/python/libxml.c:3268,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3275,1
    - Dst: PyTuple_GET_SIZE
      Src: /src/libxml2/python/libxml.c:3281,1
    - Dst: PyList_GET_SIZE
      Src: /src/libxml2/python/libxml.c:3282,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/libxml.c:3284,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3287,1
    - Dst: memset
      Src: /src/libxml2/python/libxml.c:3291,1
    - Dst: PyBytes_AsString
      Src: /src/libxml2/python/libxml.c:3296,1
    - Dst: PyTuple_GET_ITEM
      Src: /src/libxml2/python/libxml.c:3298,1
    - Dst: PyList_GET_ITEM
      Src: /src/libxml2/python/libxml.c:3299,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3303,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3304,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - py_strings
    - result
    argTypes:
    - PyObject*
    - xmlChar***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3313
      start: 3255
    functionDepth: 0
    functionLinenumber: 3255
    functionLinenumberEnd: 3313
    functionName: PystringSet_Convert
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyBytes_AsString
    - xmlFree
    - PyErr_SetString
    - PyList_Check
    - PyList_GET_ITEM
    - xmlMalloc
    - PyList_GET_SIZE
    - PyTuple_GET_ITEM
    - PyTuple_Check
    - PyTuple_GET_SIZE
    - memset
    linkageType: ''
    returnType: int
    signature: int PystringSet_Convert(PyObject *py_strings, xmlChar *** result)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3334,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3342,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3344,1
    - Dst: PyxmlNodeSet_Convert
      Src: /src/libxml2/python/libxml.c:3348,1
    - Dst: PystringSet_Convert
      Src: /src/libxml2/python/libxml.c:3352,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3355,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3356,1
    - Dst: xmlC14NDocDumpMemory
      Src: /src/libxml2/python/libxml.c:3362,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3370,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3371,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3375,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3376,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3380,1
    - Dst: PY_IMPORT_STRING_SIZE
      Src: /src/libxml2/python/libxml.c:3385,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3387,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3390
      start: 3315
    functionDepth: 17
    functionLinenumber: 3315
    functionLinenumberEnd: 3390
    functionName: libxml_C14NDocDumpMemory
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PystringSet_Convert
    - xmlFree
    - PY_IMPORT_STRING_SIZE
    - PyErr_SetString
    - PyxmlNodeSet_Convert
    - xmlC14NDocDumpMemory
    - PyArg_ParseTuple
    - PyxmlNode_Get
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_C14NDocDumpMemory(ATTRIBUTE_UNUSED PyObject * self,\n
      \                        PyObject * args)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3412,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3421,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3423,1
    - Dst: PyFile_Get
      Src: /src/libxml2/python/libxml.c:3427,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3429,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/libxml2/python/libxml.c:3432,1
    - Dst: PyxmlNodeSet_Convert
      Src: /src/libxml2/python/libxml.c:3434,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:3436,1
    - Dst: PystringSet_Convert
      Src: /src/libxml2/python/libxml.c:3441,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3444,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3445,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:3447,1
    - Dst: xmlC14NDocSaveTo
      Src: /src/libxml2/python/libxml.c:3452,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3460,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3461,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3465,1
    - Dst: xmlFree
      Src: /src/libxml2/python/libxml.c:3466,1
    - Dst: PyFile_Release
      Src: /src/libxml2/python/libxml.c:3469,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/python/libxml.c:3470,1
    - Dst: PyErr_SetString
      Src: /src/libxml2/python/libxml.c:3473,1
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/libxml.c:3478,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 47
    argCount: 2
    argNames:
    - self
    - args
    argTypes:
    - ATTRIBUTE_UNUSED*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3479
      start: 3392
    functionDepth: 16
    functionLinenumber: 3392
    functionLinenumberEnd: 3479
    functionName: libxml_C14NDocSaveTo
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PystringSet_Convert
    - xmlFree
    - PyErr_SetString
    - PyFile_Release
    - PyxmlNodeSet_Convert
    - PyLong_FromLong
    - PyArg_ParseTuple
    - xmlOutputBufferClose
    - xmlOutputBufferCreateFile
    - xmlC14NDocSaveTo
    - PyxmlNode_Get
    - PyFile_Get
    linkageType: ''
    returnType: PyObject
    signature: "PyObject *\nlibxml_C14NDocSaveTo(ATTRIBUTE_UNUSED PyObject * self,\n
      \                    PyObject * args)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3490,1
    - Dst: PyCapsule_GetPointer
      Src: /src/libxml2/python/libxml.c:3492,1
    - Dst: PyCapsule_GetName
      Src: /src/libxml2/python/libxml.c:3492,1
    - Dst: Py_BuildValue
      Src: /src/libxml2/python/libxml.c:3493,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3494
      start: 3484
    functionDepth: 0
    functionLinenumber: 3484
    functionLinenumberEnd: 3494
    functionName: libxml_getObjDesc
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyCapsule_GetName
    - PyArg_ParseTuple
    - Py_BuildValue
    - PyCapsule_GetPointer
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_getObjDesc(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3502,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3506,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3507,1
    - Dst: Py_BuildValue
      Src: /src/libxml2/python/libxml.c:3509,1
    - Dst: Py_BuildValue
      Src: /src/libxml2/python/libxml.c:3511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3513
      start: 3496
    functionDepth: 0
    functionLinenumber: 3496
    functionLinenumberEnd: 3513
    functionName: libxml_compareNodesEqual
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - Py_BuildValue
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_compareNodesEqual(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PyArg_ParseTuple
      Src: /src/libxml2/python/libxml.c:3521,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/libxml.c:3524,1
    - Dst: PyLong_FromVoidPtr
      Src: /src/libxml2/python/libxml.c:3526,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - args
    argTypes:
    - PyObject*
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3528
      start: 3515
    functionDepth: 0
    functionLinenumber: 3515
    functionLinenumberEnd: 3528
    functionName: libxml_nodeHash
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyArg_ParseTuple
    - PyxmlNode_Get
    - PyLong_FromVoidPtr
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_nodeHash(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PyErr_WarnFormat
      Src: /src/libxml2/python/libxml.c:3539,1
    - Dst: PyErr_WarnEx
      Src: /src/libxml2/python/libxml.c:3543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - func
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3545
      start: 3536
    functionDepth: 0
    functionLinenumber: 3536
    functionLinenumberEnd: 3545
    functionName: libxml_deprecationWarning
    functionSourceFile: /src/libxml2/python/libxml.c
    functionUses: 0
    functionsReached:
    - PyErr_WarnFormat
    - PyErr_WarnEx
    linkageType: ''
    returnType: int
    signature: int libxml_deprecationWarning(const char *func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - expression
    - function
    - file
    - line
    - pReserved
    argTypes:
    - wchar_t*
    - wchar_t*
    - wchar_t*
    - unsigned int
    - uintptr_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: myInvalidParameterHandler
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void myInvalidParameterHandler(const wchar_t *expression,\n                          const
      wchar_t *function,\n                          const wchar_t *file,\n                          unsigned
      int   line,\n                          uintptr_t      pReserved)"
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: PyObject_AsFileDescriptor
      Src: /src/libxml2/python/types.c:84,1
    - Dst: _set_invalid_parameter_handler
      Src: /src/libxml2/python/types.c:100,1
    - Dst: _CrtSetReportMode
      Src: /src/libxml2/python/types.c:103,1
    - Dst: _get_osfhandle
      Src: /src/libxml2/python/types.c:106,1
    - Dst: GetModuleHandleW
      Src: /src/libxml2/python/types.c:111,1
    - Dst: GetProcAddress
      Src: /src/libxml2/python/types.c:116,1
    - Dst: NtQueryInformationFile
      Src: /src/libxml2/python/types.c:119,1
    - Dst: FreeLibrary
      Src: /src/libxml2/python/types.c:152,1
    - Dst: fcntl
      Src: /src/libxml2/python/types.c:175,1
    - Dst: dup
      Src: /src/libxml2/python/types.c:210,1
    - Dst: fdopen
      Src: /src/libxml2/python/types.c:213,1
    - Dst: close
      Src: /src/libxml2/python/types.c:215,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 76
    argCount: 1
    argNames:
    - f
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 219
    functionName: libxml_PyFileGet
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - fdopen
    - GetModuleHandleW
    - NtQueryInformationFile
    - GetProcAddress
    - _set_invalid_parameter_handler
    - FreeLibrary
    - dup
    - _CrtSetReportMode
    - close
    - PyObject_AsFileDescriptor
    - fcntl
    - _get_osfhandle
    linkageType: ''
    returnType: FILE
    signature: 'FILE *

      libxml_PyFileGet(PyObject *f)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/libxml2/python/types.c:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - f
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionName: libxml_PyFileRelease
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - fclose
    linkageType: ''
    returnType: void
    signature: void libxml_PyFileRelease(FILE *f)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PY_IMPORT_INT
      Src: /src/libxml2/python/types.c:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 234
    functionName: libxml_intWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 14
    functionsReached:
    - PY_IMPORT_INT
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_intWrap(int val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PyLong_FromLong
      Src: /src/libxml2/python/types.c:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 243
    functionName: libxml_longWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyLong_FromLong
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_longWrap(long val)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PyFloat_FromDouble
      Src: /src/libxml2/python/types.c:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 252
    functionName: libxml_doubleWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyFloat_FromDouble
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_doubleWrap(double val)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:260,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:263,1
    - Dst: xmlFree
      Src: /src/libxml2/python/types.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 266
    functionName: libxml_charPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 8
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    - xmlFree
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_charPtrWrap(char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:274,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 279
    functionName: libxml_charPtrConstWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 2
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_charPtrConstWrap(const char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:287,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:290,1
    - Dst: xmlFree
      Src: /src/libxml2/python/types.c:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 293
    functionName: libxml_xmlCharPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    - xmlFree
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCharPtrWrap(xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:301,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 306
    functionName: libxml_xmlCharPtrConstWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCharPtrConstWrap(const xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:314,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 319
    functionName: libxml_constcharPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_constcharPtrWrap(const char *str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:327,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 332
    functionName: libxml_constxmlCharPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 2
    functionsReached:
    - PY_IMPORT_STRING
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_constxmlCharPtrWrap(const xmlChar * str)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:340,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - doc
    argTypes:
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 346
    functionName: libxml_xmlDocPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlDocPtrWrap(xmlDocPtr doc)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:354,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 359
    functionName: libxml_xmlNodePtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 9
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNodePtrWrap(xmlNodePtr node)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:367,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - uri
    argTypes:
    - xmlURIPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 372
    functionName: libxml_xmlURIPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlURIPtrWrap(xmlURIPtr uri)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:380,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ns
    argTypes:
    - xmlNsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 385
    functionName: libxml_xmlNsPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 3
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlNsPtrWrap(xmlNsPtr ns)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:393,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 398
    functionName: libxml_xmlAttrPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlAttrPtrWrap(xmlAttrPtr attr)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:406,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - attr
    argTypes:
    - xmlAttributePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 411
    functionName: libxml_xmlAttributePtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlAttributePtrWrap(xmlAttributePtr attr)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:419,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:422,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - elem
    argTypes:
    - xmlElementPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 424
    functionName: libxml_xmlElementPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlElementPtrWrap(xmlElementPtr elem)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:432,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:436,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 438
    functionName: libxml_xmlParserCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 4
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserCtxtPtrWrap(xmlParserCtxtPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:447,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 452
    functionName: libxml_xmlXPathContextPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathContextPtrWrap(xmlXPathContextPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:460,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlXPathParserContextPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 465
    functionName: libxml_xmlXPathParserContextPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 2
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathParserContextPtrWrap(xmlXPathParserContextPtr ctxt)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/python/types.c:485,1
    - Dst: xmlXPathNodeSetFreeNs
      Src: /src/libxml2/python/types.c:487,1
    - Dst: PyCapsule_GetPointer
      Src: /src/libxml2/python/types.c:487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 489
    functionName: libxml_xmlXPathDestructNsNode
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - xmlXPathNodeSetFreeNs
    - PyCapsule_GetPointer
    linkageType: ''
    returnType: void
    signature: void libxml_xmlXPathDestructNsNode(PyObject *cap)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:497,1
    - Dst: PyList_New
      Src: /src/libxml2/python/types.c:505,1
    - Dst: PyList_New
      Src: /src/libxml2/python/types.c:515,1
    - Dst: PyList_SetItem
      Src: /src/libxml2/python/types.c:518,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/types.c:518,1
    - Dst: PyList_New
      Src: /src/libxml2/python/types.c:530,1
    - Dst: PyList_New
      Src: /src/libxml2/python/types.c:535,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:539,1
    - Dst: PyList_SetItem
      Src: /src/libxml2/python/types.c:542,1
    - Dst: PyList_SetItem
      Src: /src/libxml2/python/types.c:546,1
    - Dst: libxml_xmlNodePtrWrap
      Src: /src/libxml2/python/types.c:546,1
    - Dst: PY_IMPORT_INT
      Src: /src/libxml2/python/types.c:552,1
    - Dst: PyFloat_FromDouble
      Src: /src/libxml2/python/types.c:555,1
    - Dst: PY_IMPORT_STRING
      Src: /src/libxml2/python/types.c:558,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:561,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/python/types.c:564,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 1
    argNames:
    - obj
    argTypes:
    - xmlXPathObjectPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 491
    functionDepth: 3
    functionLinenumber: 491
    functionLinenumberEnd: 566
    functionName: libxml_xmlXPathObjectPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 2
    functionsReached:
    - PyList_SetItem
    - libxml_xmlNodePtrWrap
    - Py_INCREF
    - PY_IMPORT_INT
    - PyList_New
    - PyCapsule_New
    - PY_IMPORT_STRING
    - PyFloat_FromDouble
    - xmlXPathFreeObject
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlXPathObjectPtrWrap(xmlXPathObjectPtr obj)'
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: PyFloat_Check
      Src: /src/libxml2/python/types.c:576,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/python/types.c:577,1
    - Dst: PyFloat_AS_DOUBLE
      Src: /src/libxml2/python/types.c:577,1
    - Dst: PyLong_Check
      Src: /src/libxml2/python/types.c:578,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/python/types.c:580,1
    - Dst: PyLong_AS_LONG
      Src: /src/libxml2/python/types.c:580,1
    - Dst: xmlXPathNewFloat
      Src: /src/libxml2/python/types.c:582,1
    - Dst: PyInt_AS_LONG
      Src: /src/libxml2/python/types.c:582,1
    - Dst: PyBool_Check
      Src: /src/libxml2/python/types.c:585,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/python/types.c:588,1
    - Dst: xmlXPathNewBoolean
      Src: /src/libxml2/python/types.c:591,1
    - Dst: PyBytes_Check
      Src: /src/libxml2/python/types.c:594,1
    - Dst: xmlStrndup
      Src: /src/libxml2/python/types.c:597,1
    - Dst: PyBytes_AS_STRING
      Src: /src/libxml2/python/types.c:597,1
    - Dst: PyBytes_GET_SIZE
      Src: /src/libxml2/python/types.c:598,1
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/python/types.c:599,1
    - Dst: PyUnicode_Check
      Src: /src/libxml2/python/types.c:601,1
    - Dst: PyUnicode_AsUTF8AndSize
      Src: /src/libxml2/python/types.c:608,1
    - Dst: xmlStrndup
      Src: /src/libxml2/python/types.c:609,1
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/python/types.c:610,1
    - Dst: PyUnicode_AsUTF8String
      Src: /src/libxml2/python/types.c:615,1
    - Dst: xmlStrndup
      Src: /src/libxml2/python/types.c:617,1
    - Dst: PyBytes_AS_STRING
      Src: /src/libxml2/python/types.c:617,1
    - Dst: PyBytes_GET_SIZE
      Src: /src/libxml2/python/types.c:618,1
    - Dst: Py_DECREF
      Src: /src/libxml2/python/types.c:619,1
    - Dst: xmlXPathWrapString
      Src: /src/libxml2/python/types.c:621,1
    - Dst: PyList_Check
      Src: /src/libxml2/python/types.c:624,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/libxml2/python/types.c:630,1
    - Dst: PyList_Size
      Src: /src/libxml2/python/types.c:632,1
    - Dst: PyList_GetItem
      Src: /src/libxml2/python/types.c:633,1
    - Dst: PyCapsule_CheckExact
      Src: /src/libxml2/python/types.c:638,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/types.c:639,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/types.c:640,1
    - Dst: PyObject_HasAttrString
      Src: /src/libxml2/python/types.c:641,1
    - Dst: PyObject_GetAttrString
      Src: /src/libxml2/python/types.c:644,1
    - Dst: PyxmlNode_Get
      Src: /src/libxml2/python/types.c:646,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/libxml2/python/types.c:650,1
    - Dst: xmlXPathWrapNodeSet
      Src: /src/libxml2/python/types.c:653,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 1
    argNames:
    - obj
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 568
    functionDepth: 3
    functionLinenumber: 568
    functionLinenumberEnd: 657
    functionName: libxml_xmlXPathObjectPtrConvert
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 3
    functionsReached:
    - PyUnicode_Check
    - PyList_GetItem
    - xmlXPathNewBoolean
    - PyObject_GetAttrString
    - PyFloat_AS_DOUBLE
    - PyBytes_GET_SIZE
    - PyBytes_Check
    - PyLong_Check
    - PyBytes_AS_STRING
    - PyUnicode_AsUTF8AndSize
    - PyInt_AS_LONG
    - PyBool_Check
    - xmlXPathWrapNodeSet
    - PyList_Size
    - PyCapsule_CheckExact
    - PyList_Check
    - xmlXPathNodeSetCreate
    - PyObject_HasAttrString
    - xmlXPathNodeSetAdd
    - PyLong_AS_LONG
    - xmlXPathNewFloat
    - PyUnicode_AsUTF8String
    - Py_DECREF
    - xmlStrndup
    - PyFloat_Check
    - xmlXPathWrapString
    - PyxmlNode_Get
    linkageType: ''
    returnType: xmlXPathObjectPtr
    signature: xmlXPathObjectPtr libxml_xmlXPathObjectPtrConvert(PyObject *obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:666,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:671,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - valid
    argTypes:
    - xmlValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 675
    functionName: libxml_xmlValidCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlValidCtxtPtrWrap(xmlValidCtxtPtr valid)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:684,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - catal
    argTypes:
    - xmlCatalogPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 691
    functionName: libxml_xmlCatalogPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlCatalogPtrWrap(xmlCatalogPtr catal)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:700,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 707
    functionName: libxml_xmlOutputBufferPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlOutputBufferPtrWrap(xmlOutputBufferPtr buffer)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:715,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:719,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlParserInputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 722
    functionName: libxml_xmlParserInputBufferPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlParserInputBufferPtrWrap(xmlParserInputBufferPtr buffer)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:731,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - regexp
    argTypes:
    - xmlRegexpPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 738
    functionName: libxml_xmlRegexpPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRegexpPtrWrap(xmlRegexpPtr regexp)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:748,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:752,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 742
    functionDepth: 0
    functionLinenumber: 742
    functionLinenumberEnd: 755
    functionName: libxml_xmlTextReaderPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlTextReaderPtrWrap(xmlTextReaderPtr reader)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:763,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:767,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - locator
    argTypes:
    - xmlTextReaderLocatorPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 770
    functionName: libxml_xmlTextReaderLocatorPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 1
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlTextReaderLocatorPtrWrap(xmlTextReaderLocatorPtr locator)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:780,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:784,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 774
    functionDepth: 0
    functionLinenumber: 774
    functionLinenumberEnd: 787
    functionName: libxml_xmlRelaxNGPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRelaxNGPtrWrap(xmlRelaxNGPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:795,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:799,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlRelaxNGParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 789
    functionDepth: 0
    functionLinenumber: 789
    functionLinenumberEnd: 802
    functionName: libxml_xmlRelaxNGParserCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRelaxNGParserCtxtPtrWrap(xmlRelaxNGParserCtxtPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:809,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - valid
    argTypes:
    - xmlRelaxNGValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 816
    functionName: libxml_xmlRelaxNGValidCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlRelaxNGValidCtxtPtrWrap(xmlRelaxNGValidCtxtPtr valid)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:826,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 833
    functionName: libxml_xmlSchemaPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSchemaPtrWrap(xmlSchemaPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:841,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlSchemaParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 849
    functionName: libxml_xmlSchemaParserCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSchemaParserCtxtPtrWrap(xmlSchemaParserCtxtPtr ctxt)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:857,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:862,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - valid
    argTypes:
    - xmlSchemaValidCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 866
    functionName: libxml_xmlSchemaValidCtxtPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - PyCapsule_New
    - Py_INCREF
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlSchemaValidCtxtPtrWrap(xmlSchemaValidCtxtPtr valid)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PyCapsule_GetPointer
      Src: /src/libxml2/python/types.c:871,1
    - Dst: xmlResetError
      Src: /src/libxml2/python/types.c:872,1
    - Dst: xmlFree
      Src: /src/libxml2/python/types.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - cap
    argTypes:
    - PyObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 874
    functionName: libxml_xmlDestructError
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - xmlResetError
    - xmlFree
    - PyCapsule_GetPointer
    linkageType: ''
    returnType: void
    signature: void libxml_xmlDestructError(PyObject *cap)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:883,1
    - Dst: xmlMalloc
      Src: /src/libxml2/python/types.c:886,1
    - Dst: Py_INCREF
      Src: /src/libxml2/python/types.c:888,1
    - Dst: memset
      Src: /src/libxml2/python/types.c:891,1
    - Dst: xmlCopyError
      Src: /src/libxml2/python/types.c:892,1
    - Dst: PyCapsule_New
      Src: /src/libxml2/python/types.c:893,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - error
    argTypes:
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 876
    functionDepth: 4
    functionLinenumber: 876
    functionLinenumberEnd: 895
    functionName: libxml_xmlErrorPtrWrap
    functionSourceFile: /src/libxml2/python/types.c
    functionUses: 0
    functionsReached:
    - Py_INCREF
    - PyCapsule_New
    - xmlCopyError
    - xmlMalloc
    - memset
    linkageType: ''
    returnType: PyObject
    signature: 'PyObject *

      libxml_xmlErrorPtrWrap(const xmlError *error)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - o
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: PyCapsule_GetPointer
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyCapsule_GetPointer(o, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: PyxmlNode_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlNode_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: PyxmlXPathContext_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlXPathContext_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: PyxmlXPathParserContext_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlXPathParserContext_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: PyparserCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyparserCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionName: PyValidCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyValidCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: Pycatalog_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: Pycatalog_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: PyxmlReg_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlReg_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: PyxmlTextReader_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlTextReader_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: PyxmlTextReaderLocator_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyxmlTextReaderLocator_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: PyURI_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyURI_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: PyError_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyError_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: PyoutputBuffer_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyoutputBuffer_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: PyinputBuffer_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyinputBuffer_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: PyFile_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - f
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: PyFile_Release
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Release(f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: PyFile_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyFile_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionName: PyrelaxNgSchema_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyrelaxNgSchema_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: PyrelaxNgParserCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyrelaxNgParserCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionName: PyrelaxNgValidCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PyrelaxNgValidCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: PySchema_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PySchema_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionName: PySchemaParserCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PySchemaParserCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: PySchemaValidCtxt_Get
    functionSourceFile: /src/libxml2/python/libxml_wrap.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PySchemaValidCtxt_Get(v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 13
    functionName: HASH_ROL
    functionSourceFile: /src/libxml2/include/private/dict.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_ROL(x,n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 14
    functionName: HASH_ROR
    functionSourceFile: /src/libxml2/include/private/dict.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_ROR(x,n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - h1
    - ','
    - h2
    - ','
    - seed
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 27
    functionName: HASH_INIT
    functionSourceFile: /src/libxml2/include/private/dict.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_INIT(h1, h2, seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - h1
    - ','
    - h2
    - ','
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 36
    functionName: HASH_UPDATE
    functionSourceFile: /src/libxml2/include/private/dict.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_UPDATE(h1, h2, ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - h1
    - ','
    - h2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: HASH_FINISH
    functionSourceFile: /src/libxml2/include/private/dict.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HASH_FINISH(h1, h2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 11
    functionName: IS_WS_HTML
    functionSourceFile: /src/libxml2/include/private/html.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_WS_HTML(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: PARSER_STOPPED
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 33
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSER_STOPPED(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: PARSER_PROGRESSIVE
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSER_PROGRESSIVE(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: PARSER_IN_PE
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSER_IN_PE(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionName: PARSER_EXTERNAL
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PARSER_EXTERNAL(ctxt)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - val
    argTypes:
    - unsigned long*
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionName: xmlSaturatedAdd
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: XML_INLINE
    signature: XML_INLINE xmlSaturatedAdd(unsigned long *dst, unsigned long val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - val
    argTypes:
    - unsigned long*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 180
    functionName: xmlSaturatedAddSizeT
    functionSourceFile: /src/libxml2/include/private/parser.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XML_INLINE
    signature: XML_INLINE xmlSaturatedAddSizeT(unsigned long *dst, size_t val)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - capacity
    - elemSize
    - min
    - max
    argTypes:
    - int
    - size_t
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 55
    functionName: xmlGrowCapacity
    functionSourceFile: /src/libxml2/include/private/memory.h
    functionUses: 62
    functionsReached: []
    linkageType: ''
    returnType: XML_INLINE
    signature: XML_INLINE xmlGrowCapacity(int capacity, size_t elemSize, int min,
      int max)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: LIBXML_ATTR_ALLOC_SIZE
    functionSourceFile: /src/libxml2/include/libxml/xmlexports.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LIBXML_ATTR_ALLOC_SIZE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - fmt
    - ','
    - args
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: LIBXML_ATTR_FORMAT
    functionSourceFile: /src/libxml2/include/libxml/xmlexports.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LIBXML_ATTR_FORMAT(fmt,args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - fptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: XML_CAST_FPTR
    functionSourceFile: /src/libxml2/include/libxml/hash.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_CAST_FPTR(fptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - err
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: xmlXPathSetError
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathSetError(ctxt, err)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: xmlXPathSetArityError
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 56
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathSetArityError(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: xmlXPathSetTypeError
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathSetTypeError(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: xmlXPathGetError
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathGetError(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 92
    functionName: xmlXPathCheckError
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 42
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathCheckError(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: xmlXPathGetDocument
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathGetDocument(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: xmlXPathGetContextNode
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathGetContextNode(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionName: xmlXPathReturnBoolean
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnBoolean(ctxt, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: xmlXPathReturnTrue
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnTrue(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: xmlXPathReturnFalse
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnFalse(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionName: xmlXPathReturnNumber
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnNumber(ctxt, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionName: xmlXPathReturnString
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnString(ctxt, str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: xmlXPathReturnEmptyString
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnEmptyString(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - ns
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: xmlXPathReturnNodeSet
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnNodeSet(ctxt, ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionName: xmlXPathReturnEmptyNodeSet
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnEmptyNodeSet(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctxt
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionName: xmlXPathReturnExternal
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathReturnExternal(ctxt, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionName: xmlXPathStackIsNodeSet
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathStackIsNodeSet(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctxt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionName: xmlXPathStackIsExternal
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathStackIsExternal(ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ns
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: xmlXPathEmptyNodeSet
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathEmptyNodeSet(ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: XP_ERROR
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XP_ERROR(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionName: XP_ERROR0
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XP_ERROR0(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - typeval
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: CHECK_TYPE
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_TYPE(typeval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - typeval
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: CHECK_TYPE0
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_TYPE0(typeval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 285
    functionName: CHECK_ARITY
    functionSourceFile: /src/libxml2/include/libxml/xpathInternals.h
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_ARITY(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: IS_BYTE_CHAR
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BYTE_CHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: IS_CHAR
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_CHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: IS_CHAR_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_CHAR_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: IS_BLANK
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 138
    functionName: IS_BLANK_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 58
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BLANK_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: IS_BASECHAR
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_BASECHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 154
    functionName: IS_DIGIT
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_DIGIT(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: IS_DIGIT_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_DIGIT_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: IS_COMBINING
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_COMBINING(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 176
    functionName: IS_COMBINING_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_COMBINING_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 186
    functionName: IS_EXTENDER
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_EXTENDER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: IS_EXTENDER_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_EXTENDER_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 201
    functionName: IS_IDEOGRAPHIC
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_IDEOGRAPHIC(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 209
    functionName: IS_LETTER
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_LETTER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    functionName: IS_LETTER_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_LETTER_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionName: IS_ASCII_LETTER
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_ASCII_LETTER(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 231
    functionName: IS_ASCII_DIGIT
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_ASCII_DIGIT(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 240
    functionName: IS_PUBIDCHAR
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_PUBIDCHAR(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 247
    functionName: IS_PUBIDCHAR_CH
    functionSourceFile: /src/libxml2/include/libxml/parserInternals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IS_PUBIDCHAR_CH(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - elt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: htmlDefaultSubelement
    functionSourceFile: /src/libxml2/include/libxml/HTMLparser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: htmlDefaultSubelement(elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - parent
    - ','
    - elt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: htmlElementAllowedHereDesc
    functionSourceFile: /src/libxml2/include/libxml/HTMLparser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: htmlElementAllowedHereDesc(parent,elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - elt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: htmlRequiredAttrs
    functionSourceFile: /src/libxml2/include/libxml/HTMLparser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: htmlRequiredAttrs(elt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 75
    functionName: xmlIsBaseChar_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsBaseChar_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: xmlIsBaseCharQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsBaseCharQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: xmlIsBlank_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsBlank_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: xmlIsBlankQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsBlankQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: xmlIsChar_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsChar_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionName: xmlIsCharQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsCharQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: xmlIsCombiningQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsCombiningQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 138
    functionName: xmlIsDigit_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsDigit_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionName: xmlIsDigitQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsDigitQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 154
    functionName: xmlIsExtender_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsExtender_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: xmlIsExtenderQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsExtenderQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 174
    functionName: xmlIsIdeographicQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsIdeographicQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 181
    functionName: xmlIsPubidChar_ch
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsPubidChar_ch(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionName: xmlIsPubidCharQ
    functionSourceFile: /src/libxml2/include/libxml/chvalid.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlIsPubidCharQ(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: XML_GET_CONTENT
    functionSourceFile: /src/libxml2/include/libxml/tree.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_GET_CONTENT(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: XML_GET_LINE
    functionSourceFile: /src/libxml2/include/libxml/tree.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XML_GET_LINE(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - h
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionName: initGenericErrorDefaultFunc
    functionSourceFile: /src/libxml2/include/libxml/xmlerror.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: initGenericErrorDefaultFunc(h)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ns
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 427
    functionName: xmlXPathNodeSetGetLength
    functionSourceFile: /src/libxml2/include/libxml/xpath.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathNodeSetGetLength(ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ns
    - ','
    - index
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 440
    functionName: xmlXPathNodeSetItem
    functionSourceFile: /src/libxml2/include/libxml/xpath.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathNodeSetItem(ns, index)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ns
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: xmlXPathNodeSetIsEmpty
    functionSourceFile: /src/libxml2/include/libxml/xpath.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlXPathNodeSetIsEmpty(ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/html.c:19,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/html.c:20,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/html.c:22,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/html.c:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 16
    functionDepth: 7
    functionLinenumber: 16
    functionLinenumberEnd: 27
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/html.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlInitializeCatalog
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/html.c:40,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/html.c:41,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/html.c:42,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/html.c:44,1
    - Dst: xmlFuzzReadRemaining
      Src: /src/libxml2/fuzz/html.c:48,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/html.c:50,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/html.c:56,1
    - Dst: htmlNewParserCtxt
      Src: /src/libxml2/fuzz/html.c:57,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/html.c:61,1
    - Dst: htmlCtxtReadMemory
      Src: /src/libxml2/fuzz/html.c:62,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/html.c:64,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/fuzz/html.c:79,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxml2/fuzz/html.c:80,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/fuzz/html.c:81,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/html.c:82,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/fuzz/html.c:85,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/fuzz/html.c:90,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/html.c:91,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/html.c:92,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/html.c:94,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/fuzz/html.c:97,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/html.c:104,1
    - Dst: htmlCreatePushParserCtxt
      Src: /src/libxml2/fuzz/html.c:105,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/html.c:112,1
    - Dst: htmlCtxtUseOptions
      Src: /src/libxml2/fuzz/html.c:113,1
    - Dst: htmlParseChunk
      Src: /src/libxml2/fuzz/html.c:133,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/html.c:138,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/html.c:153,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/html.c:156,1
    - Dst: fwrite
      Src: /src/libxml2/fuzz/html.c:157,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/html.c:158,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/html.c:159,1
    - Dst: abort
      Src: /src/libxml2/fuzz/html.c:161,1
    - Dst: xmlAllocOutputBuffer
      Src: /src/libxml2/fuzz/html.c:177,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxml2/fuzz/html.c:178,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/fuzz/html.c:179,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/fuzz/html.c:180,1
    - Dst: xmlOutputBufferGetSize
      Src: /src/libxml2/fuzz/html.c:183,1
    - Dst: xmlOutputBufferGetSize
      Src: /src/libxml2/fuzz/html.c:185,1
    - Dst: memcmp
      Src: /src/libxml2/fuzz/html.c:186,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/html.c:187,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/html.c:190,1
    - Dst: fwrite
      Src: /src/libxml2/fuzz/html.c:191,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/html.c:192,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/html.c:193,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/html.c:194,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/fuzz/html.c:195,1
    - Dst: xmlOutputBufferGetContent
      Src: /src/libxml2/fuzz/html.c:196,1
    - Dst: abort
      Src: /src/libxml2/fuzz/html.c:198,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/fuzz/html.c:202,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/html.c:206,1
    - Dst: htmlFreeParserCtxt
      Src: /src/libxml2/fuzz/html.c:207,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/fuzz/html.c:214,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/html.c:217,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/html.c:218,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/html.c:219,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 92
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 29
    functionDepth: 17
    functionLinenumber: 29
    functionLinenumberEnd: 222
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/html.c
    functionUses: 0
    functionsReached:
    - htmlDocContentDumpOutput
    - xmlFuzzReadRemaining
    - htmlCtxtReadMemory
    - fclose
    - xmlFuzzCheckFailureReport
    - xmlFuzzReadInt
    - htmlFreeParserCtxt
    - xmlCtxtSetErrorHandler
    - xmlAllocOutputBuffer
    - fwrite
    - abort
    - memcmp
    - fprintf
    - xmlCopyDoc
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - htmlParseChunk
    - xmlOutputBufferGetSize
    - xmlFuzzDataCleanup
    - htmlCtxtUseOptions
    - xmlOutputBufferGetContent
    - xmlFuzzDataInit
    - fopen
    - htmlNewParserCtxt
    - xmlOutputBufferClose
    - htmlCreatePushParserCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/html.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 235
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/html.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/xml.c:21,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/xml.c:22,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/xml.c:24,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/xml.c:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 18
    functionDepth: 7
    functionLinenumber: 18
    functionLinenumberEnd: 29
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/xml.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlInitializeCatalog
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/xml.c:45,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xml.c:46,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xml.c:52,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xml.c:54,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/xml.c:64,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/xml.c:65,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/xml.c:66,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xml.c:72,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/xml.c:73,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/xml.c:77,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/xml.c:78,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/fuzz/xml.c:79,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xml.c:81,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/fuzz/xml.c:89,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/fuzz/xml.c:92,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/fuzz/xml.c:95,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/fuzz/xml.c:100,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/fuzz/xml.c:101,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xml.c:102,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/fuzz/xml.c:106,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/xml.c:111,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/xml.c:114,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xml.c:120,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/xml.c:125,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/fuzz/xml.c:126,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/xml.c:127,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/xml.c:133,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/xml.c:134,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/fuzz/xml.c:135,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/fuzz/xml.c:155,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xml.c:160,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/xml.c:175,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/xml.c:178,1
    - Dst: fwrite
      Src: /src/libxml2/fuzz/xml.c:179,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/xml.c:180,1
    - Dst: abort
      Src: /src/libxml2/fuzz/xml.c:182,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/fuzz/xml.c:198,1
    - Dst: xmlSaveToBuffer
      Src: /src/libxml2/fuzz/xml.c:200,1
    - Dst: xmlSaveDoc
      Src: /src/libxml2/fuzz/xml.c:205,1
    - Dst: xmlSaveFinish
      Src: /src/libxml2/fuzz/xml.c:206,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/fuzz/xml.c:209,1
    - Dst: xmlBufferLength
      Src: /src/libxml2/fuzz/xml.c:211,1
    - Dst: memcmp
      Src: /src/libxml2/fuzz/xml.c:212,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/fuzz/xml.c:212,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/fuzz/xml.c:213,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/xml.c:215,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/xml.c:218,1
    - Dst: fwrite
      Src: /src/libxml2/fuzz/xml.c:219,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/xml.c:220,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/xml.c:221,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/xml.c:222,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/fuzz/xml.c:223,1
    - Dst: xmlBufferContent
      Src: /src/libxml2/fuzz/xml.c:224,1
    - Dst: abort
      Src: /src/libxml2/fuzz/xml.c:226,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/fuzz/xml.c:231,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/xml.c:235,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/xml.c:236,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xml.c:244,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/xml.c:245,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/xml.c:246,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 105
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 31
    functionDepth: 14
    functionLinenumber: 31
    functionLinenumberEnd: 248
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/xml.c
    functionUses: 0
    functionsReached:
    - xmlBufferFree
    - xmlSetGenericErrorFunc
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlSaveDoc
    - xmlFuzzMainUrl
    - fclose
    - xmlFuzzCheckFailureReport
    - xmlFuzzReadEntities
    - xmlFuzzReadInt
    - xmlBufferContent
    - xmlFuzzMainEntity
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlCreatePushParserCtxt
    - abort
    - fwrite
    - memcmp
    - xmlSaveToBuffer
    - fprintf
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - xmlFuzzDataCleanup
    - xmlFreeParserCtxt
    - xmlFuzzDataInit
    - xmlBufferLength
    - xmlParseChunk
    - xmlSaveFinish
    - fopen
    - xmlBufferCreate
    - xmlCtxtReadMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/xml.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 262
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/xml.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/regexp.c:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 18
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/regexp.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/regexp.c:29,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/regexp.c:30,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/regexp.c:31,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/regexp.c:33,1
    - Dst: xmlRegexpCompile
      Src: /src/libxml2/fuzz/regexp.c:34,1
    - Dst: xmlFuzzMallocFailed
      Src: /src/libxml2/fuzz/regexp.c:35,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/regexp.c:36,1
    - Dst: abort
      Src: /src/libxml2/fuzz/regexp.c:37,1
    - Dst: xmlRegFreeRegexp
      Src: /src/libxml2/fuzz/regexp.c:43,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/regexp.c:45,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/regexp.c:46,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/regexp.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 20
    functionDepth: 15
    functionLinenumber: 20
    functionLinenumberEnd: 50
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/regexp.c
    functionUses: 0
    functionsReached:
    - xmlFuzzDataInit
    - xmlFuzzInjectFailure
    - xmlRegexpCompile
    - abort
    - xmlResetLastError
    - xmlFuzzReadString
    - fprintf
    - xmlRegFreeRegexp
    - xmlFuzzMallocFailed
    - xmlFuzzReadInt
    - xmlFuzzDataCleanup
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/regexp.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/regexp.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/schema.c:19,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/schema.c:20,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/schema.c:22,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/schema.c:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 16
    functionDepth: 7
    functionLinenumber: 16
    functionLinenumberEnd: 27
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/schema.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlInitializeCatalog
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/schema.c:38,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/schema.c:40,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/schema.c:42,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/schema.c:44,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/fuzz/schema.c:45,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/schema.c:45,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/fuzz/schema.c:46,1
    - Dst: xmlSchemaSetResourceLoader
      Src: /src/libxml2/fuzz/schema.c:47,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/fuzz/schema.c:48,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/fuzz/schema.c:49,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/schema.c:56,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/schema.c:57,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/schema.c:58,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/fuzz/schema.c:59,1
    - Dst: xmlFuzzSecondaryUrl
      Src: /src/libxml2/fuzz/schema.c:59,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/schema.c:61,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/fuzz/schema.c:63,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/fuzz/schema.c:64,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/fuzz/schema.c:65,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/fuzz/schema.c:66,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/schema.c:68,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/fuzz/schema.c:69,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/schema.c:72,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/schema.c:73,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/schema.c:74,1
    - Dst: xmlSchemaCleanupTypes
      Src: /src/libxml2/fuzz/schema.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 30
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 29
    functionDepth: 26
    functionLinenumber: 29
    functionLinenumberEnd: 78
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/schema.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeParserCtxt
    - xmlNewParserCtxt
    - xmlFuzzMainUrl
    - xmlSchemaSetResourceLoader
    - xmlFuzzReadEntities
    - xmlFuzzReadInt
    - xmlSchemaSetValidStructuredErrors
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlCtxtReadFile
    - xmlSchemaFree
    - xmlSchemaNewParserCtxt
    - xmlSchemaNewValidCtxt
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - xmlSchemaValidateDoc
    - xmlFuzzDataCleanup
    - xmlSchemaSetParserStructuredErrors
    - xmlFreeParserCtxt
    - xmlSchemaParse
    - xmlSchemaCleanupTypes
    - xmlFuzzDataInit
    - xmlSchemaFreeValidCtxt
    - xmlFuzzSecondaryUrl
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/schema.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/schema.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/fuzz/genSeed.c:66,1
    - Dst: xmlSlurpFile
      Src: /src/libxml2/fuzz/genSeed.c:67,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/fuzz/genSeed.c:70,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/fuzz/genSeed.c:72,1
    - Dst: xmlNewInputFromUrl
      Src: /src/libxml2/fuzz/genSeed.c:75,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - URL
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - flags
    - out
    argTypes:
    - void*
    - char*
    - char*
    - xmlResourceType
    - xmlParserInputFlags
    - xmlParserInputPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 57
    functionDepth: 6
    functionLinenumber: 57
    functionLinenumberEnd: 76
    functionName: fuzzResourceRecorder
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlNewInputFromUrl
    - xmlHashLookup
    - xmlHashAddEntry
    - xmlSlurpFile
    - xmlHashCreate
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors fuzzResourceRecorder(void *data ATTRIBUTE_UNUSED,
      const char *URL,\n                     const char *ID ATTRIBUTE_UNUSED,\n                     xmlResourceType
      type ATTRIBUTE_UNUSED,\n                     xmlParserInputFlags flags,\n                     xmlParserInputPtr
      *out)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashCreate
      Src: /src/libxml2/fuzz/genSeed.c:81,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/libxml2/fuzz/genSeed.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - out
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 5
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: fuzzRecorderInit
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 1
    functionsReached:
    - xmlHashCreate
    - xmlGetExternalEntityLoader
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderInit(FILE *out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:88,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:89,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - entry
    - file
    argTypes:
    - void*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: fuzzRecorderWriteAndFree
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlFuzzWriteString
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderWriteAndFree(void *entry, const xmlChar *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashRemoveEntry
      Src: /src/libxml2/fuzz/genSeed.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: fuzzRecorderWrite
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 1
    functionsReached:
    - xmlHashRemoveEntry
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderWrite(const char *file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashFree
      Src: /src/libxml2/fuzz/genSeed.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 106
    functionName: fuzzRecorderCleanup
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 1
    functionsReached:
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void fuzzRecorderCleanup(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:118,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:119,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:121,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:123,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:125,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:127,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:129,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:131,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:134,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:136,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:140,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:145,1
    - Dst: fuzzRecorderInit
      Src: /src/libxml2/fuzz/genSeed.c:149,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:151,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/genSeed.c:152,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/genSeed.c:153,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/fuzz/genSeed.c:154,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/fuzz/genSeed.c:157,1
    - Dst: xmlXIncludeSetErrorHandler
      Src: /src/libxml2/fuzz/genSeed.c:159,1
    - Dst: xmlXIncludeSetResourceLoader
      Src: /src/libxml2/fuzz/genSeed.c:160,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/fuzz/genSeed.c:161,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/fuzz/genSeed.c:162,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/fuzz/genSeed.c:163,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/genSeed.c:166,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:167,1
    - Dst: fuzzRecorderWrite
      Src: /src/libxml2/fuzz/genSeed.c:169,1
    - Dst: fuzzRecorderCleanup
      Src: /src/libxml2/fuzz/genSeed.c:170,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 36
    argCount: 2
    argNames:
    - docFile
    - out
    argTypes:
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 110
    functionDepth: 17
    functionLinenumber: 110
    functionLinenumberEnd: 173
    functionName: processXml
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlXIncludeSetFlags
    - fuzzRecorderInit
    - xmlXIncludeNewContext
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlNewParserCtxt
    - fuzzRecorderWrite
    - xmlCtxtReadFile
    - xmlXIncludeFreeContext
    - xmlFuzzWriteString
    - xmlFreeParserCtxt
    - xmlXIncludeProcessNode
    - fuzzRecorderCleanup
    - xmlXIncludeSetResourceLoader
    - xmlFreeDoc
    - xmlFuzzWriteInt
    - xmlXIncludeSetErrorHandler
    linkageType: ''
    returnType: int
    signature: int processXml(const char *docFile, FILE *out)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:184,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:186,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/genSeed.c:189,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:191,1
    - Dst: fread
      Src: /src/libxml2/fuzz/genSeed.c:195,1
    - Dst: fwrite
      Src: /src/libxml2/fuzz/genSeed.c:197,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/genSeed.c:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - docFile
    - out
    argTypes:
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 202
    functionName: processHtml
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - fwrite
    - fopen
    - fclose
    - fprintf
    - fread
    - xmlFuzzWriteInt
    linkageType: ''
    returnType: int
    signature: int processHtml(const char *docFile, FILE *out)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: glob
      Src: /src/libxml2/fuzz/genSeed.c:214,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:218,1
    - Dst: stat
      Src: /src/libxml2/fuzz/genSeed.c:234,1
    - Dst: S_ISREG
      Src: /src/libxml2/fuzz/genSeed.c:234,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/fuzz/genSeed.c:237,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/fuzz/genSeed.c:238,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:240,1
    - Dst: dirname
      Src: /src/libxml2/fuzz/genSeed.c:244,1
    - Dst: basename
      Src: /src/libxml2/fuzz/genSeed.c:245,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:247,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:250,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/genSeed.c:254,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:256,1
    - Dst: chdir
      Src: /src/libxml2/fuzz/genSeed.c:260,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:261,1
    - Dst: processFile
      Src: /src/libxml2/fuzz/genSeed.c:266,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/genSeed.c:271,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:272,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:273,1
    - Dst: chdir
      Src: /src/libxml2/fuzz/genSeed.c:274,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:275,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/genSeed.c:281,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 59
    argCount: 1
    argNames:
    - pattern
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 283
    functionName: processPattern
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 1
    functionsReached:
    - xmlCharStrdup
    - xmlFree
    - dirname
    - chdir
    - fopen
    - glob
    - fclose
    - stat
    - globfree
    - snprintf
    - basename
    - fprintf
    - processFile
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int processPattern(const char *pattern)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:293,1
    - Dst: fuzzRecorderInit
      Src: /src/libxml2/fuzz/genSeed.c:295,1
    - Dst: xmlSchemaNewParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:297,1
    - Dst: xmlSchemaSetParserStructuredErrors
      Src: /src/libxml2/fuzz/genSeed.c:298,1
    - Dst: xmlSchemaSetResourceLoader
      Src: /src/libxml2/fuzz/genSeed.c:299,1
    - Dst: xmlSchemaParse
      Src: /src/libxml2/fuzz/genSeed.c:300,1
    - Dst: xmlSchemaFreeParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:301,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:308,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/genSeed.c:309,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/genSeed.c:310,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/fuzz/genSeed.c:311,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/genSeed.c:312,1
    - Dst: xmlSchemaNewValidCtxt
      Src: /src/libxml2/fuzz/genSeed.c:314,1
    - Dst: xmlSchemaSetValidStructuredErrors
      Src: /src/libxml2/fuzz/genSeed.c:315,1
    - Dst: xmlSchemaValidateDoc
      Src: /src/libxml2/fuzz/genSeed.c:316,1
    - Dst: xmlSchemaFreeValidCtxt
      Src: /src/libxml2/fuzz/genSeed.c:317,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/genSeed.c:319,1
    - Dst: xmlSchemaFree
      Src: /src/libxml2/fuzz/genSeed.c:320,1
    - Dst: fuzzRecorderWrite
      Src: /src/libxml2/fuzz/genSeed.c:323,1
    - Dst: fuzzRecorderWrite
      Src: /src/libxml2/fuzz/genSeed.c:324,1
    - Dst: fuzzRecorderCleanup
      Src: /src/libxml2/fuzz/genSeed.c:325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 3
    argNames:
    - xsdFile
    - xmlFile
    - out
    argTypes:
    - char*
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 287
    functionDepth: 26
    functionLinenumber: 287
    functionLinenumberEnd: 328
    functionName: processSchema
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlSchemaFreeParserCtxt
    - xmlNewParserCtxt
    - fuzzRecorderWrite
    - xmlSchemaSetResourceLoader
    - xmlSchemaSetValidStructuredErrors
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlCtxtReadFile
    - xmlSchemaFree
    - fuzzRecorderInit
    - xmlSchemaNewParserCtxt
    - xmlSchemaNewValidCtxt
    - xmlSchemaValidateDoc
    - xmlFuzzWriteInt
    - xmlSchemaSetParserStructuredErrors
    - xmlFreeParserCtxt
    - xmlSchemaParse
    - fuzzRecorderCleanup
    - xmlSchemaFreeValidCtxt
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int processSchema(const char *xsdFile, const char *xmlFile, FILE *out)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: glob
      Src: /src/libxml2/fuzz/genSeed.c:337,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:341,1
    - Dst: stat
      Src: /src/libxml2/fuzz/genSeed.c:356,1
    - Dst: S_ISREG
      Src: /src/libxml2/fuzz/genSeed.c:356,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/fuzz/genSeed.c:359,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/fuzz/genSeed.c:360,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:362,1
    - Dst: dirname
      Src: /src/libxml2/fuzz/genSeed.c:366,1
    - Dst: strlen
      Src: /src/libxml2/fuzz/genSeed.c:367,1
    - Dst: basename
      Src: /src/libxml2/fuzz/genSeed.c:368,1
    - Dst: strlen
      Src: /src/libxml2/fuzz/genSeed.c:369,1
    - Dst: strlen
      Src: /src/libxml2/fuzz/genSeed.c:371,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:379,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:382,1
    - Dst: glob
      Src: /src/libxml2/fuzz/genSeed.c:387,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:391,1
    - Dst: strlen
      Src: /src/libxml2/fuzz/genSeed.c:403,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:407,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:411,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:415,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/genSeed.c:419,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:421,1
    - Dst: chdir
      Src: /src/libxml2/fuzz/genSeed.c:426,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:427,1
    - Dst: processSchema
      Src: /src/libxml2/fuzz/genSeed.c:430,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/genSeed.c:434,1
    - Dst: chdir
      Src: /src/libxml2/fuzz/genSeed.c:436,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:437,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/genSeed.c:443,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:446,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:447,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/genSeed.c:450,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 88
    argCount: 1
    argNames:
    - pattern
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 330
    functionDepth: 27
    functionLinenumber: 330
    functionLinenumberEnd: 452
    functionName: processSchemaPattern
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    - strlen
    - xmlFree
    - dirname
    - chdir
    - fopen
    - glob
    - fclose
    - stat
    - globfree
    - snprintf
    - basename
    - fprintf
    - processSchema
    - S_ISREG
    linkageType: ''
    returnType: int
    signature: int processSchemaPattern(const char *pattern)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:464,1
    - Dst: glob
      Src: /src/libxml2/fuzz/genSeed.c:468,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:472,1
    - Dst: stat
      Src: /src/libxml2/fuzz/genSeed.c:482,1
    - Dst: S_ISREG
      Src: /src/libxml2/fuzz/genSeed.c:482,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/genSeed.c:485,1
    - Dst: fgets
      Src: /src/libxml2/fuzz/genSeed.c:491,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:501,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/genSeed.c:507,1
    - Dst: xmlFuzzWriteInt
      Src: /src/libxml2/fuzz/genSeed.c:514,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:517,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:522,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:523,1
    - Dst: xmlFuzzWriteString
      Src: /src/libxml2/fuzz/genSeed.c:526,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/genSeed.c:528,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/genSeed.c:532,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/genSeed.c:535,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 49
    argCount: 6
    argNames:
    - testDir
    - prefix
    - name
    - data
    - subdir
    - xptr
    argTypes:
    - char*
    - char*
    - char*
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 538
    functionName: processXPath
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - fgets
    - fopen
    - glob
    - xmlFuzzWriteString
    - stat
    - fclose
    - globfree
    - snprintf
    - fprintf
    - S_ISREG
    - xmlFuzzWriteInt
    linkageType: ''
    returnType: int
    signature: "int processXPath(const char *testDir, const char *prefix, const char
      *name,\n             const char *data, const char *subdir, int xptr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: processXPath
      Src: /src/libxml2/fuzz/genSeed.c:548,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/genSeed.c:551,1
    - Dst: glob
      Src: /src/libxml2/fuzz/genSeed.c:554,1
    - Dst: xmlSlurpFile
      Src: /src/libxml2/fuzz/genSeed.c:562,1
    - Dst: basename
      Src: /src/libxml2/fuzz/genSeed.c:567,1
    - Dst: processXPath
      Src: /src/libxml2/fuzz/genSeed.c:570,1
    - Dst: processXPath
      Src: /src/libxml2/fuzz/genSeed.c:572,1
    - Dst: processXPath
      Src: /src/libxml2/fuzz/genSeed.c:574,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/genSeed.c:577,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/genSeed.c:580,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 1
    argNames:
    - testDir
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 583
    functionName: processXPathDir
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - processXPath
    - xmlFree
    - glob
    - xmlSlurpFile
    - snprintf
    - basename
    - globfree
    linkageType: ''
    returnType: int
    signature: int processXPathDir(const char *testDir)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:594,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:599,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:605,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:611,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:617,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:621,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:626,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:631,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/genSeed.c:637,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:642,1
    - Dst: getcwd
      Src: /src/libxml2/fuzz/genSeed.c:647,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/genSeed.c:648,1
    - Dst: processArg
      Src: /src/libxml2/fuzz/genSeed.c:654,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 52
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 657
    functionName: main
    functionSourceFile: /src/libxml2/fuzz/genSeed.c
    functionUses: 0
    functionsReached:
    - fprintf
    - getcwd
    - processArg
    - strcmp
    linkageType: ''
    returnType: int
    signature: int main(int argc, const char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 389
    functionName: startOp
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - DEBUG
    linkageType: ''
    returnType: void
    signature: void startOp(const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:393,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionName: endOp
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - DEBUG
    linkageType: ''
    returnType: void
    signature: void endOp(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 403
    functionName: getInt
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - DEBUG
    linkageType: ''
    returnType: int
    signature: int getInt(int offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - offset
    - n
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 409
    functionName: setInt
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setInt(int offset, int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionName: incIntIdx
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void incIntIdx(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:424,1
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:426,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 418
    functionDepth: 1
    functionLinenumber: 418
    functionLinenumberEnd: 429
    functionName: getStr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - DEBUG
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      getStr(int offset)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionName: getCStr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - getStr
    linkageType: ''
    returnType: char
    signature: 'char *

      getCStr(int offset)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:444,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - offset
    - str
    argTypes:
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 445
    functionName: setStr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void setStr(int offset, xmlChar *str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:449,1
    - Dst: setStr
      Src: /src/libxml2/fuzz/api.c:450,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:451,1
    - Dst: setStr
      Src: /src/libxml2/fuzz/api.c:453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - offset
    - str
    argTypes:
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 447
    functionDepth: 1
    functionLinenumber: 447
    functionLinenumberEnd: 455
    functionName: moveStr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - setStr
    - xmlFree
    - xmlStrlen
    linkageType: ''
    returnType: void
    signature: void moveStr(int offset, xmlChar *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strndup
      Src: /src/libxml2/fuzz/api.c:468,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/api.c:470,1
    - Dst: abort
      Src: /src/libxml2/fuzz/api.c:471,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - str
    - size
    argTypes:
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 475
    functionName: uncheckedStrndup
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - fprintf
    - abort
    - strndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      uncheckedStrndup(const xmlChar *str, int size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: uncheckedStrndup
      Src: /src/libxml2/fuzz/api.c:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 477
    functionDepth: 1
    functionLinenumber: 477
    functionLinenumberEnd: 480
    functionName: uncheckedStrdup
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - uncheckedStrndup
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      uncheckedStrdup(const xmlChar *str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setStr
      Src: /src/libxml2/fuzz/api.c:484,1
    - Dst: uncheckedStrdup
      Src: /src/libxml2/fuzz/api.c:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - offset
    - str
    argTypes:
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 482
    functionDepth: 2
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionName: copyStr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - setStr
    - uncheckedStrdup
    linkageType: ''
    returnType: void
    signature: void copyStr(int offset, const xmlChar *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 490
    functionName: incStrIdx
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void incStrIdx(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:501,1
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:503,1
    - Dst: fflush
      Src: /src/libxml2/fuzz/api.c:504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 497
    functionDepth: 1
    functionLinenumber: 497
    functionLinenumberEnd: 506
    functionName: getNode
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - fflush
    - DEBUG
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr getNode(int offset)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:510,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 508
    functionDepth: 2
    functionLinenumber: 508
    functionLinenumberEnd: 515
    functionName: getDoc
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - getNode
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr getDoc(int offset)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 517
    functionDepth: 2
    functionLinenumber: 517
    functionLinenumberEnd: 529
    functionName: getAttr
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - getNode
    linkageType: ''
    returnType: xmlAttrPtr
    signature: xmlAttrPtr getAttr(int offset)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - offset
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 548
    functionName: getDtd
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - getNode
    linkageType: ''
    returnType: xmlDtdPtr
    signature: xmlDtdPtr getDtd(int offset)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:557,1
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:561,1
    - Dst: DEBUG
      Src: /src/libxml2/fuzz/api.c:563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - offset
    - node
    argTypes:
    - int
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 550
    functionDepth: 1
    functionLinenumber: 550
    functionLinenumberEnd: 564
    functionName: setNode
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - dropNode
    - DEBUG
    linkageType: ''
    returnType: void
    signature: void setNode(int offset, xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 566
    functionDepth: 1
    functionLinenumber: 566
    functionLinenumberEnd: 579
    functionName: incNodeIdx
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - dropNode
    linkageType: ''
    returnType: void
    signature: void incNodeIdx(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parent
    - childType
    argTypes:
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 584
    functionName: isValidChildType
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int isValidChildType(xmlNodePtr parent, int childType)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - parent
    - child
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 607
    functionName: isValidChild
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int isValidChild(xmlNodePtr parent, xmlNodePtr child)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - child
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 615
    functionName: isTextContentNode
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int isTextContentNode(xmlNodePtr child)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - child
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 617
    functionDepth: 0
    functionLinenumber: 617
    functionLinenumberEnd: 623
    functionName: isDtdChild
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int isDtdChild(xmlNodePtr child)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 632
    functionName: nodeGetTree
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr nodeGetTree(xmlNodePtr node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: nodeGetTree
      Src: /src/libxml2/fuzz/api.c:657,1
    - Dst: nodeGetTree
      Src: /src/libxml2/fuzz/api.c:670,1
    - Dst: isDtdChild
      Src: /src/libxml2/fuzz/api.c:676,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/fuzz/api.c:680,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/api.c:687,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 646
    functionDepth: 5
    functionLinenumber: 646
    functionLinenumberEnd: 688
    functionName: dropNode
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 2
    functionsReached:
    - xmlFreeDoc
    - nodeGetTree
    - isDtdChild
    - xmlFreeNode
    linkageType: ''
    returnType: void
    signature: void dropNode(xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 697
    functionDepth: 0
    functionLinenumber: 697
    functionLinenumberEnd: 704
    functionName: removeNode
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void removeNode(xmlNodePtr node)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 17
    argCount: 2
    argNames:
    - parent
    - self
    argTypes:
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 730
    functionName: removeChildren
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void removeChildren(xmlNodePtr parent, int self)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - node
    - k
    argTypes:
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 762
    functionName: nodeGetNs
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlNsPtr
    signature: xmlNsPtr nodeGetNs(xmlNodePtr node, int k)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:784,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/fuzz/api.c:785,1
    - Dst: uncheckedStrdup
      Src: /src/libxml2/fuzz/api.c:786,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 775
    functionDepth: 8
    functionLinenumber: 775
    functionLinenumberEnd: 788
    functionName: checkContent
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlNodeSetContent
    - uncheckedStrdup
    - xmlStrlen
    linkageType: ''
    returnType: void
    signature: void checkContent(xmlNodePtr node)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 819
    functionName: countNodes
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int countNodes(xmlNodePtr node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: countNodes
      Src: /src/libxml2/fuzz/api.c:827,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/api.c:830,1
    - Dst: xmlFreeNode
      Src: /src/libxml2/fuzz/api.c:832,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - copy
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 821
    functionDepth: 5
    functionLinenumber: 821
    functionLinenumberEnd: 837
    functionName: checkCopy
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - countNodes
    - xmlFreeDoc
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr checkCopy(xmlNodePtr copy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReconciliateNs
      Src: /src/libxml2/fuzz/api.c:850,1
    - Dst: xmlReconciliateNs
      Src: /src/libxml2/fuzz/api.c:855,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 844
    functionDepth: 7
    functionLinenumber: 844
    functionLinenumberEnd: 861
    functionName: fixNs
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlReconciliateNs
    linkageType: ''
    returnType: int
    signature: int fixNs(xmlNodePtr node)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:871,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:873,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:875,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:877,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:879,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:881,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:883,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:888,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:889,1
    - Dst: xmlGetLastChild
      Src: /src/libxml2/fuzz/api.c:902,1
    - Dst: xmlGetIntSubset
      Src: /src/libxml2/fuzz/api.c:904,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/fuzz/api.c:906,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:922,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 60
    argCount: 1
    argNames:
    - op
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 865
    functionDepth: 2
    functionLinenumber: 865
    functionLinenumberEnd: 923
    functionName: opNodeAccessor
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlGetIntSubset
    - getNode
    - setNode
    - startOp
    - xmlGetLastChild
    - incNodeIdx
    - xmlDocGetRootElement
    linkageType: ''
    returnType: void
    signature: void opNodeAccessor(int op)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:931,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:933,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:935,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/api.c:940,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:943,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:946,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:946,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:947,1
    - Dst: copyStr
      Src: /src/libxml2/fuzz/api.c:950,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:950,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:951,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:954,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:954,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 1
    argNames:
    - op
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 925
    functionDepth: 3
    functionLinenumber: 925
    functionLinenumberEnd: 960
    functionName: opDup
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - setInt
    - incIntIdx
    - setNode
    - endOp
    - getInt
    - copyStr
    - getNode
    - startOp
    - incNodeIdx
    - incStrIdx
    - xmlFuzzReadInt
    - getStr
    linkageType: ''
    returnType: void
    signature: void opDup(int op)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/api.c:965,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/api.c:966,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/api.c:968,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/api.c:969,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/api.c:971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 962
    functionDepth: 7
    functionLinenumber: 962
    functionLinenumberEnd: 974
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlSetGenericErrorFunc
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 359
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/libxml2/fuzz/api.c:984,1
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/api.c:986,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/api.c:988,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/api.c:989,1
    - Dst: xmlFuzzBytesRemaining
      Src: /src/libxml2/fuzz/api.c:1006,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/api.c:1008,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:1016,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:1017,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/api.c:1017,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1021,1
    - Dst: copyStr
      Src: /src/libxml2/fuzz/api.c:1022,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/api.c:1022,1
    - Dst: opDup
      Src: /src/libxml2/fuzz/api.c:1028,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1040,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1041,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1042,1
    - Dst: xmlReadDoc
      Src: /src/libxml2/fuzz/api.c:1042,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1043,1
    - Dst: getCStr
      Src: /src/libxml2/fuzz/api.c:1044,1
    - Dst: getCStr
      Src: /src/libxml2/fuzz/api.c:1045,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1046,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1057,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1058,1
    - Dst: xmlNewDoc
      Src: /src/libxml2/fuzz/api.c:1059,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1059,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1061,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1069,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1070,1
    - Dst: xmlNewNode
      Src: /src/libxml2/fuzz/api.c:1071,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1072,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1072,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1072,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1073,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1075,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1077,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1085,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1086,1
    - Dst: xmlNewNodeEatName
      Src: /src/libxml2/fuzz/api.c:1087,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1088,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1088,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1088,1
    - Dst: uncheckedStrdup
      Src: /src/libxml2/fuzz/api.c:1089,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1089,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1091,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1093,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1101,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1102,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/fuzz/api.c:1103,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1104,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1105,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1105,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1105,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1106,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1107,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1109,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1111,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1119,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1120,1
    - Dst: xmlNewDocNodeEatName
      Src: /src/libxml2/fuzz/api.c:1121,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1122,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1123,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1123,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1123,1
    - Dst: uncheckedStrdup
      Src: /src/libxml2/fuzz/api.c:1124,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1124,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1125,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1127,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1129,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1137,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1138,1
    - Dst: xmlNewDocRawNode
      Src: /src/libxml2/fuzz/api.c:1139,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1140,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1141,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1141,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1141,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1142,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1143,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1145,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1147,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1155,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1156,1
    - Dst: xmlNewChild
      Src: /src/libxml2/fuzz/api.c:1158,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1159,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1160,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1160,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1160,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1161,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1162,1
    - Dst: isValidChildType
      Src: /src/libxml2/fuzz/api.c:1165,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1168,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1176,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1177,1
    - Dst: xmlNewTextChild
      Src: /src/libxml2/fuzz/api.c:1179,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1180,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1181,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1181,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1181,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1182,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1183,1
    - Dst: isValidChildType
      Src: /src/libxml2/fuzz/api.c:1186,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1189,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1198,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1199,1
    - Dst: xmlNewProp
      Src: /src/libxml2/fuzz/api.c:1200,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1201,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1202,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1203,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1208,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1216,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1217,1
    - Dst: xmlNewDocProp
      Src: /src/libxml2/fuzz/api.c:1218,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1219,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1220,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1221,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1223,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1230,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1231,1
    - Dst: xmlNewNsProp
      Src: /src/libxml2/fuzz/api.c:1232,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1233,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1234,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1234,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1234,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1235,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1236,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1240,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1247,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1248,1
    - Dst: xmlNewNsPropEatName
      Src: /src/libxml2/fuzz/api.c:1249,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1250,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:1251,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1251,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1251,1
    - Dst: uncheckedStrdup
      Src: /src/libxml2/fuzz/api.c:1252,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1252,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1253,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1256,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1263,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1264,1
    - Dst: xmlNewText
      Src: /src/libxml2/fuzz/api.c:1265,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1265,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1267,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1275,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1276,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1277,1
    - Dst: xmlNewTextLen
      Src: /src/libxml2/fuzz/api.c:1278,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:1278,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1280,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1287,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1288,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/fuzz/api.c:1289,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1289,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1289,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1291,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1300,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1301,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1302,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1303,1
    - Dst: xmlNewDocTextLen
      Src: /src/libxml2/fuzz/api.c:1304,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:1304,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1306,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1314,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1315,1
    - Dst: xmlNewPI
      Src: /src/libxml2/fuzz/api.c:1316,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1317,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1318,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1320,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1328,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1329,1
    - Dst: xmlNewDocPI
      Src: /src/libxml2/fuzz/api.c:1330,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1331,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1332,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1333,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1335,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1342,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1343,1
    - Dst: xmlNewComment
      Src: /src/libxml2/fuzz/api.c:1344,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1344,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1346,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1353,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1354,1
    - Dst: xmlNewDocComment
      Src: /src/libxml2/fuzz/api.c:1355,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1356,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1357,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1359,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1368,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1369,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1370,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1371,1
    - Dst: xmlNewDocTextLen
      Src: /src/libxml2/fuzz/api.c:1372,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:1375,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1377,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1385,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1386,1
    - Dst: xmlNewCharRef
      Src: /src/libxml2/fuzz/api.c:1387,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1388,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1389,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1391,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1399,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1400,1
    - Dst: xmlNewReference
      Src: /src/libxml2/fuzz/api.c:1401,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1402,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1403,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1405,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1412,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1413,1
    - Dst: xmlNewDocFragment
      Src: /src/libxml2/fuzz/api.c:1414,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1414,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1416,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1424,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1425,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1426,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/fuzz/api.c:1428,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1430,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1431,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1432,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1435,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1443,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1444,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1445,1
    - Dst: xmlNewDtd
      Src: /src/libxml2/fuzz/api.c:1447,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1449,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1450,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1451,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1454,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1461,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1462,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/fuzz/api.c:1463,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1464,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1465,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1472,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:1472,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1479,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1480,1
    - Dst: xmlCopyNode
      Src: /src/libxml2/fuzz/api.c:1481,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1482,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1483,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1486,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:1486,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1493,1
    - Dst: xmlCopyNodeList
      Src: /src/libxml2/fuzz/api.c:1494,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1494,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/fuzz/api.c:1497,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1498,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1506,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1507,1
    - Dst: xmlDocCopyNode
      Src: /src/libxml2/fuzz/api.c:1508,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1509,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1510,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1511,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1514,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:1514,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1521,1
    - Dst: xmlDocCopyNodeList
      Src: /src/libxml2/fuzz/api.c:1522,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1523,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1524,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/fuzz/api.c:1527,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1528,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1535,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1536,1
    - Dst: xmlCopyProp
      Src: /src/libxml2/fuzz/api.c:1537,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1538,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:1539,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1552,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:1552,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1559,1
    - Dst: xmlCopyPropList
      Src: /src/libxml2/fuzz/api.c:1560,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1561,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:1562,1
    - Dst: xmlFreePropList
      Src: /src/libxml2/fuzz/api.c:1565,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1566,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1573,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1574,1
    - Dst: xmlCopyDtd
      Src: /src/libxml2/fuzz/api.c:1575,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:1576,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1578,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:1578,1
    - Dst: opNodeAccessor
      Src: /src/libxml2/fuzz/api.c:1589,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1596,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1597,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1598,1
    - Dst: copyStr
      Src: /src/libxml2/fuzz/api.c:1599,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1601,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1606,1
    - Dst: xmlNodeSetName
      Src: /src/libxml2/fuzz/api.c:1607,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1608,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1609,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1610,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1616,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1617,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/fuzz/api.c:1618,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1618,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1621,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1622,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1630,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1631,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:1632,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/fuzz/api.c:1633,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1635,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1637,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1646,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1647,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1648,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:1649,1
    - Dst: xmlNodeSetContentLen
      Src: /src/libxml2/fuzz/api.c:1650,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:1653,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1655,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1663,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1664,1
    - Dst: xmlNodeAddContent
      Src: /src/libxml2/fuzz/api.c:1665,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1667,1
    - Dst: checkContent
      Src: /src/libxml2/fuzz/api.c:1675,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1677,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1686,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1687,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1688,1
    - Dst: xmlNodeAddContentLen
      Src: /src/libxml2/fuzz/api.c:1689,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:1692,1
    - Dst: checkContent
      Src: /src/libxml2/fuzz/api.c:1700,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1702,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:1707,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1708,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:1709,1
    - Dst: xmlGetLineNo
      Src: /src/libxml2/fuzz/api.c:1709,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1709,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1711,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1717,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1718,1
    - Dst: xmlGetNodePath
      Src: /src/libxml2/fuzz/api.c:1719,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1719,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1722,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1723,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1731,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1732,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1733,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1734,1
    - Dst: isValidChild
      Src: /src/libxml2/fuzz/api.c:1737,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/fuzz/api.c:1742,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1748,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:1753,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:1756,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:1758,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1760,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:1765,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1766,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:1767,1
    - Dst: xmlNodeIsText
      Src: /src/libxml2/fuzz/api.c:1767,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1767,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1769,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1776,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1777,1
    - Dst: xmlNodeGetAttrValue
      Src: /src/libxml2/fuzz/api.c:1778,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1779,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1780,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1781,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1784,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1785,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1792,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1793,1
    - Dst: xmlNodeGetLang
      Src: /src/libxml2/fuzz/api.c:1794,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1794,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1797,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1798,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1807,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1808,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:1809,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:1813,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:1814,1
    - Dst: xmlNodeSetLang
      Src: /src/libxml2/fuzz/api.c:1815,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1817,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1819,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:1826,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1827,1
    - Dst: xmlNodeGetSpacePreserve
      Src: /src/libxml2/fuzz/api.c:1828,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1828,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:1831,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1832,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1841,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1842,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:1843,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:1847,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:1848,1
    - Dst: xmlNodeSetSpacePreserve
      Src: /src/libxml2/fuzz/api.c:1849,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:1851,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1853,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1860,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1861,1
    - Dst: xmlNodeGetBase
      Src: /src/libxml2/fuzz/api.c:1862,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1863,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1864,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1867,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1868,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1876,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1877,1
    - Dst: xmlNodeGetBaseSafe
      Src: /src/libxml2/fuzz/api.c:1878,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:1879,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1880,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1883,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1884,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1893,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1894,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:1895,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:1899,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:1900,1
    - Dst: xmlNodeSetBase
      Src: /src/libxml2/fuzz/api.c:1901,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1903,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1906,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1911,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1912,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:1913,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/fuzz/api.c:1913,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1913,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1921,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1922,1
    - Dst: xmlHasProp
      Src: /src/libxml2/fuzz/api.c:1923,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1924,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1925,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1939,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1947,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:1948,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:1949,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1950,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1951,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1952,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:1961,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1968,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1969,1
    - Dst: xmlGetProp
      Src: /src/libxml2/fuzz/api.c:1970,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1971,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1972,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1975,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1976,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1983,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:1984,1
    - Dst: xmlGetNsProp
      Src: /src/libxml2/fuzz/api.c:1985,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:1986,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1987,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:1988,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:1991,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:1992,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:1999,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2000,1
    - Dst: xmlGetNoNsProp
      Src: /src/libxml2/fuzz/api.c:2001,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2002,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2003,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:2006,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2007,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2019,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2020,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2021,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2022,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2023,1
    - Dst: xmlSplitQName3
      Src: /src/libxml2/fuzz/api.c:2028,1
    - Dst: uncheckedStrndup
      Src: /src/libxml2/fuzz/api.c:2030,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/fuzz/api.c:2031,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:2032,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2035,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2037,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:2038,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2040,1
    - Dst: xmlSetProp
      Src: /src/libxml2/fuzz/api.c:2042,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2048,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2058,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2059,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2060,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:2061,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2061,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2061,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2062,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2063,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2064,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:2065,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2067,1
    - Dst: xmlSetNsProp
      Src: /src/libxml2/fuzz/api.c:2068,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2074,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2076,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2085,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:2086,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2087,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2091,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:2097,1
    - Dst: xmlRemoveProp
      Src: /src/libxml2/fuzz/api.c:2097,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2099,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2100,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2109,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:2110,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2111,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2112,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2113,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:2114,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2116,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:2117,1
    - Dst: xmlUnsetProp
      Src: /src/libxml2/fuzz/api.c:2117,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2119,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2120,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2130,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:2131,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2132,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:2133,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2133,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2133,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2134,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2135,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:2136,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2138,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:2139,1
    - Dst: xmlUnsetNsProp
      Src: /src/libxml2/fuzz/api.c:2139,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2141,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2142,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2150,1
    - Dst: xmlNewNs
      Src: /src/libxml2/fuzz/api.c:2151,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2152,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2153,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2154,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/fuzz/api.c:2158,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2159,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2166,1
    - Dst: xmlSearchNs
      Src: /src/libxml2/fuzz/api.c:2167,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2168,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2169,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2170,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2173,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2180,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/fuzz/api.c:2181,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2182,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2183,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2184,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2187,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2194,1
    - Dst: xmlGetNsList
      Src: /src/libxml2/fuzz/api.c:2195,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2196,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2197,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:2200,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2201,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2209,1
    - Dst: xmlGetNsListSafe
      Src: /src/libxml2/fuzz/api.c:2210,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2211,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2212,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:2215,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2216,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2224,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2225,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:2226,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2226,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2226,1
    - Dst: xmlSetNs
      Src: /src/libxml2/fuzz/api.c:2227,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2230,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2233,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2240,1
    - Dst: xmlCopyNamespace
      Src: /src/libxml2/fuzz/api.c:2241,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:2242,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2242,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2242,1
    - Dst: xmlFreeNs
      Src: /src/libxml2/fuzz/api.c:2244,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2245,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2252,1
    - Dst: xmlCopyNamespaceList
      Src: /src/libxml2/fuzz/api.c:2253,1
    - Dst: nodeGetNs
      Src: /src/libxml2/fuzz/api.c:2254,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2254,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2254,1
    - Dst: xmlFreeNsList
      Src: /src/libxml2/fuzz/api.c:2256,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2257,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2265,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2266,1
    - Dst: isDtdChild
      Src: /src/libxml2/fuzz/api.c:2276,1
    - Dst: xmlUnlinkNode
      Src: /src/libxml2/fuzz/api.c:2283,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2286,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2288,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2290,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2298,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2299,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2300,1
    - Dst: isDtdChild
      Src: /src/libxml2/fuzz/api.c:2312,1
    - Dst: isValidChild
      Src: /src/libxml2/fuzz/api.c:2318,1
    - Dst: xmlReplaceNode
      Src: /src/libxml2/fuzz/api.c:2325,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2333,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2338,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2341,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2345,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2347,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2349,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2363,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2365,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2367,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2369,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2374,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2376,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2379,1
    - Dst: isDtdChild
      Src: /src/libxml2/fuzz/api.c:2386,1
    - Dst: isValidChild
      Src: /src/libxml2/fuzz/api.c:2387,1
    - Dst: xmlHasNsProp
      Src: /src/libxml2/fuzz/api.c:2395,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:2398,1
    - Dst: removeChildren
      Src: /src/libxml2/fuzz/api.c:2401,1
    - Dst: xmlAddChild
      Src: /src/libxml2/fuzz/api.c:2420,1
    - Dst: xmlAddSibling
      Src: /src/libxml2/fuzz/api.c:2423,1
    - Dst: xmlAddPrevSibling
      Src: /src/libxml2/fuzz/api.c:2426,1
    - Dst: xmlAddNextSibling
      Src: /src/libxml2/fuzz/api.c:2429,1
    - Dst: removeNode
      Src: /src/libxml2/fuzz/api.c:2436,1
    - Dst: checkContent
      Src: /src/libxml2/fuzz/api.c:2437,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2440,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2442,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:2446,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2450,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2452,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2455,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2463,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2464,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2465,1
    - Dst: xmlTextMerge
      Src: /src/libxml2/fuzz/api.c:2481,1
    - Dst: removeNode
      Src: /src/libxml2/fuzz/api.c:2484,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:2485,1
    - Dst: checkContent
      Src: /src/libxml2/fuzz/api.c:2486,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2488,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2497,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2498,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2499,1
    - Dst: xmlTextConcat
      Src: /src/libxml2/fuzz/api.c:2500,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:2503,1
    - Dst: isTextContentNode
      Src: /src/libxml2/fuzz/api.c:2504,1
    - Dst: checkContent
      Src: /src/libxml2/fuzz/api.c:2505,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2506,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2514,1
    - Dst: xmlStringGetNodeList
      Src: /src/libxml2/fuzz/api.c:2515,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2516,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2517,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/fuzz/api.c:2519,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2520,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2529,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2530,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2531,1
    - Dst: xmlStringLenGetNodeList
      Src: /src/libxml2/fuzz/api.c:2532,1
    - Dst: xmlStrlen
      Src: /src/libxml2/fuzz/api.c:2535,1
    - Dst: xmlFreeNodeList
      Src: /src/libxml2/fuzz/api.c:2537,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2538,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2547,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2548,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2549,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2550,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/fuzz/api.c:2551,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2554,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:2556,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2557,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2566,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2567,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2568,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2569,1
    - Dst: xmlNodeListGetRawString
      Src: /src/libxml2/fuzz/api.c:2570,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2573,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:2575,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2576,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2581,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:2582,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:2583,1
    - Dst: xmlIsXHTML
      Src: /src/libxml2/fuzz/api.c:2583,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2584,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2585,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2592,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2593,1
    - Dst: xmlAddElementDecl
      Src: /src/libxml2/fuzz/api.c:2594,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2596,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2597,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2598,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2602,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2609,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2610,1
    - Dst: xmlAddAttributeDecl
      Src: /src/libxml2/fuzz/api.c:2611,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2613,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2614,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2615,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2616,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2617,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2618,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2619,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2623,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2630,1
    - Dst: xmlAddNotationDecl
      Src: /src/libxml2/fuzz/api.c:2631,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2633,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2634,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2635,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2636,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2639,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2646,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2647,1
    - Dst: xmlGetDtdElementDesc
      Src: /src/libxml2/fuzz/api.c:2648,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2649,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2650,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2659,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2666,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2667,1
    - Dst: xmlGetDtdQElementDesc
      Src: /src/libxml2/fuzz/api.c:2668,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2669,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2670,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2671,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2675,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2682,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2683,1
    - Dst: xmlGetDtdAttrDesc
      Src: /src/libxml2/fuzz/api.c:2684,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2685,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2686,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2687,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2690,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2697,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2698,1
    - Dst: xmlGetDtdQAttrDesc
      Src: /src/libxml2/fuzz/api.c:2699,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2700,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2701,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2702,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2703,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2705,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2710,1
    - Dst: xmlGetDtdNotationDesc
      Src: /src/libxml2/fuzz/api.c:2711,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:2712,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2713,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2715,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2719,1
    - Dst: xmlAddID
      Src: /src/libxml2/fuzz/api.c:2720,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2722,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2723,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2724,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2725,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2731,1
    - Dst: xmlAddIDSafe
      Src: /src/libxml2/fuzz/api.c:2732,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2733,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2734,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2736,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2741,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2742,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2743,1
    - Dst: xmlGetID
      Src: /src/libxml2/fuzz/api.c:2743,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2744,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2745,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2752,1
    - Dst: xmlIsID
      Src: /src/libxml2/fuzz/api.c:2753,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2754,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2755,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2756,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2758,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2763,1
    - Dst: xmlRemoveID
      Src: /src/libxml2/fuzz/api.c:2764,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2765,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2766,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2768,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2777,1
    - Dst: xmlAddRef
      Src: /src/libxml2/fuzz/api.c:2778,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2780,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2781,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2782,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2788,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2793,1
    - Dst: xmlGetRefs
      Src: /src/libxml2/fuzz/api.c:2794,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2795,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2796,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2798,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2802,1
    - Dst: xmlIsRef
      Src: /src/libxml2/fuzz/api.c:2803,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2804,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:2805,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2806,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2808,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2814,1
    - Dst: xmlRemoveRef
      Src: /src/libxml2/fuzz/api.c:2815,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2816,1
    - Dst: getAttr
      Src: /src/libxml2/fuzz/api.c:2817,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2820,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2828,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2829,1
    - Dst: xmlNewEntity
      Src: /src/libxml2/fuzz/api.c:2830,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2831,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2832,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2833,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2834,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2835,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2836,1
    - Dst: xmlFreeEntity
      Src: /src/libxml2/fuzz/api.c:2840,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2843,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2851,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2852,1
    - Dst: xmlAddEntity
      Src: /src/libxml2/fuzz/api.c:2853,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2854,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2855,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2856,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2857,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2858,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2859,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2860,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2863,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2870,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2871,1
    - Dst: xmlAddDocEntity
      Src: /src/libxml2/fuzz/api.c:2872,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2873,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2874,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2875,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2876,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2877,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2878,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2881,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2888,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2889,1
    - Dst: xmlAddDtdEntity
      Src: /src/libxml2/fuzz/api.c:2890,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2891,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2892,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:2893,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2894,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2895,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2896,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2897,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2902,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2903,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2904,1
    - Dst: xmlGetPredefinedEntity
      Src: /src/libxml2/fuzz/api.c:2904,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2905,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2910,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2911,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2912,1
    - Dst: xmlGetDocEntity
      Src: /src/libxml2/fuzz/api.c:2912,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2913,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2914,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2919,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2920,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2921,1
    - Dst: xmlGetDtdEntity
      Src: /src/libxml2/fuzz/api.c:2921,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2922,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2923,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2928,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2929,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2930,1
    - Dst: xmlGetParameterEntity
      Src: /src/libxml2/fuzz/api.c:2930,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2931,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2932,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2940,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2941,1
    - Dst: xmlEncodeEntitiesReentrant
      Src: /src/libxml2/fuzz/api.c:2942,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2943,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2944,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:2946,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2947,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2955,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2956,1
    - Dst: xmlEncodeSpecialChars
      Src: /src/libxml2/fuzz/api.c:2957,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2958,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2959,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:2961,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:2962,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2970,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2971,1
    - Dst: htmlNewDoc
      Src: /src/libxml2/fuzz/api.c:2972,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2973,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2974,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2976,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2983,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:2984,1
    - Dst: htmlNewDocNoDtD
      Src: /src/libxml2/fuzz/api.c:2985,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2986,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:2987,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:2989,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:2996,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:2997,1
    - Dst: htmlGetMetaEncoding
      Src: /src/libxml2/fuzz/api.c:2998,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:2998,1
    - Dst: copyStr
      Src: /src/libxml2/fuzz/api.c:3001,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3010,1
    - Dst: htmlIsBooleanAttr
      Src: /src/libxml2/fuzz/api.c:3011,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:3011,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3013,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3023,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:3024,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3025,1
    - Dst: xmlNewValidCtxt
      Src: /src/libxml2/fuzz/api.c:3027,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:3028,1
    - Dst: xmlValidateDocument
      Src: /src/libxml2/fuzz/api.c:3033,1
    - Dst: xmlValidateElementDecl
      Src: /src/libxml2/fuzz/api.c:3036,1
    - Dst: xmlValidateAttributeDecl
      Src: /src/libxml2/fuzz/api.c:3040,1
    - Dst: xmlValidateElement
      Src: /src/libxml2/fuzz/api.c:3044,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/fuzz/api.c:3052,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:3053,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3054,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3062,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:3063,1
    - Dst: xmlNewValidCtxt
      Src: /src/libxml2/fuzz/api.c:3064,1
    - Dst: xmlValidateDtd
      Src: /src/libxml2/fuzz/api.c:3065,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3067,1
    - Dst: getDtd
      Src: /src/libxml2/fuzz/api.c:3068,1
    - Dst: xmlFreeValidCtxt
      Src: /src/libxml2/fuzz/api.c:3071,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:3072,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3073,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3091,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3093,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3095,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3097,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3099,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3101,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:3104,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3105,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/fuzz/api.c:3109,1
    - Dst: xmlDocDumpMemoryEnc
      Src: /src/libxml2/fuzz/api.c:3112,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:3113,1
    - Dst: xmlDocDumpFormatMemory
      Src: /src/libxml2/fuzz/api.c:3116,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3117,1
    - Dst: xmlDocDumpFormatMemoryEnc
      Src: /src/libxml2/fuzz/api.c:3120,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:3121,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3122,1
    - Dst: htmlDocDumpMemory
      Src: /src/libxml2/fuzz/api.c:3126,1
    - Dst: htmlDocDumpMemoryFormat
      Src: /src/libxml2/fuzz/api.c:3129,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3130,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:3138,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3139,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3163,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3165,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3167,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3169,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3171,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3173,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3175,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3177,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3179,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3181,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3183,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3185,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:3188,1
    - Dst: xmlBufferCreate
      Src: /src/libxml2/fuzz/api.c:3189,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:3190,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3191,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3193,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3194,1
    - Dst: xmlNodeDump
      Src: /src/libxml2/fuzz/api.c:3199,1
    - Dst: xmlNodeBufGetContent
      Src: /src/libxml2/fuzz/api.c:3202,1
    - Dst: xmlAttrSerializeTxtContent
      Src: /src/libxml2/fuzz/api.c:3207,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:3210,1
    - Dst: xmlDumpElementDecl
      Src: /src/libxml2/fuzz/api.c:3215,1
    - Dst: xmlDumpAttributeDecl
      Src: /src/libxml2/fuzz/api.c:3220,1
    - Dst: xmlDumpEntityDecl
      Src: /src/libxml2/fuzz/api.c:3228,1
    - Dst: xmlDumpElementTable
      Src: /src/libxml2/fuzz/api.c:3236,1
    - Dst: xmlDumpAttributeTable
      Src: /src/libxml2/fuzz/api.c:3245,1
    - Dst: xmlDumpNotationTable
      Src: /src/libxml2/fuzz/api.c:3254,1
    - Dst: xmlDumpEntitiesTable
      Src: /src/libxml2/fuzz/api.c:3263,1
    - Dst: htmlNodeDump
      Src: /src/libxml2/fuzz/api.c:3268,1
    - Dst: xmlBufferDetach
      Src: /src/libxml2/fuzz/api.c:3273,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:3276,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/fuzz/api.c:3277,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3278,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3297,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3299,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3301,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3303,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3305,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3307,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3309,1
    - Dst: incStrIdx
      Src: /src/libxml2/fuzz/api.c:3312,1
    - Dst: xmlOutputBufferCreateIO
      Src: /src/libxml2/fuzz/api.c:3313,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/api.c:3315,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3316,1
    - Dst: getStr
      Src: /src/libxml2/fuzz/api.c:3318,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3319,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3320,1
    - Dst: xmlSaveFileTo
      Src: /src/libxml2/fuzz/api.c:3328,1
    - Dst: xmlSaveFormatFileTo
      Src: /src/libxml2/fuzz/api.c:3333,1
    - Dst: xmlNodeDumpOutput
      Src: /src/libxml2/fuzz/api.c:3338,1
    - Dst: htmlDocContentDumpOutput
      Src: /src/libxml2/fuzz/api.c:3344,1
    - Dst: htmlDocContentDumpFormatOutput
      Src: /src/libxml2/fuzz/api.c:3348,1
    - Dst: htmlNodeDumpOutput
      Src: /src/libxml2/fuzz/api.c:3353,1
    - Dst: htmlNodeDumpFormatOutput
      Src: /src/libxml2/fuzz/api.c:3357,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:3368,1
    - Dst: copyStr
      Src: /src/libxml2/fuzz/api.c:3371,1
    - Dst: xmlBufContent
      Src: /src/libxml2/fuzz/api.c:3371,1
    - Dst: moveStr
      Src: /src/libxml2/fuzz/api.c:3373,1
    - Dst: xmlOutputBufferClose
      Src: /src/libxml2/fuzz/api.c:3374,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3378,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3387,1
    - Dst: xmlDOMWrapReconcileNamespaces
      Src: /src/libxml2/fuzz/api.c:3388,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3390,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3391,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3397,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3407,1
    - Dst: xmlDOMWrapNewCtxt
      Src: /src/libxml2/fuzz/api.c:3408,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3409,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3410,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3411,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3412,1
    - Dst: isValidChild
      Src: /src/libxml2/fuzz/api.c:3414,1
    - Dst: xmlDOMWrapAdoptNode
      Src: /src/libxml2/fuzz/api.c:3420,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3426,1
    - Dst: xmlAddChild
      Src: /src/libxml2/fuzz/api.c:3448,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:3454,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:3456,1
    - Dst: xmlDOMWrapFreeCtxt
      Src: /src/libxml2/fuzz/api.c:3459,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3460,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3469,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3470,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3471,1
    - Dst: xmlDOMWrapRemoveNode
      Src: /src/libxml2/fuzz/api.c:3473,1
    - Dst: fixNs
      Src: /src/libxml2/fuzz/api.c:3480,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:3482,1
    - Dst: endOp
      Src: /src/libxml2/fuzz/api.c:3484,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3494,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:3495,1
    - Dst: xmlDOMWrapNewCtxt
      Src: /src/libxml2/fuzz/api.c:3496,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3497,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3498,1
    - Dst: getDoc
      Src: /src/libxml2/fuzz/api.c:3499,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3500,1
    - Dst: isValidChildType
      Src: /src/libxml2/fuzz/api.c:3504,1
    - Dst: xmlDOMWrapCloneNode
      Src: /src/libxml2/fuzz/api.c:3508,1
    - Dst: getInt
      Src: /src/libxml2/fuzz/api.c:3515,1
    - Dst: checkCopy
      Src: /src/libxml2/fuzz/api.c:3521,1
    - Dst: xmlAddChild
      Src: /src/libxml2/fuzz/api.c:3536,1
    - Dst: xmlDOMWrapFreeCtxt
      Src: /src/libxml2/fuzz/api.c:3540,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:3541,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3546,1
    - Dst: incIntIdx
      Src: /src/libxml2/fuzz/api.c:3547,1
    - Dst: setInt
      Src: /src/libxml2/fuzz/api.c:3548,1
    - Dst: xmlChildElementCount
      Src: /src/libxml2/fuzz/api.c:3548,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3548,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3553,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:3554,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:3555,1
    - Dst: xmlFirstElementChild
      Src: /src/libxml2/fuzz/api.c:3555,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3555,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3560,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:3561,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:3562,1
    - Dst: xmlLastElementChild
      Src: /src/libxml2/fuzz/api.c:3562,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3562,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3567,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:3568,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:3569,1
    - Dst: xmlNextElementSibling
      Src: /src/libxml2/fuzz/api.c:3569,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3569,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/api.c:3574,1
    - Dst: incNodeIdx
      Src: /src/libxml2/fuzz/api.c:3575,1
    - Dst: setNode
      Src: /src/libxml2/fuzz/api.c:3576,1
    - Dst: xmlPreviousElementSibling
      Src: /src/libxml2/fuzz/api.c:3576,1
    - Dst: getNode
      Src: /src/libxml2/fuzz/api.c:3576,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/api.c:3584,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/api.c:3588,1
    - Dst: dropNode
      Src: /src/libxml2/fuzz/api.c:3594,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/api.c:3597,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/api.c:3598,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/api.c:3599,1
    CyclomaticComplexity: 458
    EdgeCount: 458
    ICount: 1657
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3601
      start: 976
    functionDepth: 16
    functionLinenumber: 976
    functionLinenumberEnd: 3601
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlNodeGetSpacePreserve
    - xmlNodeAddContentLen
    - getNode
    - xmlDocCopyNode
    - xmlReplaceNode
    - htmlNewDoc
    - isDtdChild
    - xmlNodeSetSpacePreserve
    - xmlGetNsList
    - xmlGetDtdAttrDesc
    - xmlFuzzCheckFailureReport
    - isTextContentNode
    - xmlIsXHTML
    - getAttr
    - xmlDocSetRootElement
    - xmlNewText
    - xmlFuzzResetFailure
    - isValidChildType
    - xmlGetNsListSafe
    - xmlAttrSerializeTxtContent
    - xmlDumpElementDecl
    - xmlValidateDocument
    - xmlAddPrevSibling
    - xmlGetNsProp
    - xmlStringGetNodeList
    - xmlFuzzReadString
    - xmlLastElementChild
    - xmlGetDtdEntity
    - xmlAddNotationDecl
    - xmlNodeDump
    - xmlNodeDumpOutput
    - xmlIsBlankNode
    - xmlDOMWrapNewCtxt
    - xmlNewDocRawNode
    - xmlNewDocFragment
    - xmlNodeListGetString
    - xmlSetNsProp
    - xmlFreePropList
    - xmlFuzzDataCleanup
    - xmlSetNs
    - xmlGetDtdQElementDesc
    - dropNode
    - xmlNewDocComment
    - xmlGetNodePath
    - setNode
    - xmlNewChild
    - xmlPreviousElementSibling
    - xmlCopyDtd
    - xmlUnsetProp
    - htmlDocContentDumpOutput
    - xmlBufferFree
    - xmlNodeSetName
    - xmlDOMWrapCloneNode
    - endOp
    - xmlSearchNsByHref
    - xmlNodeGetBaseSafe
    - incNodeIdx
    - incStrIdx
    - xmlFreeNs
    - xmlNewNsPropEatName
    - xmlNewPI
    - xmlHasProp
    - xmlUnsetNsProp
    - incIntIdx
    - removeNode
    - xmlFree
    - xmlNewProp
    - xmlDumpEntityDecl
    - xmlGetDocEntity
    - xmlNewDocTextLen
    - xmlAddChild
    - xmlDocDumpMemoryEnc
    - isValidChild
    - xmlNextElementSibling
    - xmlCopyDoc
    - xmlGetPredefinedEntity
    - xmlStrlen
    - copyStr
    - xmlDumpEntitiesTable
    - xmlDOMWrapReconcileNamespaces
    - moveStr
    - xmlDocDumpMemory
    - xmlGetID
    - getStr
    - xmlNodeSetContentLen
    - xmlRemoveID
    - xmlBufContent
    - xmlNewDocNode
    - nodeGetNs
    - xmlNodeSetBase
    - xmlNewDtd
    - xmlCopyPropList
    - xmlNodeGetAttrValue
    - xmlAddSibling
    - xmlOutputBufferCreateIO
    - xmlOutputBufferClose
    - xmlNewNode
    - getCStr
    - xmlGetProp
    - xmlUnlinkNode
    - xmlNodeGetContent
    - xmlTextConcat
    - xmlNewDocPI
    - xmlIsID
    - xmlNewCharRef
    - xmlSplitQName3
    - xmlGetDtdNotationDesc
    - xmlAddNextSibling
    - xmlNodeGetBase
    - xmlCopyNode
    - xmlAddDtdEntity
    - xmlAddDocEntity
    - xmlGetDtdQAttrDesc
    - opNodeAccessor
    - xmlAddID
    - xmlIsRef
    - xmlDumpAttributeDecl
    - xmlNewDocProp
    - xmlNodeBufGetContent
    - xmlGetParameterEntity
    - htmlNodeDumpOutput
    - checkCopy
    - xmlSetProp
    - getDoc
    - fixNs
    - xmlGetDtdElementDesc
    - xmlGetRefs
    - xmlBufferDetach
    - xmlFuzzInjectFailure
    - xmlValidateElementDecl
    - xmlResetLastError
    - xmlReadDoc
    - xmlCopyNamespaceList
    - xmlGetLineNo
    - xmlValidateDtd
    - xmlNewDocText
    - xmlFreeEntity
    - xmlNewEntity
    - xmlDocDumpFormatMemoryEnc
    - xmlGetNoNsProp
    - uncheckedStrndup
    - getInt
    - xmlNewTextChild
    - xmlDocCopyNodeList
    - xmlNewValidCtxt
    - opDup
    - xmlBufferCreate
    - xmlNewComment
    - xmlRemoveProp
    - xmlNewReference
    - xmlCopyProp
    - xmlEncodeSpecialChars
    - xmlHasNsProp
    - xmlNewNodeEatName
    - xmlEncodeEntitiesReentrant
    - xmlNodeListGetRawString
    - xmlNodeIsText
    - xmlFuzzReadInt
    - xmlDocDumpFormatMemory
    - htmlDocDumpMemory
    - htmlNodeDump
    - setInt
    - xmlCopyNodeList
    - removeChildren
    - htmlGetMetaEncoding
    - xmlValidateElement
    - xmlFreeNsList
    - xmlDumpElementTable
    - htmlDocDumpMemoryFormat
    - htmlNewDocNoDtD
    - xmlFreeValidCtxt
    - xmlRemoveRef
    - xmlNodeAddContent
    - xmlNewNs
    - checkContent
    - xmlAddElementDecl
    - xmlDumpAttributeTable
    - xmlNewNsProp
    - xmlDOMWrapFreeCtxt
    - xmlFirstElementChild
    - xmlDumpNotationTable
    - xmlNewDocNodeEatName
    - xmlDOMWrapRemoveNode
    - htmlDocContentDumpFormatOutput
    - xmlCopyNamespace
    - xmlTextMerge
    - xmlAddRef
    - xmlNewDoc
    - xmlSaveFileTo
    - xmlSaveFormatFileTo
    - xmlNewTextLen
    - uncheckedStrdup
    - xmlChildElementCount
    - xmlStringLenGetNodeList
    - xmlValidateAttributeDecl
    - xmlNodeGetLang
    - memset
    - xmlFreeNodeList
    - xmlAddAttributeDecl
    - xmlAddEntity
    - xmlFuzzDataInit
    - startOp
    - xmlFuzzBytesRemaining
    - getDtd
    - xmlSearchNs
    - htmlNodeDumpFormatOutput
    - xmlNodeSetContent
    - xmlAddIDSafe
    - htmlIsBooleanAttr
    - xmlCreateIntSubset
    - xmlDOMWrapAdoptNode
    - xmlNodeSetLang
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/api.c:3611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3613
      start: 3603
    functionDepth: 1
    functionLinenumber: 3603
    functionLinenumberEnd: 3613
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/api.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: xmlFuzzErrorFunc
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlFuzzErrorFunc(void *ctx ATTRIBUTE_UNUSED, const char *msg
      ATTRIBUTE_UNUSED,\n                 ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    - xmlError*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: xmlFuzzSErrorFunc
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void xmlFuzzSErrorFunc(void *ctx ATTRIBUTE_UNUSED,\n                  const
      xmlError *error ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - failurePos
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: xmlFuzzInjectFailure
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlFuzzInjectFailure(size_t failurePos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/libxml2/fuzz/fuzz.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 104
    functionName: xmlFuzzTryMalloc
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - abort
    linkageType: ''
    returnType: int
    signature: int xmlFuzzTryMalloc(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: abort
      Src: /src/libxml2/fuzz/fuzz.c:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionName: xmlFuzzTryIo
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - abort
    linkageType: ''
    returnType: int
    signature: int xmlFuzzTryIo(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzTryMalloc
      Src: /src/libxml2/fuzz/fuzz.c:126,1
    - Dst: malloc
      Src: /src/libxml2/fuzz/fuzz.c:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionName: xmlFuzzMalloc
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - malloc
    - xmlFuzzTryMalloc
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlFuzzMalloc(size_t size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzTryMalloc
      Src: /src/libxml2/fuzz/fuzz.c:140,1
    - Dst: realloc
      Src: /src/libxml2/fuzz/fuzz.c:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 148
    functionName: xmlFuzzRealloc
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlFuzzTryMalloc
    - realloc
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlFuzzRealloc(void *ptr, size_t size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemSetup
      Src: /src/libxml2/fuzz/fuzz.c:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: xmlFuzzMemSetup
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 6
    functionsReached:
    - xmlMemSetup
    linkageType: ''
    returnType: void
    signature: void xmlFuzzMemSetup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: xmlFuzzMallocFailed
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlFuzzMallocFailed(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 164
    functionName: xmlFuzzResetFailure
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlFuzzResetFailure(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/fuzz/fuzz.c:169,1
    - Dst: abort
      Src: /src/libxml2/fuzz/fuzz.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/fuzz.c:174,1
    - Dst: abort
      Src: /src/libxml2/fuzz/fuzz.c:176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - func
    - oomReport
    - ioReport
    argTypes:
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 180
    functionName: xmlFuzzCheckFailureReport
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 3
    functionsReached:
    - fprintf
    - abort
    linkageType: ''
    returnType: void
    signature: void xmlFuzzCheckFailureReport(const char *func, int oomReport, int
      ioReport)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/fuzz/fuzz.c:194,1
    - Dst: xmlHashCreate
      Src: /src/libxml2/fuzz/fuzz.c:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 187
    functionDepth: 5
    functionLinenumber: 187
    functionLinenumberEnd: 202
    functionName: xmlFuzzDataInit
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 7
    functionsReached:
    - xmlMalloc
    - xmlHashCreate
    linkageType: ''
    returnType: void
    signature: void xmlFuzzDataInit(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/fuzz.c:211,1
    - Dst: xmlHashFree
      Src: /src/libxml2/fuzz/fuzz.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 209
    functionDepth: 2
    functionLinenumber: 209
    functionLinenumberEnd: 213
    functionName: xmlFuzzDataCleanup
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 7
    functionsReached:
    - xmlFree
    - xmlHashFree
    linkageType: ''
    returnType: void
    signature: void xmlFuzzDataCleanup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:228,1
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:235,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - out
    - v
    - size
    argTypes:
    - FILE*
    - size_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 237
    functionName: xmlFuzzWriteInt
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 6
    functionsReached:
    - putc
    linkageType: ''
    returnType: void
    signature: void xmlFuzzWriteInt(FILE *out, size_t v, int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - size
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 257
    functionName: xmlFuzzReadInt
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t xmlFuzzReadInt(int size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionName: xmlFuzzBytesRemaining
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t xmlFuzzBytesRemaining(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 275
    functionDepth: 0
    functionLinenumber: 275
    functionLinenumberEnd: 284
    functionName: xmlFuzzReadRemaining
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzReadRemaining(size_t *size)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:299,1
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:301,1
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:303,1
    - Dst: putc
      Src: /src/libxml2/fuzz/fuzz.c:304,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - out
    - str
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 305
    functionName: xmlFuzzWriteString
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 5
    functionsReached:
    - putc
    linkageType: ''
    returnType: void
    signature: void xmlFuzzWriteString(FILE *out, const char *str)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 357
    functionName: xmlFuzzReadString
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzReadString(size_t *size)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/fuzz.c:374,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/fuzz.c:377,1
    - Dst: xmlHashLookup
      Src: /src/libxml2/fuzz/fuzz.c:385,1
    - Dst: xmlMalloc
      Src: /src/libxml2/fuzz/fuzz.c:386,1
    - Dst: xmlHashAddEntry
      Src: /src/libxml2/fuzz/fuzz.c:392,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 365
    functionDepth: 4
    functionLinenumber: 365
    functionLinenumberEnd: 405
    functionName: xmlFuzzReadEntities
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 3
    functionsReached:
    - xmlMalloc
    - xmlHashLookup
    - xmlFuzzReadString
    - xmlHashAddEntry
    linkageType: ''
    returnType: void
    signature: void xmlFuzzReadEntities(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 415
    functionName: xmlFuzzMainUrl
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzMainUrl(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 429
    functionName: xmlFuzzMainEntity
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzMainEntity(size_t *size)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 439
    functionName: xmlFuzzSecondaryUrl
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzSecondaryUrl(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 453
    functionName: xmlFuzzSecondaryEntity
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlFuzzSecondaryEntity(size_t *size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlHashLookup
      Src: /src/libxml2/fuzz/fuzz.c:469,1
    - Dst: xmlFuzzTryIo
      Src: /src/libxml2/fuzz/fuzz.c:474,1
    - Dst: xmlNewInputFromMemory
      Src: /src/libxml2/fuzz/fuzz.c:477,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 6
    argNames:
    - ATTRIBUTE_UNUSED
    - URL
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - out
    argTypes:
    - void*
    - char*
    - char*
    - xmlResourceType
    - xmlParserInputFlags
    - xmlParserInputPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 460
    functionDepth: 6
    functionLinenumber: 460
    functionLinenumberEnd: 485
    functionName: xmlFuzzResourceLoader
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlHashLookup
    - xmlNewInputFromMemory
    - xmlFuzzTryIo
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors xmlFuzzResourceLoader(void *data ATTRIBUTE_UNUSED,
      const char *URL,\n                      const char *ID ATTRIBUTE_UNUSED,\n                      xmlResourceType
      type ATTRIBUTE_UNUSED,\n                      xmlParserInputFlags flags ATTRIBUTE_UNUSED,\n
      \                     xmlParserInputPtr *out)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/libxml2/fuzz/fuzz.c:494,1
    - Dst: S_ISREG
      Src: /src/libxml2/fuzz/fuzz.c:494,1
    - Dst: fopen
      Src: /src/libxml2/fuzz/fuzz.c:497,1
    - Dst: xmlMalloc
      Src: /src/libxml2/fuzz/fuzz.c:500,1
    - Dst: fread
      Src: /src/libxml2/fuzz/fuzz.c:502,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/fuzz.c:503,1
    - Dst: fclose
      Src: /src/libxml2/fuzz/fuzz.c:511,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - path
    - sizeRet
    argTypes:
    - char*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 487
    functionDepth: 1
    functionLinenumber: 487
    functionLinenumberEnd: 514
    functionName: xmlSlurpFile
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - fopen
    - fclose
    - xmlMalloc
    - stat
    - fread
    - S_ISREG
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSlurpFile(const char *path, size_t *sizeRet)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzTryIo
      Src: /src/libxml2/fuzz/fuzz.c:519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 523
    functionName: xmlFuzzOutputWrite
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlFuzzTryIo
    linkageType: ''
    returnType: int
    signature: "int xmlFuzzOutputWrite(void *ctxt ATTRIBUTE_UNUSED,\n                   const
      char *buffer ATTRIBUTE_UNUSED, int len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzTryIo
      Src: /src/libxml2/fuzz/fuzz.c:527,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ATTRIBUTE_UNUSED
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 531
    functionName: xmlFuzzOutputClose
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 0
    functionsReached:
    - xmlFuzzTryIo
    linkageType: ''
    returnType: int
    signature: int xmlFuzzOutputClose(void *ctxt ATTRIBUTE_UNUSED)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: mutator
      Src: /src/libxml2/fuzz/fuzz.c:588,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 6
    argNames:
    - chunks
    - data
    - size
    - maxSize
    - seed
    - mutator
    argTypes:
    - xmlFuzzChunkDesc*
    - char*
    - size_t
    - size_t
    - unsigned
    - xmlFuzzMutator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 602
    functionName: xmlFuzzMutateChunks
    functionSourceFile: /src/libxml2/fuzz/fuzz.c
    functionUses: 5
    functionsReached:
    - mutator
    linkageType: ''
    returnType: size_t
    signature: "size_t xmlFuzzMutateChunks(const xmlFuzzChunkDesc *chunks,\n                    char
      *data, size_t size, size_t maxSize, unsigned seed,\n                    xmlFuzzMutator
      mutator)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - size
    - maxSize
    argTypes:
    - char*
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 25
    functionName: LLVMFuzzerMutate
    functionSourceFile: /src/libxml2/fuzz/testFuzzer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t LLVMFuzzerMutate(char *data, size_t size, size_t maxSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: glob
      Src: /src/libxml2/fuzz/testFuzzer.c:171,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/testFuzzer.c:172,1
    - Dst: init
      Src: /src/libxml2/fuzz/testFuzzer.c:177,1
    - Dst: xmlSlurpFile
      Src: /src/libxml2/fuzz/testFuzzer.c:184,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/testFuzzer.c:186,1
    - Dst: fuzz
      Src: /src/libxml2/fuzz/testFuzzer.c:189,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/testFuzzer.c:190,1
    - Dst: globfree
      Src: /src/libxml2/fuzz/testFuzzer.c:197,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - init
    - fuzz
    - mutate
    - pattern
    argTypes:
    - initFunc
    - fuzzFunc
    - mutateFunc
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 199
    functionName: testFuzzer
    functionSourceFile: /src/libxml2/fuzz/testFuzzer.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - fuzz
    - init
    - glob
    - globfree
    - xmlSlurpFile
    - fprintf
    linkageType: ''
    returnType: int
    signature: "int testFuzzer(initFunc init, fuzzFunc fuzz, mutateFunc mutate,\n
      \          const char *pattern)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/testFuzzer.c:219,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/testFuzzer.c:220,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/testFuzzer.c:222,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/testFuzzer.c:223,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/testFuzzer.c:224,1
    - Dst: xmlFuzzSecondaryUrl
      Src: /src/libxml2/fuzz/testFuzzer.c:228,1
    - Dst: strcmp
      Src: /src/libxml2/fuzz/testFuzzer.c:229,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/testFuzzer.c:230,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/testFuzzer.c:234,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/testFuzzer.c:235,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/testFuzzer.c:236,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/fuzz/testFuzzer.c:237,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/testFuzzer.c:239,1
    - Dst: xmlDocDumpMemory
      Src: /src/libxml2/fuzz/testFuzzer.c:249,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/fuzz/testFuzzer.c:250,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/testFuzzer.c:251,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/testFuzzer.c:254,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/testFuzzer.c:258,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/testFuzzer.c:259,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 202
    functionDepth: 14
    functionLinenumber: 202
    functionLinenumberEnd: 262
    functionName: testEntityLoader
    functionSourceFile: /src/libxml2/fuzz/testFuzzer.c
    functionUses: 0
    functionsReached:
    - xmlFreeDoc
    - xmlFree
    - xmlCtxtReadMemory
    - xmlCtxtSetResourceLoader
    - xmlNewParserCtxt
    - xmlFuzzDataInit
    - strcmp
    - xmlFuzzMainUrl
    - xmlStrcmp
    - xmlDocDumpMemory
    - xmlFuzzReadEntities
    - xmlFuzzDataCleanup
    - fprintf
    - xmlFuzzMainEntity
    - xmlFuzzSecondaryUrl
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int testEntityLoader(void)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: testEntityLoader
      Src: /src/libxml2/fuzz/testFuzzer.c:270,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:274,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:279,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:284,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:289,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:294,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:299,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:304,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:309,1
    - Dst: testFuzzer
      Src: /src/libxml2/fuzz/testFuzzer.c:314,1
    - Dst: printf
      Src: /src/libxml2/fuzz/testFuzzer.c:320,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 265
    functionDepth: 15
    functionLinenumber: 265
    functionLinenumberEnd: 323
    functionName: main
    functionSourceFile: /src/libxml2/fuzz/testFuzzer.c
    functionUses: 0
    functionsReached:
    - testFuzzer
    - printf
    - testEntityLoader
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/fuzz/reader.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: startOp
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 3
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void startOp(const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/reader.c:93,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/reader.c:94,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/reader.c:96,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/reader.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 90
    functionDepth: 7
    functionLinenumber: 90
    functionLinenumberEnd: 101
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlInitializeCatalog
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 68
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/reader.c:115,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/reader.c:116,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/reader.c:117,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/reader.c:119,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/reader.c:123,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/reader.c:124,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/reader.c:129,1
    - Dst: putc
      Src: /src/libxml2/fuzz/reader.c:134,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/reader.c:136,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/reader.c:138,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/reader.c:141,1
    - Dst: xmlReaderForMemory
      Src: /src/libxml2/fuzz/reader.c:142,1
    - Dst: xmlTextReaderSetStructuredErrorHandler
      Src: /src/libxml2/fuzz/reader.c:146,1
    - Dst: xmlTextReaderSetResourceLoader
      Src: /src/libxml2/fuzz/reader.c:147,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:165,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/fuzz/reader.c:166,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:172,1
    - Dst: xmlTextReaderReadInnerXml
      Src: /src/libxml2/fuzz/reader.c:173,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:174,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:181,1
    - Dst: xmlTextReaderReadOuterXml
      Src: /src/libxml2/fuzz/reader.c:182,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:183,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:190,1
    - Dst: xmlTextReaderReadString
      Src: /src/libxml2/fuzz/reader.c:191,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:192,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:197,1
    - Dst: xmlTextReaderReadAttributeValue
      Src: /src/libxml2/fuzz/reader.c:198,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:202,1
    - Dst: xmlTextReaderAttributeCount
      Src: /src/libxml2/fuzz/reader.c:203,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:207,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/fuzz/reader.c:208,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:212,1
    - Dst: xmlTextReaderHasAttributes
      Src: /src/libxml2/fuzz/reader.c:213,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:217,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/fuzz/reader.c:218,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:222,1
    - Dst: xmlTextReaderIsDefault
      Src: /src/libxml2/fuzz/reader.c:223,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:227,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/fuzz/reader.c:228,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:232,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/fuzz/reader.c:233,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:237,1
    - Dst: xmlTextReaderQuoteChar
      Src: /src/libxml2/fuzz/reader.c:238,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:242,1
    - Dst: xmlTextReaderReadState
      Src: /src/libxml2/fuzz/reader.c:243,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:247,1
    - Dst: xmlTextReaderIsNamespaceDecl
      Src: /src/libxml2/fuzz/reader.c:248,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:252,1
    - Dst: xmlTextReaderConstBaseUri
      Src: /src/libxml2/fuzz/reader.c:253,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:257,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/fuzz/reader.c:258,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:262,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/fuzz/reader.c:263,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:267,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/fuzz/reader.c:268,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:272,1
    - Dst: xmlTextReaderConstPrefix
      Src: /src/libxml2/fuzz/reader.c:273,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:277,1
    - Dst: xmlTextReaderConstXmlLang
      Src: /src/libxml2/fuzz/reader.c:278,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:283,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/fuzz/reader.c:284,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:290,1
    - Dst: xmlTextReaderBaseUri
      Src: /src/libxml2/fuzz/reader.c:291,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:292,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:299,1
    - Dst: xmlTextReaderLocalName
      Src: /src/libxml2/fuzz/reader.c:300,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:301,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:308,1
    - Dst: xmlTextReaderName
      Src: /src/libxml2/fuzz/reader.c:309,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:310,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:317,1
    - Dst: xmlTextReaderNamespaceUri
      Src: /src/libxml2/fuzz/reader.c:318,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:319,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:326,1
    - Dst: xmlTextReaderPrefix
      Src: /src/libxml2/fuzz/reader.c:327,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:328,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:335,1
    - Dst: xmlTextReaderXmlLang
      Src: /src/libxml2/fuzz/reader.c:336,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:338,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:345,1
    - Dst: xmlTextReaderValue
      Src: /src/libxml2/fuzz/reader.c:346,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:347,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:352,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/fuzz/reader.c:354,1
    - Dst: xmlTextReaderClose
      Src: /src/libxml2/fuzz/reader.c:355,1
    - Dst: READ_BYTE
      Src: /src/libxml2/fuzz/reader.c:360,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:362,1
    - Dst: xmlTextReaderGetAttributeNo
      Src: /src/libxml2/fuzz/reader.c:363,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:364,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/fuzz/reader.c:369,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:372,1
    - Dst: xmlTextReaderGetAttribute
      Src: /src/libxml2/fuzz/reader.c:373,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:374,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:382,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/fuzz/reader.c:383,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/fuzz/reader.c:384,1
    - Dst: xmlTextReaderGetAttributeNs
      Src: /src/libxml2/fuzz/reader.c:385,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:387,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:392,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/fuzz/reader.c:394,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/libxml2/fuzz/reader.c:395,1
    - Dst: xmlTextReaderGetRemainder
      Src: /src/libxml2/fuzz/reader.c:395,1
    - Dst: xmlTextReaderConstPrefix
      Src: /src/libxml2/fuzz/reader.c:399,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:402,1
    - Dst: xmlTextReaderLookupNamespace
      Src: /src/libxml2/fuzz/reader.c:403,1
    - Dst: FREE_STRING
      Src: /src/libxml2/fuzz/reader.c:404,1
    - Dst: READ_BYTE
      Src: /src/libxml2/fuzz/reader.c:409,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:411,1
    - Dst: xmlTextReaderMoveToAttributeNo
      Src: /src/libxml2/fuzz/reader.c:412,1
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/fuzz/reader.c:417,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:419,1
    - Dst: xmlTextReaderMoveToAttribute
      Src: /src/libxml2/fuzz/reader.c:420,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:427,1
    - Dst: xmlTextReaderConstLocalName
      Src: /src/libxml2/fuzz/reader.c:428,1
    - Dst: xmlTextReaderConstNamespaceUri
      Src: /src/libxml2/fuzz/reader.c:429,1
    - Dst: xmlTextReaderMoveToAttributeNs
      Src: /src/libxml2/fuzz/reader.c:430,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:436,1
    - Dst: xmlTextReaderMoveToFirstAttribute
      Src: /src/libxml2/fuzz/reader.c:437,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:441,1
    - Dst: xmlTextReaderMoveToNextAttribute
      Src: /src/libxml2/fuzz/reader.c:442,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:446,1
    - Dst: xmlTextReaderMoveToElement
      Src: /src/libxml2/fuzz/reader.c:447,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:451,1
    - Dst: xmlTextReaderNormalization
      Src: /src/libxml2/fuzz/reader.c:452,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:456,1
    - Dst: xmlTextReaderConstEncoding
      Src: /src/libxml2/fuzz/reader.c:457,1
    - Dst: READ_BYTE
      Src: /src/libxml2/fuzz/reader.c:461,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:463,1
    - Dst: xmlTextReaderGetParserProp
      Src: /src/libxml2/fuzz/reader.c:464,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:469,1
    - Dst: xmlTextReaderCurrentNode
      Src: /src/libxml2/fuzz/reader.c:470,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:474,1
    - Dst: xmlTextReaderGetParserLineNumber
      Src: /src/libxml2/fuzz/reader.c:475,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:479,1
    - Dst: xmlTextReaderGetParserColumnNumber
      Src: /src/libxml2/fuzz/reader.c:480,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:484,1
    - Dst: xmlTextReaderPreserve
      Src: /src/libxml2/fuzz/reader.c:485,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:491,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/fuzz/reader.c:492,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:499,1
    - Dst: xmlTextReaderExpand
      Src: /src/libxml2/fuzz/reader.c:500,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:504,1
    - Dst: xmlTextReaderNext
      Src: /src/libxml2/fuzz/reader.c:505,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:509,1
    - Dst: xmlTextReaderNextSibling
      Src: /src/libxml2/fuzz/reader.c:510,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:514,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/fuzz/reader.c:515,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:519,1
    - Dst: xmlTextReaderConstXmlVersion
      Src: /src/libxml2/fuzz/reader.c:520,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:524,1
    - Dst: xmlTextReaderStandalone
      Src: /src/libxml2/fuzz/reader.c:525,1
    - Dst: startOp
      Src: /src/libxml2/fuzz/reader.c:529,1
    - Dst: xmlTextReaderByteConsumed
      Src: /src/libxml2/fuzz/reader.c:530,1
    - Dst: xmlTextReaderGetLastError
      Src: /src/libxml2/fuzz/reader.c:539,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/reader.c:542,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/fuzz/reader.c:544,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/reader.c:547,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/reader.c:550,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/reader.c:551,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/reader.c:552,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 317
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 103
    functionDepth: 9
    functionLinenumber: 103
    functionLinenumberEnd: 554
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderMoveToFirstAttribute
    - xmlFuzzCheckFailureReport
    - FREE_STRING
    - xmlTextReaderGetRemainder
    - xmlTextReaderNext
    - xmlTextReaderNodeType
    - xmlFuzzReadString
    - xmlReaderForMemory
    - xmlTextReaderXmlLang
    - READ_BYTE
    - xmlTextReaderGetParserColumnNumber
    - xmlTextReaderClose
    - xmlTextReaderQuoteChar
    - xmlFuzzDataCleanup
    - xmlTextReaderSetResourceLoader
    - xmlTextReaderName
    - xmlTextReaderStandalone
    - xmlTextReaderHasValue
    - xmlTextReaderReadString
    - xmlFuzzMainEntity
    - xmlTextReaderLocalName
    - xmlTextReaderRead
    - xmlTextReaderBaseUri
    - xmlTextReaderLookupNamespace
    - fprintf
    - xmlTextReaderHasAttributes
    - xmlTextReaderMoveToAttributeNo
    - xmlTextReaderConstLocalName
    - xmlTextReaderNamespaceUri
    - xmlTextReaderMoveToAttribute
    - xmlTextReaderValue
    - xmlTextReaderGetAttribute
    - xmlTextReaderCurrentNode
    - xmlTextReaderGetParserLineNumber
    - xmlTextReaderConstName
    - xmlFreeDoc
    - xmlTextReaderGetParserProp
    - xmlTextReaderGetAttributeNs
    - xmlTextReaderCurrentDoc
    - xmlFuzzReadEntities
    - xmlTextReaderConstEncoding
    - xmlTextReaderIsNamespaceDecl
    - xmlTextReaderGetAttributeNo
    - xmlTextReaderExpand
    - xmlTextReaderConstPrefix
    - xmlTextReaderByteConsumed
    - xmlTextReaderIsDefault
    - xmlTextReaderDepth
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - xmlTextReaderMoveToElement
    - xmlTextReaderConstValue
    - xmlTextReaderReadState
    - xmlTextReaderConstXmlVersion
    - xmlTextReaderNormalization
    - xmlFreeTextReader
    - xmlTextReaderConstBaseUri
    - xmlTextReaderMoveToNextAttribute
    - xmlTextReaderIsEmptyElement
    - xmlTextReaderGetLastError
    - xmlFuzzReadInt
    - xmlTextReaderMoveToAttributeNs
    - xmlTextReaderConstNamespaceUri
    - xmlTextReaderIsValid
    - xmlTextReaderSetStructuredErrorHandler
    - xmlTextReaderConstXmlLang
    - putc
    - xmlTextReaderReadAttributeValue
    - xmlFreeParserInputBuffer
    - xmlTextReaderPreserve
    - xmlTextReaderNextSibling
    - xmlTextReaderAttributeCount
    - xmlTextReaderReadOuterXml
    - xmlFuzzDataInit
    - startOp
    - xmlTextReaderPrefix
    - xmlTextReaderReadInnerXml
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 154
    functionName: READ_BYTE
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: READ_BYTE()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 161
    functionName: FREE_STRING
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FREE_STRING(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/reader.c:565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 567
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/reader.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/uri.c:13,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 16
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/uri.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/uri.c:30,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/uri.c:31,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/uri.c:32,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/uri.c:33,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/uri.c:35,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:37,1
    - Dst: xmlParseURISafe
      Src: /src/libxml2/fuzz/uri.c:38,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:39,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:42,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/fuzz/uri.c:43,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:44,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:45,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/fuzz/uri.c:46,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/fuzz/uri.c:49,1
    - Dst: xmlParseURI
      Src: /src/libxml2/fuzz/uri.c:49,1
    - Dst: xmlParseURIRaw
      Src: /src/libxml2/fuzz/uri.c:51,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:52,1
    - Dst: xmlSaveUri
      Src: /src/libxml2/fuzz/uri.c:52,1
    - Dst: xmlFreeURI
      Src: /src/libxml2/fuzz/uri.c:53,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:55,1
    - Dst: xmlURIUnescapeString
      Src: /src/libxml2/fuzz/uri.c:56,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:57,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:59,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:63,1
    - Dst: xmlCanonicPath
      Src: /src/libxml2/fuzz/uri.c:64,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:65,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:67,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:69,1
    - Dst: xmlPathToURI
      Src: /src/libxml2/fuzz/uri.c:70,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:71,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:73,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:75,1
    - Dst: xmlBuildURISafe
      Src: /src/libxml2/fuzz/uri.c:76,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:77,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:78,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:82,1
    - Dst: xmlBuildRelativeURISafe
      Src: /src/libxml2/fuzz/uri.c:83,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:84,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:85,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/uri.c:89,1
    - Dst: xmlURIEscapeStr
      Src: /src/libxml2/fuzz/uri.c:90,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/uri.c:91,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:93,1
    - Dst: xmlCharStrdup
      Src: /src/libxml2/fuzz/uri.c:95,1
    - Dst: xmlNormalizeURIPath
      Src: /src/libxml2/fuzz/uri.c:96,1
    - Dst: xmlFree
      Src: /src/libxml2/fuzz/uri.c:97,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/uri.c:99,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/uri.c:100,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 52
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 18
    functionDepth: 10
    functionLinenumber: 18
    functionLinenumberEnd: 103
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/uri.c
    functionUses: 0
    functionsReached:
    - xmlURIEscapeStr
    - xmlNormalizeURIPath
    - xmlBuildURISafe
    - xmlFuzzCheckFailureReport
    - xmlCanonicPath
    - xmlFuzzReadInt
    - xmlSaveUri
    - xmlFree
    - xmlURIUnescapeString
    - xmlFuzzResetFailure
    - xmlFuzzReadString
    - xmlFreeURI
    - xmlCharStrdup
    - xmlBuildRelativeURISafe
    - xmlFuzzInjectFailure
    - xmlPathToURI
    - xmlFuzzDataCleanup
    - xmlParseURI
    - xmlFuzzDataInit
    - xmlParseURIRaw
    - xmlParseURISafe
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/uri.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 115
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/uri.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: pushArg
    functionSourceFile: /src/libxml2/fuzz/lint.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void pushArg(const char *str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: open
      Src: /src/libxml2/fuzz/lint.c:110,1
    - Dst: perror
      Src: /src/libxml2/fuzz/lint.c:112,1
    - Dst: abort
      Src: /src/libxml2/fuzz/lint.c:113,1
    - Dst: dup2
      Src: /src/libxml2/fuzz/lint.c:115,1
    - Dst: perror
      Src: /src/libxml2/fuzz/lint.c:116,1
    - Dst: abort
      Src: /src/libxml2/fuzz/lint.c:117,1
    - Dst: close
      Src: /src/libxml2/fuzz/lint.c:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 122
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/lint.c
    functionUses: 0
    functionsReached:
    - perror
    - abort
    - open
    - close
    - dup2
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlMemUsed
      Src: /src/libxml2/fuzz/lint.c:134,1
    - Dst: fprintf
      Src: /src/libxml2/fuzz/lint.c:135,1
    - Dst: abort
      Src: /src/libxml2/fuzz/lint.c:136,1
    - Dst: malloc
      Src: /src/libxml2/fuzz/lint.c:139,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:141,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:142,1
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/lint.c:144,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/lint.c:148,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:150,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:163,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:167,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:171,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/lint.c:175,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/lint.c:181,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:182,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:183,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/lint.c:186,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/lint.c:188,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:189,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:190,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/lint.c:193,1
    - Dst: snprintf
      Src: /src/libxml2/fuzz/lint.c:195,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:196,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:197,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/lint.c:200,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:202,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:203,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/lint.c:206,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:208,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:209,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/lint.c:212,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:214,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:215,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/lint.c:218,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/lint.c:219,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/lint.c:220,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:223,1
    - Dst: pushArg
      Src: /src/libxml2/fuzz/lint.c:225,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/lint.c:227,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/lint.c:229,1
    - Dst: xmllintMain
      Src: /src/libxml2/fuzz/lint.c:232,1
    - Dst: xmlMemSetup
      Src: /src/libxml2/fuzz/lint.c:234,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/lint.c:237,1
    - Dst: free
      Src: /src/libxml2/fuzz/lint.c:238,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 82
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 124
    functionDepth: 5
    functionLinenumber: 124
    functionLinenumberEnd: 240
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/lint.c
    functionUses: 0
    functionsReached:
    - free
    - xmlCatalogSetDefaults
    - xmlSetGenericErrorFunc
    - pushArg
    - xmlFuzzMainEntity
    - xmlMemSetup
    - xmlFuzzDataInit
    - abort
    - xmlFuzzMainUrl
    - malloc
    - xmlFuzzReadInt
    - xmlFuzzReadString
    - snprintf
    - xmlFuzzReadEntities
    - xmllintMain
    - fprintf
    - xmlMemUsed
    - xmlFuzzDataCleanup
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/lint.c:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 255
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/lint.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/xpath.c:15,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/xpath.c:16,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/xpath.c:18,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/xpath.c:19,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/xpath.c:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 12
    functionDepth: 7
    functionLinenumber: 12
    functionLinenumberEnd: 24
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlSetGenericErrorFunc
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/xpath.c:35,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xpath.c:37,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/xpath.c:38,1
    - Dst: xmlFuzzReadString
      Src: /src/libxml2/fuzz/xpath.c:39,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/fuzz/xpath.c:42,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xpath.c:46,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/fuzz/xpath.c:48,1
    - Dst: xmlXPathContextSetCache
      Src: /src/libxml2/fuzz/xpath.c:55,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xpath.c:56,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/xpath.c:58,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xpath.c:60,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/fuzz/xpath.c:62,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xpath.c:65,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/xpath.c:66,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/xpath.c:69,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/xpath.c:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 26
    functionDepth: 14
    functionLinenumber: 26
    functionLinenumberEnd: 73
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlFuzzResetFailure
    - xmlFuzzDataInit
    - xmlFuzzInjectFailure
    - xmlXPathNewContext
    - xmlResetLastError
    - xmlReadMemory
    - xmlFuzzCheckFailureReport
    - xmlFuzzReadString
    - xmlXPathContextSetCache
    - xmlFuzzReadInt
    - xmlFuzzDataCleanup
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/xpath.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 85
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/xpath.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/xinclude.c:17,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/xinclude.c:18,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/xinclude.c:20,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/xinclude.c:21,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/xinclude.c:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 14
    functionDepth: 7
    functionLinenumber: 14
    functionLinenumberEnd: 26
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlSetGenericErrorFunc
    - xmlInitParser
    - xmlInitializeCatalog
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/xinclude.c:36,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xinclude.c:37,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/xinclude.c:40,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/xinclude.c:42,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/xinclude.c:43,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/xinclude.c:44,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xinclude.c:50,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/xinclude.c:51,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/xinclude.c:56,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/fuzz/xinclude.c:58,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xinclude.c:59,1
    - Dst: xmlXIncludeNewContext
      Src: /src/libxml2/fuzz/xinclude.c:63,1
    - Dst: xmlXIncludeSetResourceLoader
      Src: /src/libxml2/fuzz/xinclude.c:64,1
    - Dst: xmlXIncludeSetFlags
      Src: /src/libxml2/fuzz/xinclude.c:65,1
    - Dst: xmlXIncludeProcessNode
      Src: /src/libxml2/fuzz/xinclude.c:66,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xinclude.c:68,1
    - Dst: xmlXIncludeGetLastError
      Src: /src/libxml2/fuzz/xinclude.c:70,1
    - Dst: xmlXIncludeGetLastError
      Src: /src/libxml2/fuzz/xinclude.c:72,1
    - Dst: xmlXIncludeFreeContext
      Src: /src/libxml2/fuzz/xinclude.c:74,1
    - Dst: xmlFuzzResetFailure
      Src: /src/libxml2/fuzz/xinclude.c:76,1
    - Dst: xmlCopyDoc
      Src: /src/libxml2/fuzz/xinclude.c:77,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/xinclude.c:79,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/xinclude.c:80,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/xinclude.c:82,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/xinclude.c:83,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/xinclude.c:87,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/xinclude.c:88,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/xinclude.c:89,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 28
    functionDepth: 17
    functionLinenumber: 28
    functionLinenumberEnd: 91
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlNewParserCtxt
    - xmlFuzzMainUrl
    - xmlFuzzCheckFailureReport
    - xmlFuzzReadEntities
    - xmlFuzzReadInt
    - xmlXIncludeSetFlags
    - xmlFuzzMainEntity
    - xmlCtxtSetResourceLoader
    - xmlFuzzResetFailure
    - xmlCopyDoc
    - xmlXIncludeNewContext
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - xmlXIncludeFreeContext
    - xmlXIncludeProcessNode
    - xmlFuzzDataCleanup
    - xmlXIncludeGetLastError
    - xmlFreeParserCtxt
    - xmlFuzzDataInit
    - xmlXIncludeSetResourceLoader
    - xmlCtxtReadMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/xinclude.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 104
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/xinclude.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMemSetup
      Src: /src/libxml2/fuzz/valid.c:16,1
    - Dst: xmlInitParser
      Src: /src/libxml2/fuzz/valid.c:17,1
    - Dst: xmlInitializeCatalog
      Src: /src/libxml2/fuzz/valid.c:19,1
    - Dst: xmlCatalogSetDefaults
      Src: /src/libxml2/fuzz/valid.c:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ATTRIBUTE_UNUSED
    - ATTRIBUTE_UNUSED
    argTypes:
    - int*
    - char***
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 13
    functionDepth: 7
    functionLinenumber: 13
    functionLinenumberEnd: 24
    functionName: LLVMFuzzerInitialize
    functionSourceFile: /src/libxml2/fuzz/valid.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMemSetup
    - xmlCatalogSetDefaults
    - xmlInitializeCatalog
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: "int LLVMFuzzerInitialize(int *argc ATTRIBUTE_UNUSED,\n                     char
      ***argv ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzDataInit
      Src: /src/libxml2/fuzz/valid.c:34,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/valid.c:35,1
    - Dst: xmlFuzzReadInt
      Src: /src/libxml2/fuzz/valid.c:37,1
    - Dst: xmlFuzzReadEntities
      Src: /src/libxml2/fuzz/valid.c:39,1
    - Dst: xmlFuzzMainEntity
      Src: /src/libxml2/fuzz/valid.c:40,1
    - Dst: xmlFuzzMainUrl
      Src: /src/libxml2/fuzz/valid.c:41,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/valid.c:47,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/valid.c:48,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/valid.c:50,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/valid.c:51,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/fuzz/valid.c:52,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/valid.c:53,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/valid.c:56,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/valid.c:57,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/valid.c:62,1
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/fuzz/valid.c:63,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/valid.c:65,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/valid.c:66,1
    - Dst: xmlCtxtReadMemory
      Src: /src/libxml2/fuzz/valid.c:67,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/valid.c:69,1
    - Dst: xmlCtxtValidateDocument
      Src: /src/libxml2/fuzz/valid.c:73,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/valid.c:75,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/valid.c:79,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/valid.c:80,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/valid.c:90,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/valid.c:95,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/fuzz/valid.c:96,1
    - Dst: xmlSetGenericErrorFunc
      Src: /src/libxml2/fuzz/valid.c:97,1
    - Dst: xmlCtxtSetErrorHandler
      Src: /src/libxml2/fuzz/valid.c:99,1
    - Dst: xmlCtxtSetResourceLoader
      Src: /src/libxml2/fuzz/valid.c:100,1
    - Dst: xmlCtxtUseOptions
      Src: /src/libxml2/fuzz/valid.c:101,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/fuzz/valid.c:107,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/fuzz/valid.c:110,1
    - Dst: xmlFuzzCheckFailureReport
      Src: /src/libxml2/fuzz/valid.c:111,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/fuzz/valid.c:114,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/fuzz/valid.c:115,1
    - Dst: xmlFuzzInjectFailure
      Src: /src/libxml2/fuzz/valid.c:121,1
    - Dst: xmlFuzzDataCleanup
      Src: /src/libxml2/fuzz/valid.c:122,1
    - Dst: xmlResetLastError
      Src: /src/libxml2/fuzz/valid.c:123,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 60
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 26
    functionDepth: 16
    functionLinenumber: 26
    functionLinenumberEnd: 125
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/libxml2/fuzz/valid.c
    functionUses: 0
    functionsReached:
    - xmlSetGenericErrorFunc
    - xmlCtxtUseOptions
    - xmlNewParserCtxt
    - xmlFuzzMainUrl
    - xmlFuzzCheckFailureReport
    - xmlFuzzReadEntities
    - xmlFuzzReadInt
    - xmlCreatePushParserCtxt
    - xmlCtxtSetErrorHandler
    - xmlCtxtSetResourceLoader
    - xmlFuzzMainEntity
    - xmlFuzzInjectFailure
    - xmlResetLastError
    - xmlFuzzDataCleanup
    - xmlFreeParserCtxt
    - xmlFuzzDataInit
    - xmlParseChunk
    - xmlCtxtValidateDocument
    - xmlCtxtReadMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const char *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlFuzzMutateChunks
      Src: /src/libxml2/fuzz/valid.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - data
    - size
    - maxSize
    - seed
    argTypes:
    - char*
    - size_t
    - size_t
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 138
    functionName: LLVMFuzzerCustomMutator
    functionSourceFile: /src/libxml2/fuzz/valid.c
    functionUses: 0
    functionsReached:
    - xmlFuzzMutateChunks
    linkageType: ''
    returnType: size_t
    signature: "size_t LLVMFuzzerCustomMutator(char *data, size_t size, size_t maxSize,\n
      \                       unsigned seed)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/example/io1.c:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionName: sqlMatch
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached:
    - strncmp
    linkageType: ''
    returnType: int
    signature: int sqlMatch(const char * URI)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/libxml2/example/io1.c:53,1
    - Dst: strlen
      Src: /src/libxml2/example/io1.c:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - URI
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionName: sqlOpen
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: void
    signature: 'void *

      sqlOpen(const char * URI)'
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionName: sqlClose
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int sqlClose(void * context)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/libxml2/example/io1.c:94,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 97
    functionName: sqlRead
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: int
    signature: int sqlRead(void * context, char * buffer, int len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlRegisterInputCallbacks
      Src: /src/libxml2/example/io1.c:118,1
    - Dst: fprintf
      Src: /src/libxml2/example/io1.c:119,1
    - Dst: exit
      Src: /src/libxml2/example/io1.c:120,1
    - Dst: xmlReadMemory
      Src: /src/libxml2/example/io1.c:125,1
    - Dst: strlen
      Src: /src/libxml2/example/io1.c:125,1
    - Dst: fprintf
      Src: /src/libxml2/example/io1.c:127,1
    - Dst: exit
      Src: /src/libxml2/example/io1.c:128,1
    - Dst: xmlXIncludeProcess
      Src: /src/libxml2/example/io1.c:135,1
    - Dst: fprintf
      Src: /src/libxml2/example/io1.c:136,1
    - Dst: exit
      Src: /src/libxml2/example/io1.c:137,1
    - Dst: xmlDocDump
      Src: /src/libxml2/example/io1.c:144,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/io1.c:150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 105
    functionDepth: 20
    functionLinenumber: 105
    functionLinenumberEnd: 153
    functionName: main
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached:
    - xmlXIncludeProcess
    - strlen
    - xmlReadMemory
    - exit
    - fprintf
    - xmlDocDump
    - xmlRegisterInputCallbacks
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/io1.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionName: main
    functionSourceFile: /src/libxml2/example/io1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unlink
      Src: /src/libxml2/example/testWriter.c:45,1
    - Dst: testXmlwriterMemory
      Src: /src/libxml2/example/testWriter.c:48,1
    - Dst: testXmlwriterDoc
      Src: /src/libxml2/example/testWriter.c:51,1
    - Dst: testXmlwriterTree
      Src: /src/libxml2/example/testWriter.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 57
    functionName: main
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 0
    functionsReached:
    - testXmlwriterTree
    - unlink
    - testXmlwriterDoc
    - testXmlwriterMemory
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewTextWriterFilename
      Src: /src/libxml2/example/testWriter.c:72,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:74,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/example/testWriter.c:81,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:83,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:90,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:92,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:97,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:99,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:105,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:107,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:113,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:116,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:122,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:125,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:131,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:133,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:139,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:141,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:147,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:150,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:156,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:159,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:165,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:168,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:174,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:177,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:183,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:185,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:191,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:193,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:199,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:201,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:207,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:210,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:216,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:219,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:225,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:227,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:233,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:235,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:241,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:244,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:250,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:253,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:259,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:261,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:267,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:269,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:275,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:277,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:283,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:286,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:292,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:294,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/example/testWriter.c:303,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:305,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/example/testWriter.c:310,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 142
    argCount: 1
    argNames:
    - uri
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 65
    functionDepth: 10
    functionLinenumber: 65
    functionLinenumberEnd: 311
    functionName: testXmlwriterFilename
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 0
    functionsReached:
    - xmlTextWriterEndElement
    - xmlTextWriterStartElement
    - xmlTextWriterWriteAttribute
    - xmlTextWriterWriteElement
    - xmlNewTextWriterFilename
    - xmlTextWriterWriteComment
    - xmlTextWriterEndDocument
    - xmlTextWriterWriteFormatElement
    - printf
    - xmlFreeTextWriter
    - xmlTextWriterStartDocument
    linkageType: ''
    returnType: void
    signature: void testXmlwriterFilename(const char *uri)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlBufferCreate
      Src: /src/libxml2/example/testWriter.c:328,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:330,1
    - Dst: xmlNewTextWriterMemory
      Src: /src/libxml2/example/testWriter.c:336,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:338,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/example/testWriter.c:345,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:347,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:354,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:356,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:362,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:364,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:370,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:372,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:378,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:381,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:387,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:390,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:396,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:398,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:404,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:406,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:412,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:415,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:421,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:424,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:430,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:433,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:439,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:443,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:449,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:451,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:456,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:458,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:464,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:466,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:472,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:475,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:481,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:484,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:490,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:492,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:497,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:499,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:505,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:508,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:514,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:517,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:523,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:525,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:530,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:532,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:537,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:539,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:545,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:548,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:554,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:556,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/example/testWriter.c:564,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:566,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/example/testWriter.c:570,1
    - Dst: xmlBufferFree
      Src: /src/libxml2/example/testWriter.c:572,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 148
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 319
    functionDepth: 10
    functionLinenumber: 319
    functionLinenumberEnd: 573
    functionName: testXmlwriterMemory
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 1
    functionsReached:
    - xmlBufferFree
    - xmlTextWriterEndElement
    - xmlNewTextWriterMemory
    - xmlTextWriterStartElement
    - xmlTextWriterWriteAttribute
    - xmlTextWriterWriteElement
    - xmlTextWriterEndDocument
    - xmlTextWriterWriteComment
    - xmlTextWriterWriteFormatElement
    - xmlBufferCreate
    - printf
    - xmlFreeTextWriter
    - xmlTextWriterStartDocument
    linkageType: ''
    returnType: void
    signature: void testXmlwriterMemory(void)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewTextWriterDoc
      Src: /src/libxml2/example/testWriter.c:590,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:592,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/example/testWriter.c:599,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:601,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:607,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:609,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:614,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:616,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:621,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:623,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:628,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:631,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:636,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:639,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:644,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:646,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:652,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:654,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:659,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:662,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:668,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:671,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:677,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:680,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:685,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:688,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:693,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:695,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:700,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:702,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:707,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:709,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:714,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:717,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:722,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:725,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:731,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:733,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:738,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:740,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:745,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:748,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:753,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:756,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:762,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:764,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:769,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:771,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:776,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:778,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:783,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:786,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:791,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:793,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/example/testWriter.c:801,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:803,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/example/testWriter.c:807,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/testWriter.c:809,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 143
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 581
    functionDepth: 10
    functionLinenumber: 581
    functionLinenumberEnd: 810
    functionName: testXmlwriterDoc
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 1
    functionsReached:
    - xmlTextWriterEndElement
    - xmlTextWriterStartElement
    - xmlTextWriterWriteAttribute
    - xmlTextWriterWriteElement
    - xmlTextWriterEndDocument
    - xmlTextWriterWriteComment
    - xmlTextWriterWriteFormatElement
    - printf
    - xmlFreeTextWriter
    - xmlFreeDoc
    - xmlTextWriterStartDocument
    - xmlNewTextWriterDoc
    linkageType: ''
    returnType: void
    signature: void testXmlwriterDoc(void)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/example/testWriter.c:828,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:830,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/example/testWriter.c:837,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:839,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/example/testWriter.c:844,1
    - Dst: xmlNewTextWriterTree
      Src: /src/libxml2/example/testWriter.c:847,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:849,1
    - Dst: xmlTextWriterStartDocument
      Src: /src/libxml2/example/testWriter.c:856,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:858,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:863,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:865,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:870,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:872,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:877,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:880,1
    - Dst: xmlTextWriterWriteAttribute
      Src: /src/libxml2/example/testWriter.c:886,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:889,1
    - Dst: xmlTextWriterWriteComment
      Src: /src/libxml2/example/testWriter.c:895,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:897,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:903,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:905,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:910,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:913,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:919,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:922,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:928,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:931,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:936,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:939,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:944,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:946,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:951,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:953,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:958,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:960,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:965,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:968,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:973,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:976,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:982,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:984,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:989,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:991,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:996,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:999,1
    - Dst: xmlTextWriterWriteFormatElement
      Src: /src/libxml2/example/testWriter.c:1004,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1007,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:1013,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1015,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:1020,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1022,1
    - Dst: xmlTextWriterStartElement
      Src: /src/libxml2/example/testWriter.c:1027,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1029,1
    - Dst: xmlTextWriterWriteElement
      Src: /src/libxml2/example/testWriter.c:1034,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1037,1
    - Dst: xmlTextWriterEndElement
      Src: /src/libxml2/example/testWriter.c:1042,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1044,1
    - Dst: xmlTextWriterEndDocument
      Src: /src/libxml2/example/testWriter.c:1052,1
    - Dst: printf
      Src: /src/libxml2/example/testWriter.c:1054,1
    - Dst: xmlFreeTextWriter
      Src: /src/libxml2/example/testWriter.c:1058,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/testWriter.c:1060,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 149
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1061
      start: 818
    functionDepth: 10
    functionLinenumber: 818
    functionLinenumberEnd: 1061
    functionName: testXmlwriterTree
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xmlTextWriterEndElement
    - xmlTextWriterStartElement
    - xmlNewDoc
    - xmlTextWriterWriteAttribute
    - xmlTextWriterWriteElement
    - xmlTextWriterEndDocument
    - xmlTextWriterWriteComment
    - xmlTextWriterWriteFormatElement
    - xmlNewTextWriterTree
    - printf
    - xmlFreeTextWriter
    - xmlFreeDoc
    - xmlTextWriterStartDocument
    linkageType: ''
    returnType: void
    signature: void testXmlwriterTree(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/testWriter.c:1065,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1064
    functionDepth: 0
    functionLinenumber: 1064
    functionLinenumberEnd: 1067
    functionName: main
    functionSourceFile: /src/libxml2/example/testWriter.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader4.c:24,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader4.c:26,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/example/reader4.c:34,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:36,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:42,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:46,1
    - Dst: printf
      Src: /src/libxml2/example/reader4.c:50,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - readerPtr
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 19
    functionDepth: 7
    functionLinenumber: 19
    functionLinenumberEnd: 51
    functionName: processDoc
    functionSourceFile: /src/libxml2/example/reader4.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderRead
    - fprintf
    - printf
    - xmlTextReaderCurrentDoc
    linkageType: ''
    returnType: void
    signature: void processDoc(xmlTextReaderPtr readerPtr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/example/reader4.c:72,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:74,1
    - Dst: processDoc
      Src: /src/libxml2/example/reader4.c:77,1
    - Dst: xmlReaderNewFile
      Src: /src/libxml2/example/reader4.c:83,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:85,1
    - Dst: processDoc
      Src: /src/libxml2/example/reader4.c:88,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/example/reader4.c:97,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/reader4.c:99,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/example/reader4.c:104,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 53
    functionDepth: 8
    functionLinenumber: 53
    functionLinenumberEnd: 107
    functionName: main
    functionSourceFile: /src/libxml2/example/reader4.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderCurrentDoc
    - xmlReaderNewFile
    - processDoc
    - xmlReaderForFile
    - fprintf
    - xmlFreeDoc
    - xmlFreeTextReader
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/reader4.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: main
    functionSourceFile: /src/libxml2/example/reader4.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/example/reader3.c:38,1
    - Dst: xmlTextReaderPreservePattern
      Src: /src/libxml2/example/reader3.c:43,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader3.c:44,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader3.c:50,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader3.c:52,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader3.c:55,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/example/reader3.c:56,1
    - Dst: xmlTextReaderCurrentDoc
      Src: /src/libxml2/example/reader3.c:62,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/example/reader3.c:66,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader3.c:68,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - filename
    - pattern
    argTypes:
    - char*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 29
    functionDepth: 7
    functionLinenumber: 29
    functionLinenumberEnd: 72
    functionName: extractFile
    functionSourceFile: /src/libxml2/example/reader3.c
    functionUses: 0
    functionsReached:
    - xmlTextReaderPreservePattern
    - xmlTextReaderCurrentDoc
    - xmlTextReaderRead
    - xmlReaderForFile
    - fprintf
    - xmlFreeTextReader
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr extractFile(const char *filename, const xmlChar *pattern)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: extractFile
      Src: /src/libxml2/example/reader3.c:91,1
    - Dst: xmlDocDump
      Src: /src/libxml2/example/reader3.c:96,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/reader3.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 74
    functionDepth: 11
    functionLinenumber: 74
    functionLinenumberEnd: 104
    functionName: main
    functionSourceFile: /src/libxml2/example/reader3.c
    functionUses: 0
    functionsReached:
    - xmlDocDump
    - xmlFreeDoc
    - extractFile
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/reader3.c:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: main
    functionSourceFile: /src/libxml2/example/reader3.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/example/reader2.c:31,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/example/reader2.c:35,1
    - Dst: printf
      Src: /src/libxml2/example/reader2.c:37,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/example/reader2.c:38,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/example/reader2.c:39,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/example/reader2.c:41,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/example/reader2.c:42,1
    - Dst: printf
      Src: /src/libxml2/example/reader2.c:44,1
    - Dst: xmlStrlen
      Src: /src/libxml2/example/reader2.c:46,1
    - Dst: printf
      Src: /src/libxml2/example/reader2.c:47,1
    - Dst: printf
      Src: /src/libxml2/example/reader2.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 27
    functionDepth: 4
    functionLinenumber: 27
    functionLinenumberEnd: 51
    functionName: processNode
    functionSourceFile: /src/libxml2/example/reader2.c
    functionUses: 3
    functionsReached:
    - xmlStrlen
    - xmlTextReaderDepth
    - xmlTextReaderNodeType
    - xmlTextReaderConstValue
    - xmlTextReaderIsEmptyElement
    - printf
    - xmlTextReaderConstName
    - xmlTextReaderHasValue
    linkageType: ''
    returnType: void
    signature: void processNode(xmlTextReaderPtr reader)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/example/reader2.c:69,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader2.c:74,1
    - Dst: processNode
      Src: /src/libxml2/example/reader2.c:76,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader2.c:77,1
    - Dst: xmlTextReaderIsValid
      Src: /src/libxml2/example/reader2.c:82,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader2.c:83,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/example/reader2.c:85,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader2.c:87,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader2.c:90,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 59
    functionDepth: 7
    functionLinenumber: 59
    functionLinenumberEnd: 92
    functionName: streamFile
    functionSourceFile: /src/libxml2/example/reader2.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderIsValid
    - xmlTextReaderRead
    - xmlReaderForFile
    - fprintf
    - processNode
    - xmlFreeTextReader
    linkageType: ''
    returnType: void
    signature: void streamFile(const char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 108
    functionName: main
    functionSourceFile: /src/libxml2/example/reader2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/reader2.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionName: main
    functionSourceFile: /src/libxml2/example/reader2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/example/io2.c:27,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/example/io2.c:28,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/example/io2.c:29,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/example/io2.c:30,1
    - Dst: xmlDocDumpFormatMemory
      Src: /src/libxml2/example/io2.c:36,1
    - Dst: printf
      Src: /src/libxml2/example/io2.c:37,1
    - Dst: xmlFree
      Src: /src/libxml2/example/io2.c:42,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/io2.c:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 15
    functionDepth: 11
    functionLinenumber: 15
    functionLinenumberEnd: 47
    functionName: main
    functionSourceFile: /src/libxml2/example/io2.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xmlFree
    - xmlNewDoc
    - xmlNodeSetContent
    - printf
    - xmlDocDumpFormatMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/io2.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionName: main
    functionSourceFile: /src/libxml2/example/io2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDoc
      Src: /src/libxml2/example/tree2.c:38,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/example/tree2.c:39,1
    - Dst: xmlDocSetRootElement
      Src: /src/libxml2/example/tree2.c:40,1
    - Dst: xmlCreateIntSubset
      Src: /src/libxml2/example/tree2.c:45,1
    - Dst: xmlNewChild
      Src: /src/libxml2/example/tree2.c:51,1
    - Dst: xmlNewChild
      Src: /src/libxml2/example/tree2.c:56,1
    - Dst: xmlNewChild
      Src: /src/libxml2/example/tree2.c:63,1
    - Dst: xmlNewProp
      Src: /src/libxml2/example/tree2.c:65,1
    - Dst: xmlNewProp
      Src: /src/libxml2/example/tree2.c:66,1
    - Dst: xmlNewDocNode
      Src: /src/libxml2/example/tree2.c:73,1
    - Dst: xmlNewDocText
      Src: /src/libxml2/example/tree2.c:74,1
    - Dst: xmlAddChild
      Src: /src/libxml2/example/tree2.c:76,1
    - Dst: xmlAddChild
      Src: /src/libxml2/example/tree2.c:77,1
    - Dst: snprintf
      Src: /src/libxml2/example/tree2.c:83,1
    - Dst: xmlNewChild
      Src: /src/libxml2/example/tree2.c:84,1
    - Dst: snprintf
      Src: /src/libxml2/example/tree2.c:86,1
    - Dst: xmlNewChild
      Src: /src/libxml2/example/tree2.c:87,1
    - Dst: xmlNewProp
      Src: /src/libxml2/example/tree2.c:88,1
    - Dst: BAD_CAST
      Src: /src/libxml2/example/tree2.c:88,1
    - Dst: xmlSaveFormatFileEnc
      Src: /src/libxml2/example/tree2.c:95,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/tree2.c:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 25
    functionDepth: 10
    functionLinenumber: 25
    functionLinenumberEnd: 101
    functionName: main
    functionSourceFile: /src/libxml2/example/tree2.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xmlNewProp
    - xmlNewDoc
    - xmlNewChild
    - BAD_CAST
    - xmlSaveFormatFileEnc
    - xmlAddChild
    - xmlNewDocText
    - snprintf
    - xmlCreateIntSubset
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/tree2.c:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: main
    functionSourceFile: /src/libxml2/example/tree2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadMemory
      Src: /src/libxml2/example/parse3.c:33,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse3.c:35,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/parse3.c:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - content
    - length
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 14
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: example3Func
    functionSourceFile: /src/libxml2/example/parse3.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlFreeDoc
    - xmlReadMemory
    linkageType: ''
    returnType: void
    signature: void example3Func(const char *content, int length)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: main
    functionSourceFile: /src/libxml2/example/parse3.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: DEBUG
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEBUG(x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/example/gjobread.c:49,1
    - Dst: malloc
      Src: /src/libxml2/example/gjobread.c:53,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:55,1
    - Dst: memset
      Src: /src/libxml2/example/gjobread.c:58,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:64,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/example/gjobread.c:66,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:67,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/example/gjobread.c:69,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - doc
    - ns
    - cur
    argTypes:
    - xmlDocPtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 45
    functionDepth: 7
    functionLinenumber: 45
    functionLinenumberEnd: 74
    functionName: parsePerson
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - xmlNodeListGetString
    - xmlStrcmp
    - malloc
    - DEBUG
    - fprintf
    - memset
    linkageType: ''
    returnType: personPtr
    signature: personPtr parsePerson(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:82,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:83,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:84,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:85,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:86,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:87,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:88,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:89,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:90,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - cur
    argTypes:
    - personPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 91
    functionName: printPerson
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void printPerson(personPtr cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: DEBUG
      Src: /src/libxml2/example/gjobread.c:112,1
    - Dst: malloc
      Src: /src/libxml2/example/gjobread.c:116,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:118,1
    - Dst: memset
      Src: /src/libxml2/example/gjobread.c:121,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:127,1
    - Dst: xmlGetProp
      Src: /src/libxml2/example/gjobread.c:129,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:131,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:134,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/example/gjobread.c:137,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:138,1
    - Dst: xmlNodeListGetString
      Src: /src/libxml2/example/gjobread.c:141,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:142,1
    - Dst: parsePerson
      Src: /src/libxml2/example/gjobread.c:144,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 3
    argNames:
    - doc
    - ns
    - cur
    argTypes:
    - xmlDocPtr
    - xmlNsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 108
    functionDepth: 11
    functionLinenumber: 108
    functionLinenumberEnd: 149
    functionName: parseJob
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlNodeListGetString
    - xmlStrcmp
    - malloc
    - DEBUG
    - parsePerson
    - fprintf
    - memset
    linkageType: ''
    returnType: jobPtr
    signature: jobPtr parseJob(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:159,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:160,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:161,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:162,1
    - Dst: printPerson
      Src: /src/libxml2/example/gjobread.c:163,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:164,1
    - Dst: printPerson
      Src: /src/libxml2/example/gjobread.c:166,1
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:167,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - cur
    argTypes:
    - jobPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 168
    functionName: printJob
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - printf
    - printPerson
    linkageType: ''
    returnType: void
    signature: void printJob(jobPtr cur)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/example/gjobread.c:190,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/example/gjobread.c:197,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:199,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:200,1
    - Dst: xmlSearchNsByHref
      Src: /src/libxml2/example/gjobread.c:203,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:206,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:208,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:211,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:212,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:213,1
    - Dst: malloc
      Src: /src/libxml2/example/gjobread.c:220,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:222,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:223,1
    - Dst: memset
      Src: /src/libxml2/example/gjobread.c:226,1
    - Dst: xmlIsBlankNode
      Src: /src/libxml2/example/gjobread.c:233,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:237,1
    - Dst: free
      Src: /src/libxml2/example/gjobread.c:238,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:241,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:242,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:244,1
    - Dst: xmlDocDump
      Src: /src/libxml2/example/gjobread.c:246,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:247,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/gjobread.c:249,1
    - Dst: free
      Src: /src/libxml2/example/gjobread.c:250,1
    - Dst: xmlStrcmp
      Src: /src/libxml2/example/gjobread.c:257,1
    - Dst: parseJob
      Src: /src/libxml2/example/gjobread.c:259,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 179
    functionDepth: 14
    functionLinenumber: 179
    functionLinenumberEnd: 268
    functionName: parseGjobFile
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - free
    - xmlIsBlankNode
    - parseJob
    - xmlSearchNsByHref
    - xmlStrcmp
    - xmlReadFile
    - malloc
    - xmlDocDump
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: gJobPtr
    signature: gJobPtr parseGjobFile(char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/example/gjobread.c:277,1
    - Dst: printJob
      Src: /src/libxml2/example/gjobread.c:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - cur
    argTypes:
    - gJobPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 279
    functionName: handleGjob
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - printJob
    - printf
    linkageType: ''
    returnType: void
    signature: void handleGjob(gJobPtr cur)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parseGjobFile
      Src: /src/libxml2/example/gjobread.c:289,1
    - Dst: handleGjob
      Src: /src/libxml2/example/gjobread.c:291,1
    - Dst: fprintf
      Src: /src/libxml2/example/gjobread.c:293,1
    - Dst: xmlCleanupParser
      Src: /src/libxml2/example/gjobread.c:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 281
    functionDepth: 15
    functionLinenumber: 281
    functionLinenumberEnd: 301
    functionName: main
    functionSourceFile: /src/libxml2/example/gjobread.c
    functionUses: 0
    functionsReached:
    - xmlCleanupParser
    - fprintf
    - handleGjob
    - parseGjobFile
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:35,1
    - Dst: usage
      Src: /src/libxml2/example/xpath2.c:36,1
    - Dst: xmlInitParser
      Src: /src/libxml2/example/xpath2.c:41,1
    - Dst: usage
      Src: /src/libxml2/example/xpath2.c:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 31
    functionDepth: 4
    functionLinenumber: 31
    functionLinenumberEnd: 51
    functionName: main
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 0
    functionsReached:
    - fprintf
    - usage
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/libxml2/example/xpath2.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: if
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 3
    functionsReached:
    - usage
    linkageType: ''
    returnType: LIBXML_TEST_VERSION
    signature: LIBXML_TEST_VERSION if (example4(argv[1], BAD_CAST argv[2], BAD_CAST
      argv[3]))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:61,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts:
    - condition: (name)
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxml2/example/xpath2.c
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: usage
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 8
    functionsReached:
    - fprintf
    - assert
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:83,1
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:84,1
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:85,1
    - Dst: xmlParseFile
      Src: /src/libxml2/example/xpath2.c:88,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:90,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/example/xpath2.c:95,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:97,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath2.c:98,1
    - Dst: xmlXPathEvalExpression
      Src: /src/libxml2/example/xpath2.c:103,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:105,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/example/xpath2.c:106,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath2.c:107,1
    - Dst: update_xpath_nodes
      Src: /src/libxml2/example/xpath2.c:112,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/example/xpath2.c:116,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/example/xpath2.c:117,1
    - Dst: xmlDocDump
      Src: /src/libxml2/example/xpath2.c:120,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath2.c:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 3
    argNames:
    - filename
    - xpathExpr
    - value
    argTypes:
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts:
    - condition: (filename)
      pos:
        line_end: 82
        line_start: 82
        source_file: /src/libxml2/example/xpath2.c
    - condition: (xpathExpr)
      pos:
        line_end: 83
        line_start: 83
        source_file: /src/libxml2/example/xpath2.c
    - condition: (value)
      pos:
        line_end: 84
        line_start: 84
        source_file: /src/libxml2/example/xpath2.c
    constantsTouched: []
    func_position:
      end: 127
      start: 77
    functionDepth: 21
    functionLinenumber: 77
    functionLinenumberEnd: 127
    functionName: example4
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - xmlXPathNewContext
    - xmlParseFile
    - update_xpath_nodes
    - xmlXPathEvalExpression
    - xmlDocDump
    - assert
    - fprintf
    - xmlXPathFreeObject
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int example4(const char* filename, const xmlChar* xpathExpr, const
      xmlChar* value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:141,1
    - Dst: assert
      Src: /src/libxml2/example/xpath2.c:153,1
    - Dst: xmlNodeSetContent
      Src: /src/libxml2/example/xpath2.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - nodes
    - value
    argTypes:
    - xmlNodeSetPtr
    - xmlChar*
    assertStmts:
    - condition: (value)
      pos:
        line_end: 140
        line_start: 140
        source_file: /src/libxml2/example/xpath2.c
    - condition: (nodes->nodeTab[i])
      pos:
        line_end: 152
        line_start: 152
        source_file: /src/libxml2/example/xpath2.c
    constantsTouched: []
    func_position:
      end: 176
      start: 136
    functionDepth: 8
    functionLinenumber: 136
    functionLinenumberEnd: 176
    functionName: update_xpath_nodes
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 1
    functionsReached:
    - xmlNodeSetContent
    - assert
    linkageType: ''
    returnType: void
    signature: void update_xpath_nodes(xmlNodeSetPtr nodes, const xmlChar* value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/xpath2.c:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: main
    functionSourceFile: /src/libxml2/example/xpath2.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: ucnv_convertEx
      Src: /src/libxml2/example/icu.c:63,1
    - Dst: U_SUCCESS
      Src: /src/libxml2/example/icu.c:72,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 6
    argNames:
    - vctxt
    - out
    - outlen
    - in
    - inlen
    - flush
    argTypes:
    - void*
    - unsigned char*
    - int*
    - unsigned char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 103
    functionName: icuConvert
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - U_SUCCESS
    - ucnv_convertEx
    linkageType: ''
    returnType: xmlCharEncError
    signature: "xmlCharEncError icuConvert(void *vctxt, unsigned char *out, int *outlen,\n
      \          const unsigned char *in, int *inlen, int flush)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/libxml2/example/icu.c:113,1
    - Dst: ucnv_open
      Src: /src/libxml2/example/icu.c:122,1
    - Dst: U_FAILURE
      Src: /src/libxml2/example/icu.c:123,1
    - Dst: ucnv_setToUCallBack
      Src: /src/libxml2/example/icu.c:128,1
    - Dst: ucnv_setFromUCallBack
      Src: /src/libxml2/example/icu.c:132,1
    - Dst: U_FAILURE
      Src: /src/libxml2/example/icu.c:135,1
    - Dst: ucnv_open
      Src: /src/libxml2/example/icu.c:139,1
    - Dst: U_FAILURE
      Src: /src/libxml2/example/icu.c:140,1
    - Dst: ucnv_close
      Src: /src/libxml2/example/icu.c:148,1
    - Dst: xmlFree
      Src: /src/libxml2/example/icu.c:149,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - name
    - isInput
    - out
    argTypes:
    - char*
    - int
    - myConvCtxt**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 156
    functionName: icuOpen
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - U_FAILURE
    - ucnv_setToUCallBack
    - ucnv_setFromUCallBack
    - xmlFree
    - ucnv_open
    - ucnv_close
    - xmlMalloc
    linkageType: ''
    returnType: xmlParserErrors
    signature: xmlParserErrors icuOpen(const char* name, int isInput, myConvCtxt **out)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ucnv_close
      Src: /src/libxml2/example/icu.c:163,1
    - Dst: ucnv_close
      Src: /src/libxml2/example/icu.c:164,1
    - Dst: xmlFree
      Src: /src/libxml2/example/icu.c:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - cd
    argTypes:
    - myConvCtxt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 166
    functionName: icuClose
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - ucnv_close
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void icuClose(myConvCtxt *cd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: icuClose
      Src: /src/libxml2/example/icu.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - vctxt
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: icuConvCtxtDtor
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - icuClose
    linkageType: ''
    returnType: void
    signature: void icuConvCtxtDtor(void *vctxt)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: icuOpen
      Src: /src/libxml2/example/icu.c:182,1
    - Dst: icuOpen
      Src: /src/libxml2/example/icu.c:189,1
    - Dst: xmlCharEncNewCustomHandler
      Src: /src/libxml2/example/icu.c:195,1
    - Dst: icuClose
      Src: /src/libxml2/example/icu.c:200,1
    - Dst: icuClose
      Src: /src/libxml2/example/icu.c:202,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 4
    argNames:
    - vctxt
    - name
    - flags
    - result
    argTypes:
    - void*
    - char*
    - xmlCharEncFlags
    - xmlCharEncodingHandler**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 204
    functionName: icuConvImpl
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - icuClose
    - xmlCharEncNewCustomHandler
    - icuOpen
    linkageType: ''
    returnType: xmlParserErrors
    signature: "xmlParserErrors icuConvImpl(void *vctxt, const char *name, xmlCharEncFlags
      flags,\n            xmlCharEncodingHandler **result)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/example/icu.c:222,1
    - Dst: xmlCtxtSetCharEncConvImpl
      Src: /src/libxml2/example/icu.c:223,1
    - Dst: xmlCtxtReadDoc
      Src: /src/libxml2/example/icu.c:224,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/example/icu.c:225,1
    - Dst: xmlNodeGetContent
      Src: /src/libxml2/example/icu.c:227,1
    - Dst: printf
      Src: /src/libxml2/example/icu.c:229,1
    - Dst: xmlStrEqual
      Src: /src/libxml2/example/icu.c:231,1
    - Dst: fprintf
      Src: /src/libxml2/example/icu.c:232,1
    - Dst: xmlFree
      Src: /src/libxml2/example/icu.c:236,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/icu.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 206
    functionDepth: 14
    functionLinenumber: 206
    functionLinenumberEnd: 240
    functionName: main
    functionSourceFile: /src/libxml2/example/icu.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlNewParserCtxt
    - xmlNodeGetContent
    - xmlCtxtSetCharEncConvImpl
    - xmlCtxtReadDoc
    - printf
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:33,1
    - Dst: usage
      Src: /src/libxml2/example/xpath1.c:34,1
    - Dst: xmlInitParser
      Src: /src/libxml2/example/xpath1.c:39,1
    - Dst: usage
      Src: /src/libxml2/example/xpath1.c:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 29
    functionDepth: 4
    functionLinenumber: 29
    functionLinenumberEnd: 49
    functionName: main
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 0
    functionsReached:
    - fprintf
    - usage
    - xmlInitParser
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/libxml2/example/xpath1.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: if
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 3
    functionsReached:
    - usage
    linkageType: ''
    returnType: LIBXML_TEST_VERSION
    signature: 'LIBXML_TEST_VERSION if(execute_xpath_expression(argv[1], BAD_CAST
      argv[2], (argc > 3) ? BAD_CAST argv[3] : NULL)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:59,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:61,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:62,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts:
    - condition: (name)
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/libxml2/example/xpath1.c
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: usage
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 10
    functionsReached:
    - fprintf
    - assert
    linkageType: ''
    returnType: void
    signature: void usage(const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:83,1
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:84,1
    - Dst: xmlParseFile
      Src: /src/libxml2/example/xpath1.c:87,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:89,1
    - Dst: xmlXPathNewContext
      Src: /src/libxml2/example/xpath1.c:94,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:96,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath1.c:97,1
    - Dst: register_namespaces
      Src: /src/libxml2/example/xpath1.c:102,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:103,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/example/xpath1.c:104,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath1.c:105,1
    - Dst: xmlXPathEvalExpression
      Src: /src/libxml2/example/xpath1.c:110,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:112,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/example/xpath1.c:113,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath1.c:114,1
    - Dst: print_xpath_nodes
      Src: /src/libxml2/example/xpath1.c:119,1
    - Dst: xmlXPathFreeObject
      Src: /src/libxml2/example/xpath1.c:122,1
    - Dst: xmlXPathFreeContext
      Src: /src/libxml2/example/xpath1.c:123,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/xpath1.c:124,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 3
    argNames:
    - filename
    - xpathExpr
    - nsList
    argTypes:
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts:
    - condition: (xpathExpr)
      pos:
        line_end: 83
        line_start: 83
        source_file: /src/libxml2/example/xpath1.c
    - condition: (filename)
      pos:
        line_end: 82
        line_start: 82
        source_file: /src/libxml2/example/xpath1.c
    constantsTouched: []
    func_position:
      end: 127
      start: 77
    functionDepth: 21
    functionLinenumber: 77
    functionLinenumberEnd: 127
    functionName: execute_xpath_expression
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 0
    functionsReached:
    - xmlXPathFreeContext
    - print_xpath_nodes
    - register_namespaces
    - xmlXPathNewContext
    - xmlParseFile
    - xmlXPathEvalExpression
    - assert
    - fprintf
    - xmlXPathFreeObject
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int execute_xpath_expression(const char* filename, const xmlChar* xpathExpr,
      const xmlChar* nsList)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:146,1
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:147,1
    - Dst: xmlStrdup
      Src: /src/libxml2/example/xpath1.c:149,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:151,1
    - Dst: xmlStrchr
      Src: /src/libxml2/example/xpath1.c:163,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:165,1
    - Dst: xmlFree
      Src: /src/libxml2/example/xpath1.c:166,1
    - Dst: xmlStrchr
      Src: /src/libxml2/example/xpath1.c:173,1
    - Dst: xmlXPathRegisterNs
      Src: /src/libxml2/example/xpath1.c:179,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:180,1
    - Dst: xmlFree
      Src: /src/libxml2/example/xpath1.c:181,1
    - Dst: xmlFree
      Src: /src/libxml2/example/xpath1.c:186,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 2
    argNames:
    - xpathCtx
    - nsList
    argTypes:
    - xmlXPathContextPtr
    - xmlChar*
    assertStmts:
    - condition: (xpathCtx)
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/libxml2/example/xpath1.c
    - condition: (nsList)
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/libxml2/example/xpath1.c
    constantsTouched: []
    func_position:
      end: 188
      start: 139
    functionDepth: 6
    functionLinenumber: 139
    functionLinenumberEnd: 188
    functionName: register_namespaces
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlXPathRegisterNs
    - assert
    - fprintf
    - xmlStrchr
    linkageType: ''
    returnType: int
    signature: int register_namespaces(xmlXPathContextPtr xpathCtx, const xmlChar*
      nsList)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:203,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:206,1
    - Dst: assert
      Src: /src/libxml2/example/xpath1.c:208,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:216,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:219,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:225,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:228,1
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:233,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - nodes
    - output
    argTypes:
    - xmlNodeSetPtr
    - FILE*
    assertStmts:
    - condition: (output)
      pos:
        line_end: 202
        line_start: 202
        source_file: /src/libxml2/example/xpath1.c
    - condition: (nodes->nodeTab[i])
      pos:
        line_end: 207
        line_start: 207
        source_file: /src/libxml2/example/xpath1.c
    constantsTouched: []
    func_position:
      end: 236
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 236
    functionName: print_xpath_nodes
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 1
    functionsReached:
    - fprintf
    - assert
    linkageType: ''
    returnType: void
    signature: void print_xpath_nodes(xmlNodeSetPtr nodes, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/xpath1.c:240,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionName: main
    functionSourceFile: /src/libxml2/example/xpath1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlTextReaderConstName
      Src: /src/libxml2/example/reader1.c:29,1
    - Dst: xmlTextReaderConstValue
      Src: /src/libxml2/example/reader1.c:33,1
    - Dst: printf
      Src: /src/libxml2/example/reader1.c:35,1
    - Dst: xmlTextReaderDepth
      Src: /src/libxml2/example/reader1.c:36,1
    - Dst: xmlTextReaderNodeType
      Src: /src/libxml2/example/reader1.c:37,1
    - Dst: xmlTextReaderIsEmptyElement
      Src: /src/libxml2/example/reader1.c:39,1
    - Dst: xmlTextReaderHasValue
      Src: /src/libxml2/example/reader1.c:40,1
    - Dst: printf
      Src: /src/libxml2/example/reader1.c:42,1
    - Dst: xmlStrlen
      Src: /src/libxml2/example/reader1.c:44,1
    - Dst: printf
      Src: /src/libxml2/example/reader1.c:45,1
    - Dst: printf
      Src: /src/libxml2/example/reader1.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - reader
    argTypes:
    - xmlTextReaderPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 25
    functionDepth: 4
    functionLinenumber: 25
    functionLinenumberEnd: 49
    functionName: processNode
    functionSourceFile: /src/libxml2/example/reader1.c
    functionUses: 4
    functionsReached:
    - xmlStrlen
    - xmlTextReaderDepth
    - xmlTextReaderNodeType
    - xmlTextReaderConstValue
    - xmlTextReaderIsEmptyElement
    - printf
    - xmlTextReaderConstName
    - xmlTextReaderHasValue
    linkageType: ''
    returnType: void
    signature: void processNode(xmlTextReaderPtr reader)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlReaderForFile
      Src: /src/libxml2/example/reader1.c:62,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader1.c:64,1
    - Dst: processNode
      Src: /src/libxml2/example/reader1.c:66,1
    - Dst: xmlTextReaderRead
      Src: /src/libxml2/example/reader1.c:67,1
    - Dst: xmlFreeTextReader
      Src: /src/libxml2/example/reader1.c:69,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader1.c:71,1
    - Dst: fprintf
      Src: /src/libxml2/example/reader1.c:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 57
    functionDepth: 7
    functionLinenumber: 57
    functionLinenumberEnd: 76
    functionName: streamFile
    functionSourceFile: /src/libxml2/example/reader1.c
    functionUses: 1
    functionsReached:
    - xmlTextReaderRead
    - xmlReaderForFile
    - fprintf
    - processNode
    - xmlFreeTextReader
    linkageType: ''
    returnType: void
    signature: void streamFile(const char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionName: main
    functionSourceFile: /src/libxml2/example/reader1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/reader1.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: main
    functionSourceFile: /src/libxml2/example/reader1.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewParserCtxt
      Src: /src/libxml2/example/parse2.c:29,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse2.c:31,1
    - Dst: xmlCtxtReadFile
      Src: /src/libxml2/example/parse2.c:35,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse2.c:38,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse2.c:42,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/parse2.c:44,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/example/parse2.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 23
    functionDepth: 14
    functionLinenumber: 23
    functionLinenumberEnd: 48
    functionName: exampleFunc
    functionSourceFile: /src/libxml2/example/parse2.c
    functionUses: 0
    functionsReached:
    - xmlNewParserCtxt
    - xmlCtxtReadFile
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: void
    signature: void exampleFunc(const char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: main
    functionSourceFile: /src/libxml2/example/parse2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/example/parse1.c:26,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse1.c:28,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/parse1.c:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 22
    functionDepth: 14
    functionLinenumber: 22
    functionLinenumberEnd: 32
    functionName: example1Func
    functionSourceFile: /src/libxml2/example/parse1.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlReadFile
    - xmlFreeDoc
    linkageType: ''
    returnType: void
    signature: void example1Func(const char *filename)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionName: main
    functionSourceFile: /src/libxml2/example/parse1.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/libxml2/example/parse4.c:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - mem
    - size
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: readPacket
    functionSourceFile: /src/libxml2/example/parse4.c
    functionUses: 0
    functionsReached:
    - fread
    linkageType: ''
    returnType: int
    signature: int readPacket(char *mem, int size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: readPacket
      Src: /src/libxml2/example/parse4.c:54,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse4.c:56,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/libxml2/example/parse4.c:67,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse4.c:70,1
    - Dst: readPacket
      Src: /src/libxml2/example/parse4.c:79,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/example/parse4.c:80,1
    - Dst: xmlParseChunk
      Src: /src/libxml2/example/parse4.c:86,1
    - Dst: xmlFreeParserCtxt
      Src: /src/libxml2/example/parse4.c:94,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse4.c:97,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/parse4.c:103,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 43
    functionDepth: 4
    functionLinenumber: 43
    functionLinenumberEnd: 104
    functionName: example4Func
    functionSourceFile: /src/libxml2/example/parse4.c
    functionUses: 0
    functionsReached:
    - xmlCreatePushParserCtxt
    - readPacket
    - xmlParseChunk
    - fprintf
    - xmlFreeDoc
    - xmlFreeParserCtxt
    linkageType: ''
    returnType: void
    signature: void example4Func(const char *filename)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/libxml2/example/parse4.c:120,1
    - Dst: example4Func
      Src: /src/libxml2/example/parse4.c:122,1
    - Dst: fclose
      Src: /src/libxml2/example/parse4.c:123,1
    - Dst: fprintf
      Src: /src/libxml2/example/parse4.c:125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 106
    functionDepth: 5
    functionLinenumber: 106
    functionLinenumberEnd: 129
    functionName: main
    functionSourceFile: /src/libxml2/example/parse4.c
    functionUses: 0
    functionsReached:
    - example4Func
    - fprintf
    - fopen
    - fclose
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/libxml2/example/parse4.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionName: main
    functionSourceFile: /src/libxml2/example/parse4.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/libxml2/example/tree1.c:35,1
    - Dst: print_element_names
      Src: /src/libxml2/example/tree1.c:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - a_node
    argTypes:
    - xmlNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: print_element_names
    functionSourceFile: /src/libxml2/example/tree1.c
    functionUses: 1
    functionsReached:
    - print_element_names
    - printf
    linkageType: ''
    returnType: void
    signature: void print_element_names(xmlNode * a_node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlReadFile
      Src: /src/libxml2/example/tree1.c:65,1
    - Dst: printf
      Src: /src/libxml2/example/tree1.c:68,1
    - Dst: xmlDocGetRootElement
      Src: /src/libxml2/example/tree1.c:72,1
    - Dst: print_element_names
      Src: /src/libxml2/example/tree1.c:74,1
    - Dst: xmlFreeDoc
      Src: /src/libxml2/example/tree1.c:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 48
    functionDepth: 14
    functionLinenumber: 48
    functionLinenumberEnd: 80
    functionName: main
    functionSourceFile: /src/libxml2/example/tree1.c
    functionUses: 0
    functionsReached:
    - print_element_names
    - xmlReadFile
    - printf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ctx
    - msg
    argTypes:
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6
      start: 4
    functionDepth: 0
    functionLinenumber: 4
    functionLinenumberEnd: 6
    functionName: ignore
    functionSourceFile: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ignore (void* ctx, const char* msg, ...)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetGenericErrorFunc
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:9,1
    - Dst: xmlSecBufferCreate
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:10,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:11,1
    - Dst: xmlSecParseMemory
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:12,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:12,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:13,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:15,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c:16,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 8
    functionDepth: 3
    functionLinenumber: 8
    functionLinenumberEnd: 18
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferCreate
    - xmlSetGenericErrorFunc
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferGetSize
    - xmlSecBufferDestroy
    - xmlSecParseMemory
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - src
    - ','
    - dst
    - ','
    - pref
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: XMLSEC_XSLT_COPY_SEC_PREF
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_XSLT_COPY_SEC_PREF(src, dst, pref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:115,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:117,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:118,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:119,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:120,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:121,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:122,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 114
    functionDepth: 4
    functionLinenumber: 114
    functionLinenumberEnd: 124
    functionName: xmlSecTransformXsltInitialize
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xsltNewSecurityPrefs
    - xmlSecAssert
    - xsltSetSecurityPrefs
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformXsltInitialize(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 131
    functionName: xmlSecTransformXsltShutdown
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xsltFreeSecurityPrefs
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformXsltShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:142,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:143,1
    - Dst: XMLSEC_XSLT_COPY_SEC_PREF
      Src: /src/xmlsec/src/xslt.c:146,1
    - Dst: XMLSEC_XSLT_COPY_SEC_PREF
      Src: /src/xmlsec/src/xslt.c:147,1
    - Dst: XMLSEC_XSLT_COPY_SEC_PREF
      Src: /src/xmlsec/src/xslt.c:148,1
    - Dst: XMLSEC_XSLT_COPY_SEC_PREF
      Src: /src/xmlsec/src/xslt.c:149,1
    - Dst: XMLSEC_XSLT_COPY_SEC_PREF
      Src: /src/xmlsec/src/xslt.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - sec
    argTypes:
    - xsltSecurityPrefsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 151
    functionName: xmlSecTransformXsltSetDefaultSecurityPrefs
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - XMLSEC_XSLT_COPY_SEC_PREF
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformXsltSetDefaultSecurityPrefs(xsltSecurityPrefsPtr
      sec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: xmlSecTransformXsltGetKlass
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformXsltGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:194,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xslt.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:195,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/xslt.c:195,1
    - Dst: xmlSecXsltGetCtx
      Src: /src/xmlsec/src/xslt.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:198,1
    - Dst: memset
      Src: /src/xmlsec/src/xslt.c:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 205
    functionName: xmlSecXsltInitialize
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecXsltGetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecXsltInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:211,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xslt.c:211,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:212,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/xslt.c:212,1
    - Dst: xmlSecXsltGetCtx
      Src: /src/xmlsec/src/xslt.c:214,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xslt.c:215,1
    - Dst: xsltFreeStylesheet
      Src: /src/xmlsec/src/xslt.c:218,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:222,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/xslt.c:225,1
    - Dst: memset
      Src: /src/xmlsec/src/xslt.c:227,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 207
    functionDepth: 4
    functionLinenumber: 207
    functionLinenumberEnd: 228
    functionName: xmlSecXsltFinalize
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecXsltGetCtx
    - xmlSecTransformCheckSize
    - xmlFreeParserCtxt
    - xmlSecAssert
    - xmlFreeDoc
    - xsltFreeStylesheet
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecXsltFinalize(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:241,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xslt.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:242,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/xslt.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:244,1
    - Dst: xmlSecXsltGetCtx
      Src: /src/xmlsec/src/xslt.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:248,1
    - Dst: xmlBufferCreate
      Src: /src/xmlsec/src/xslt.c:251,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xslt.c:253,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:253,1
    - Dst: xmlNodeDump
      Src: /src/xmlsec/src/xslt.c:258,1
    - Dst: xmlBufferContent
      Src: /src/xmlsec/src/xslt.c:263,1
    - Dst: xmlBufferLength
      Src: /src/xmlsec/src/xslt.c:264,1
    - Dst: xmlSecParseMemory
      Src: /src/xmlsec/src/xslt.c:266,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:268,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:269,1
    - Dst: xsltParseStylesheetDoc
      Src: /src/xmlsec/src/xslt.c:274,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:276,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:287,1
    - Dst: xmlBufferFree
      Src: /src/xmlsec/src/xslt.c:290,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 230
    functionDepth: 6
    functionLinenumber: 230
    functionLinenumberEnd: 293
    functionName: xmlSecXsltReadNode
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xmlSecXsltError
    - xmlBufferFree
    - xmlBufferContent
    - xmlSecTransformCheckId
    - xmlSecXsltGetCtx
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xsltParseStylesheetDoc
    - xmlSecAssert2
    - xmlBufferLength
    - xmlSecXmlError
    - xmlBufferCreate
    - xmlNodeDump
    - xmlSecTransformGetName
    - xmlFreeDoc
    - xmlSecParseMemory
    linkageType: ''
    returnType: int
    signature: int xmlSecXsltReadNode(xmlSecTransformPtr transform, xmlNodePtr node,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:301,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xslt.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:302,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/xslt.c:302,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:303,1
    - Dst: xmlSecXsltGetCtx
      Src: /src/xmlsec/src/xslt.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:311,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/xmlsec/src/xslt.c:313,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xslt.c:315,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:315,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/xslt.c:318,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/xslt.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:328,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/xslt.c:334,1
    - Dst: return
      Src: /src/xmlsec/src/xslt.c:334,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:334,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/xslt.c:335,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/xslt.c:337,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:337,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/xslt.c:350,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/xslt.c:352,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:352,1
    - Dst: xmlSecXsApplyStylesheet
      Src: /src/xmlsec/src/xslt.c:360,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:362,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:362,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:363,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:366,1
    - Dst: xmlSecTransformCreateOutputBuffer
      Src: /src/xmlsec/src/xslt.c:369,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:371,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:371,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:372,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/xslt.c:376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:378,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:378,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:379,1
    - Dst: xsltSaveResultTo
      Src: /src/xmlsec/src/xslt.c:384,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:386,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:386,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xslt.c:387,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:388,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xslt.c:391,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xslt.c:393,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:393,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:394,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:397,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 81
    argCount: 5
    argNames:
    - transform
    - data
    - dataSize
    - final
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 295
    functionDepth: 4
    functionLinenumber: 295
    functionLinenumberEnd: 403
    functionName: xmlSecXsltPushBin
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - return
    - xmlSecXsApplyStylesheet
    - xmlCreatePushParserCtxt
    - xmlSecParsePrepareCtxt
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlSecXmlParserError
    - xmlSecXsltError
    - xsltSaveResultTo
    - xmlSecXsltGetCtx
    - xmlSecTransformCheckSize
    - xmlSecTransformCreateOutputBuffer
    - xmlSecBufferCreateOutputBuffer
    - xmlParseChunk
    - xmlSecInvalidTransfromStatusError
    - xmlOutputBufferClose
    - xmlSecXmlParserError2
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte*
      data,\n                  xmlSecSize dataSize, int final, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:412,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xslt.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:413,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/xslt.c:413,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:414,1
    - Dst: xmlSecXsltGetCtx
      Src: /src/xmlsec/src/xslt.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:417,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:418,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xslt.c:422,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xslt.c:423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:434,1
    - Dst: xmlSecXslProcess
      Src: /src/xmlsec/src/xslt.c:436,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:438,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:438,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/xslt.c:442,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xslt.c:444,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xslt.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:452,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/xslt.c:454,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 458
    functionName: xmlSecXsltExecute
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecXsltGetCtx
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecXslProcess
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecXsltExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr
      transformCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:469,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:470,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:471,1
    - Dst: xmlSecParseMemory
      Src: /src/xmlsec/src/xslt.c:473,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xslt.c:473,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xslt.c:473,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:475,1
    - Dst: xmlSecXsApplyStylesheet
      Src: /src/xmlsec/src/xslt.c:479,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:481,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/xslt.c:485,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xslt.c:487,1
    - Dst: xsltSaveResultTo
      Src: /src/xmlsec/src/xslt.c:491,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:493,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xslt.c:497,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xslt.c:500,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xslt.c:508,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:511,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xslt.c:514,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecXsltCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 461
    functionDepth: 3
    functionLinenumber: 461
    functionLinenumberEnd: 517
    functionName: xmlSecXslProcess
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 1
    functionsReached:
    - xmlSecXsltError
    - xsltSaveResultTo
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferCreateOutputBuffer
    - xmlSecXmlError
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlOutputBufferClose
    - xmlSecParseMemory
    - xmlSecXsApplyStylesheet
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSecXslProcess(xmlSecXsltCtxPtr ctx, xmlSecBufferPtr in, xmlSecBufferPtr
      out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xslt.c:528,1
    - Dst: xsltNewTransformContext
      Src: /src/xmlsec/src/xslt.c:530,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:532,1
    - Dst: xsltSetCtxtSecurityPrefs
      Src: /src/xmlsec/src/xslt.c:537,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:539,1
    - Dst: xsltApplyStylesheetUser
      Src: /src/xmlsec/src/xslt.c:543,1
    - Dst: xmlSecXsltError
      Src: /src/xmlsec/src/xslt.c:545,1
    - Dst: xsltFreeTransformContext
      Src: /src/xmlsec/src/xslt.c:551,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - doc
    argTypes:
    - xmlSecXsltCtxPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 520
    functionDepth: 9
    functionLinenumber: 520
    functionLinenumberEnd: 554
    functionName: xmlSecXsApplyStylesheet
    functionSourceFile: /src/xmlsec/src/xslt.c
    functionUses: 2
    functionsReached:
    - xmlSecXsltError
    - xmlSecAssert2
    - xsltSetCtxtSecurityPrefs
    - xsltFreeTransformContext
    - xsltNewTransformContext
    - xsltApplyStylesheetUser
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlSecXsApplyStylesheet(xmlSecXsltCtxPtr ctx, xmlDocPtr doc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTmplSignatureCreateNsPref
      Src: /src/xmlsec/src/templates.c:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - doc
    - c14nMethodId
    - signMethodId
    - id
    argTypes:
    - xmlDocPtr
    - xmlSecTransformId
    - xmlSecTransformId
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: xmlSecTmplSignatureCreate
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecTmplSignatureCreateNsPref
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplSignatureCreate(xmlDocPtr doc, xmlSecTransformId
      c14nMethodId,\n                      xmlSecTransformId signMethodId, const xmlChar
      *id)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:104,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:107,1
    - Dst: xmlNewDocNode
      Src: /src/xmlsec/src/templates.c:110,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:112,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:113,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/templates.c:117,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:119,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:120,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:121,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/templates.c:124,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:127,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:131,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:133,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:134,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:139,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:141,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:142,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:147,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:149,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:150,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:153,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:154,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:155,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:156,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:161,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:163,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:164,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:167,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:168,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:169,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:170,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 55
    argCount: 5
    argNames:
    - doc
    - c14nMethodId
    - signMethodId
    - id
    - nsPrefix
    argTypes:
    - xmlDocPtr
    - xmlSecTransformId
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 95
    functionDepth: 8
    functionLinenumber: 95
    functionLinenumberEnd: 175
    functionName: xmlSecTmplSignatureCreateNsPref
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNode
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlNewNs
    - xmlSecXmlError2
    - xmlSetProp
    - xmlSetNs
    - xmlFreeNode
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId
      c14nMethodId,\n                                xmlSecTransformId signMethodId,
      const xmlChar *id,\n                                const xmlChar* nsPrefix)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:192,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:194,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:198,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:200,1
    - Dst: xmlSecAddNextSibling
      Src: /src/xmlsec/src/templates.c:205,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:207,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - signNode
    - id
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 188
    functionDepth: 6
    functionLinenumber: 188
    functionLinenumberEnd: 215
    functionName: xmlSecTmplSignatureEnsureKeyInfo
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    - xmlSetProp
    - xmlSecAddNextSibling
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplSignatureEnsureKeyInfo(xmlNodePtr signNode, const
      xmlChar *id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:239,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:241,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:243,1
    - Dst: xmlSecTmplAddReference
      Src: /src/xmlsec/src/templates.c:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - signNode
    - digestMethodId
    - id
    - uri
    - type
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 249
    functionName: xmlSecTmplSignatureAddReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    - xmlSecFindChild
    - xmlSecTmplAddReference
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplSignatureAddReference(xmlNodePtr signNode, xmlSecTransformId
      digestMethodId,\n                    const xmlChar *id, const xmlChar *uri,
      const xmlChar *type)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:259,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:262,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:264,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:270,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:273,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:276,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:280,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:282,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:283,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:284,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:287,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:288,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:289,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:290,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:291,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:296,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:298,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:299,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:300,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 5
    argNames:
    - parentNode
    - digestMethodId
    - id
    - uri
    - type
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 251
    functionDepth: 6
    functionLinenumber: 251
    functionLinenumberEnd: 305
    functionName: xmlSecTmplAddReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplAddReference(xmlNodePtr parentNode, xmlSecTransformId
      digestMethodId,\n                    const xmlChar *id, const xmlChar *uri,
      const xmlChar *type)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:324,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:326,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:328,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:332,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:335,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:338,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - signNode
    - id
    - mimeType
    - encoding
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 319
    functionDepth: 6
    functionLinenumber: 319
    functionLinenumberEnd: 341
    functionName: xmlSecTmplSignatureAddObject
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplSignatureAddObject(xmlNodePtr signNode, const
      xmlChar *id,\n                         const xmlChar *mimeType, const xmlChar
      *encoding)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:355,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:357,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:359,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - signNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 364
    functionName: xmlSecTmplSignatureGetSignMethodNode
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    - xmlSecFindChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplSignatureGetSignMethodNode(xmlNodePtr signNode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:378,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:380,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:382,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - signNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 374
    functionDepth: 1
    functionLinenumber: 374
    functionLinenumberEnd: 387
    functionName: xmlSecTmplSignatureGetC14NMethodNode
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    - xmlSecFindChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplSignatureGetC14NMethodNode(xmlNodePtr signNode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:406,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:409,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/templates.c:413,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:415,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:417,1
    - Dst: xmlSecAddPrevSibling
      Src: /src/xmlsec/src/templates.c:421,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:423,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:429,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:431,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:435,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:436,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:437,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:438,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:439,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - referenceNode
    - transformId
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 399
    functionDepth: 6
    functionLinenumber: 399
    functionLinenumberEnd: 444
    functionName: xmlSecTmplReferenceAddTransform
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecAddPrevSibling
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplReferenceAddTransform(xmlNodePtr referenceNode,
      xmlSecTransformId transformId)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:461,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:463,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:465,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:469,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:472,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - objectNode
    - id
    - target
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 457
    functionDepth: 6
    functionLinenumber: 457
    functionLinenumberEnd: 475
    functionName: xmlSecTmplObjectAddSignProperties
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplObjectAddSignProperties(xmlNodePtr objectNode,
      const xmlChar *id, const xmlChar *target)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:491,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:493,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:495,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:499,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - objectNode
    - id
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 487
    functionDepth: 6
    functionLinenumber: 487
    functionLinenumberEnd: 502
    functionName: xmlSecTmplObjectAddManifest
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplObjectAddManifest(xmlNodePtr objectNode,  const
      xmlChar *id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTmplAddReference
      Src: /src/xmlsec/src/templates.c:522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - manifestNode
    - digestMethodId
    - id
    - uri
    - type
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 519
    functionDepth: 7
    functionLinenumber: 519
    functionLinenumberEnd: 523
    functionName: xmlSecTmplManifestAddReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecTmplAddReference
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplManifestAddReference(xmlNodePtr manifestNode,
      xmlSecTransformId digestMethodId,\n                              const xmlChar
      *id, const xmlChar *uri, const xmlChar *type)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlNewDocNode
      Src: /src/xmlsec/src/templates.c:553,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:555,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:556,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/templates.c:560,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:562,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:563,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/templates.c:566,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:569,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:572,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:575,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:578,1
    - Dst: xmlSecTmplPrepareEncData
      Src: /src/xmlsec/src/templates.c:581,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:582,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 6
    argNames:
    - doc
    - encMethodId
    - id
    - type
    - mimeType
    - encoding
    argTypes:
    - xmlDocPtr
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 546
    functionDepth: 8
    functionLinenumber: 546
    functionLinenumberEnd: 586
    functionName: xmlSecTmplEncDataCreate
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlNewDocNode
    - xmlSecErrorsSafeString
    - xmlSecTmplPrepareEncData
    - xmlNewNs
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetNs
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplEncDataCreate(xmlDocPtr doc, xmlSecTransformId
      encMethodId,\n                            const xmlChar *id, const xmlChar *type,\n
      \                           const xmlChar *mimeType, const xmlChar *encoding)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:593,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:597,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:599,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:602,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:603,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:604,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:610,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:612,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - parentNode
    - encMethodId
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 588
    functionDepth: 6
    functionLinenumber: 588
    functionLinenumberEnd: 617
    functionName: xmlSecTmplPrepareEncData
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: int xmlSecTmplPrepareEncData(xmlNodePtr parentNode, xmlSecTransformId
      encMethodId)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:634,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:636,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:640,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:642,1
    - Dst: xmlSecAddPrevSibling
      Src: /src/xmlsec/src/templates.c:647,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:649,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:654,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - encNode
    - id
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 630
    functionDepth: 6
    functionLinenumber: 630
    functionLinenumberEnd: 657
    functionName: xmlSecTmplEncDataEnsureKeyInfo
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecAddPrevSibling
    - xmlSecNodeNotFoundError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataEnsureKeyInfo(xmlNodePtr encNode, const
      xmlChar* id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:674,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:676,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:678,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:680,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:686,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - encNode
    - id
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 670
    functionDepth: 6
    functionLinenumber: 670
    functionLinenumberEnd: 690
    functionName: xmlSecTmplEncDataEnsureEncProperties
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataEnsureEncProperties(xmlNodePtr encNode,
      const xmlChar *id)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:710,1
    - Dst: xmlSecTmplEncDataEnsureEncProperties
      Src: /src/xmlsec/src/templates.c:712,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:714,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:718,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:720,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:724,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:727,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - encNode
    - id
    - target
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 705
    functionDepth: 7
    functionLinenumber: 705
    functionLinenumberEnd: 731
    functionName: xmlSecTmplEncDataAddEncProperty
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTmplEncDataEnsureEncProperties
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataAddEncProperty(xmlNodePtr encNode, const
      xmlChar *id, const xmlChar *target)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:747,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:749,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:751,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:757,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:759,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:763,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:765,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:767,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 1
    argNames:
    - encNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 742
    functionDepth: 1
    functionLinenumber: 742
    functionLinenumberEnd: 773
    functionName: xmlSecTmplEncDataEnsureCipherValue
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataEnsureCipherValue(xmlNodePtr encNode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:791,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:793,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/templates.c:795,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:801,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:803,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:807,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:809,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:811,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:817,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - encNode
    - uri
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 786
    functionDepth: 6
    functionLinenumber: 786
    functionLinenumberEnd: 821
    functionName: xmlSecTmplEncDataEnsureCipherReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeNotFoundError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataEnsureCipherReference(xmlNodePtr encNode,
      const xmlChar *uri)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:833,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - encNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 831
    functionDepth: 1
    functionLinenumber: 831
    functionLinenumberEnd: 836
    functionName: xmlSecTmplEncDataGetEncMethodNode
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecFindChild
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplEncDataGetEncMethodNode(xmlNodePtr encNode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:856,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:857,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:858,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:860,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:862,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:864,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:869,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:871,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:875,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:876,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:877,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:878,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:879,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - cipherReferenceNode
    - transformId
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 850
    functionDepth: 6
    functionLinenumber: 850
    functionLinenumberEnd: 884
    functionName: xmlSecTmplCipherReferenceAddTransform
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplCipherReferenceAddTransform(xmlNodePtr cipherReferenceNode,\n
      \                                 xmlSecTransformId transformId)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:907,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:909,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:911,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:913,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:918,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:920,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:925,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:926,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:927,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:928,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - encNode
    - uri
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 903
    functionDepth: 6
    functionLinenumber: 903
    functionLinenumberEnd: 935
    functionName: xmlSecTmplReferenceListAddDataReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplReferenceListAddDataReference(xmlNodePtr encNode,
      const xmlChar *uri)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:951,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:953,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:955,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:957,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:962,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:964,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:969,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:970,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:971,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:972,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:973,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - encNode
    - uri
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 947
    functionDepth: 6
    functionLinenumber: 947
    functionLinenumberEnd: 979
    functionName: xmlSecTmplReferenceListAddKeyReference
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplReferenceListAddKeyReference(xmlNodePtr encNode,
      const xmlChar *uri)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1003,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1005,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1007,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1011,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1013,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - keyInfoNode
    - name
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 998
    functionDepth: 1
    functionLinenumber: 998
    functionLinenumberEnd: 1018
    functionName: xmlSecTmplKeyInfoAddKeyName
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecNodeEncodeAndSetContent
    - xmlSecInternalError
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplKeyInfoAddKeyName(xmlNodePtr keyInfoNode, const
      xmlChar* name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1033,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1035,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - keyInfoNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1029
    functionDepth: 1
    functionLinenumber: 1029
    functionLinenumberEnd: 1042
    functionName: xmlSecTmplKeyInfoAddKeyValue
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplKeyInfoAddKeyValue(xmlNodePtr keyInfoNode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1057,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1059,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1061,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - keyInfoNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1053
    functionDepth: 1
    functionLinenumber: 1053
    functionLinenumberEnd: 1066
    functionName: xmlSecTmplKeyInfoAddX509Data
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplKeyInfoAddX509Data(xmlNodePtr keyInfoNode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1084,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1086,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1088,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1093,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1096,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - keyInfoNode
    - uri
    - type
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1099
      start: 1079
    functionDepth: 6
    functionLinenumber: 1079
    functionLinenumberEnd: 1099
    functionName: xmlSecTmplKeyInfoAddRetrievalMethod
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplKeyInfoAddRetrievalMethod(xmlNodePtr keyInfoNode,
      const xmlChar *uri,\n                             const xmlChar *type)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1117,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1118,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1119,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1121,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1123,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1125,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1130,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1132,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1136,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:1137,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:1138,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:1139,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:1140,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - retrMethodNode
    - transformId
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1112
    functionDepth: 6
    functionLinenumber: 1112
    functionLinenumberEnd: 1145
    functionName: xmlSecTmplRetrievalMethodAddTransform
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplRetrievalMethodAddTransform(xmlNodePtr retrMethodNode,
      xmlSecTransformId transformId)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1167,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1170,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1172,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1177,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1180,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1183,1
    - Dst: xmlSecTmplPrepareEncData
      Src: /src/xmlsec/src/templates.c:1186,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:1187,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:1188,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - keyInfoNode
    - encMethodId
    - id
    - type
    - recipient
    argTypes:
    - xmlNodePtr
    - xmlSecTransformId
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1162
    functionDepth: 7
    functionLinenumber: 1162
    functionLinenumberEnd: 1192
    functionName: xmlSecTmplKeyInfoAddEncryptedKey
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTmplPrepareEncData
    - xmlFreeNode
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecTmplKeyInfoAddEncryptedKey(xmlNodePtr keyInfoNode,
      xmlSecTransformId encMethodId,\n                         const xmlChar* id,
      const xmlChar* type, const xmlChar* recipient)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1213,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1215,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1217,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1221,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x509DataNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1209
    functionDepth: 1
    functionLinenumber: 1209
    functionLinenumberEnd: 1228
    functionName: xmlSecTmplX509DataAddIssuerSerial
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddIssuerSerial(xmlNodePtr x509DataNode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1245,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1246,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1247,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1251,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1253,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1258,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1260,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - x509IssuerSerialNode
    - issuerName
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1265
      start: 1240
    functionDepth: 1
    functionLinenumber: 1240
    functionLinenumberEnd: 1265
    functionName: xmlSecTmplX509IssuerSerialAddIssuerName
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509IssuerSerialAddIssuerName(xmlNodePtr x509IssuerSerialNode,
      const xmlChar* issuerName)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1282,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1284,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1285,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1289,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1291,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1296,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1298,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - x509IssuerSerialNode
    - serial
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1277
    functionDepth: 1
    functionLinenumber: 1277
    functionLinenumberEnd: 1303
    functionName: xmlSecTmplX509IssuerSerialAddSerialNumber
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509IssuerSerialAddSerialNumber(xmlNodePtr x509IssuerSerialNode,
      const xmlChar* serial)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1319,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1321,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1323,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1327,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x509DataNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1315
    functionDepth: 1
    functionLinenumber: 1315
    functionLinenumberEnd: 1334
    functionName: xmlSecTmplX509DataAddSubjectName
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddSubjectName(xmlNodePtr x509DataNode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1350,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1352,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1354,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1358,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1360,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x509DataNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1346
    functionDepth: 1
    functionLinenumber: 1346
    functionLinenumberEnd: 1365
    functionName: xmlSecTmplX509DataAddSKI
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddSKI(xmlNodePtr x509DataNode)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1383,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1385,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1387,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1391,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1393,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1397,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:1398,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:1398,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - x509DataNode
    - digestAlgorithm
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1378
    functionDepth: 6
    functionLinenumber: 1378
    functionLinenumberEnd: 1403
    functionName: xmlSecTmplX509DataAddDigest
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddDigest(xmlNodePtr x509DataNode, const
      xmlChar* digestAlgorithm)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1420,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1422,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1424,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1428,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1430,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x509DataNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1416
    functionDepth: 1
    functionLinenumber: 1416
    functionLinenumberEnd: 1435
    functionName: xmlSecTmplX509DataAddCertificate
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddCertificate(xmlNodePtr x509DataNode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1451,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1453,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1455,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1459,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1461,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x509DataNode
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1447
    functionDepth: 1
    functionLinenumber: 1447
    functionLinenumberEnd: 1466
    functionName: xmlSecTmplX509DataAddCRL
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecTmplX509DataAddCRL(xmlNodePtr x509DataNode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1490,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1492,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1494,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1498,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1500,1
    - Dst: sprintf_s
      Src: /src/xmlsec/src/templates.c:1505,1
    - Dst: sprintf
      Src: /src/xmlsec/src/templates.c:1507,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transformNode
    - bitsLen
    argTypes:
    - xmlNodePtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1484
    functionDepth: 1
    functionLinenumber: 1484
    functionLinenumberEnd: 1512
    functionName: xmlSecTmplTransformAddHmacOutputLength
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - sprintf
    - sprintf_s
    linkageType: ''
    returnType: int
    signature: int xmlSecTmplTransformAddHmacOutputLength(xmlNodePtr transformNode,
      xmlSecSize bitsLen)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1531,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1533,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1535,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1539,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1541,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/templates.c:1545,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/templates.c:1547,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/templates.c:1551,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/templates.c:1552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 3
    argNames:
    - transformNode
    - buf
    - size
    argTypes:
    - xmlNodePtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1554
      start: 1524
    functionDepth: 8
    functionLinenumber: 1524
    functionLinenumberEnd: 1554
    functionName: xmlSecTmplTransformAddRsaOaepParam
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlNodeSetContent
    - xmlSecBase64Encode
    linkageType: ''
    returnType: int
    signature: int xmlSecTmplTransformAddRsaOaepParam(xmlNodePtr transformNode, const
      xmlSecByte *buf, xmlSecSize size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1570,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1572,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1574,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1580,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1584,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:1585,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:1586,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:1587,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:1588,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - transformNode
    - algorithm
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1565
    functionDepth: 6
    functionLinenumber: 1565
    functionLinenumberEnd: 1593
    functionName: xmlSecTmplTransformAddRsaMgf
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddRsaMgf(xmlNodePtr transformNode,\n                        const
      xmlChar *algorithm)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1609,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1611,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1613,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1617,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1619,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1623,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:1624,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:1625,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/templates.c:1626,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/templates.c:1627,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - transformNode
    - algorithm
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1604
    functionDepth: 6
    functionLinenumber: 1604
    functionLinenumberEnd: 1632
    functionName: xmlSecTmplTransformAddRsaDigest
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlUnlinkNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlFreeNode
    - xmlSecXmlError2
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddRsaDigest(xmlNodePtr transformNode,\n                        const
      xmlChar *algorithm)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1648,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1649,1
    - Dst: xmlReadMemory
      Src: /src/xmlsec/src/templates.c:1651,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/templates.c:1651,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/templates.c:1651,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/templates.c:1653,1
    - Dst: xmlSecReplaceContent
      Src: /src/xmlsec/src/templates.c:1657,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/src/templates.c:1657,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1659,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/templates.c:1660,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/templates.c:1664,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transformNode
    - xslt
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1643
    functionDepth: 14
    functionLinenumber: 1643
    functionLinenumberEnd: 1666
    functionName: xmlSecTmplTransformAddXsltStylesheet
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlStrlen
    - xmlSecAssert2
    - xmlSecParserGetDefaultOptions
    - xmlSecXmlError
    - xmlReadMemory
    - xmlSecReplaceContent
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSecTmplTransformAddXsltStylesheet(xmlNodePtr transformNode,
      const xmlChar *xslt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1684,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1685,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1687,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1689,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1693,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1695,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/templates.c:1696,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1700,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transformNode
    - prefixList
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1679
    functionDepth: 6
    functionLinenumber: 1679
    functionLinenumberEnd: 1702
    functionName: xmlSecTmplTransformAddC14NInclNamespaces
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeGetName
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddC14NInclNamespaces(xmlNodePtr transformNode,\n
      \                                        const xmlChar *prefixList)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1722,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1723,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1725,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1727,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1731,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1733,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1737,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1739,1
    - Dst: xmlSecTmplNodeWriteNsList
      Src: /src/xmlsec/src/templates.c:1743,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - transformNode
    - expression
    - nsList
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1716
    functionDepth: 1
    functionLinenumber: 1716
    functionLinenumberEnd: 1744
    functionName: xmlSecTmplTransformAddXPath
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecTmplNodeWriteNsList
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddXPath(xmlNodePtr transformNode, const xmlChar
      *expression,\n                         const xmlChar **nsList)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1765,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1766,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1767,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1769,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1771,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/templates.c:1774,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1776,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1778,1
    - Dst: xmlSecTmplNodeWriteNsList
      Src: /src/xmlsec/src/templates.c:1782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - transformNode
    - type
    - expression
    - nsList
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1783
      start: 1759
    functionDepth: 6
    functionLinenumber: 1759
    functionLinenumberEnd: 1783
    functionName: xmlSecTmplTransformAddXPath2
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecTmplNodeWriteNsList
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddXPath2(xmlNodePtr transformNode, const xmlChar*
      type,\n                        const xmlChar *expression, const xmlChar **nsList)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1803,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1804,1
    - Dst: xmlSecFindChild
      Src: /src/xmlsec/src/templates.c:1806,1
    - Dst: xmlSecNodeAlreadyPresentError
      Src: /src/xmlsec/src/templates.c:1808,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/templates.c:1812,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1814,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/templates.c:1818,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/templates.c:1820,1
    - Dst: xmlSecTmplNodeWriteNsList
      Src: /src/xmlsec/src/templates.c:1824,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - transformNode
    - expression
    - nsList
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1797
    functionDepth: 1
    functionLinenumber: 1797
    functionLinenumberEnd: 1825
    functionName: xmlSecTmplTransformAddXPointer
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 0
    functionsReached:
    - xmlSecNodeAlreadyPresentError
    - xmlSecAddChild
    - xmlSecFindChild
    - xmlSecInternalError
    - xmlSecTmplNodeWriteNsList
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    linkageType: ''
    returnType: int
    signature: "int xmlSecTmplTransformAddXPointer(xmlNodePtr transformNode, const
      xmlChar *expression,\n                         const xmlChar **nsList)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1834,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/templates.c:1835,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/templates.c:1842,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/templates.c:1849,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/templates.c:1854,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/templates.c:1856,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/templates.c:1857,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - parentNode
    - nsList
    argTypes:
    - xmlNodePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1827
    functionDepth: 3
    functionLinenumber: 1827
    functionLinenumberEnd: 1865
    functionName: xmlSecTmplNodeWriteNsList
    functionSourceFile: /src/xmlsec/src/templates.c
    functionUses: 3
    functionsReached:
    - xmlStrEqual
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlNewNs
    - xmlSecXmlError2
    linkageType: ''
    returnType: int
    signature: int xmlSecTmplNodeWriteNsList(xmlNodePtr parentNode, const xmlChar**
      nsList)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - defAllocMode
    - defInitialSize
    argTypes:
    - xmlSecAllocMode
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionName: xmlSecPtrListSetDefaultAllocMode
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListSetDefaultAllocMode(xmlSecAllocMode defAllocMode,
      xmlSecSize defInitialSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:64,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/list.c:67,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/list.c:69,1
    - Dst: xmlSecPtrListKlassGetName
      Src: /src/xmlsec/src/list.c:70,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/list.c:74,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/list.c:76,1
    - Dst: xmlSecPtrListKlassGetName
      Src: /src/xmlsec/src/list.c:77,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/list.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecPtrListId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 83
    functionName: xmlSecPtrListCreate
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecPtrListKlassGetName
    - xmlMalloc
    - xmlSecPtrListInitialize
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecPtrListCreate(xmlSecPtrListId id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:93,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:93,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/list.c:94,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/list.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 96
    functionName: xmlSecPtrListDestroy
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecAssert
    - xmlFree
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListDestroy(xmlSecPtrListPtr list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:111,1
    - Dst: memset
      Src: /src/xmlsec/src/list.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - list
    - id
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecPtrListId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 118
    functionName: xmlSecPtrListInitialize
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListInitialize(xmlSecPtrListPtr list, xmlSecPtrListId
      id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:129,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:129,1
    - Dst: xmlSecPtrListEmpty
      Src: /src/xmlsec/src/list.c:131,1
    - Dst: memset
      Src: /src/xmlsec/src/list.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 133
    functionName: xmlSecPtrListFinalize
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - memset
    - xmlSecPtrListEmpty
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListFinalize(xmlSecPtrListPtr list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:143,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:143,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:149,1
    - Dst: xmlSecPtrListPtr::id::destroyItem
      Src: /src/xmlsec/src/list.c:151,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:156,1
    - Dst: memset
      Src: /src/xmlsec/src/list.c:158,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/list.c:159,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 163
    functionName: xmlSecPtrListEmpty
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlSecPtrListIsValid
    - xmlSecAssert
    - xmlSecPtrListPtr::id::destroyItem
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListEmpty(xmlSecPtrListPtr list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:181,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:182,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:182,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:183,1
    - Dst: xmlSecPtrListEnsureSize
      Src: /src/xmlsec/src/list.c:186,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/list.c:188,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:188,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:196,1
    - Dst: xmlSecPtrListPtr::id::duplicateItem
      Src: /src/xmlsec/src/list.c:199,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/list.c:201,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:201,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 210
    functionName: xmlSecPtrListCopy
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecPtrListGetName
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    - xmlSecInternalError2
    - xmlSecPtrListEnsureSize
    - xmlSecPtrListPtr::id::duplicateItem
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListCopy(xmlSecPtrListPtr dst, xmlSecPtrListPtr src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:225,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:225,1
    - Dst: xmlSecPtrListCreate
      Src: /src/xmlsec/src/list.c:227,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/list.c:229,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:230,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/list.c:234,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/list.c:236,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:237,1
    - Dst: xmlSecPtrListDestroy
      Src: /src/xmlsec/src/list.c:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 242
    functionName: xmlSecPtrListDuplicate
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecPtrListGetName
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    - xmlSecPtrListCreate
    - xmlSecPtrListCopy
    - xmlSecPtrListDestroy
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecPtrListDuplicate(xmlSecPtrListPtr list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:254,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - list
    argTypes:
    - xmlSecPtrListPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 257
    functionName: xmlSecPtrListGetSize
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecPtrListGetSize(xmlSecPtrListPtr list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:271,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 276
    functionName: xmlSecPtrListGetItem
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: xmlSecPtr
    signature: xmlSecPtr xmlSecPtrListGetItem(xmlSecPtrListPtr list, xmlSecSize pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:291,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:291,1
    - Dst: xmlSecPtrListEnsureSize
      Src: /src/xmlsec/src/list.c:293,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/list.c:295,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - list
    - item
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 302
    functionName: xmlSecPtrListAdd
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListGetName
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    - xmlSecInternalError2
    - xmlSecPtrListEnsureSize
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListAdd(xmlSecPtrListPtr list, xmlSecPtr item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:318,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:318,1
    - Dst: xmlSecPtrListEnsureSize
      Src: /src/xmlsec/src/list.c:320,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/list.c:322,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:322,1
    - Dst: memmove
      Src: /src/xmlsec/src/list.c:329,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - list
    - item
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 339
    functionName: xmlSecPtrListInsert
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListGetName
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    - xmlSecInternalError2
    - memmove
    - xmlSecPtrListEnsureSize
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListInsert(xmlSecPtrListPtr list, xmlSecPtr item, xmlSecSize
      pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:355,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:357,1
    - Dst: xmlSecPtrListPtr::id::destroyItem
      Src: /src/xmlsec/src/list.c:360,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - list
    - item
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 364
    functionName: xmlSecPtrListSet
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListPtr::id::destroyItem
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListSet(xmlSecPtrListPtr list, xmlSecPtr item, xmlSecSize
      pos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:377,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:379,1
    - Dst: xmlSecPtrListPtr::id::destroyItem
      Src: /src/xmlsec/src/list.c:382,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 389
    functionName: xmlSecPtrListRemove
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListPtr::id::destroyItem
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListRemove(xmlSecPtrListPtr list, xmlSecSize pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:404,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 414
    functionName: xmlSecPtrListRemoveAndReturn
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: xmlSecPtr
    signature: xmlSecPtr xmlSecPtrListRemoveAndReturn(xmlSecPtrListPtr list, xmlSecSize
      pos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:426,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:426,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:427,1
    - Dst: fprintf
      Src: /src/xmlsec/src/list.c:429,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:434,1
    - Dst: xmlSecPtrListPtr::id::debugDumpItem
      Src: /src/xmlsec/src/list.c:436,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 440
    functionName: xmlSecPtrListDebugDump
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListPtr::id::debugDumpItem
    - xmlSecAssert
    - fprintf
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListDebugDump(xmlSecPtrListPtr list, FILE* output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:451,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:451,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:452,1
    - Dst: fprintf
      Src: /src/xmlsec/src/list.c:454,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:459,1
    - Dst: xmlSecPtrListPtr::id::debugXmlDumpItem
      Src: /src/xmlsec/src/list.c:461,1
    - Dst: fprintf
      Src: /src/xmlsec/src/list.c:465,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 449
    functionDepth: 1
    functionLinenumber: 449
    functionLinenumberEnd: 466
    functionName: xmlSecPtrListDebugXmlDump
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListPtr::id::debugXmlDumpItem
    - xmlSecAssert
    - fprintf
    - xmlSecPtrListIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecPtrListDebugXmlDump(xmlSecPtrListPtr list, FILE* output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:473,1
    - Dst: xmlSecPtrListIsValid
      Src: /src/xmlsec/src/list.c:473,1
    - Dst: xmlRealloc
      Src: /src/xmlsec/src/list.c:493,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/list.c:495,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/list.c:498,1
    - Dst: xmlSecPtrListGetName
      Src: /src/xmlsec/src/list.c:499,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - list
    - size
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 507
    functionName: xmlSecPtrListEnsureSize
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 3
    functionsReached:
    - xmlRealloc
    - xmlSecPtrListIsValid
    - xmlSecAssert2
    - xmlSecPtrListGetName
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecPtrListEnsureSize(xmlSecPtrListPtr list, xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: xmlSecStringListGetKlass
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecStringListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/list.c:539,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/list.c:541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 537
    functionDepth: 2
    functionLinenumber: 537
    functionLinenumberEnd: 542
    functionName: xmlSecStringListDuplicateItem
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrdup
    linkageType: ''
    returnType: xmlSecPtr
    signature: xmlSecPtr xmlSecStringListDuplicateItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/list.c:546,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/list.c:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 549
    functionName: xmlSecStringListDestroyItem
    functionSourceFile: /src/xmlsec/src/list.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecStringListDestroyItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: xmlSecTransformXmlParserGetKlass
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformXmlParserGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:116,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/parser.c:116,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:117,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/parser.c:117,1
    - Dst: xmlSecParserGetCtx
      Src: /src/xmlsec/src/parser.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:120,1
    - Dst: memset
      Src: /src/xmlsec/src/parser.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 125
    functionName: xmlSecParserInitialize
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecParserGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecParserInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/parser.c:131,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/parser.c:131,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/parser.c:132,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/parser.c:132,1
    - Dst: xmlSecParserGetCtx
      Src: /src/xmlsec/src/parser.c:134,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/parser.c:135,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:139,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:142,1
    - Dst: memset
      Src: /src/xmlsec/src/parser.c:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 127
    functionDepth: 4
    functionLinenumber: 127
    functionLinenumberEnd: 145
    functionName: xmlSecParserFinalize
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlFreeParserCtxt
    - xmlSecParserGetCtx
    - xmlSecAssert
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecParserFinalize(xmlSecTransformPtr transform)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:153,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/parser.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:154,1
    - Dst: xmlSecParserGetCtx
      Src: /src/xmlsec/src/parser.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:161,1
    - Dst: xmlCreatePushParserCtxt
      Src: /src/xmlsec/src/parser.c:163,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/parser.c:165,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:165,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/parser.c:168,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/parser.c:174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:178,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/parser.c:183,1
    - Dst: return
      Src: /src/xmlsec/src/parser.c:183,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:183,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:184,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/parser.c:186,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:187,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:195,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:197,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:197,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/parser.c:202,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:204,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:204,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:205,1
    - Dst: xmlSecNodeSetDocDestroy
      Src: /src/xmlsec/src/parser.c:209,1
    - Dst: xmlSecTransformPushXml
      Src: /src/xmlsec/src/parser.c:214,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:216,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:216,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 57
    argCount: 5
    argNames:
    - transform
    - data
    - dataSize
    - final
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 147
    functionDepth: 4
    functionLinenumber: 147
    functionLinenumberEnd: 225
    functionName: xmlSecParserPushBin
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecXmlParserError
    - xmlSecInternalError
    - xmlCreatePushParserCtxt
    - xmlSecTransformPushXml
    - xmlSecAssert2
    - xmlSecParsePrepareCtxt
    - xmlSecXmlError
    - xmlParseChunk
    - xmlSecParserGetCtx
    - return
    - xmlSecInvalidTransfromStatusError
    - xmlSecNodeSetCreate
    - xmlSecXmlParserError2
    - xmlSecNodeSetDocDestroy
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte*
      data,\n                    xmlSecSize dataSize, int final, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:237,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/parser.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:239,1
    - Dst: xmlSecParserGetCtx
      Src: /src/xmlsec/src/parser.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:242,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/parser.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:259,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/parser.c:263,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/parser.c:263,1
    - Dst: xmlSecTransformCreateInputBuffer
      Src: /src/xmlsec/src/parser.c:267,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:269,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:269,1
    - Dst: xmlNewParserCtxt
      Src: /src/xmlsec/src/parser.c:273,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/parser.c:275,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:275,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/xmlsec/src/parser.c:276,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/parser.c:279,1
    - Dst: xmlNewIOInputStream
      Src: /src/xmlsec/src/parser.c:281,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:283,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:283,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:284,1
    - Dst: xmlFreeParserInputBuffer
      Src: /src/xmlsec/src/parser.c:285,1
    - Dst: xmlCtxtPushInput
      Src: /src/xmlsec/src/parser.c:289,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:291,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:291,1
    - Dst: xmlFreeInputStream
      Src: /src/xmlsec/src/parser.c:292,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:294,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:297,1
    - Dst: xmlParseDocument
      Src: /src/xmlsec/src/parser.c:302,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:304,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:304,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:306,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:309,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:316,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/parser.c:319,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:321,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/parser.c:321,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:322,1
    - Dst: xmlSecNodeSetDocDestroy
      Src: /src/xmlsec/src/parser.c:325,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 76
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 227
    functionDepth: 12
    functionLinenumber: 227
    functionLinenumberEnd: 328
    functionName: xmlSecParserPopXml
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlNewParserCtxt
    - xmlSecParserGetCtx
    - xmlCtxtPushInput
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecParsePrepareCtxt
    - xmlFreeParserInputBuffer
    - xmlSecTransformGetName
    - xmlSecNodeSetDocDestroy
    - xmlParseDocument
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlSecNodeSetCreate
    - xmlNewIOInputStream
    - xmlSecTransformCreateInputBuffer
    - xmlSecXmlParserError
    - xmlFreeParserCtxt
    - xmlSecInvalidTransfromStatusError
    - xmlFreeDoc
    - xmlFreeInputStream
    linkageType: ''
    returnType: int
    signature: "int xmlSecParserPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr*
      nodes,\n                               xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:359,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/src/parser.c:361,1
    - Dst: xmlCreateFileParserCtxt
      Src: /src/xmlsec/src/parser.c:362,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/parser.c:364,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/parser.c:364,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/parser.c:367,1
    - Dst: xmlParserGetDirectory
      Src: /src/xmlsec/src/parser.c:371,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/parser.c:373,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/parser.c:373,1
    - Dst: xmlParseDocument
      Src: /src/xmlsec/src/parser.c:378,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/parser.c:380,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/parser.c:380,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:385,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:397,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:400,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 353
    functionDepth: 12
    functionLinenumber: 353
    functionLinenumberEnd: 404
    functionName: xmlSecParseFile
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecParsePrepareCtxt
    - xmlSecErrorsSafeString
    - xmlFreeParserCtxt
    - xmlCreateFileParserCtxt
    - xmlParserGetDirectory
    - xmlSecXmlParserError2
    - xmlInitParser
    - xmlFreeDoc
    - xmlSecXmlError2
    - xmlParseDocument
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlSecParseFile(const char *filename)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlCreatePushParserCtxt
      Src: /src/xmlsec/src/parser.c:428,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/parser.c:430,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/parser.c:433,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:440,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/parser.c:442,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:452,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/parser.c:454,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:464,1
    - Dst: xmlSecXmlParserError2
      Src: /src/xmlsec/src/parser.c:466,1
    - Dst: xmlParseChunk
      Src: /src/xmlsec/src/parser.c:472,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:474,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:483,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:486,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 53
    argCount: 6
    argNames:
    - prefix
    - prefixSize
    - buffer
    - bufferSize
    - postfix
    - postfixSize
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 419
    functionDepth: 4
    functionLinenumber: 419
    functionLinenumberEnd: 489
    functionName: xmlSecParseMemoryExt
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached:
    - xmlCreatePushParserCtxt
    - xmlSecParsePrepareCtxt
    - xmlSecXmlError
    - xmlFreeParserCtxt
    - xmlParseChunk
    - xmlSecXmlParserError2
    - xmlSecXmlParserError
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlDocPtr
    signature: "xmlDocPtr xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize
      prefixSize,\n                     const xmlSecByte *buffer, xmlSecSize bufferSize,\n
      \                    const xmlSecByte *postfix, xmlSecSize postfixSize)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/parser.c:510,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/parser.c:512,1
    - Dst: return
      Src: /src/xmlsec/src/parser.c:512,1
    - Dst: xmlCreateMemoryParserCtxt
      Src: /src/xmlsec/src/parser.c:513,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/parser.c:515,1
    - Dst: xmlSecParsePrepareCtxt
      Src: /src/xmlsec/src/parser.c:518,1
    - Dst: xmlParseDocument
      Src: /src/xmlsec/src/parser.c:520,1
    - Dst: xmlSecXmlParserError
      Src: /src/xmlsec/src/parser.c:522,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:524,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:527,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/parser.c:532,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/parser.c:534,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:537,1
    - Dst: xmlFreeParserCtxt
      Src: /src/xmlsec/src/parser.c:544,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 3
    argNames:
    - buffer
    - size
    - recovery
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 503
    functionDepth: 12
    functionLinenumber: 503
    functionLinenumberEnd: 546
    functionName: xmlSecParseMemory
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecParsePrepareCtxt
    - xmlSecXmlError
    - xmlFreeParserCtxt
    - xmlCreateMemoryParserCtxt
    - return
    - xmlSecXmlParserError
    - xmlFreeDoc
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlParseDocument
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlSecParseMemory(const xmlSecByte *buffer, xmlSecSize size,
      int recovery)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/parser.c:556,1
    - Dst: xmlCtxtSetOptions
      Src: /src/xmlsec/src/parser.c:563,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/parser.c:563,1
    - Dst: xmlCtxtUseOptions
      Src: /src/xmlsec/src/parser.c:566,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/parser.c:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ctxt
    argTypes:
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 554
    functionDepth: 2
    functionLinenumber: 554
    functionLinenumberEnd: 567
    functionName: xmlSecParsePrepareCtxt
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 6
    functionsReached:
    - xmlSecAssert
    - xmlCtxtUseOptions
    - xmlSecParserGetDefaultOptions
    - xmlCtxtSetOptions
    linkageType: ''
    returnType: void
    signature: void xmlSecParsePrepareCtxt(xmlParserCtxtPtr ctxt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 601
    functionName: xmlSecParserGetDefaultOptions
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecParserGetDefaultOptions(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - options
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionName: xmlSecParserSetDefaultOptions
    functionSourceFile: /src/xmlsec/src/parser.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecParserSetDefaultOptions(int options)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmldsig.c:85,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmldsig.c:87,1
    - Dst: xmlSecDSigCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:91,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:93,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/src/xmldsig.c:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - keysMngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 98
    functionName: xmlSecDSigCtxCreate
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecDSigCtxDestroy
    - xmlSecDSigCtxInitialize
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecDSigCtxPtr
    signature: xmlSecDSigCtxPtr xmlSecDSigCtxCreate(xmlSecKeysMngrPtr keysMngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:108,1
    - Dst: xmlSecDSigCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:110,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: xmlSecDSigCtxDestroy
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecDSigCtxFinalize
    - xmlSecAssert
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxDestroy(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:129,1
    - Dst: memset
      Src: /src/xmlsec/src/xmldsig.c:131,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:134,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:136,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:141,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:143,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:151,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:153,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/xmldsig.c:158,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:161,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/xmldsig.c:164,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:167,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - dsigCtx
    - keysMngr
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 173
    functionName: xmlSecDSigCtxInitialize
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListInitialize
    - xmlSecKeyInfoCtxInitialize
    - xmlSecTransformCtxInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxInitialize(xmlSecDSigCtxPtr dsigCtx, xmlSecKeysMngrPtr
      keysMngr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:183,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:185,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:186,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:187,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/xmldsig.c:188,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/xmldsig.c:189,1
    - Dst: xmlSecPtrListDestroy
      Src: /src/xmlsec/src/xmldsig.c:192,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/xmldsig.c:195,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:198,1
    - Dst: memset
      Src: /src/xmlsec/src/xmldsig.c:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 181
    functionDepth: 2
    functionLinenumber: 181
    functionLinenumberEnd: 201
    functionName: xmlSecDSigCtxFinalize
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlFree
    - xmlSecTransformCtxFinalize
    - xmlSecKeyDestroy
    - xmlSecAssert
    - xmlSecKeyInfoCtxFinalize
    - xmlSecPtrListDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxFinalize(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:218,1
    - Dst: xmlSecPtrListCreate
      Src: /src/xmlsec/src/xmldsig.c:221,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:223,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xmldsig.c:228,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:230,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - dsigCtx
    - transformId
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 212
    functionDepth: 2
    functionLinenumber: 212
    functionLinenumberEnd: 234
    functionName: xmlSecDSigCtxEnableReferenceTransform
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecPtrListCreate
    - xmlSecPtrListAdd
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxEnableReferenceTransform(xmlSecDSigCtxPtr dsigCtx,
      xmlSecTransformId transformId)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:249,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xmldsig.c:251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dsigCtx
    - transformId
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 245
    functionDepth: 2
    functionLinenumber: 245
    functionLinenumberEnd: 252
    functionName: xmlSecDSigCtxEnableSignatureTransform
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListAdd
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxEnableSignatureTransform(xmlSecDSigCtxPtr dsigCtx,
      xmlSecTransformId transformId)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:266,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/xmldsig.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 270
    functionName: xmlSecDSigCtxGetPreSignBuffer
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformMemBufGetBuffer
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecDSigCtxGetPreSignBuffer(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:291,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmldsig.c:296,1
    - Dst: xmlSecDSigCtxProcessSignatureNode
      Src: /src/xmlsec/src/xmldsig.c:299,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:305,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:314,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/xmldsig.c:315,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:320,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:321,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/xmldsig.c:322,1
    - Dst: return
      Src: /src/xmlsec/src/xmldsig.c:322,1
    - Dst: xmlNodeSetContentLen
      Src: /src/xmlsec/src/xmldsig.c:323,1
    - Dst: xmlSecDSigCtxMarkAsSucceeded
      Src: /src/xmlsec/src/xmldsig.c:326,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - dsigCtx
    - tmpl
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 281
    functionDepth: 8
    functionLinenumber: 281
    functionLinenumberEnd: 328
    functionName: xmlSecDSigCtxSign
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecDSigCtxMarkAsSucceeded
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlNodeSetContentLen
    - xmlSecDSigCtxProcessSignatureNode
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxSign(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr tmpl)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:345,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:347,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmldsig.c:352,1
    - Dst: xmlSecDSigCtxProcessSignatureNode
      Src: /src/xmlsec/src/xmldsig.c:355,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:361,1
    - Dst: xmlSecTransformVerifyNodeContent
      Src: /src/xmlsec/src/xmldsig.c:369,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:372,1
    - Dst: xmlSecDSigCtxMarkAsSucceeded
      Src: /src/xmlsec/src/xmldsig.c:378,1
    - Dst: xmlSecDSigCtxMarkAsFailed
      Src: /src/xmlsec/src/xmldsig.c:380,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 2
    argNames:
    - dsigCtx
    - node
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 383
    functionName: xmlSecDSigCtxVerify
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlSecDSigCtxMarkAsFailed
    - xmlSecAssert2
    - xmlSecDSigCtxMarkAsSucceeded
    - xmlSecTransformVerifyNodeContent
    - xmlSecDSigCtxProcessSignatureNode
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxVerify(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 390
    functionName: xmlSecDSigCtxMarkAsSucceeded
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxMarkAsSucceeded(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - dsigCtx
    - failureReason
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlSecDSigFailureReason
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 400
    functionName: xmlSecDSigCtxMarkAsFailed
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxMarkAsFailed(xmlSecDSigCtxPtr dsigCtx, xmlSecDSigFailureReason
      failureReason)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:462,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:463,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:464,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:465,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:466,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:467,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:468,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:470,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:471,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:476,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmldsig.c:477,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:480,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:481,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:482,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:486,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:489,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:490,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:494,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:497,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:499,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:505,1
    - Dst: xmlSecDSigCtxProcessObjectNode
      Src: /src/xmlsec/src/xmldsig.c:508,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:510,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:514,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmldsig.c:519,1
    - Dst: xmlSecDSigCtxProcessSignedInfoNode
      Src: /src/xmlsec/src/xmldsig.c:524,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:532,1
    - Dst: xmlSecDSigCtxProcessKeyInfoNode
      Src: /src/xmlsec/src/xmldsig.c:535,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:537,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:541,1
    - Dst: xmlSecDSigCtxProcessReferences
      Src: /src/xmlsec/src/xmldsig.c:544,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:546,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:559,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:562,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/xmldsig.c:568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:574,1
    - Dst: xmlSecNodeSetGetChildren
      Src: /src/xmlsec/src/xmldsig.c:575,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:577,1
    - Dst: xmlSecTransformCtxXmlExecute
      Src: /src/xmlsec/src/xmldsig.c:582,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:584,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xmldsig.c:585,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xmldsig.c:588,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/xmldsig.c:590,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 96
    argCount: 2
    argNames:
    - dsigCtx
    - node
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 453
    functionDepth: 11
    functionLinenumber: 453
    functionLinenumberEnd: 594
    functionName: xmlSecDSigCtxProcessSignatureNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 2
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecTransformCtxCreateAndAppend
    - xmlSecDSigCtxProcessSignedInfoNode
    - xmlSecDSigCtxProcessKeyInfoNode
    - xmlSecDSigCtxProcessReferences
    - xmlSecInvalidNodeError
    - xmlSecNodeSetGetChildren
    - xmlSecTransformGetDataType
    - xmlSecDSigCtxProcessObjectNode
    - xmlSecUnexpectedNodeError
    - xmlSecNodeSetDestroy
    - xmlSecTransformCtxXmlExecute
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      node)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:635,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:637,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:638,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:639,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:641,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:642,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:645,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:646,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmldsig.c:647,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmldsig.c:650,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmldsig.c:651,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:651,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:658,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:661,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:668,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:674,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:675,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:678,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/xmldsig.c:679,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:685,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:686,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmldsig.c:687,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:690,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:691,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:694,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:699,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:702,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:709,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:715,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:723,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/xmldsig.c:728,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmldsig.c:734,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 71
    argCount: 3
    argNames:
    - dsigCtx
    - node
    - firstReferenceNode
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 740
    functionName: xmlSecDSigCtxProcessSignedInfoNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecTransformCtxCreateAndAppend
    - xmlSecTransformKlassGetName
    - xmlSecInvalidNodeError
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      node, xmlNodePtr * firstReferenceNode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:752,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xmldsig.c:752,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:753,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:756,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:758,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:759,1
    - Dst: xmlSecDSigReferenceCtxCreate
      Src: /src/xmlsec/src/xmldsig.c:764,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:766,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xmldsig.c:771,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:773,1
    - Dst: xmlSecDSigReferenceCtxDestroy
      Src: /src/xmlsec/src/xmldsig.c:774,1
    - Dst: xmlSecDSigReferenceCtxProcessNode
      Src: /src/xmlsec/src/xmldsig.c:779,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:781,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:782,1
    - Dst: xmlSecDSigCtxMarkAsFailed
      Src: /src/xmlsec/src/xmldsig.c:788,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - dsigCtx
    - firstReferenceNode
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 795
    functionName: xmlSecDSigCtxProcessReferences
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecDSigReferenceCtxDestroy
    - xmlSecDSigCtxMarkAsFailed
    - xmlSecAssert2
    - xmlSecDSigReferenceCtxCreate
    - xmlSecDSigReferenceCtxProcessNode
    - xmlSecInvalidNodeError
    - xmlSecPtrListAdd
    - xmlSecNodeGetName
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessReferences(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      firstReferenceNode)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:803,1
    - Dst: xmlSecTransformSetKeyReq
      Src: /src/xmlsec/src/xmldsig.c:806,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:808,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmldsig.c:808,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/xmldsig.c:820,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/xmldsig.c:821,1
    - Dst: xmlSecDSigCtxMarkAsFailed
      Src: /src/xmlsec/src/xmldsig.c:822,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/xmldsig.c:827,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:829,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmldsig.c:829,1
    - Dst: xmlSecKeyInfoNodeWrite
      Src: /src/xmlsec/src/xmldsig.c:835,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:837,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 2
    argNames:
    - dsigCtx
    - node
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 843
    functionName: xmlSecDSigCtxProcessKeyInfoNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformSetKey
    - xmlSecInternalError
    - xmlSecDSigCtxMarkAsFailed
    - xmlSecAssert2
    - xmlSecTransformSetKeyReq
    - xmlSecTransformGetName
    - xmlSecKeyInfoNodeWrite
    - xmlSecKeyMatch
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessKeyInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:880,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:883,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:885,1
    - Dst: xmlSecDSigCtxProcessManifestNode
      Src: /src/xmlsec/src/xmldsig.c:886,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:888,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:892,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - dsigCtx
    - node
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 873
    functionDepth: 1
    functionLinenumber: 873
    functionLinenumberEnd: 895
    functionName: xmlSecDSigCtxProcessObjectNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecDSigCtxProcessManifestNode
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessObjectNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:933,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:934,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:935,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:938,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:939,1
    - Dst: xmlSecDSigReferenceCtxCreate
      Src: /src/xmlsec/src/xmldsig.c:941,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:943,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xmldsig.c:948,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:950,1
    - Dst: xmlSecDSigReferenceCtxDestroy
      Src: /src/xmlsec/src/xmldsig.c:951,1
    - Dst: xmlSecDSigReferenceCtxProcessNode
      Src: /src/xmlsec/src/xmldsig.c:956,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:958,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:959,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:965,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmldsig.c:970,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - dsigCtx
    - node
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 927
    functionDepth: 2
    functionLinenumber: 927
    functionLinenumberEnd: 974
    functionName: xmlSecDSigCtxProcessManifestNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecDSigReferenceCtxDestroy
    - xmlSecAssert2
    - xmlSecDSigReferenceCtxCreate
    - xmlSecDSigReferenceCtxProcessNode
    - xmlSecPtrListAdd
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigCtxProcessManifestNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr
      node)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - status
    argTypes:
    - xmlSecDSigStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 998
    functionName: xmlSecDSigCtxGetStatusString
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecDSigCtxGetStatusString(xmlSecDSigStatus status)'
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - failureReason
    argTypes:
    - xmlSecDSigFailureReason
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 1008
    functionDepth: 0
    functionLinenumber: 1008
    functionLinenumberEnd: 1024
    functionName: xmlSecDSigCtxGetFailureReasonString
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecDSigCtxGetFailureReasonString(xmlSecDSigFailureReason failureReason)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1035,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1036,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1039,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1041,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1043,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/src/xmldsig.c:1043,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1044,1
    - Dst: xmlSecDSigCtxGetFailureReasonString
      Src: /src/xmlsec/src/xmldsig.c:1044,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1046,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1047,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1050,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1053,1
    - Dst: xmlSecKeyInfoCtxDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1054,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1055,1
    - Dst: xmlSecKeyInfoCtxDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1056,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1058,1
    - Dst: xmlSecTransformCtxDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1059,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1062,1
    - Dst: xmlSecTransformDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1063,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1067,1
    - Dst: xmlSecKeyDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1068,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1071,1
    - Dst: xmlSecPtrListDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1072,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1074,1
    - Dst: xmlSecPtrListDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1075,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1078,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1080,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1081,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1081,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1082,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1084,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1087,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1088,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1088,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1090,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1091,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1091,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1091,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1092,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1092,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1094,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 2
    argNames:
    - dsigCtx
    - output
    argTypes:
    - xmlSecDSigCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1033
    functionDepth: 2
    functionLinenumber: 1033
    functionLinenumberEnd: 1096
    functionName: xmlSecDSigCtxDebugDump
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCtxDebugDump
    - xmlSecTransformDebugDump
    - xmlSecPtrListDebugDump
    - xmlSecDSigCtxGetPreSignBuffer
    - xmlSecKeyDebugDump
    - xmlSecBufferGetData
    - fwrite
    - xmlSecAssert
    - fprintf
    - xmlSecDSigCtxGetFailureReasonString
    - xmlSecBufferGetSize
    - xmlSecDSigCtxGetStatusString
    - xmlSecKeyInfoCtxDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxDebugDump(xmlSecDSigCtxPtr dsigCtx, FILE* output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1107,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1108,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1111,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1113,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1115,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/src/xmldsig.c:1115,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1116,1
    - Dst: xmlSecDSigCtxGetFailureReasonString
      Src: /src/xmlsec/src/xmldsig.c:1116,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1119,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1120,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1122,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmldsig.c:1123,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1124,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1126,1
    - Dst: xmlSecKeyInfoCtxDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1127,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1128,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1130,1
    - Dst: xmlSecKeyInfoCtxDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1131,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1132,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1134,1
    - Dst: xmlSecTransformCtxDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1135,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1136,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1139,1
    - Dst: xmlSecTransformDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1140,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1141,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1145,1
    - Dst: xmlSecKeyDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1146,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1147,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1150,1
    - Dst: xmlSecPtrListDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1151,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1152,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1154,1
    - Dst: xmlSecPtrListDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1155,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1156,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1159,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1161,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1162,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1162,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1163,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1165,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1168,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1169,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1169,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1171,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1172,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1172,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1172,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1173,1
    - Dst: xmlSecDSigCtxGetPreSignBuffer
      Src: /src/xmlsec/src/xmldsig.c:1173,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1175,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1179,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1181,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 55
    argCount: 2
    argNames:
    - dsigCtx
    - output
    argTypes:
    - xmlSecDSigCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1183
      start: 1105
    functionDepth: 2
    functionLinenumber: 1105
    functionLinenumberEnd: 1183
    functionName: xmlSecDSigCtxDebugXmlDump
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecDSigCtxGetPreSignBuffer
    - xmlSecPtrListDebugXmlDump
    - fwrite
    - xmlSecTransformCtxDebugXmlDump
    - xmlSecBufferGetData
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    - xmlSecDSigCtxGetFailureReasonString
    - xmlSecKeyDebugXmlDump
    - xmlSecBufferGetSize
    - xmlSecKeyInfoCtxDebugXmlDump
    - xmlSecDSigCtxGetStatusString
    - xmlSecTransformDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigCtxDebugXmlDump(xmlSecDSigCtxPtr dsigCtx, FILE* output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1206,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmldsig.c:1208,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmldsig.c:1210,1
    - Dst: xmlSecDSigReferenceCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:1214,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1216,1
    - Dst: xmlSecDSigReferenceCtxDestroy
      Src: /src/xmlsec/src/xmldsig.c:1217,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - dsigCtx
    - origin
    argTypes:
    - xmlSecDSigCtxPtr
    - xmlSecDSigReferenceOrigin
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1201
    functionDepth: 1
    functionLinenumber: 1201
    functionLinenumberEnd: 1221
    functionName: xmlSecDSigReferenceCtxCreate
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 2
    functionsReached:
    - xmlSecDSigReferenceCtxDestroy
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecDSigReferenceCtxInitialize
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecDSigReferenceCtxPtr
    signature: xmlSecDSigReferenceCtxPtr xmlSecDSigReferenceCtxCreate(xmlSecDSigCtxPtr
      dsigCtx, xmlSecDSigReferenceOrigin origin)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1231,1
    - Dst: xmlSecDSigReferenceCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:1233,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:1234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dsigRefCtx
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1235
      start: 1229
    functionDepth: 1
    functionLinenumber: 1229
    functionLinenumberEnd: 1235
    functionName: xmlSecDSigReferenceCtxDestroy
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecDSigReferenceCtxFinalize
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigReferenceCtxDestroy(xmlSecDSigReferenceCtxPtr dsigRefCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1255,1
    - Dst: memset
      Src: /src/xmlsec/src/xmldsig.c:1257,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/xmldsig.c:1263,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1265,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/xmldsig.c:1271,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - dsigRefCtx
    - dsigCtx
    - origin
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    - xmlSecDSigCtxPtr
    - xmlSecDSigReferenceOrigin
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1286
      start: 1249
    functionDepth: 2
    functionLinenumber: 1249
    functionLinenumberEnd: 1286
    functionName: xmlSecDSigReferenceCtxInitialize
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecPtrListCopy
    - xmlSecAssert2
    - xmlSecTransformCtxInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecDSigReferenceCtxInitialize(xmlSecDSigReferenceCtxPtr dsigRefCtx,
      xmlSecDSigCtxPtr dsigCtx,\n                                xmlSecDSigReferenceOrigin
      origin)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1296,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/xmldsig.c:1298,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:1300,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:1303,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmldsig.c:1306,1
    - Dst: memset
      Src: /src/xmlsec/src/xmldsig.c:1308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - dsigRefCtx
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1294
    functionDepth: 1
    functionLinenumber: 1294
    functionLinenumberEnd: 1309
    functionName: xmlSecDSigReferenceCtxFinalize
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCtxFinalize
    - xmlSecAssert
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigReferenceCtxFinalize(xmlSecDSigReferenceCtxPtr dsigRefCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1324,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/xmldsig.c:1327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dsigRefCtx
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1322
    functionDepth: 1
    functionLinenumber: 1322
    functionLinenumberEnd: 1328
    functionName: xmlSecDSigReferenceCtxGetPreDigestBuffer
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformMemBufGetBuffer
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecDSigReferenceCtxGetPreDigestBuffer(xmlSecDSigReferenceCtxPtr
      dsigRefCtx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1363,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmldsig.c:1368,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmldsig.c:1369,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmldsig.c:1370,1
    - Dst: xmlSecTransformCtxSetUri
      Src: /src/xmlsec/src/xmldsig.c:1373,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmldsig.c:1375,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmldsig.c:1376,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:1381,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:1382,1
    - Dst: xmlSecTransformCtxNodesListRead
      Src: /src/xmlsec/src/xmldsig.c:1383,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmldsig.c:1386,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmldsig.c:1387,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:1387,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:1391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmldsig.c:1400,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:1401,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1405,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:1411,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmldsig.c:1412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1415,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmldsig.c:1416,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:1420,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:1425,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1428,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:1435,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmldsig.c:1441,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmldsig.c:1443,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmldsig.c:1445,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmldsig.c:1451,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmldsig.c:1460,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1462,1
    - Dst: xmlSecTransformCtxExecute
      Src: /src/xmlsec/src/xmldsig.c:1469,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1471,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1481,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1482,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1487,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1488,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/xmldsig.c:1489,1
    - Dst: return
      Src: /src/xmlsec/src/xmldsig.c:1489,1
    - Dst: xmlNodeSetContentLen
      Src: /src/xmlsec/src/xmldsig.c:1490,1
    - Dst: xmlSecTransformVerifyNodeContent
      Src: /src/xmlsec/src/xmldsig.c:1496,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmldsig.c:1499,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 101
    argCount: 2
    argNames:
    - dsigRefCtx
    - node
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1350
    functionDepth: 11
    functionLinenumber: 1350
    functionLinenumberEnd: 1512
    functionName: xmlSecDSigReferenceCtxProcessNode
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 2
    functionsReached:
    - xmlGetProp
    - return
    - xmlSecNodeGetName
    - xmlSecGetNextElementNode
    - xmlSecErrorsSafeString
    - xmlSecTransformCtxNodesListRead
    - xmlSecTransformVerifyNodeContent
    - xmlSecInternalError
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecTransformCtxSetUri
    - xmlSecBufferGetData
    - xmlSecTransformCtxExecute
    - xmlSecUnexpectedNodeError
    - xmlNodeSetContentLen
    - xmlSecCheckNodeName
    - xmlSecTransformCtxCreateAndAppend
    - xmlSecInvalidNodeError
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx,
      xmlNodePtr node)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1523,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1524,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1525,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1528,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1530,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1532,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/src/xmldsig.c:1532,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1535,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1538,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1541,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1544,1
    - Dst: xmlSecTransformCtxDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1545,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1548,1
    - Dst: xmlSecTransformDebugDump
      Src: /src/xmlsec/src/xmldsig.c:1549,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1552,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1553,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1553,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1555,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1556,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1556,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1556,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1557,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1557,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1559,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1563,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1565,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1566,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1566,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1567,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1569,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 2
    argNames:
    - dsigRefCtx
    - output
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1571
      start: 1521
    functionDepth: 2
    functionLinenumber: 1521
    functionLinenumberEnd: 1571
    functionName: xmlSecDSigReferenceCtxDebugDump
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCtxDebugDump
    - xmlSecTransformDebugDump
    - fwrite
    - xmlSecBufferGetData
    - xmlSecAssert
    - fprintf
    - xmlSecBufferGetSize
    - xmlSecDSigCtxGetStatusString
    - xmlSecDSigReferenceCtxGetPreDigestBuffer
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigReferenceCtxDebugDump(xmlSecDSigReferenceCtxPtr dsigRefCtx,
      FILE* output)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1582,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1583,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmldsig.c:1584,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1587,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1589,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1591,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/src/xmldsig.c:1591,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1592,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1594,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmldsig.c:1595,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1596,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1598,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmldsig.c:1599,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1600,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1602,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmldsig.c:1603,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1604,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1606,1
    - Dst: xmlSecTransformCtxDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1607,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1608,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1611,1
    - Dst: xmlSecTransformDebugXmlDump
      Src: /src/xmlsec/src/xmldsig.c:1612,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1613,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1617,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1619,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1620,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1620,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1621,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1623,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1626,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1627,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1627,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1629,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmldsig.c:1630,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmldsig.c:1630,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1630,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmldsig.c:1631,1
    - Dst: xmlSecDSigReferenceCtxGetPreDigestBuffer
      Src: /src/xmlsec/src/xmldsig.c:1631,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1633,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1636,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmldsig.c:1638,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 2
    argNames:
    - dsigRefCtx
    - output
    argTypes:
    - xmlSecDSigReferenceCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1640
      start: 1580
    functionDepth: 2
    functionLinenumber: 1580
    functionLinenumberEnd: 1640
    functionName: xmlSecDSigReferenceCtxDebugXmlDump
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached:
    - fwrite
    - xmlSecTransformCtxDebugXmlDump
    - xmlSecBufferGetData
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    - xmlSecBufferGetSize
    - xmlSecDSigCtxGetStatusString
    - xmlSecDSigReferenceCtxGetPreDigestBuffer
    - xmlSecTransformDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecDSigReferenceCtxDebugXmlDump(xmlSecDSigReferenceCtxPtr dsigRefCtx,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1666
    functionName: xmlSecDSigReferenceCtxListGetKlass
    functionSourceFile: /src/xmlsec/src/xmldsig.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecDSigReferenceCtxListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: xmlSecTransformMemBufGetKlass
    functionSourceFile: /src/xmlsec/src/membuf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformMemBufGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:101,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/membuf.c:101,1
    - Dst: xmlSecMemBufGetCtx
      Src: /src/xmlsec/src/membuf.c:103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionName: xmlSecTransformMemBufGetBuffer
    functionSourceFile: /src/xmlsec/src/membuf.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecMemBufGetCtx
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecTransformMemBufGetBuffer(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:114,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/membuf.c:114,1
    - Dst: xmlSecMemBufGetCtx
      Src: /src/xmlsec/src/membuf.c:116,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:117,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/membuf.c:119,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/membuf.c:121,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/membuf.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 126
    functionName: xmlSecTransformMemBufInitialize
    functionSourceFile: /src/xmlsec/src/membuf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMemBufGetCtx
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformMemBufInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/membuf.c:132,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/membuf.c:132,1
    - Dst: xmlSecMemBufGetCtx
      Src: /src/xmlsec/src/membuf.c:134,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/membuf.c:135,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/membuf.c:137,1
    - Dst: xmlSecMemBufGetCtx
      Src: /src/xmlsec/src/membuf.c:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 138
    functionName: xmlSecTransformMemBufFinalize
    functionSourceFile: /src/xmlsec/src/membuf.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlSecTransformCheckId
    - xmlSecMemBufGetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformMemBufFinalize(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:147,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/membuf.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:148,1
    - Dst: xmlSecMemBufGetCtx
      Src: /src/xmlsec/src/membuf.c:150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:151,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/membuf.c:155,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/membuf.c:163,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/membuf.c:163,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/membuf.c:165,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/membuf.c:166,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/membuf.c:171,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/membuf.c:171,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/membuf.c:173,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/membuf.c:174,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/membuf.c:179,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/membuf.c:181,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/membuf.c:182,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/membuf.c:192,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/membuf.c:194,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 198
    functionName: xmlSecTransformMemBufExecute
    functionSourceFile: /src/xmlsec/src/membuf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecMemBufGetCtx
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferAppend
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformMemBufExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - node
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: xmlSecGetParent
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGetParent(node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/nodeset.c:62,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/nodeset.c:64,1
    - Dst: memset
      Src: /src/xmlsec/src/nodeset.c:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - doc
    - nodes
    - type
    argTypes:
    - xmlDocPtr
    - xmlNodeSetPtr
    - xmlSecNodeSetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: xmlSecNodeSetCreate
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 2
    functionsReached:
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: xmlSecNodeSetPtr xmlSecNodeSetCreate(xmlDocPtr doc, xmlNodeSetPtr nodes,
      xmlSecNodeSetType type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:87,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/xmlsec/src/nodeset.c:99,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/nodeset.c:102,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:106,1
    - Dst: memset
      Src: /src/xmlsec/src/nodeset.c:109,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/nodeset.c:110,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/nodeset.c:115,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - nset
    argTypes:
    - xmlSecNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 82
    functionDepth: 3
    functionLinenumber: 82
    functionLinenumberEnd: 117
    functionName: xmlSecNodeSetDestroy
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - xmlSecAssert
    - xmlXPathFreeNodeSet
    - xmlSecNodeSetDestroy
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNodeSetDestroy(xmlSecNodeSetPtr nset)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - nset
    argTypes:
    - xmlSecNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionName: xmlSecNodeSetDocDestroy
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecNodeSetDocDestroy(xmlSecNodeSetPtr nset)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:137,1
    - Dst: xmlSecNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:148,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:155,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nodeset.c:159,1
    - Dst: xmlXPathNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:172,1
    - Dst: xmlSecNodeSetOneContains
      Src: /src/xmlsec/src/nodeset.c:187,1
    - Dst: xmlSecNodeSetOneContains
      Src: /src/xmlsec/src/nodeset.c:196,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/nodeset.c:200,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 3
    argNames:
    - nset
    - node
    - parent
    argTypes:
    - xmlSecNodeSetPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 203
    functionName: xmlSecNodeSetOneContains
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetContains
    - xmlSecNodeSetContains
    - xmlSecAssert2
    - xmlSecUnsupportedEnumValueError
    - xmlSecNodeSetOneContains
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlSecNodeSetOneContains(xmlSecNodeSetPtr nset, xmlNodePtr node,
      xmlNodePtr parent)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:221,1
    - Dst: xmlSecNodeSetOneContains
      Src: /src/xmlsec/src/nodeset.c:233,1
    - Dst: xmlSecNodeSetOneContains
      Src: /src/xmlsec/src/nodeset.c:238,1
    - Dst: xmlSecNodeSetOneContains
      Src: /src/xmlsec/src/nodeset.c:243,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nodeset.c:248,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nodeset.c:249,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - nset
    - node
    - parent
    argTypes:
    - xmlSecNodeSetPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 216
    functionDepth: 3
    functionLinenumber: 216
    functionLinenumberEnd: 256
    functionName: xmlSecNodeSetContains
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecNodeSetOneContains
    linkageType: ''
    returnType: int
    signature: int xmlSecNodeSetContains(xmlSecNodeSetPtr nset, xmlNodePtr node, xmlNodePtr
      parent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - nset
    - newNSet
    - op
    argTypes:
    - xmlSecNodeSetPtr
    - xmlSecNodeSetPtr
    - xmlSecNodeSetOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 288
    functionName: xmlSecNodeSetAdd
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: "xmlSecNodeSetPtr xmlSecNodeSetAdd(xmlSecNodeSetPtr nset, xmlSecNodeSetPtr
      newNSet,\n                 xmlSecNodeSetOp op)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:305,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/nodeset.c:307,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nodeset.c:309,1
    - Dst: xmlSecNodeSetAdd
      Src: /src/xmlsec/src/nodeset.c:314,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nodeset.c:316,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/nodeset.c:317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - nset
    - newNSet
    - op
    argTypes:
    - xmlSecNodeSetPtr
    - xmlSecNodeSetPtr
    - xmlSecNodeSetOp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 301
    functionDepth: 4
    functionLinenumber: 301
    functionLinenumberEnd: 321
    functionName: xmlSecNodeSetAddList
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeSetAdd
    - xmlSecNodeSetCreate
    - xmlSecNodeSetDestroy
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: xmlSecNodeSetPtr xmlSecNodeSetAddList(xmlSecNodeSetPtr nset, xmlSecNodeSetPtr
      newNSet, xmlSecNodeSetOp op)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:343,1
    - Dst: xmlSecNodeSetWalkRecursive
      Src: /src/xmlsec/src/nodeset.c:354,1
    - Dst: xmlSecGetParent
      Src: /src/xmlsec/src/nodeset.c:356,1
    - Dst: xmlSecNodeSetWalkRecursive
      Src: /src/xmlsec/src/nodeset.c:365,1
    - Dst: xmlSecGetParent
      Src: /src/xmlsec/src/nodeset.c:365,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - nset
    - walkFunc
    - data
    argTypes:
    - xmlSecNodeSetPtr
    - xmlSecNodeSetWalkCallback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 368
    functionName: xmlSecNodeSetWalk
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGetParent
    - xmlSecNodeSetWalkRecursive
    linkageType: ''
    returnType: int
    signature: int xmlSecNodeSetWalk(xmlSecNodeSetPtr nset, xmlSecNodeSetWalkCallback
      walkFunc, void* data)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:377,1
    - Dst: xmlSecNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:380,1
    - Dst: walkFunc
      Src: /src/xmlsec/src/nodeset.c:381,1
    - Dst: xmlSecNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:396,1
    - Dst: walkFunc
      Src: /src/xmlsec/src/nodeset.c:397,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/nodeset.c:409,1
    - Dst: xmlSecNodeSetContains
      Src: /src/xmlsec/src/nodeset.c:410,1
    - Dst: walkFunc
      Src: /src/xmlsec/src/nodeset.c:411,1
    - Dst: xmlSecNodeSetWalkRecursive
      Src: /src/xmlsec/src/nodeset.c:428,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 5
    argNames:
    - nset
    - walkFunc
    - data
    - cur
    - parent
    argTypes:
    - xmlSecNodeSetPtr
    - xmlSecNodeSetWalkCallback
    - void*
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 370
    functionDepth: 4
    functionLinenumber: 370
    functionLinenumberEnd: 436
    functionName: xmlSecNodeSetWalkRecursive
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 2
    functionsReached:
    - xmlSecNodeSetContains
    - xmlSecAssert2
    - xmlSecNodeSetWalkRecursive
    - walkFunc
    - xmlSearchNs
    linkageType: ''
    returnType: int
    signature: "int xmlSecNodeSetWalkRecursive(xmlSecNodeSetPtr nset, xmlSecNodeSetWalkCallback
      walkFunc,\n                            void* data, xmlNodePtr cur, xmlNodePtr
      parent)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:464,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/xmlsec/src/nodeset.c:466,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/nodeset.c:468,1
    - Dst: xmlXPathNodeSetAdd
      Src: /src/xmlsec/src/nodeset.c:477,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/nodeset.c:492,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 4
    argNames:
    - doc
    - parent
    - withComments
    - invert
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 459
    functionDepth: 3
    functionLinenumber: 459
    functionLinenumberEnd: 493
    functionName: xmlSecNodeSetGetChildren
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlXPathNodeSetCreate
    - xmlSecNodeSetCreate
    - xmlXPathNodeSetAdd
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: xmlSecNodeSetPtr xmlSecNodeSetGetChildren(xmlDocPtr doc, const xmlNodePtr
      parent, int withComments, int invert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:500,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:501,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:502,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nodeset.c:504,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/nodeset.c:509,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/nodeset.c:512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - nset
    - cur
    - XMLSEC_ATTRIBUTE_UNUSED
    - data
    argTypes:
    - xmlSecNodeSetPtr
    - xmlNodePtr
    - xmlNodePtr
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 495
    functionDepth: 4
    functionLinenumber: 495
    functionLinenumberEnd: 516
    functionName: xmlSecNodeSetDumpTextNodesWalkCallback
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecXmlError
    - UNREFERENCED_PARAMETER
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: "int xmlSecNodeSetDumpTextNodesWalkCallback(xmlSecNodeSetPtr nset,
      xmlNodePtr cur,\n                                   xmlNodePtr parent XMLSEC_ATTRIBUTE_UNUSED,\n
      \                                  void* data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nodeset.c:530,1
    - Dst: xmlSecNodeSetWalk
      Src: /src/xmlsec/src/nodeset.c:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - nset
    - out
    argTypes:
    - xmlSecNodeSetPtr
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 533
    functionName: xmlSecNodeSetDumpTextNodes
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNodeSetWalk
    linkageType: ''
    returnType: int
    signature: int xmlSecNodeSetDumpTextNodes(xmlSecNodeSetPtr nset, xmlOutputBufferPtr
      out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:547,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:548,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:550,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:553,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:556,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:559,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:562,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:565,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:568,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:571,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:572,1
    - Dst: xmlSecNodeSetDebugDump
      Src: /src/xmlsec/src/nodeset.c:573,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:574,1
    - Dst: xmlXPathNodeSetGetLength
      Src: /src/xmlsec/src/nodeset.c:578,1
    - Dst: xmlXPathNodeSetItem
      Src: /src/xmlsec/src/nodeset.c:580,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nodeset.c:581,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:584,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nodeset.c:585,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nodeset.c:589,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nodeset.c:590,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - nset
    - output
    argTypes:
    - xmlSecNodeSetPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 542
    functionDepth: 1
    functionLinenumber: 542
    functionLinenumberEnd: 599
    functionName: xmlSecNodeSetDebugDump
    functionSourceFile: /src/xmlsec/src/nodeset.c
    functionUses: 1
    functionsReached:
    - xmlXPathNodeSetGetLength
    - xmlSecNodeSetDebugDump
    - XMLSEC_ENUM_CAST
    - xmlSecAssert
    - fprintf
    - xmlXPathNodeSetItem
    linkageType: ''
    returnType: void
    signature: void xmlSecNodeSetDebugDump(xmlSecNodeSetPtr nset, FILE *output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:77,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/io.c:80,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/io.c:82,1
    - Dst: memset
      Src: /src/xmlsec/src/io.c:85,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - matchFunc
    - openFunc
    - readFunc
    - closeFunc
    argTypes:
    - xmlInputMatchCallback
    - xmlInputOpenCallback
    - xmlInputReadCallback
    - xmlInputCloseCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 93
    functionName: xmlSecIOCallbackCreate
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecIOCallbackPtr
    signature: "xmlSecIOCallbackPtr xmlSecIOCallbackCreate(xmlInputMatchCallback matchFunc,
      xmlInputOpenCallback openFunc,\n                       xmlInputReadCallback
      readFunc, xmlInputCloseCallback closeFunc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/io.c:97,1
    - Dst: memset
      Src: /src/xmlsec/src/io.c:99,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - callbacks
    argTypes:
    - xmlSecIOCallbackPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: xmlSecIOCallbackDestroy
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecIOCallbackDestroy(xmlSecIOCallbackPtr callbacks)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionName: xmlSecIOCallbackPtrListGetKlass
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecIOCallbackPtrListGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:138,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/io.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:139,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/io.c:142,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/io.c:144,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:145,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:146,1
    - Dst: xmlSecIOCallbackPtr::matchcallback
      Src: /src/xmlsec/src/io.c:148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - list
    - uri
    argTypes:
    - xmlSecPtrListPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 153
    functionName: xmlSecIOCallbackPtrListFind
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecIOCallbackPtr::matchcallback
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecIOCallbackPtr
    signature: xmlSecIOCallbackPtr xmlSecIOCallbackPtrListFind(xmlSecPtrListPtr list,
      const char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/io.c:169,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:171,1
    - Dst: xmlNanoFTPInit
      Src: /src/xmlsec/src/io.c:176,1
    - Dst: xmlNanoHTTPInit
      Src: /src/xmlsec/src/io.c:180,1
    - Dst: xmlSecIORegisterDefaultCallbacks
      Src: /src/xmlsec/src/io.c:184,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:186,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 191
    functionName: xmlSecIOInit
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlNanoHTTPInit
    - xmlSecInternalError
    - xmlNanoFTPInit
    - xmlSecIORegisterDefaultCallbacks
    - xmlSecPtrListInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecIOInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlNanoHTTPCleanup
      Src: /src/xmlsec/src/io.c:203,1
    - Dst: xmlNanoFTPCleanup
      Src: /src/xmlsec/src/io.c:207,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/io.c:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 211
    functionName: xmlSecIOShutdown
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlNanoHTTPCleanup
    - xmlNanoFTPCleanup
    linkageType: ''
    returnType: void
    signature: void xmlSecIOShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListEmpty
      Src: /src/xmlsec/src/io.c:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionName: xmlSecIOCleanupCallbacks
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListEmpty
    linkageType: ''
    returnType: void
    signature: void xmlSecIOCleanupCallbacks(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:242,1
    - Dst: xmlSecIOCallbackCreate
      Src: /src/xmlsec/src/io.c:244,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:246,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/io.c:250,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:252,1
    - Dst: xmlSecIOCallbackDestroy
      Src: /src/xmlsec/src/io.c:253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - matchFunc
    - openFunc
    - readFunc
    - closeFunc
    argTypes:
    - xmlInputMatchCallback
    - xmlInputOpenCallback
    - xmlInputReadCallback
    - xmlInputCloseCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 257
    functionName: xmlSecIORegisterCallbacks
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecIOCallbackCreate
    - xmlSecAssert2
    - xmlSecPtrListAdd
    - xmlSecIOCallbackDestroy
    linkageType: ''
    returnType: int
    signature: "int xmlSecIORegisterCallbacks(xmlInputMatchCallback matchFunc,\n        xmlInputOpenCallback
      openFunc, xmlInputReadCallback readFunc,\n        xmlInputCloseCallback closeFunc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:265,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/src/io.c:267,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/src/io.c:269,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/src/io.c:271,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/src/io.c:274,1
    - Dst: xmlURIUnescapeString
      Src: /src/xmlsec/src/io.c:287,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/io.c:289,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - filename
    - out
    argTypes:
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 260
    functionDepth: 2
    functionLinenumber: 260
    functionLinenumberEnd: 296
    functionName: xmlSecIOFileExtractFilename
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrncasecmp
    - xmlSecXmlError
    - xmlURIUnescapeString
    linkageType: ''
    returnType: int
    signature: int xmlSecIOFileExtractFilename(char const* filename, char** out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 303
    functionName: xmlSecIOFileMatch
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecIOFileMatch(char const* filename)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:311,1
    - Dst: xmlSecIOFileExtractFilename
      Src: /src/xmlsec/src/io.c:314,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:316,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/io.c:329,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:331,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:332,1
    - Dst: _wfopen_s
      Src: /src/xmlsec/src/io.c:335,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:337,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:338,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:339,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:342,1
    - Dst: fopen_s
      Src: /src/xmlsec/src/io.c:347,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:349,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:350,1
    - Dst: fopen
      Src: /src/xmlsec/src/io.c:355,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:357,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:358,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:364,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 305
    functionDepth: 3
    functionLinenumber: 305
    functionLinenumberEnd: 366
    functionName: xmlSecIOFileOpen
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecWin32ConvertUtf8ToTstr
    - fopen
    - xmlSecIOFileExtractFilename
    - fopen_s
    - _wfopen_s
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecIOFileOpen(char const* filename)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:375,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/io.c:377,1
    - Dst: return
      Src: /src/xmlsec/src/io.c:377,1
    - Dst: fread
      Src: /src/xmlsec/src/io.c:379,1
    - Dst: ferror
      Src: /src/xmlsec/src/io.c:380,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:381,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/io.c:385,1
    - Dst: return
      Src: /src/xmlsec/src/io.c:385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 387
    functionName: xmlSecIOFileRead
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - ferror
    - xmlSecInternalError
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - fread
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecIOFileRead(void* context, char* buffer, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:394,1
    - Dst: fclose
      Src: /src/xmlsec/src/io.c:396,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 402
    functionName: xmlSecIOFilClose
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - fclose
    linkageType: ''
    returnType: int
    signature: int xmlSecIOFilClose(void* context)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecIORegisterCallbacks
      Src: /src/xmlsec/src/io.c:417,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:424,1
    - Dst: xmlSecIORegisterCallbacks
      Src: /src/xmlsec/src/io.c:430,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:433,1
    - Dst: xmlSecIORegisterCallbacks
      Src: /src/xmlsec/src/io.c:439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 411
    functionDepth: 3
    functionLinenumber: 411
    functionLinenumberEnd: 449
    functionName: xmlSecIORegisterDefaultCallbacks
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 1
    functionsReached:
    - xmlSecIORegisterCallbacks
    - xmlSecInternalError
    linkageType: ''
    returnType: int
    signature: int xmlSecIORegisterDefaultCallbacks(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 510
    functionDepth: 0
    functionLinenumber: 510
    functionLinenumberEnd: 513
    functionName: xmlSecTransformInputURIGetKlass
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformInputURIGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:528,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/io.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:529,1
    - Dst: xmlSecInputUriGetCtx
      Src: /src/xmlsec/src/io.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:532,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:533,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:534,1
    - Dst: xmlURIUnescapeString
      Src: /src/xmlsec/src/io.c:544,1
    - Dst: xmlSecIOCallbackPtrListFind
      Src: /src/xmlsec/src/io.c:546,1
    - Dst: xmlSecInputURICtxPtr::clbks::opencallback
      Src: /src/xmlsec/src/io.c:548,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/io.c:550,1
    - Dst: xmlSecIOCallbackPtrListFind
      Src: /src/xmlsec/src/io.c:559,1
    - Dst: xmlSecInputURICtxPtr::clbks::opencallback
      Src: /src/xmlsec/src/io.c:561,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/io.c:566,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/io.c:566,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/io.c:567,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - transform
    - uri
    argTypes:
    - xmlSecTransformPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 524
    functionDepth: 3
    functionLinenumber: 524
    functionLinenumberEnd: 572
    functionName: xmlSecTransformInputURIOpen
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlFree
    - xmlURIUnescapeString
    - xmlSecAssert2
    - xmlSecIOCallbackPtrListFind
    - xmlSecInputURICtxPtr::clbks::opencallback
    - xmlSecInternalError2
    - xmlSecErrorsSafeString
    - xmlSecTransformGetName
    - xmlSecInputUriGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformInputURIOpen(xmlSecTransformPtr transform, const
      xmlChar *uri)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:587,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/io.c:587,1
    - Dst: xmlSecInputUriGetCtx
      Src: /src/xmlsec/src/io.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:590,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 601
    functionName: xmlSecTransformInputURIClose
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckId
    - xmlSecInputUriGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformInputURIClose(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:607,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/io.c:607,1
    - Dst: xmlSecInputUriGetCtx
      Src: /src/xmlsec/src/io.c:609,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:610,1
    - Dst: memset
      Src: /src/xmlsec/src/io.c:612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 614
    functionName: xmlSecTransformInputURIInitialize
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    - xmlSecTransformCheckId
    - xmlSecInputUriGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformInputURIInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/io.c:621,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/io.c:621,1
    - Dst: xmlSecInputUriGetCtx
      Src: /src/xmlsec/src/io.c:623,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/io.c:624,1
    - Dst: xmlSecTransformInputURIClose
      Src: /src/xmlsec/src/io.c:626,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/io.c:628,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/io.c:629,1
    - Dst: memset
      Src: /src/xmlsec/src/io.c:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 616
    functionDepth: 2
    functionLinenumber: 616
    functionLinenumberEnd: 637
    functionName: xmlSecTransformInputURIFinalize
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformInputURIClose
    - xmlSecTransformCheckId
    - xmlSecInternalError2
    - xmlSecAssert
    - xmlSecTransformGetName
    - memset
    - xmlSecInputUriGetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformInputURIFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:647,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/io.c:647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:648,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:649,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:650,1
    - Dst: xmlSecInputUriGetCtx
      Src: /src/xmlsec/src/io.c:652,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/io.c:653,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/io.c:656,1
    - Dst: return
      Src: /src/xmlsec/src/io.c:656,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/io.c:656,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/io.c:659,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/io.c:659,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/io.c:662,1
    - Dst: return
      Src: /src/xmlsec/src/io.c:662,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - transform
    - data
    - maxDataSize
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 667
    functionName: xmlSecTransformInputURIPopBin
    functionSourceFile: /src/xmlsec/src/io.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecInputUriGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformInputURIPopBin(xmlSecTransformPtr transform, xmlSecByte*
      data,\n                              xmlSecSize maxDataSize, xmlSecSize* dataSize,\n
      \                             xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: xmlSecBase64Encode1
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Encode1(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: xmlSecBase64Encode2
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Encode2(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: xmlSecBase64Encode3
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Encode3(b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: xmlSecBase64Encode4
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Encode4(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: xmlSecBase64Decode1
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Decode1(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: xmlSecBase64Decode2
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Decode2(b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - d
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: xmlSecBase64Decode3
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecBase64Decode3(c, d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: xmlSecIsBase64Char
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecIsBase64Char(ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: xmlSecIsBase64Space
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecIsBase64Space(ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: xmlSecBase64GetDefaultLineSize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64GetDefaultLineSize(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - columns
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: xmlSecBase64SetDefaultLineSize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecBase64SetDefaultLineSize(int columns)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/base64.c:165,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/base64.c:167,1
    - Dst: xmlSecBase64CtxInitialize
      Src: /src/xmlsec/src/base64.c:171,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:173,1
    - Dst: xmlSecBase64CtxDestroy
      Src: /src/xmlsec/src/base64.c:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - encode
    - columns
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 178
    functionName: xmlSecBase64CtxCreate
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlMalloc
    - xmlSecBase64CtxDestroy
    - xmlSecBase64CtxInitialize
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecBase64CtxPtr
    signature: xmlSecBase64CtxPtr xmlSecBase64CtxCreate(int encode, int columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:188,1
    - Dst: xmlSecBase64CtxFinalize
      Src: /src/xmlsec/src/base64.c:190,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/base64.c:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecBase64CtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: xmlSecBase64CtxDestroy
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecBase64CtxFinalize
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecBase64CtxDestroy(xmlSecBase64CtxPtr ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:206,1
    - Dst: memset
      Src: /src/xmlsec/src/base64.c:208,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/base64.c:211,1
    - Dst: return
      Src: /src/xmlsec/src/base64.c:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - encode
    - columns
    argTypes:
    - xmlSecBase64CtxPtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 213
    functionName: xmlSecBase64CtxInitialize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - return
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64CtxInitialize(xmlSecBase64CtxPtr ctx, int encode, int
      columns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:223,1
    - Dst: memset
      Src: /src/xmlsec/src/base64.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecBase64CtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 226
    functionName: xmlSecBase64CtxFinalize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecBase64CtxFinalize(xmlSecBase64CtxPtr ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:250,1
    - Dst: xmlSecBase64CtxEncode
      Src: /src/xmlsec/src/base64.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:255,1
    - Dst: xmlSecBase64CtxDecode
      Src: /src/xmlsec/src/base64.c:259,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:261,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 6
    argNames:
    - ctx
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 267
    functionName: xmlSecBase64CtxUpdate_ex
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecBase64CtxDecode
    - xmlSecBase64CtxEncode
    linkageType: ''
    returnType: int
    signature: "int xmlSecBase64CtxUpdate_ex(xmlSecBase64CtxPtr ctx, const xmlSecByte
      *in, xmlSecSize inSize,\n    xmlSecByte *out, xmlSecSize outSize, xmlSecSize*
      outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:286,1
    - Dst: xmlSecBase64CtxEncodeFinal
      Src: /src/xmlsec/src/base64.c:291,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:293,1
    - Dst: xmlSecBase64CtxDecodeIsFinished
      Src: /src/xmlsec/src/base64.c:298,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:299,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 310
    functionName: xmlSecBase64CtxFinal_ex
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBase64CtxDecodeIsFinished
    - xmlSecBase64CtxEncodeFinal
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64CtxFinal_ex(xmlSecBase64CtxPtr ctx, xmlSecByte *out,
      xmlSecSize outSize, xmlSecSize* outWritten)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:315,1
    - Dst: xmlSecBase64Encode1
      Src: /src/xmlsec/src/base64.c:323,1
    - Dst: xmlSecBase64Encode2
      Src: /src/xmlsec/src/base64.c:329,1
    - Dst: xmlSecBase64Encode3
      Src: /src/xmlsec/src/base64.c:335,1
    - Dst: xmlSecBase64Encode4
      Src: /src/xmlsec/src/base64.c:341,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/base64.c:348,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - inByte
    - outByte
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte
    - xmlSecByte*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 350
    functionName: xmlSecBase64CtxEncodeByte
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64Encode3
    - xmlSecBase64Encode4
    - xmlSecBase64Encode1
    - xmlSecInvalidSizeDataError
    - xmlSecBase64Encode2
    linkageType: ''
    returnType: xmlSecBase64Status
    signature: xmlSecBase64Status xmlSecBase64CtxEncodeByte(xmlSecBase64CtxPtr ctx,
      xmlSecByte inByte, xmlSecByte* outByte)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:355,1
    - Dst: xmlSecBase64CtxEncodeByte
      Src: /src/xmlsec/src/base64.c:365,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/base64.c:378,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - ctx
    - outByte
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 380
    functionName: xmlSecBase64CtxEncodeByteFinal
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInvalidSizeDataError
    - xmlSecBase64CtxEncodeByte
    linkageType: ''
    returnType: xmlSecBase64Status
    signature: xmlSecBase64Status xmlSecBase64CtxEncodeByteFinal(xmlSecBase64CtxPtr
      ctx, xmlSecByte* outByte)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:385,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/base64.c:398,1
    - Dst: xmlSecIsBase64Space
      Src: /src/xmlsec/src/base64.c:401,1
    - Dst: xmlSecIsBase64Char
      Src: /src/xmlsec/src/base64.c:403,1
    - Dst: xmlSecInvalidIntegerDataError
      Src: /src/xmlsec/src/base64.c:404,1
    - Dst: xmlSecBase64Decode1
      Src: /src/xmlsec/src/base64.c:426,1
    - Dst: xmlSecBase64Decode2
      Src: /src/xmlsec/src/base64.c:431,1
    - Dst: xmlSecBase64Decode3
      Src: /src/xmlsec/src/base64.c:436,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/base64.c:442,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 67
    argCount: 3
    argNames:
    - ctx
    - inByte
    - outByte
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte
    - xmlSecByte*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 444
    functionName: xmlSecBase64CtxDecodeByte
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64Decode2
    - xmlSecIsBase64Space
    - xmlSecInvalidSizeDataError
    - xmlSecBase64Decode1
    - xmlSecIsBase64Char
    - xmlSecBase64Decode3
    - xmlSecInvalidIntegerDataError
    linkageType: ''
    returnType: xmlSecBase64Status
    signature: xmlSecBase64Status xmlSecBase64CtxDecodeByte(xmlSecBase64CtxPtr ctx,
      xmlSecByte inByte, xmlSecByte* outByte)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:455,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:458,1
    - Dst: xmlSecBase64CtxEncodeByte
      Src: /src/xmlsec/src/base64.c:462,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:474,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/base64.c:475,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 7
    argNames:
    - ctx
    - inBuf
    - inBufSize
    - inBufResSize
    - outBuf
    - outBufSize
    - outBufResSize
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 447
    functionDepth: 2
    functionLinenumber: 447
    functionLinenumberEnd: 484
    functionName: xmlSecBase64CtxEncode
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64CtxEncodeByte
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    linkageType: ''
    returnType: int
    signature: "int xmlSecBase64CtxEncode(xmlSecBase64CtxPtr ctx,\n                     const
      xmlSecByte* inBuf, xmlSecSize inBufSize, xmlSecSize* inBufResSize,\n                     xmlSecByte*
      outBuf, xmlSecSize outBufSize, xmlSecSize* outBufResSize)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:495,1
    - Dst: xmlSecBase64CtxEncodeByteFinal
      Src: /src/xmlsec/src/base64.c:499,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:509,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/base64.c:510,1
    - Dst: xmlSecInvalidSizeOtherError
      Src: /src/xmlsec/src/base64.c:516,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - outBuf
    - outBufSize
    - outBufResSize
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 486
    functionDepth: 3
    functionLinenumber: 486
    functionLinenumberEnd: 525
    functionName: xmlSecBase64CtxEncodeFinal
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64CtxEncodeByteFinal
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecInvalidSizeOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecBase64CtxEncodeFinal(xmlSecBase64CtxPtr ctx, xmlSecByte*
      outBuf, xmlSecSize outBufSize,\n    xmlSecSize* outBufResSize)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:536,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:537,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:538,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:539,1
    - Dst: xmlSecBase64CtxDecodeByte
      Src: /src/xmlsec/src/base64.c:543,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:558,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/base64.c:559,1
    - Dst: xmlSecIsBase64Space
      Src: /src/xmlsec/src/base64.c:565,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 7
    argNames:
    - ctx
    - inBuf
    - inBufSize
    - inBufResSize
    - outBuf
    - outBufSize
    - outBufResSize
    argTypes:
    - xmlSecBase64CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 528
    functionDepth: 2
    functionLinenumber: 528
    functionLinenumberEnd: 573
    functionName: xmlSecBase64CtxDecode
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecBase64CtxDecodeByte
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecIsBase64Space
    linkageType: ''
    returnType: int
    signature: "int xmlSecBase64CtxDecode(xmlSecBase64CtxPtr ctx,\n                     const
      xmlSecByte* inBuf, xmlSecSize inBufSize, xmlSecSize* inBufResSize,\n                     xmlSecByte*
      outBuf, xmlSecSize outBufSize, xmlSecSize* outBufResSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecBase64CtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 580
    functionName: xmlSecBase64CtxDecodeIsFinished
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64CtxDecodeIsFinished(xmlSecBase64CtxPtr ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - columnsSize
    - inSize
    argTypes:
    - xmlSecSize
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 591
    functionName: xmlSecBase64GetEncodeSize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecBase64GetEncodeSize(xmlSecSize columnsSize, xmlSecSize
      inSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - inSize
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: xmlSecBase64GetDecodeSize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecBase64GetDecodeSize(xmlSecSize inSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:622,1
    - Dst: xmlSecBase64CtxInitialize
      Src: /src/xmlsec/src/base64.c:624,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:626,1
    - Dst: xmlSecBase64GetEncodeSize
      Src: /src/xmlsec/src/base64.c:632,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:634,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/base64.c:637,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/base64.c:639,1
    - Dst: xmlSecBase64CtxUpdate_ex
      Src: /src/xmlsec/src/base64.c:643,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/base64.c:645,1
    - Dst: xmlSecBase64CtxFinal_ex
      Src: /src/xmlsec/src/base64.c:650,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:653,1
    - Dst: BAD_CAST
      Src: /src/xmlsec/src/base64.c:659,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/base64.c:664,1
    - Dst: xmlSecBase64CtxFinalize
      Src: /src/xmlsec/src/base64.c:667,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 3
    argNames:
    - in
    - inSize
    - columns
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 613
    functionDepth: 2
    functionLinenumber: 613
    functionLinenumberEnd: 670
    functionName: xmlSecBase64Encode
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError3
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - BAD_CAST
    - xmlMalloc
    - xmlSecBase64CtxFinalize
    - xmlSecBase64CtxUpdate_ex
    - xmlSecBase64CtxInitialize
    - xmlSecBase64GetEncodeSize
    - xmlSecBase64CtxFinal_ex
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecBase64Encode(const xmlSecByte *in, xmlSecSize inSize, int columns)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:692,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:693,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:694,1
    - Dst: xmlSecBase64CtxInitialize
      Src: /src/xmlsec/src/base64.c:696,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:698,1
    - Dst: xmlSecBase64CtxUpdate_ex
      Src: /src/xmlsec/src/base64.c:703,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/base64.c:703,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:706,1
    - Dst: xmlSecBase64CtxFinal_ex
      Src: /src/xmlsec/src/base64.c:710,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:713,1
    - Dst: xmlSecBase64CtxFinalize
      Src: /src/xmlsec/src/base64.c:723,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 4
    argNames:
    - str
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 684
    functionDepth: 2
    functionLinenumber: 684
    functionLinenumberEnd: 726
    functionName: xmlSecBase64Decode_ex
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBase64CtxFinalize
    - xmlSecBase64CtxUpdate_ex
    - xmlSecStrlen
    - xmlSecBase64CtxInitialize
    - xmlSecBase64CtxFinal_ex
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64Decode_ex(const xmlChar* str, xmlSecByte* out, xmlSecSize
      outSize, xmlSecSize* outWritten)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:739,1
    - Dst: xmlSecBase64Decode_ex
      Src: /src/xmlsec/src/base64.c:740,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/base64.c:740,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - str
    - outWritten
    argTypes:
    - xmlChar*
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 737
    functionDepth: 3
    functionLinenumber: 737
    functionLinenumberEnd: 741
    functionName: xmlSecBase64DecodeInPlace
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecStrlen
    - xmlSecBase64Decode_ex
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64DecodeInPlace(xmlChar* str, xmlSecSize* outWritten)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 798
    functionDepth: 0
    functionLinenumber: 798
    functionLinenumberEnd: 801
    functionName: xmlSecTransformBase64GetKlass
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformBase64GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:814,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/base64.c:814,1
    - Dst: xmlSecBase64GetCtx
      Src: /src/xmlsec/src/base64.c:816,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - transform
    - lineSize
    argTypes:
    - xmlSecTransformPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 820
    functionName: xmlSecTransformBase64SetLineSize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecTransformCheckId
    - xmlSecBase64GetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformBase64SetLineSize(xmlSecTransformPtr transform,
      xmlSecSize lineSize)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:828,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/base64.c:828,1
    - Dst: xmlSecBase64GetCtx
      Src: /src/xmlsec/src/base64.c:830,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:831,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/base64.c:833,1
    - Dst: xmlSecBase64CtxInitialize
      Src: /src/xmlsec/src/base64.c:835,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:837,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 822
    functionDepth: 2
    functionLinenumber: 822
    functionLinenumberEnd: 842
    functionName: xmlSecBase64Initialize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecBase64GetCtx
    - xmlSecBase64GetDefaultLineSize
    - xmlSecBase64CtxInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:848,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/base64.c:848,1
    - Dst: xmlSecBase64GetCtx
      Src: /src/xmlsec/src/base64.c:850,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/base64.c:851,1
    - Dst: xmlSecBase64CtxFinalize
      Src: /src/xmlsec/src/base64.c:853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 844
    functionDepth: 2
    functionLinenumber: 844
    functionLinenumberEnd: 854
    functionName: xmlSecBase64Finalize
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecBase64CtxFinalize
    - xmlSecTransformCheckId
    - xmlSecBase64GetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecBase64Finalize(xmlSecTransformPtr transform)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:863,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/base64.c:863,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:864,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:865,1
    - Dst: xmlSecBase64GetCtx
      Src: /src/xmlsec/src/base64.c:867,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:868,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/base64.c:880,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/base64.c:881,1
    - Dst: xmlSecBase64GetEncodeSize
      Src: /src/xmlsec/src/base64.c:884,1
    - Dst: xmlSecBase64GetDecodeSize
      Src: /src/xmlsec/src/base64.c:886,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/base64.c:888,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:890,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:890,1
    - Dst: xmlSecBase64CtxUpdate_ex
      Src: /src/xmlsec/src/base64.c:896,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/base64.c:896,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/base64.c:897,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:899,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:899,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/base64.c:904,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:906,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:906,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/base64.c:912,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:914,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:914,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/base64.c:921,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/base64.c:924,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:926,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:926,1
    - Dst: xmlSecBase64CtxFinal_ex
      Src: /src/xmlsec/src/base64.c:932,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/base64.c:932,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/base64.c:935,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:935,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/base64.c:940,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/base64.c:942,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/base64.c:942,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/base64.c:951,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/base64.c:951,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/base64.c:954,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 72
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 856
    functionDepth: 2
    functionLinenumber: 856
    functionLinenumberEnd: 958
    functionName: xmlSecBase64Execute
    functionSourceFile: /src/xmlsec/src/base64.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecBase64GetDecodeSize
    - xmlSecInternalError2
    - xmlSecBase64GetCtx
    - xmlSecBufferGetData
    - xmlSecInvalidTransfromStatusError
    - xmlSecBase64CtxUpdate_ex
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferSetSize
    - xmlSecTransformGetName
    - xmlSecBase64GetEncodeSize
    - xmlSecBase64CtxFinal_ex
    linkageType: ''
    returnType: int
    signature: int xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr
      transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: xmlSecTransformIdsGet
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecTransformIdsGet(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/transforms.c:113,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/src/transforms.c:113,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:115,1
    - Dst: xmlSecTransformIdsRegisterDefault
      Src: /src/xmlsec/src/transforms.c:119,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:121,1
    - Dst: xmlSecTransformXsltInitialize
      Src: /src/xmlsec/src/transforms.c:126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 109
    functionDepth: 5
    functionLinenumber: 109
    functionLinenumberEnd: 130
    functionName: xmlSecTransformIdsInit
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformXsltInitialize
    - xmlSecInternalError
    - xmlSecTransformIdsRegisterDefault
    - xmlSecPtrListInitialize
    - xmlSecTransformIdsGet
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformIdsInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformXsltShutdown
      Src: /src/xmlsec/src/transforms.c:141,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/transforms.c:144,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/src/transforms.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 145
    functionName: xmlSecTransformIdsShutdown
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecTransformIdsGet
    - xmlSecTransformXsltShutdown
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformIdsShutdown(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:159,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/transforms.c:161,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/src/transforms.c:161,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:163,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 169
    functionName: xmlSecTransformIdsRegister
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformKlassGetName
    - xmlSecPtrListAdd
    - xmlSecTransformIdsGet
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformIdsRegister(xmlSecTransformId id)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:181,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:182,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:186,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:187,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:192,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:193,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:196,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:197,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:200,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:201,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:204,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:205,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:208,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:209,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:212,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:213,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:217,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:218,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:223,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:227,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:228,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:233,1
    - Dst: xmlSecTransformIdsRegister
      Src: /src/xmlsec/src/transforms.c:238,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:239,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 245
    functionName: xmlSecTransformIdsRegisterDefault
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformIdsRegister
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformIdsRegisterDefault(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/transforms.c:266,1
    - Dst: xmlStrncmp
      Src: /src/xmlsec/src/transforms.c:270,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - type
    - uri
    argTypes:
    - xmlSecTransformUriType
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 276
    functionName: xmlSecTransformUriTypeCheck
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlStrncmp
    - xmlSecStrlen
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformUriTypeCheck(xmlSecTransformUriType type, const
      xmlChar* uri)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: xmlSecTransformCtxGetDefaultBinaryChunkSize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecTransformCtxGetDefaultBinaryChunkSize(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - binaryChunkSize
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 309
    functionDepth: 1
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionName: xmlSecTransformCtxSetDefaultBinaryChunkSize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxSetDefaultBinaryChunkSize(xmlSecSize binaryChunkSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/transforms.c:333,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/transforms.c:335,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/transforms.c:339,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:341,1
    - Dst: xmlSecTransformCtxDestroy
      Src: /src/xmlsec/src/transforms.c:342,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 347
    functionName: xmlSecTransformCtxCreate
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlMalloc
    - xmlSecTransformCtxDestroy
    - xmlSecTransformCtxInitialize
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecTransformCtxPtr
    signature: xmlSecTransformCtxPtr xmlSecTransformCtxCreate(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:357,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/transforms.c:359,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:360,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 361
    functionName: xmlSecTransformCtxDestroy
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCtxFinalize
    - xmlSecAssert
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxDestroy(xmlSecTransformCtxPtr ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:377,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:379,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/transforms.c:381,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:383,1
    - Dst: xmlSecTransformCtxGetDefaultBinaryChunkSize
      Src: /src/xmlsec/src/transforms.c:388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 390
    functionName: xmlSecTransformCtxInitialize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformCtxGetDefaultBinaryChunkSize
    - xmlSecPtrListInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxInitialize(xmlSecTransformCtxPtr ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:400,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/transforms.c:402,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/transforms.c:403,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 398
    functionDepth: 2
    functionLinenumber: 398
    functionLinenumberEnd: 405
    functionName: xmlSecTransformCtxFinalize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecAssert
    - xmlSecTransformCtxReset
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxFinalize(xmlSecTransformCtxPtr ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:417,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:424,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:428,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:435,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 438
    functionName: xmlSecTransformCtxReset
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - xmlSecTransformDestroy
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxReset(xmlSecTransformCtxPtr ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:454,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/transforms.c:462,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 469
    functionName: xmlSecTransformCtxCopyUserPref
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecPtrListCopy
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxCopyUserPref(xmlSecTransformCtxPtr dst, xmlSecTransformCtxPtr
      src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:487,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:487,1
    - Dst: xmlSecTransformConnect
      Src: /src/xmlsec/src/transforms.c:490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:492,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:497,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - transform
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 481
    functionDepth: 1
    functionLinenumber: 481
    functionLinenumberEnd: 503
    functionName: xmlSecTransformCtxAppend
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecTransformConnect
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxAppend(xmlSecTransformCtxPtr ctx, xmlSecTransformPtr
      transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:519,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:520,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:521,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:521,1
    - Dst: xmlSecTransformConnect
      Src: /src/xmlsec/src/transforms.c:524,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:526,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - transform
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 537
    functionName: xmlSecTransformCtxPrepend
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecTransformConnect
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxPrepend(xmlSecTransformCtxPtr ctx, xmlSecTransformPtr
      transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:554,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:555,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:556,1
    - Dst: xmlSecTransformCreate
      Src: /src/xmlsec/src/transforms.c:558,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:559,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:560,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:561,1
    - Dst: xmlSecTransformCtxAppend
      Src: /src/xmlsec/src/transforms.c:565,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:567,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:568,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - id
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 549
    functionDepth: 2
    functionLinenumber: 549
    functionLinenumberEnd: 574
    functionName: xmlSecTransformCtxCreateAndAppend
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCtxAppend
    - xmlSecAssert2
    - xmlSecTransformKlassGetName
    - xmlSecTransformDestroy
    - xmlSecTransformCreate
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: xmlSecTransformPtr
    signature: xmlSecTransformPtr xmlSecTransformCtxCreateAndAppend(xmlSecTransformCtxPtr
      ctx, xmlSecTransformId id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:591,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:593,1
    - Dst: xmlSecTransformCreate
      Src: /src/xmlsec/src/transforms.c:595,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:596,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:597,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:598,1
    - Dst: xmlSecTransformCtxPrepend
      Src: /src/xmlsec/src/transforms.c:602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:604,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:605,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - id
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 611
    functionName: xmlSecTransformCtxCreateAndPrepend
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformKlassGetName
    - xmlSecTransformDestroy
    - xmlSecTransformCreate
    - xmlSecTransformIsValid
    - xmlSecTransformCtxPrepend
    - xmlSecTransformGetName
    linkageType: ''
    returnType: xmlSecTransformPtr
    signature: xmlSecTransformPtr xmlSecTransformCtxCreateAndPrepend(xmlSecTransformCtxPtr
      ctx, xmlSecTransformId id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:630,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:631,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:632,1
    - Dst: xmlSecTransformNodeRead
      Src: /src/xmlsec/src/transforms.c:634,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:636,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:637,1
    - Dst: xmlSecTransformCtxAppend
      Src: /src/xmlsec/src/transforms.c:641,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:643,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:644,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:645,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - node
    - usage
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlNodePtr
    - xmlSecTransformUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 624
    functionDepth: 2
    functionLinenumber: 624
    functionLinenumberEnd: 650
    functionName: xmlSecTransformCtxNodeRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCtxAppend
    - xmlSecAssert2
    - xmlSecTransformDestroy
    - xmlSecTransformNodeRead
    - xmlSecTransformGetName
    - xmlSecNodeGetName
    linkageType: ''
    returnType: xmlSecTransformPtr
    signature: "xmlSecTransformPtr xmlSecTransformCtxNodeRead(xmlSecTransformCtxPtr
      ctx, xmlNodePtr node,\n                           xmlSecTransformUsage usage)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:669,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:670,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:671,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:673,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:674,1
    - Dst: xmlSecTransformNodeRead
      Src: /src/xmlsec/src/transforms.c:675,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:677,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:678,1
    - Dst: xmlSecTransformCtxAppend
      Src: /src/xmlsec/src/transforms.c:683,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:685,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:686,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:687,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:690,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:694,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 3
    argNames:
    - ctx
    - node
    - usage
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlNodePtr
    - xmlSecTransformUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 663
    functionDepth: 2
    functionLinenumber: 663
    functionLinenumberEnd: 698
    functionName: xmlSecTransformCtxNodesListRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecTransformCtxAppend
    - xmlSecAssert2
    - xmlSecTransformDestroy
    - xmlSecTransformNodeRead
    - xmlSecTransformGetName
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxNodesListRead(xmlSecTransformCtxPtr ctx, xmlNodePtr
      node, xmlSecTransformUsage usage)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:748,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:752,1
    - Dst: xmlSecTransformUriTypeCheck
      Src: /src/xmlsec/src/transforms.c:755,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/transforms.c:756,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:756,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/transforms.c:761,1
    - Dst: xmlStrchr
      Src: /src/xmlsec/src/transforms.c:767,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/transforms.c:769,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/transforms.c:771,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/transforms.c:777,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/transforms.c:778,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/transforms.c:780,1
    - Dst: XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
      Src: /src/xmlsec/src/transforms.c:788,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:788,1
    - Dst: xmlStrndup
      Src: /src/xmlsec/src/transforms.c:789,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/transforms.c:791,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/transforms.c:795,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/transforms.c:797,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:802,1
    - Dst: xmlStrncmp
      Src: /src/xmlsec/src/transforms.c:803,1
    - Dst: xmlStrncmp
      Src: /src/xmlsec/src/transforms.c:803,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/transforms.c:816,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/transforms.c:816,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/transforms.c:817,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:817,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/transforms.c:818,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/transforms.c:820,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/transforms.c:823,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/transforms.c:825,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/transforms.c:836,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:837,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:838,1
    - Dst: xmlSecTransformXPointerSetExpr
      Src: /src/xmlsec/src/transforms.c:842,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:844,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:844,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/transforms.c:857,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:858,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:859,1
    - Dst: xmlSecTransformVisa3DHackSetID
      Src: /src/xmlsec/src/transforms.c:863,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:865,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:865,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:875,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 113
    argCount: 3
    argNames:
    - ctx
    - uri
    - hereNode
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlChar*
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 738
    functionDepth: 3
    functionLinenumber: 738
    functionLinenumberEnd: 878
    functionName: xmlSecTransformCtxSetUri
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformVisa3DHackSetID
    - xmlStrdup
    - xmlSecOtherError2
    - return
    - xmlSecStrlen
    - xmlStrPrintf
    - xmlFree
    - xmlSecErrorsSafeString
    - xmlMalloc
    - xmlStrcmp
    - xmlSecStrdupError
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlStrlen
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlStrchr
    - xmlSecMallocError
    - XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
    - xmlSecTransformXPointerSetExpr
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlStrndup
    - xmlSecTransformUriTypeCheck
    - xmlSecTransformCtxCreateAndPrepend
    - xmlSecTransformIsValid
    - xmlStrncmp
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar*
      uri, xmlNodePtr hereNode)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:895,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:896,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:897,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/transforms.c:900,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:901,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:902,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/transforms.c:905,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:907,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:908,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/transforms.c:912,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/transforms.c:917,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:919,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/transforms.c:926,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:928,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:938,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - ctx
    - inputDataType
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecTransformDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 889
    functionDepth: 3
    functionLinenumber: 889
    functionLinenumberEnd: 945
    functionName: xmlSecTransformCtxPrepare
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformMemBufGetBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformCtxCreateAndAppend
    - xmlSecTransformCtxCreateAndPrepend
    - xmlSecTransformIsValid
    - xmlSecTransformGetDataType
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxPrepare(xmlSecTransformCtxPtr ctx, xmlSecTransformDataType
      inputDataType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:962,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:963,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:964,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:967,1
    - Dst: xmlSecTransformCtxPrepare
      Src: /src/xmlsec/src/transforms.c:969,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:971,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/transforms.c:975,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:977,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - data
    - dataSize
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 957
    functionDepth: 4
    functionLinenumber: 957
    functionLinenumberEnd: 984
    functionName: xmlSecTransformCtxBinaryExecute
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecTransformPushBin
    - xmlSecTransformCtxPrepare
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformCtxBinaryExecute(xmlSecTransformCtxPtr ctx,\n                                const
      xmlSecByte* data, xmlSecSize dataSize)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1000,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1001,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1002,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1005,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/transforms.c:1005,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/transforms.c:1007,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1009,1
    - Dst: xmlSecTransformInputURIOpen
      Src: /src/xmlsec/src/transforms.c:1013,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:1015,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1016,1
    - Dst: xmlSecTransformCtxPrepare
      Src: /src/xmlsec/src/transforms.c:1021,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1023,1
    - Dst: xmlSecTransformPump
      Src: /src/xmlsec/src/transforms.c:1030,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1032,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1033,1
    - Dst: xmlSecTransformInputURIClose
      Src: /src/xmlsec/src/transforms.c:1038,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1040,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1041,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - ctx
    - uri
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 995
    functionDepth: 4
    functionLinenumber: 995
    functionLinenumberEnd: 1048
    functionName: xmlSecTransformCtxUriExecute
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformInputURIOpen
    - xmlSecTransformInputURIClose
    - xmlSecInternalError
    - xmlStrEqual
    - xmlSecTransformPump
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecTransformCtxCreateAndPrepend
    - xmlSecTransformGetName
    - xmlSecTransformCtxPrepare
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxUriExecute(xmlSecTransformCtxPtr ctx, const xmlChar*
      uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1063,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1064,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1065,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1066,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1068,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/transforms.c:1068,1
    - Dst: xmlSecTransformCtxPrepare
      Src: /src/xmlsec/src/transforms.c:1070,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1072,1
    - Dst: xmlSecTransformPushXml
      Src: /src/xmlsec/src/transforms.c:1078,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1080,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1081,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - nodes
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlSecNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1059
    functionDepth: 4
    functionLinenumber: 1059
    functionLinenumberEnd: 1087
    functionName: xmlSecTransformCtxXmlExecute
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformPushXml
    - xmlSecInternalError
    - xmlStrlen
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecTransformCtxPrepare
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxXmlExecute(xmlSecTransformCtxPtr ctx, xmlSecNodeSetPtr
      nodes)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1104,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1105,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/transforms.c:1107,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/transforms.c:1110,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/transforms.c:1112,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1114,1
    - Dst: xmlSecNodeSetGetChildren
      Src: /src/xmlsec/src/transforms.c:1120,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1122,1
    - Dst: xmlSecTransformCtxXmlExecute
      Src: /src/xmlsec/src/transforms.c:1126,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1128,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/transforms.c:1129,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/transforms.c:1133,1
    - Dst: xmlSecTransformCtxUriExecute
      Src: /src/xmlsec/src/transforms.c:1135,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1137,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - doc
    argTypes:
    - xmlSecTransformCtxPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1098
    functionDepth: 5
    functionLinenumber: 1098
    functionLinenumberEnd: 1143
    functionName: xmlSecTransformCtxExecute
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeSetGetChildren
    - xmlSecNodeSetCreate
    - xmlSecTransformCtxUriExecute
    - xmlSecStrlen
    - xmlSecNodeSetDestroy
    - xmlSecTransformCtxXmlExecute
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformCtxExecute(xmlSecTransformCtxPtr ctx, xmlDocPtr
      doc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1156,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1157,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1159,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/transforms.c:1160,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1162,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1163,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:1164,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1165,1
    - Dst: xmlSecTransformIdListDebugDump
      Src: /src/xmlsec/src/transforms.c:1166,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1168,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1171,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1173,1
    - Dst: xmlSecTransformDebugDump
      Src: /src/xmlsec/src/transforms.c:1176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - output
    argTypes:
    - xmlSecTransformCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1152
    functionDepth: 2
    functionLinenumber: 1152
    functionLinenumberEnd: 1178
    functionName: xmlSecTransformCtxDebugDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecTransformDebugDump
    - XMLSEC_ENUM_CAST
    - xmlSecAssert
    - xmlSecTransformIdListDebugDump
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxDebugDump(xmlSecTransformCtxPtr ctx, FILE* output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1191,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1192,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1194,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/transforms.c:1195,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1197,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1198,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:1199,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1200,1
    - Dst: xmlSecTransformIdListDebugXmlDump
      Src: /src/xmlsec/src/transforms.c:1201,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1202,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1204,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1208,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/transforms.c:1209,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1210,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1212,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/transforms.c:1213,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1214,1
    - Dst: xmlSecTransformDebugXmlDump
      Src: /src/xmlsec/src/transforms.c:1217,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - output
    argTypes:
    - xmlSecTransformCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1187
    functionDepth: 2
    functionLinenumber: 1187
    functionLinenumberEnd: 1220
    functionName: xmlSecTransformCtxDebugXmlDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - XMLSEC_ENUM_CAST
    - xmlSecAssert
    - xmlSecPrintXmlString
    - xmlSecTransformIdListDebugXmlDump
    - fprintf
    - xmlSecTransformDebugXmlDump
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformCtxDebugXmlDump(xmlSecTransformCtxPtr ctx, FILE*
      output)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1244,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/transforms.c:1247,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/transforms.c:1249,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:1252,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1258,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1259,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:1260,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:1265,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1267,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1268,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:1269,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:1273,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1275,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1276,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:1277,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1236
    functionDepth: 1
    functionLinenumber: 1236
    functionLinenumberEnd: 1282
    functionName: xmlSecTransformCreate
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformDestroy
    - xmlMalloc
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecTransformPtr
    signature: xmlSecTransformPtr xmlSecTransformCreate(xmlSecTransformId id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1292,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1292,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1293,1
    - Dst: xmlSecTransformRemove
      Src: /src/xmlsec/src/transforms.c:1296,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:1298,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:1299,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/transforms.c:1306,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:1311,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 1290
    functionDepth: 4
    functionLinenumber: 1290
    functionLinenumberEnd: 1313
    functionName: xmlSecTransformDestroy
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 6
    functionsReached:
    - xmlFree
    - xmlSecAssert
    - xmlSecTransformRemove
    - xmlSecTransformIsValid
    - xmlSecBufferFinalize
    - xmlSecNodeSetDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformDestroy(xmlSecTransformPtr transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1341,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:1343,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/transforms.c:1345,1
    - Dst: xmlSecTransformIdListFindByHref
      Src: /src/xmlsec/src/transforms.c:1350,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/src/transforms.c:1350,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:1352,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1353,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1354,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:1359,1
    - Dst: xmlSecTransformIdListFind
      Src: /src/xmlsec/src/transforms.c:1360,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/transforms.c:1361,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:1362,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1363,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1364,1
    - Dst: xmlSecTransformCreate
      Src: /src/xmlsec/src/transforms.c:1368,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1369,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1370,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:1371,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1372,1
    - Dst: xmlSecTransformPtr::id::readNode
      Src: /src/xmlsec/src/transforms.c:1377,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1379,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1380,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:1381,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1382,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1389,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 3
    argNames:
    - node
    - usage
    - transformCtx
    argTypes:
    - xmlNodePtr
    - xmlSecTransformUsage
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1333
    functionDepth: 11
    functionLinenumber: 1333
    functionLinenumberEnd: 1391
    functionName: xmlSecTransformNodeRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlGetProp
    - xmlSecTransformIdListFindByHref
    - xmlFree
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPtr::id::readNode
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecTransformIdListFind
    - xmlSecOtherError2
    - xmlSecTransformKlassGetName
    - xmlSecTransformDestroy
    - xmlSecInvalidNodeAttributeError
    - xmlSecTransformCreate
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecTransformIdsGet
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecTransformPtr
    signature: xmlSecTransformPtr xmlSecTransformNodeRead(xmlNodePtr node, xmlSecTransformUsage
      usage, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1410,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1410,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1411,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1413,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/transforms.c:1415,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/transforms.c:1416,1
    - Dst: xmlSecTransformPopXml
      Src: /src/xmlsec/src/transforms.c:1423,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1425,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1426,1
    - Dst: xmlSecTransformPushXml
      Src: /src/xmlsec/src/transforms.c:1430,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1432,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1433,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/transforms.c:1441,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/transforms.c:1443,1
    - Dst: xmlSecTransformPopBin
      Src: /src/xmlsec/src/transforms.c:1449,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1451,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1451,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1452,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/transforms.c:1456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1458,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1458,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1459,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:1464,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/transforms.c:1466,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1468,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1468,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 3
    argNames:
    - left
    - right
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1404
    functionDepth: 1
    functionLinenumber: 1404
    functionLinenumberEnd: 1471
    functionName: xmlSecTransformPump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformPushXml
    - xmlSecInternalError
    - xmlSecTransformPopBin
    - xmlFree
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecTransformPushBin
    - xmlSecTransformPopXml
    - xmlMalloc
    - xmlSecTransformIsValid
    - xmlSecTransformGetDataType
    - xmlSecTransformGetName
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformPump(xmlSecTransformPtr left, xmlSecTransformPtr
      right, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1485,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1483
    functionDepth: 1
    functionLinenumber: 1483
    functionLinenumberEnd: 1492
    functionName: xmlSecTransformSetKey
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1505,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1505,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1517
      start: 1503
    functionDepth: 1
    functionLinenumber: 1503
    functionLinenumberEnd: 1517
    functionName: xmlSecTransformSetKeyReq
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformSetKeyReq(xmlSecTransformPtr transform, xmlSecKeyReqPtr
      keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1535,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1536,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1532
    functionDepth: 1
    functionLinenumber: 1532
    functionLinenumberEnd: 1540
    functionName: xmlSecTransformVerify
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformVerify(xmlSecTransformPtr transform, const xmlSecByte*
      data,\n                    xmlSecSize dataSize, xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1559,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1559,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1560,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1561,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:1563,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1565,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1566,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/transforms.c:1570,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:1571,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1572,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1573,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:1574,1
    - Dst: xmlSecTransformVerify
      Src: /src/xmlsec/src/transforms.c:1578,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:1578,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:1579,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1581,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1582,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:1583,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:1587,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1553
    functionDepth: 2
    functionLinenumber: 1553
    functionLinenumberEnd: 1589
    functionName: xmlSecTransformVerifyNodeContent
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecTransformVerify
    - xmlSecTransformGetName
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformVerifyNodeContent(xmlSecTransformPtr transform,
      xmlNodePtr node,\n                                 xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1605,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1605,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - transform
    - mode
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformMode
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1602
    functionDepth: 1
    functionLinenumber: 1602
    functionLinenumberEnd: 1609
    functionName: xmlSecTransformGetDataType
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: xmlSecTransformDataType
    signature: "xmlSecTransformDataType xmlSecTransformGetDataType(xmlSecTransformPtr
      transform, xmlSecTransformMode mode,\n                    xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1627,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1627,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - transform
    - data
    - dataSize
    - final
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1624
    functionDepth: 1
    functionLinenumber: 1624
    functionLinenumberEnd: 1632
    functionName: xmlSecTransformPushBin
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformPushBin(xmlSecTransformPtr transform, const xmlSecByte*
      data,\n                    xmlSecSize dataSize, int final, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1651,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1651,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1652,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1653,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1654,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - transform
    - data
    - maxDataSize
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1648
    functionDepth: 1
    functionLinenumber: 1648
    functionLinenumberEnd: 1658
    functionName: xmlSecTransformPopBin
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformPopBin(xmlSecTransformPtr transform, xmlSecByte*
      data,\n                    xmlSecSize maxDataSize, xmlSecSize* dataSize, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1673,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1674,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1670
    functionDepth: 1
    functionLinenumber: 1670
    functionLinenumberEnd: 1678
    functionName: xmlSecTransformPushXml
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr
      nodes,\n                    xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1694,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1694,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1691
    functionDepth: 1
    functionLinenumber: 1691
    functionLinenumberEnd: 1699
    functionName: xmlSecTransformPopXml
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr*
      nodes,\n                    xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1713,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1713,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1714,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1718
      start: 1711
    functionDepth: 1
    functionLinenumber: 1711
    functionLinenumberEnd: 1718
    functionName: xmlSecTransformExecute
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1729,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1729,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1730,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1732,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1733,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - transform
    - output
    argTypes:
    - xmlSecTransformPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1735
      start: 1727
    functionDepth: 1
    functionLinenumber: 1727
    functionLinenumberEnd: 1735
    functionName: xmlSecTransformDebugDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecErrorsSafeString
    - fprintf
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformDebugDump(xmlSecTransformPtr transform, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1746,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1746,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1747,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1749,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/transforms.c:1750,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1751,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/transforms.c:1752,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:1753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - output
    argTypes:
    - xmlSecTransformPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1744
    functionDepth: 1
    functionLinenumber: 1744
    functionLinenumberEnd: 1754
    functionName: xmlSecTransformDebugXmlDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformDebugXmlDump(xmlSecTransformPtr transform, FILE*
      output)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1795,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1795,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1796,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1796,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1797,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/transforms.c:1799,1
    - Dst: xmlSecTransformGetDataType
      Src: /src/xmlsec/src/transforms.c:1800,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/transforms.c:1822,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/transforms.c:1828,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/transforms.c:1830,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1830,1
    - Dst: xmlSecTransformCreate
      Src: /src/xmlsec/src/transforms.c:1835,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:1837,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/transforms.c:1838,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - left
    - right
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1787
    functionDepth: 2
    functionLinenumber: 1787
    functionLinenumberEnd: 1846
    functionName: xmlSecTransformConnect
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecTransformKlassGetName
    - xmlSecTransformIsValid
    - xmlSecTransformCreate
    - xmlSecTransformGetDataType
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformConnect(xmlSecTransformPtr left, xmlSecTransformPtr
      right,\n                       xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:1856,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1856,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1854
    functionDepth: 1
    functionLinenumber: 1854
    functionLinenumberEnd: 1865
    functionName: xmlSecTransformRemove
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecTransformIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformRemove(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1890,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1890,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1891,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/transforms.c:1912,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1912,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - transform
    - mode
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformMode
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1885
    functionDepth: 1
    functionLinenumber: 1885
    functionLinenumberEnd: 1917
    functionName: xmlSecTransformDefaultGetDataType
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecTransformIsValid
    - xmlSecUnsupportedEnumValueError
    linkageType: ''
    returnType: xmlSecTransformDataType
    signature: "xmlSecTransformDataType xmlSecTransformDefaultGetDataType(xmlSecTransformPtr
      transform, xmlSecTransformMode mode,\n                                  xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1941,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:1941,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1942,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:1949,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:1956,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:1958,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1958,1
    - Dst: xmlSecTransformExecute
      Src: /src/xmlsec/src/transforms.c:1969,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:1971,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1971,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:1977,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:1978,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/transforms.c:1989,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:1990,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/transforms.c:1995,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:1995,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/transforms.c:2003,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:2005,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2005,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 5
    argNames:
    - transform
    - data
    - dataSize
    - final
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2013
      start: 1933
    functionDepth: 2
    functionLinenumber: 1933
    functionLinenumberEnd: 2013
    functionName: xmlSecTransformDefaultPushBin
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecTransformPushBin
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - xmlSecTransformIsValid
    - xmlSecTransformExecute
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const
      xmlSecByte* data,\n                        xmlSecSize dataSize, int final, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2037,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2037,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2038,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2039,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2040,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2042,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2047,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/transforms.c:2051,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:2053,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2053,1
    - Dst: xmlSecTransformPopBin
      Src: /src/xmlsec/src/transforms.c:2059,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2060,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2063,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2063,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/transforms.c:2069,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:2071,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2071,1
    - Dst: xmlSecTransformExecute
      Src: /src/xmlsec/src/transforms.c:2084,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2086,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2087,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2093,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2103,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2103,1
    - Dst: memcpy
      Src: /src/xmlsec/src/transforms.c:2105,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2105,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/transforms.c:2107,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:2109,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2110,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 5
    argNames:
    - transform
    - data
    - maxDataSize
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2119
      start: 2029
    functionDepth: 2
    functionLinenumber: 2029
    functionLinenumberEnd: 2119
    functionName: xmlSecTransformDefaultPopBin
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformPopBin
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecBufferSetMaxSize
    - xmlSecTransformExecute
    - xmlSecTransformGetName
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte*
      data,\n                             xmlSecSize maxDataSize, xmlSecSize* dataSize,\n
      \                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2137,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2140,1
    - Dst: xmlSecTransformExecute
      Src: /src/xmlsec/src/transforms.c:2144,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2146,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2147,1
    - Dst: xmlSecTransformPushXml
      Src: /src/xmlsec/src/transforms.c:2153,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2155,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2156,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2161
      start: 2132
    functionDepth: 2
    functionLinenumber: 2132
    functionLinenumberEnd: 2161
    functionName: xmlSecTransformDefaultPushXml
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformPushXml
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformIsValid
    - xmlSecTransformExecute
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformDefaultPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr
      nodes,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2179,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2182,1
    - Dst: xmlSecTransformPopXml
      Src: /src/xmlsec/src/transforms.c:2186,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2188,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2189,1
    - Dst: xmlSecTransformExecute
      Src: /src/xmlsec/src/transforms.c:2195,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2197,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2198,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2174
    functionDepth: 2
    functionLinenumber: 2174
    functionLinenumberEnd: 2208
    functionName: xmlSecTransformDefaultPopXml
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPopXml
    - xmlSecTransformIsValid
    - xmlSecTransformExecute
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformDefaultPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr*
      nodes,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2230
    functionDepth: 0
    functionLinenumber: 2230
    functionLinenumberEnd: 2233
    functionName: xmlSecTransformIdListGetKlass
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecTransformIdListGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2249,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/transforms.c:2249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2250,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:2252,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/transforms.c:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - list
    - transformId
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2259
      start: 2245
    functionDepth: 2
    functionLinenumber: 2245
    functionLinenumberEnd: 2259
    functionName: xmlSecTransformIdListFind
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformIdListFind(xmlSecPtrListPtr list, xmlSecTransformId
      transformId)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2277,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/transforms.c:2277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2278,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:2280,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/transforms.c:2282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2283,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/transforms.c:2286,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - list
    - href
    - usage
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlSecTransformUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2291
      start: 2271
    functionDepth: 2
    functionLinenumber: 2271
    functionLinenumberEnd: 2291
    functionName: xmlSecTransformIdListFindByHref
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecTransformId
    signature: "xmlSecTransformId xmlSecTransformIdListFindByHref(xmlSecPtrListPtr
      list, const xmlChar* href,\n                            xmlSecTransformUsage
      usage)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2309,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/transforms.c:2309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2310,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:2312,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/transforms.c:2314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2315,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/transforms.c:2318,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - list
    - name
    - usage
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlSecTransformUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2303
    functionDepth: 2
    functionLinenumber: 2303
    functionLinenumberEnd: 2324
    functionName: xmlSecTransformIdListFindByName
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecTransformId
    signature: "xmlSecTransformId xmlSecTransformIdListFindByName(xmlSecPtrListPtr
      list, const xmlChar* name,\n                            xmlSecTransformUsage
      usage)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2338,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/transforms.c:2338,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2339,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:2341,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/transforms.c:2343,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2344,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2345,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2348,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2350,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2353,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2354
      start: 2333
    functionDepth: 2
    functionLinenumber: 2333
    functionLinenumberEnd: 2354
    functionName: xmlSecTransformIdListDebugDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListGetItem
    - xmlSecAssert
    - fprintf
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformIdListDebugDump(xmlSecPtrListPtr list, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2368,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/transforms.c:2368,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2369,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2371,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/transforms.c:2372,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/transforms.c:2374,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2375,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2376,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2378,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/transforms.c:2379,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2380,1
    - Dst: fprintf
      Src: /src/xmlsec/src/transforms.c:2382,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2383
      start: 2363
    functionDepth: 2
    functionLinenumber: 2363
    functionLinenumberEnd: 2383
    functionName: xmlSecTransformIdListDebugXmlDump
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListGetItem
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformIdListDebugXmlDump(xmlSecPtrListPtr list, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2431,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2432,1
    - Dst: xmlSecTransformDefaultGetDataType
      Src: /src/xmlsec/src/transforms.c:2435,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/transforms.c:2437,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/transforms.c:2439,1
    - Dst: xmlSecTransformIOBufferCreate
      Src: /src/xmlsec/src/transforms.c:2443,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2445,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2446,1
    - Dst: xmlOutputBufferCreateIO
      Src: /src/xmlsec/src/transforms.c:2450,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/transforms.c:2455,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2455,1
    - Dst: xmlSecTransformIOBufferDestroy
      Src: /src/xmlsec/src/transforms.c:2456,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - transform
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2461
      start: 2425
    functionDepth: 4
    functionLinenumber: 2425
    functionLinenumberEnd: 2461
    functionName: xmlSecTransformCreateOutputBuffer
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - XMLSEC_ENUM_CAST
    - xmlSecXmlError
    - xmlOutputBufferCreateIO
    - xmlSecTransformDefaultGetDataType
    - xmlSecTransformIOBufferCreate
    - xmlSecTransformIOBufferDestroy
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    linkageType: ''
    returnType: xmlOutputBufferPtr
    signature: xmlOutputBufferPtr xmlSecTransformCreateOutputBuffer(xmlSecTransformPtr
      transform, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2478,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2478,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2479,1
    - Dst: xmlSecTransformDefaultGetDataType
      Src: /src/xmlsec/src/transforms.c:2482,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/transforms.c:2484,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/transforms.c:2486,1
    - Dst: xmlSecTransformIOBufferCreate
      Src: /src/xmlsec/src/transforms.c:2490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2492,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2493,1
    - Dst: xmlParserInputBufferCreateIO
      Src: /src/xmlsec/src/transforms.c:2497,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/transforms.c:2502,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2502,1
    - Dst: xmlSecTransformIOBufferDestroy
      Src: /src/xmlsec/src/transforms.c:2503,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - transform
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2508
      start: 2472
    functionDepth: 5
    functionLinenumber: 2472
    functionLinenumberEnd: 2508
    functionName: xmlSecTransformCreateInputBuffer
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlParserInputBufferCreateIO
    - XMLSEC_ENUM_CAST
    - xmlSecXmlError
    - xmlSecTransformDefaultGetDataType
    - xmlSecTransformIOBufferCreate
    - xmlSecTransformIOBufferDestroy
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    linkageType: ''
    returnType: xmlParserInputBufferPtr
    signature: xmlParserInputBufferPtr xmlSecTransformCreateInputBuffer(xmlSecTransformPtr
      transform, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2515,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2516,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/transforms.c:2518,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/transforms.c:2520,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2523,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - mode
    - transform
    - transformCtx
    argTypes:
    - xmlSecTransformIOBufferMode
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2530
      start: 2510
    functionDepth: 1
    functionLinenumber: 2510
    functionLinenumberEnd: 2530
    functionName: xmlSecTransformIOBufferCreate
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecTransformIsValid
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecTransformIOBufferPtr
    signature: "xmlSecTransformIOBufferPtr xmlSecTransformIOBufferCreate(xmlSecTransformIOBufferMode
      mode, xmlSecTransformPtr transform,\n                              xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2534,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2536,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:2537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlSecTransformIOBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2538
      start: 2532
    functionDepth: 1
    functionLinenumber: 2532
    functionLinenumberEnd: 2538
    functionName: xmlSecTransformIOBufferDestroy
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformIOBufferDestroy(xmlSecTransformIOBufferPtr buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2548,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2549,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2551,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/transforms.c:2553,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:2553,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2553,1
    - Dst: xmlSecTransformPopBin
      Src: /src/xmlsec/src/transforms.c:2554,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2556,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2557,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/transforms.c:2560,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:2560,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - buffer
    - buf
    - len
    argTypes:
    - xmlSecTransformIOBufferPtr
    - xmlSecByte*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2562
      start: 2540
    functionDepth: 2
    functionLinenumber: 2540
    functionLinenumberEnd: 2562
    functionName: xmlSecTransformIOBufferRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformPopBin
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformIOBufferRead(xmlSecTransformIOBufferPtr buffer,\n
      \                           xmlSecByte *buf, int len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2572,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2573,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2573,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2574,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2575,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/transforms.c:2577,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:2577,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2577,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/transforms.c:2578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2580,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2581,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/transforms.c:2584,1
    - Dst: return
      Src: /src/xmlsec/src/transforms.c:2584,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - buffer
    - buf
    - len
    argTypes:
    - xmlSecTransformIOBufferPtr
    - xmlSecByte*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2586
      start: 2564
    functionDepth: 2
    functionLinenumber: 2564
    functionLinenumberEnd: 2586
    functionName: xmlSecTransformIOBufferWrite
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecTransformPushBin
    - return
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformIOBufferWrite(xmlSecTransformIOBufferPtr buffer,\n
      \                           const xmlSecByte *buf, int len)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2593,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:2593,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2594,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/transforms.c:2598,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2600,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/transforms.c:2601,1
    - Dst: xmlSecTransformIOBufferDestroy
      Src: /src/xmlsec/src/transforms.c:2606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - xmlSecTransformIOBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2608
      start: 2588
    functionDepth: 2
    functionLinenumber: 2588
    functionLinenumberEnd: 2608
    functionName: xmlSecTransformIOBufferClose
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPushBin
    - xmlSecTransformIOBufferDestroy
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformIOBufferClose(xmlSecTransformIOBufferPtr buffer)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2644,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2645,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2646,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:2648,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/transforms.c:2650,1
    - Dst: xmlSecBufferHexRead
      Src: /src/xmlsec/src/transforms.c:2654,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2656,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:2657,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:2660,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2662,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2663,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/transforms.c:2672,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/transforms.c:2676,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2678,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 3
    argNames:
    - buf
    - node
    - attrName
    argTypes:
    - xmlSecBufferPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2684
      start: 2637
    functionDepth: 11
    functionLinenumber: 2637
    functionLinenumberEnd: 2684
    functionName: xmlSecTransformConcatKdfParamsReadsBitsAttr
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecBufferHexRead
    - xmlSecInternalError
    - xmlFree
    - xmlSecInvalidDataError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformConcatKdfParamsReadsBitsAttr(xmlSecBufferPtr buf,
      xmlNodePtr node, const xmlChar* attrName)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2691,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2692,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:2694,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2696,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2697,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:2700,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2702,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2703,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:2706,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2708,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2709,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:2712,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2714,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2715,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:2718,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2720,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2721,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformConcatKdfParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2727
      start: 2687
    functionDepth: 1
    functionLinenumber: 2687
    functionLinenumberEnd: 2727
    functionName: xmlSecTransformConcatKdfParamsInitialize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - memset
    - xmlSecTransformConcatKdfParamsFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformConcatKdfParamsInitialize(xmlSecTransformConcatKdfParamsPtr
      params)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2731,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:2734,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:2736,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:2737,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:2738,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:2739,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:2740,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformConcatKdfParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2743
      start: 2729
    functionDepth: 1
    functionLinenumber: 2729
    functionLinenumberEnd: 2743
    functionName: xmlSecTransformConcatKdfParamsFinalize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformConcatKdfParamsFinalize(xmlSecTransformConcatKdfParamsPtr
      params)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2751,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:2754,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:2755,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:2756,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:2759,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/transforms.c:2761,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:2764,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:2768,1
    - Dst: xmlSecTransformConcatKdfParamsReadsBitsAttr
      Src: /src/xmlsec/src/transforms.c:2773,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2775,1
    - Dst: xmlSecTransformConcatKdfParamsReadsBitsAttr
      Src: /src/xmlsec/src/transforms.c:2778,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2780,1
    - Dst: xmlSecTransformConcatKdfParamsReadsBitsAttr
      Src: /src/xmlsec/src/transforms.c:2783,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2785,1
    - Dst: xmlSecTransformConcatKdfParamsReadsBitsAttr
      Src: /src/xmlsec/src/transforms.c:2788,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2790,1
    - Dst: xmlSecTransformConcatKdfParamsReadsBitsAttr
      Src: /src/xmlsec/src/transforms.c:2793,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2795,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 2
    argNames:
    - params
    - node
    argTypes:
    - xmlSecTransformConcatKdfParamsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2801
      start: 2745
    functionDepth: 12
    functionLinenumber: 2745
    functionLinenumberEnd: 2801
    functionName: xmlSecTransformConcatKdfParamsRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecInvalidNodeAttributeError
    - xmlSecTransformConcatKdfParamsReadsBitsAttr
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformConcatKdfParamsRead(xmlSecTransformConcatKdfParamsPtr
      params, xmlNodePtr node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2813,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2814,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2816,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2817,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2818,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2819,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2820,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/transforms.c:2822,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:2824,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/transforms.c:2829,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2830,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2831,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2833,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:2836,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2837,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2838,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2840,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:2843,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2844,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2845,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2847,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:2850,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2851,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2852,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2854,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:2857,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:2858,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:2859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2861,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - params
    - bufFixedInfo
    argTypes:
    - xmlSecTransformConcatKdfParamsPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2867
      start: 2808
    functionDepth: 1
    functionLinenumber: 2808
    functionLinenumberEnd: 2867
    functionName: xmlSecTransformConcatKdfParamsGetFixedInfo
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferAppend
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformConcatKdfParamsGetFixedInfo(xmlSecTransformConcatKdfParamsPtr
      params, xmlSecBufferPtr bufFixedInfo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2876,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2878,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/transforms.c:2880,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2882,1
    - Dst: xmlSecTransformKeyAgreementParamsFinalize
      Src: /src/xmlsec/src/transforms.c:2883,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformKeyAgreementParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2889
      start: 2872
    functionDepth: 1
    functionLinenumber: 2872
    functionLinenumberEnd: 2889
    functionName: xmlSecTransformKeyAgreementParamsInitialize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyInfoCtxInitialize
    - xmlSecTransformKeyAgreementParamsFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformKeyAgreementParamsInitialize(xmlSecTransformKeyAgreementParamsPtr
      params)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:2893,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/transforms.c:2896,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:2899,1
    - Dst: xmlSecTransformDestroy
      Src: /src/xmlsec/src/transforms.c:2902,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/transforms.c:2905,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/transforms.c:2908,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:2912,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformKeyAgreementParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2913
      start: 2891
    functionDepth: 5
    functionLinenumber: 2891
    functionLinenumberEnd: 2913
    functionName: xmlSecTransformKeyAgreementParamsFinalize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformDestroy
    - xmlSecAssert
    - xmlSecKeyInfoCtxFinalize
    - xmlSecKeyDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformKeyAgreementParamsFinalize(xmlSecTransformKeyAgreementParamsPtr
      params)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2925,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2926,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2927,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2928,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2931,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2932,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/transforms.c:2935,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2937,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2937,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/transforms.c:2940,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2942,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2942,1
    - Dst: xmlSecTransformSetKeyReq
      Src: /src/xmlsec/src/transforms.c:2947,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2949,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2949,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/transforms.c:2956,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2956,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/transforms.c:2959,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/transforms.c:2960,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2960,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/transforms.c:2970,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/transforms.c:2972,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 4
    argNames:
    - keyType
    - node
    - kaTransform
    - transformCtx
    argTypes:
    - xmlSecKeyDataType
    - xmlNodePtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2974
      start: 2915
    functionDepth: 2
    functionLinenumber: 2915
    functionLinenumberEnd: 2974
    functionName: xmlSecTransformKeyAgreementReadKey
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyInfoCtxInitialize
    - xmlSecTransformSetKeyReq
    - xmlSecNodeGetName
    - xmlSecKeyInfoCtxFinalize
    - xmlSecKeyMatch
    - xmlSecKeyDestroy
    - xmlSecOtherError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecTransformKeyAgreementReadKey(xmlSecKeyDataType
      keyType, xmlNodePtr node,\n    xmlSecTransformPtr kaTransform, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2985,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2986,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2987,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2988,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:2989,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/transforms.c:2993,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:2995,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:2995,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/transforms.c:2998,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3000,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3000,1
    - Dst: xmlSecKeyInfoNodeWrite
      Src: /src/xmlsec/src/transforms.c:3007,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3009,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/transforms.c:3017,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 4
    argNames:
    - key
    - node
    - kaTransform
    - transformCtx
    argTypes:
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 2977
    functionDepth: 1
    functionLinenumber: 2977
    functionLinenumberEnd: 3019
    functionName: xmlSecTransformKeyAgreementWriteKey
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyInfoCtxInitialize
    - xmlSecNodeGetName
    - xmlSecKeyInfoNodeWrite
    - xmlSecKeyInfoCtxFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKeyAgreementWriteKey(xmlSecKeyPtr key, xmlNodePtr
      node,\n    xmlSecTransformPtr kaTransform, xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3031,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3032,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3033,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3034,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3035,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3036,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3037,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3038,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3039,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3052,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3053,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3054,1
    - Dst: xmlSecTransformNodeRead
      Src: /src/xmlsec/src/transforms.c:3057,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3059,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3059,1
    - Dst: xmlSecTransformSetKeyReq
      Src: /src/xmlsec/src/transforms.c:3062,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3064,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3064,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3069,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3070,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3071,1
    - Dst: xmlSecTransformKeyAgreementReadKey
      Src: /src/xmlsec/src/transforms.c:3074,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3076,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3076,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3081,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3082,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3083,1
    - Dst: xmlSecTransformKeyAgreementReadKey
      Src: /src/xmlsec/src/transforms.c:3086,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3088,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3088,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3093,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3095,1
    - Dst: xmlSecTransformCreate
      Src: /src/xmlsec/src/transforms.c:3100,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/transforms.c:3101,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3102,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3102,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 4
    argNames:
    - params
    - node
    - kaTransform
    - transformCtx
    argTypes:
    - xmlSecTransformKeyAgreementParamsPtr
    - xmlNodePtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3113
      start: 3022
    functionDepth: 12
    functionLinenumber: 3022
    functionLinenumberEnd: 3113
    functionName: xmlSecTransformKeyAgreementParamsRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecTransformCreate
    - xmlSecTransformSetKeyReq
    - xmlSecTransformNodeRead
    - xmlSecTransformKeyAgreementReadKey
    - xmlSecTransformIsValid
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKeyAgreementParamsRead(xmlSecTransformKeyAgreementParamsPtr
      params, xmlNodePtr node,\n    xmlSecTransformPtr kaTransform, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3123,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3124,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3125,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3126,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3127,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3130,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3131,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3132,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3138,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3139,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3140,1
    - Dst: xmlSecTransformKeyAgreementWriteKey
      Src: /src/xmlsec/src/transforms.c:3144,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3146,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3146,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3152,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3153,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3154,1
    - Dst: xmlSecTransformKeyAgreementWriteKey
      Src: /src/xmlsec/src/transforms.c:3158,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3160,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/transforms.c:3160,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3166,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3168,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 4
    argNames:
    - params
    - node
    - kaTransform
    - transformCtx
    argTypes:
    - xmlSecTransformKeyAgreementParamsPtr
    - xmlNodePtr
    - xmlSecTransformPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3177
      start: 3115
    functionDepth: 2
    functionLinenumber: 3115
    functionLinenumberEnd: 3177
    functionName: xmlSecTransformKeyAgreementParamsWrite
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecTransformKeyAgreementWriteKey
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKeyAgreementParamsWrite(xmlSecTransformKeyAgreementParamsPtr
      params, xmlNodePtr node,\n    xmlSecTransformPtr kaTransform, xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3191
    functionDepth: 0
    functionLinenumber: 3191
    functionLinenumberEnd: 3194
    functionName: xmlSecTransformHmacGetMinOutputBitsSize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecTransformHmacGetMinOutputBitsSize(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3205
      start: 3203
    functionDepth: 0
    functionLinenumber: 3203
    functionLinenumberEnd: 3205
    functionName: xmlSecTransformHmacSetMinOutputBitsSize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformHmacSetMinOutputBitsSize(xmlSecSize val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3231,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3232,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3234,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3235,1
    - Dst: xmlSecGetNodeContentAsSize
      Src: /src/xmlsec/src/transforms.c:3239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3241,1
    - Dst: xmlSecTransformHmacGetMinOutputBitsSize
      Src: /src/xmlsec/src/transforms.c:3249,1
    - Dst: xmlSecInvalidNodeContentError3
      Src: /src/xmlsec/src/transforms.c:3251,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3257,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3262,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - node
    - defaultSize
    - res
    argTypes:
    - xmlNodePtr
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3227
    functionDepth: 1
    functionLinenumber: 3227
    functionLinenumberEnd: 3266
    functionName: xmlSecTransformHmacReadOutputBitsSize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGetNodeContentAsSize
    - xmlSecTransformHmacGetMinOutputBitsSize
    - xmlSecInvalidNodeContentError3
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformHmacReadOutputBitsSize(xmlNodePtr node, xmlSecSize
      defaultSize, xmlSecSize* res)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3284,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/transforms.c:3286,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/transforms.c:3288,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/transforms.c:3294,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3296,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 4
    argNames:
    - hmac
    - hmacSizeInBits
    - hmacMaxSizeInBytes
    - out
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3303
      start: 3270
    functionDepth: 1
    functionLinenumber: 3270
    functionLinenumberEnd: 3303
    functionName: xmlSecTransformHmacWriteOutput
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformHmacWriteOutput(const xmlSecByte * hmac, xmlSecSize
      hmacSizeInBits, xmlSecSize hmacMaxSizeInBytes, xmlSecBufferPtr out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3319,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3320,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/transforms.c:3323,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/transforms.c:3330,1
    - Dst: memcmp
      Src: /src/xmlsec/src/transforms.c:3335,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/transforms.c:3336,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 5
    argNames:
    - data
    - dataSize
    - hmac
    - hmacSizeInBits
    - hmacMaxSizeInBytes
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3342
      start: 3306
    functionDepth: 1
    functionLinenumber: 3306
    functionLinenumberEnd: 3342
    functionName: xmlSecTransformHmacVerify
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOtherError
    - memcmp
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformHmacVerify(const xmlSecByte* data, xmlSecSize dataSize,\n
      \   const xmlSecByte * hmac, xmlSecSize hmacSizeInBits, xmlSecSize hmacMaxSizeInBytes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3355,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:3356,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:3358,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3360,1
    - Dst: xmlSecTransformPbkdf2ParamsFinalize
      Src: /src/xmlsec/src/transforms.c:3361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformPbkdf2ParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3367
      start: 3351
    functionDepth: 1
    functionLinenumber: 3351
    functionLinenumberEnd: 3367
    functionName: xmlSecTransformPbkdf2ParamsInitialize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecTransformPbkdf2ParamsFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformPbkdf2ParamsInitialize(xmlSecTransformPbkdf2ParamsPtr
      params)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:3371,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:3374,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:3376,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:3378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecTransformPbkdf2ParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3369
    functionDepth: 1
    functionLinenumber: 3369
    functionLinenumberEnd: 3379
    functionName: xmlSecTransformPbkdf2ParamsFinalize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformPbkdf2ParamsFinalize(xmlSecTransformPbkdf2ParamsPtr
      params)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3425,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3428,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3429,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3430,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/transforms.c:3433,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:3434,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3435,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3440,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3442,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - params
    - node
    argTypes:
    - xmlSecTransformPbkdf2ParamsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3448
      start: 3419
    functionDepth: 1
    functionLinenumber: 3419
    functionLinenumberEnd: 3448
    functionName: xmlSecTransformPbkdf2ParamsReadSalt
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecBufferGetSize
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformPbkdf2ParamsReadSalt(xmlSecTransformPbkdf2ParamsPtr
      params, xmlNodePtr node)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3455,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3457,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3460,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3461,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3462,1
    - Dst: xmlSecTransformPbkdf2ParamsReadSalt
      Src: /src/xmlsec/src/transforms.c:3465,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3467,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3472,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3473,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3474,1
    - Dst: xmlSecGetNodeContentAsSize
      Src: /src/xmlsec/src/transforms.c:3477,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3479,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3484,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3485,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3486,1
    - Dst: xmlSecGetNodeContentAsSize
      Src: /src/xmlsec/src/transforms.c:3489,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3491,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3496,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3497,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/transforms.c:3498,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:3501,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/transforms.c:3503,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3509,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3511,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 2
    argNames:
    - params
    - node
    argTypes:
    - xmlSecTransformPbkdf2ParamsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3517
      start: 3450
    functionDepth: 11
    functionLinenumber: 3450
    functionLinenumberEnd: 3517
    functionName: xmlSecTransformPbkdf2ParamsRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGetNodeContentAsSize
    - xmlSecTransformPbkdf2ParamsReadSalt
    - xmlSecInvalidNodeError
    - xmlSecInvalidNodeAttributeError
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformPbkdf2ParamsRead(xmlSecTransformPbkdf2ParamsPtr
      params, xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3528,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:3530,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/transforms.c:3532,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - oaepParams
    argTypes:
    - xmlSecTransformRsaOaepParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3539
      start: 3524
    functionDepth: 1
    functionLinenumber: 3524
    functionLinenumberEnd: 3539
    functionName: xmlSecTransformRsaOaepParamsInitialize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecBufferInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRsaOaepParamsInitialize(xmlSecTransformRsaOaepParamsPtr
      oaepParams)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/transforms.c:3543,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/transforms.c:3545,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:3547,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/transforms.c:3550,1
    - Dst: memset
      Src: /src/xmlsec/src/transforms.c:3552,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - oaepParams
    argTypes:
    - xmlSecTransformRsaOaepParamsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3553
      start: 3541
    functionDepth: 1
    functionLinenumber: 3541
    functionLinenumberEnd: 3553
    functionName: xmlSecTransformRsaOaepParamsFinalize
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformRsaOaepParamsFinalize(xmlSecTransformRsaOaepParamsPtr
      oaepParams)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3569,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/transforms.c:3569,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/transforms.c:3572,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3574,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3576,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/transforms.c:3577,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/transforms.c:3579,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3582,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:3584,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/transforms.c:3586,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/transforms.c:3589,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/transforms.c:3591,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/transforms.c:3593,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/transforms.c:3598,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/transforms.c:3603,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - oaepParams
    - node
    argTypes:
    - xmlSecTransformRsaOaepParamsPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3608
      start: 3563
    functionDepth: 11
    functionLinenumber: 3563
    functionLinenumberEnd: 3608
    functionName: xmlSecTransformRsaOaepParamsRead
    functionSourceFile: /src/xmlsec/src/transforms.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetSize
    - xmlSecInvalidNodeAttributeError
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRsaOaepParamsRead(xmlSecTransformRsaOaepParamsPtr
      oaepParams, xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:56,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:56,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:57,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: xmlSecCryptoInit
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoInit(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:73,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:73,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:74,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:78,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: xmlSecCryptoShutdown
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoShutdown(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:91,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:91,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:92,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:96,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionName: xmlSecCryptoKeysMngrInit
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:115,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:115,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:116,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 121
    functionName: xmlSecKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataAesGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:134,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:134,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:135,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 140
    functionName: xmlSecKeyDataConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataConcatKdfGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:153,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:153,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:154,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 159
    functionName: xmlSecKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataDesGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:172,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:172,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:173,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 178
    functionName: xmlSecKeyDataDhGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataDhGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:191,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:191,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:192,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: xmlSecKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataDsaGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:210,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:210,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:211,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 216
    functionName: xmlSecKeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataEcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:229,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:229,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:230,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 235
    functionName: xmlSecKeyDataGost2001GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataGost2001GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:248,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:248,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:249,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 254
    functionName: xmlSecKeyDataGostR3410_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataGostR3410_2012_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:267,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:267,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:268,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionName: xmlSecKeyDataGostR3410_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataGostR3410_2012_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:286,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:286,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:287,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 292
    functionName: xmlSecKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataHmacGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:305,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:305,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:306,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 311
    functionName: xmlSecKeyDataPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataPbkdf2GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:323,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:323,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:324,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 329
    functionName: xmlSecKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataRsaGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:342,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:342,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:343,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 348
    functionName: xmlSecKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataX509GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:361,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:361,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:362,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 367
    functionName: xmlSecKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataRawX509CertGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:381,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:381,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:382,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 387
    functionName: xmlSecKeyDataDEREncodedKeyValueGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataDEREncodedKeyValueGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:404,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:404,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:405,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 410
    functionName: xmlSecX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecX509StoreGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:428,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:428,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:429,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:433,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 434
    functionName: xmlSecTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes128CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:447,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:447,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:448,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:452,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 453
    functionName: xmlSecTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes192CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:466,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:466,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:467,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:471,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 472
    functionName: xmlSecTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes256CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:486,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:486,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:487,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:491,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 483
    functionDepth: 1
    functionLinenumber: 483
    functionLinenumberEnd: 492
    functionName: xmlSecTransformAes128GcmGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes128GcmGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:506,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:506,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:507,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 512
    functionName: xmlSecTransformAes192GcmGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes192GcmGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:526,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:526,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:527,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 532
    functionName: xmlSecTransformAes256GcmGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformAes256GcmGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:546,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:546,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:547,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:551,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 552
    functionName: xmlSecTransformConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformConcatKdfGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:565,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:565,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:566,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:570,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 571
    functionName: xmlSecTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformKWAes128GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:584,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:584,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:585,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:589,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 582
    functionDepth: 1
    functionLinenumber: 582
    functionLinenumberEnd: 590
    functionName: xmlSecTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformKWAes192GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:603,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:603,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:604,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:608,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 601
    functionDepth: 1
    functionLinenumber: 601
    functionLinenumberEnd: 609
    functionName: xmlSecTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformKWAes256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:622,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:622,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:623,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 628
    functionName: xmlSecTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformDes3CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:641,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:641,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:642,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:646,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 639
    functionDepth: 1
    functionLinenumber: 639
    functionLinenumberEnd: 647
    functionName: xmlSecTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformKWDes3GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:661,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:661,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:662,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 658
    functionDepth: 1
    functionLinenumber: 658
    functionLinenumberEnd: 667
    functionName: xmlSecTransformDhEsGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformDhEsGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:680,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:680,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:681,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:685,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 686
    functionName: xmlSecTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformDsaSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:699,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:699,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:700,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:704,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 697
    functionDepth: 1
    functionLinenumber: 697
    functionLinenumberEnd: 705
    functionName: xmlSecTransformDsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformDsaSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:719,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:719,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:720,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 725
    functionName: xmlSecTransformEcdhGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdhGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:738,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:738,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:739,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 736
    functionDepth: 1
    functionLinenumber: 736
    functionLinenumberEnd: 744
    functionName: xmlSecTransformEcdsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaRipemd160GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:757,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:757,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:758,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:762,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 755
    functionDepth: 1
    functionLinenumber: 755
    functionLinenumberEnd: 763
    functionName: xmlSecTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:776,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:776,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:777,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:781,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 782
    functionName: xmlSecTransformEcdsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:795,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:795,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:796,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:800,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 793
    functionDepth: 1
    functionLinenumber: 793
    functionLinenumberEnd: 801
    functionName: xmlSecTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:814,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:814,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:815,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:819,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 820
    functionName: xmlSecTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:833,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:833,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:834,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 831
    functionDepth: 1
    functionLinenumber: 831
    functionLinenumberEnd: 839
    functionName: xmlSecTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:853,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:853,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:854,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 851
    functionDepth: 1
    functionLinenumber: 851
    functionLinenumberEnd: 859
    functionName: xmlSecTransformEcdsaSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha3_224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:872,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:872,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:873,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 870
    functionDepth: 1
    functionLinenumber: 870
    functionLinenumberEnd: 878
    functionName: xmlSecTransformEcdsaSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha3_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:891,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:891,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:892,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:896,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 889
    functionDepth: 1
    functionLinenumber: 889
    functionLinenumberEnd: 897
    functionName: xmlSecTransformEcdsaSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha3_384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:910,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:910,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:911,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:915,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 908
    functionDepth: 1
    functionLinenumber: 908
    functionLinenumberEnd: 916
    functionName: xmlSecTransformEcdsaSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEcdsaSha3_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:929,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:929,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:930,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:934,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 927
    functionDepth: 1
    functionLinenumber: 927
    functionLinenumberEnd: 935
    functionName: xmlSecTransformGost2001GostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGost2001GostR3411_94GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:948,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:948,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:949,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:953,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 946
    functionDepth: 1
    functionLinenumber: 946
    functionLinenumberEnd: 954
    functionName: xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:967,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:967,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:968,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:972,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 965
    functionDepth: 1
    functionLinenumber: 965
    functionLinenumberEnd: 973
    functionName: xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:986,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:986,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:987,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:991,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 984
    functionDepth: 1
    functionLinenumber: 984
    functionLinenumberEnd: 992
    functionName: xmlSecTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacMd5GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1005,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1005,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1006,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1010,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1003
    functionDepth: 1
    functionLinenumber: 1003
    functionLinenumberEnd: 1011
    functionName: xmlSecTransformHmacRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacRipemd160GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1024,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1024,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1025,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1029,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1022
    functionDepth: 1
    functionLinenumber: 1022
    functionLinenumberEnd: 1030
    functionName: xmlSecTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1043,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1043,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1044,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1048,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 1041
    functionDepth: 1
    functionLinenumber: 1041
    functionLinenumberEnd: 1049
    functionName: xmlSecTransformHmacSha224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacSha224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1062,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1062,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1063,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1060
    functionDepth: 1
    functionLinenumber: 1060
    functionLinenumberEnd: 1068
    functionName: xmlSecTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1081,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1081,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1082,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1086,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1079
    functionDepth: 1
    functionLinenumber: 1079
    functionLinenumberEnd: 1087
    functionName: xmlSecTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacSha384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1100,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1100,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1101,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1098
    functionDepth: 1
    functionLinenumber: 1098
    functionLinenumberEnd: 1106
    functionName: xmlSecTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformHmacSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1119,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1119,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1120,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1117
    functionDepth: 1
    functionLinenumber: 1117
    functionLinenumberEnd: 1125
    functionName: xmlSecTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformMd5GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1139,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1139,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1140,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1136
    functionDepth: 1
    functionLinenumber: 1136
    functionLinenumberEnd: 1145
    functionName: xmlSecTransformPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformPbkdf2GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1159,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1159,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1160,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1164,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1157
    functionDepth: 1
    functionLinenumber: 1157
    functionLinenumberEnd: 1165
    functionName: xmlSecTransformRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRipemd160GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1178,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1178,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1179,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1176
    functionDepth: 1
    functionLinenumber: 1176
    functionLinenumberEnd: 1184
    functionName: xmlSecTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaMd5GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1197,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1197,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1198,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1203
      start: 1195
    functionDepth: 1
    functionLinenumber: 1195
    functionLinenumberEnd: 1203
    functionName: xmlSecTransformRsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaRipemd160GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1216,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1216,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1217,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1214
    functionDepth: 1
    functionLinenumber: 1214
    functionLinenumberEnd: 1222
    functionName: xmlSecTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1235,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1235,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1236,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1240,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1241
    functionName: xmlSecTransformRsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaSha224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1254,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1254,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1255,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1259,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1252
    functionDepth: 1
    functionLinenumber: 1252
    functionLinenumberEnd: 1260
    functionName: xmlSecTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1273,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1273,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1274,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1278,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1279
    functionName: xmlSecTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaSha384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1292,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1292,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1293,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1298
      start: 1290
    functionDepth: 1
    functionLinenumber: 1290
    functionLinenumberEnd: 1298
    functionName: xmlSecTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1312,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1312,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1313,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1318
      start: 1310
    functionDepth: 1
    functionLinenumber: 1310
    functionLinenumberEnd: 1318
    functionName: xmlSecTransformRsaPssSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1331,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1331,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1332,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1336,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1329
    functionDepth: 1
    functionLinenumber: 1329
    functionLinenumberEnd: 1337
    functionName: xmlSecTransformRsaPssSha224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1350,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1350,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1351,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1348
    functionDepth: 1
    functionLinenumber: 1348
    functionLinenumberEnd: 1356
    functionName: xmlSecTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1369,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1369,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1370,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1374,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1367
    functionDepth: 1
    functionLinenumber: 1367
    functionLinenumberEnd: 1375
    functionName: xmlSecTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1388,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1388,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1389,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1386
    functionDepth: 1
    functionLinenumber: 1386
    functionLinenumberEnd: 1394
    functionName: xmlSecTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1408,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1408,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1409,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1406
    functionDepth: 1
    functionLinenumber: 1406
    functionLinenumberEnd: 1414
    functionName: xmlSecTransformRsaPssSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha3_224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1427,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1427,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1428,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1432,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1425
    functionDepth: 1
    functionLinenumber: 1425
    functionLinenumberEnd: 1433
    functionName: xmlSecTransformRsaPssSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha3_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1446,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1446,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1447,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1451,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1444
    functionDepth: 1
    functionLinenumber: 1444
    functionLinenumberEnd: 1452
    functionName: xmlSecTransformRsaPssSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha3_384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1465,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1465,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1466,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1470,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1463
    functionDepth: 1
    functionLinenumber: 1463
    functionLinenumberEnd: 1471
    functionName: xmlSecTransformRsaPssSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPssSha3_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1485,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1485,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1486,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1483
    functionDepth: 1
    functionLinenumber: 1483
    functionLinenumberEnd: 1491
    functionName: xmlSecTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaPkcs1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1504,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1504,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1505,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1509,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1510
      start: 1502
    functionDepth: 1
    functionLinenumber: 1502
    functionLinenumberEnd: 1510
    functionName: xmlSecTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaOaepGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1523,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1523,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1524,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1528,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1529
      start: 1521
    functionDepth: 1
    functionLinenumber: 1521
    functionLinenumberEnd: 1529
    functionName: xmlSecTransformRsaOaepEnc11GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRsaOaepEnc11GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1543,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1543,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1544,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1548,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1549
      start: 1541
    functionDepth: 1
    functionLinenumber: 1541
    functionLinenumberEnd: 1549
    functionName: xmlSecTransformGostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGostR3411_94GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1563,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1563,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1564,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1568,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1561
    functionDepth: 1
    functionLinenumber: 1561
    functionLinenumberEnd: 1569
    functionName: xmlSecTransformGostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGostR3411_2012_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1582,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1582,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1583,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1587,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1580
    functionDepth: 1
    functionLinenumber: 1580
    functionLinenumberEnd: 1588
    functionName: xmlSecTransformGostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformGostR3411_2012_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1600,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1600,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1601,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1605,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1598
    functionDepth: 1
    functionLinenumber: 1598
    functionLinenumberEnd: 1606
    functionName: xmlSecTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1619,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1619,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1620,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1624,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1625
      start: 1617
    functionDepth: 1
    functionLinenumber: 1617
    functionLinenumberEnd: 1625
    functionName: xmlSecTransformSha224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1638,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1638,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1639,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1643,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1636
    functionDepth: 1
    functionLinenumber: 1636
    functionLinenumberEnd: 1644
    functionName: xmlSecTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1657,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1657,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1658,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1663
      start: 1655
    functionDepth: 1
    functionLinenumber: 1655
    functionLinenumberEnd: 1663
    functionName: xmlSecTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1676,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1676,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1677,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1681,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1674
    functionDepth: 1
    functionLinenumber: 1674
    functionLinenumberEnd: 1682
    functionName: xmlSecTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1696,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1696,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1697,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1701,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1694
    functionDepth: 1
    functionLinenumber: 1694
    functionLinenumberEnd: 1702
    functionName: xmlSecTransformSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha3_224GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1715,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1715,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1716,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1720,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1721
      start: 1713
    functionDepth: 1
    functionLinenumber: 1713
    functionLinenumberEnd: 1721
    functionName: xmlSecTransformSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha3_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1734,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1734,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1735,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1739,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1732
    functionDepth: 1
    functionLinenumber: 1732
    functionLinenumberEnd: 1740
    functionName: xmlSecTransformSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha3_384GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1753,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1753,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1754,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1759
      start: 1751
    functionDepth: 1
    functionLinenumber: 1751
    functionLinenumberEnd: 1759
    functionName: xmlSecTransformSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformSha3_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1779,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1779,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1780,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1784,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1777
    functionDepth: 1
    functionLinenumber: 1777
    functionLinenumberEnd: 1785
    functionName: xmlSecCryptoAppInit
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppInit(const char* config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1799,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1799,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1800,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1804,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1805
      start: 1797
    functionDepth: 1
    functionLinenumber: 1797
    functionLinenumberEnd: 1805
    functionName: xmlSecCryptoAppShutdown
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppShutdown(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1818,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1818,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1819,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1823,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1824
      start: 1816
    functionDepth: 1
    functionLinenumber: 1816
    functionLinenumberEnd: 1824
    functionName: xmlSecCryptoAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1838,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1838,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1839,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1836
    functionDepth: 1
    functionLinenumber: 1836
    functionLinenumberEnd: 1844
    functionName: xmlSecCryptoAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1865,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1865,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1866,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1870,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1863
    functionDepth: 1
    functionLinenumber: 1863
    functionLinenumberEnd: 1871
    functionName: xmlSecCryptoAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1885,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1885,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1886,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1890,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1883
    functionDepth: 1
    functionLinenumber: 1883
    functionLinenumberEnd: 1891
    functionName: xmlSecCryptoAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1906,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1906,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1907,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1911,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1903
    functionDepth: 1
    functionLinenumber: 1903
    functionLinenumberEnd: 1912
    functionName: xmlSecCryptoAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: "int xmlSecCryptoAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename,\n                                   xmlSecKeyDataType type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1930,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1930,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1931,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1936
      start: 1927
    functionDepth: 1
    functionLinenumber: 1927
    functionLinenumberEnd: 1936
    functionName: xmlSecCryptoAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: "int xmlSecCryptoAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const
      char *filename,\n                                xmlSecKeyDataFormat format,
      xmlSecKeyDataType type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1955,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1955,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1956,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1960,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1961
      start: 1951
    functionDepth: 1
    functionLinenumber: 1951
    functionLinenumberEnd: 1961
    functionName: xmlSecCryptoAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: "int xmlSecCryptoAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,
      const xmlSecByte* data,\n                                    xmlSecSize dataSize,
      xmlSecKeyDataFormat format,\n                                    xmlSecKeyDataType
      type)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1975,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1975,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1976,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1980,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1973
    functionDepth: 1
    functionLinenumber: 1973
    functionLinenumberEnd: 1981
    functionName: xmlSecCryptoAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1998,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:1998,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:1999,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2003,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1994
    functionDepth: 1
    functionLinenumber: 1994
    functionLinenumberEnd: 2004
    functionName: xmlSecCryptoAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: "int xmlSecCryptoAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data, xmlSecSize dataSize,\n    xmlSecKeyDataFormat format\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2022,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2022,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2023,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2027,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 6
    argNames:
    - filename
    - type
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2019
    functionDepth: 1
    functionLinenumber: 2019
    functionLinenumberEnd: 2028
    functionName: xmlSecCryptoAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecCryptoAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type, xmlSecKeyDataFormat format,\n                       const char *pwd, void*
      pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2046,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2046,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2047,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2051,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2043
    functionDepth: 1
    functionLinenumber: 2043
    functionLinenumberEnd: 2052
    functionName: xmlSecCryptoAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecCryptoAppKeyLoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize, xmlSecKeyDataFormat format,\n                       const
      char *pwd, void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2070,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2070,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2071,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2075,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2067
    functionDepth: 1
    functionLinenumber: 2067
    functionLinenumberEnd: 2076
    functionName: xmlSecCryptoAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecCryptoAppPkcs12Load(const char* filename, const
      char* pwd, void* pwdCallback,\n                          void* pwdCallbackCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2096,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2096,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2097,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2101,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2102
      start: 2092
    functionDepth: 1
    functionLinenumber: 2092
    functionLinenumberEnd: 2102
    functionName: xmlSecCryptoAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecCryptoAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n                           const char *pwd, void* pwdCallback,\n
      \                          void* pwdCallbackCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2116,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2116,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2117,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2121,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2122
      start: 2114
    functionDepth: 1
    functionLinenumber: 2114
    functionLinenumberEnd: 2122
    functionName: xmlSecCryptoAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
      xmlSecKeyDataFormat format)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2138,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2138,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2139,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2144
      start: 2135
    functionDepth: 1
    functionLinenumber: 2135
    functionLinenumberEnd: 2144
    functionName: xmlSecCryptoAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: int
    signature: "int xmlSecCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize,\n                                xmlSecKeyDataFormat
      format)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2155,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/app.c:2156,1
    - Dst: xmlSecCryptoDLGetFunctions
      Src: /src/xmlsec/src/app.c:2160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2161
      start: 2153
    functionDepth: 1
    functionLinenumber: 2153
    functionLinenumberEnd: 2161
    functionName: xmlSecCryptoAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNotImplementedError2
    - xmlSecCryptoDLGetFunctions
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecCryptoAppGetDefaultPwdCallback(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: XMLSEC_ENUM_CAST
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_ENUM_CAST(val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 21
    argNames:
    - (
    - srcType
    - ','
    - srcVal
    - ','
    - srcFmt
    - ','
    - dstType
    - ','
    - dstVal
    - ','
    - dstFmt
    - ','
    - dstMin
    - ','
    - dstMax
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 43
    functionName: XMLSEC_SAFE_CAST_MIN_MAX_CHECK
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_MIN_MAX_CHECK(srcType, srcVal, srcFmt, dstType, dstVal,
      dstFmt, dstMin, dstMax, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 21
    argNames:
    - (
    - srcType
    - ','
    - srcVal
    - ','
    - srcFmt
    - ','
    - dstType
    - ','
    - dstVal
    - ','
    - dstFmt
    - ','
    - dstMin
    - ','
    - dstMax
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: XMLSEC_SAFE_CAST_MAX_CHECK
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_MAX_CHECK(srcType, srcVal, srcFmt, dstType, dstVal,
      dstFmt, dstMin, dstMax, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 21
    argNames:
    - (
    - srcType
    - ','
    - srcVal
    - ','
    - srcFmt
    - ','
    - dstType
    - ','
    - dstVal
    - ','
    - dstFmt
    - ','
    - dstMin
    - ','
    - dstMax
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionName: XMLSEC_SAFE_CAST_MIN_CHECK
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_MIN_CHECK(srcType, srcVal, srcFmt, dstType, dstVal,
      dstFmt, dstMin, dstMax, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionName: XMLSEC_SAFE_CAST_INT_TO_BYTE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_BYTE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: XMLSEC_SAFE_CAST_UINT_TO_BYTE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_BYTE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_BYTE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: XMLSEC_SAFE_CAST_UINT_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 104
    functionName: XMLSEC_SAFE_CAST_ULONG_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_ULONG_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: XMLSEC_SAFE_CAST_LONG_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_LONG_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 152
    functionName: XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_PTRDIFF_TO_INT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 164
    functionName: XMLSEC_SAFE_CAST_INT_TO_UINT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_UINT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 172
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_UINT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_UINT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 187
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_UINT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_UINT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_UINT
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_UINT(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionName: XMLSEC_SAFE_CAST_UINT_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionName: XMLSEC_SAFE_CAST_UINT_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 240
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_LONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_LONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_ULONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 264
    functionDepth: 0
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionName: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_TO_ULONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 276
    functionName: XMLSEC_SAFE_CAST_INT_TO_ULONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_ULONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionName: XMLSEC_SAFE_CAST_INT_TO_ULONG
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_ULONG(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionName: XMLSEC_SAFE_CAST_INT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 306
    functionName: XMLSEC_SAFE_CAST_INT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_INT_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 316
    functionName: XMLSEC_SAFE_CAST_UINT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionName: XMLSEC_SAFE_CAST_UINT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_UINT_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: XMLSEC_SAFE_CAST_LONG_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_LONG_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 338
    functionName: XMLSEC_SAFE_CAST_LONG_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_LONG_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_ULONG_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 354
    functionName: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_ULONG_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionName: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE(srcVal, dstVal, errorAction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - name
    - ','
    - postfix
    - ','
    - baseType
    - ','
    - ctxType
    - ','
    - checkSizeFunc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 381
    functionName: XMLSEC_CHILD_STRUCT_DECLARE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_CHILD_STRUCT_DECLARE(name, postfix, baseType, ctxType, checkSizeFunc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - postfix
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: XMLSEC_CHILD_STRUCT_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_CHILD_STRUCT_SIZE(name, postfix)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - ctxType
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionName: XMLSEC_TRANSFORM_DECLARE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_TRANSFORM_DECLARE(name, ctxType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 393
    functionName: XMLSEC_TRANSFORM_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_TRANSFORM_SIZE(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - ctxType
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 399
    functionDepth: 0
    functionLinenumber: 399
    functionLinenumberEnd: 401
    functionName: XMLSEC_KEY_DATA_DECLARE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_DATA_DECLARE(name, ctxType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionName: XMLSEC_KEY_DATA_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_DATA_SIZE(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - ctxType
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 411
    functionName: XMLSEC_KEY_DATA_STORE_DECLARE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_DATA_STORE_DECLARE(name, ctxType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 413
    functionName: XMLSEC_KEY_DATA_STORE_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_DATA_STORE_SIZE(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - name
    - ','
    - ctxType
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: XMLSEC_KEY_STORE_DECLARE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_STORE_DECLARE(name, ctxType)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 423
    functionName: XMLSEC_KEY_STORE_SIZE
    functionSourceFile: /src/xmlsec/src/cast_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_KEY_STORE_SIZE(name)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:64,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:65,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:66,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:67,1
    - Dst: xmlSecInvalidSizeOtherError
      Src: /src/xmlsec/src/x509.c:73,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:93,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/x509.c:100,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:114,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/x509.c:121,1
    - Dst: xmlSecFromHex2
      Src: /src/xmlsec/src/x509.c:123,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:132,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:136,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/x509.c:142,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 7
    argNames:
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - delim
    - ingoreTrailingSpaces
    argTypes:
    - xmlChar**
    - xmlSecSize*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecByte
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 157
    functionName: xmlSecX509EscapedStringRead
    functionSourceFile: /src/xmlsec/src/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecIsHex
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecInternalError2
    - isspace
    - xmlSecFromHex2
    - xmlSecInvalidSizeOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecX509EscapedStringRead(const xmlChar **in, xmlSecSize *inSize,\n
      \                       xmlSecByte *out, xmlSecSize outSize, xmlSecSize *outWritten,\n
      \                       xmlSecByte delim, int ingoreTrailingSpaces\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:199,1
    - Dst: xmlSecX509EscapedStringRead
      Src: /src/xmlsec/src/x509.c:213,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:215,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:222,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:229,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/x509.c:245,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:248,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/x509.c:253,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:254,1
    - Dst: xmlSecFromHex2
      Src: /src/xmlsec/src/x509.c:259,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:267,1
    - Dst: xmlSecX509EscapedStringRead
      Src: /src/xmlsec/src/x509.c:273,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:275,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 71
    argCount: 8
    argNames:
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - outType
    - delim
    - ingoreTrailingSpaces
    argTypes:
    - xmlChar**
    - xmlSecSize*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int*
    - xmlSecByte
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 181
    functionDepth: 2
    functionLinenumber: 181
    functionLinenumberEnd: 283
    functionName: xmlSecX509AttrValueStringRead
    functionSourceFile: /src/xmlsec/src/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecIsHex
    - xmlSecAssert2
    - xmlSecX509EscapedStringRead
    - isspace
    - xmlSecFromHex2
    linkageType: ''
    returnType: int
    signature: "int xmlSecX509AttrValueStringRead(\n    const xmlChar **in,\n    xmlSecSize
      *inSize,\n    xmlSecByte *out,\n    xmlSecSize outSize,\n    xmlSecSize *outWritten,\n
      \   int *outType,\n    xmlSecByte delim,\n    int ingoreTrailingSpaces\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:305,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/x509.c:307,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:310,1
    - Dst: xmlSecX509EscapedStringRead
      Src: /src/xmlsec/src/x509.c:316,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:321,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:326,1
    - Dst: isspace
      Src: /src/xmlsec/src/x509.c:332,1
    - Dst: xmlSecX509AttrValueStringRead
      Src: /src/xmlsec/src/x509.c:337,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/x509.c:342,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/x509.c:349,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/x509.c:354,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:356,1
    - Dst: callback
      Src: /src/xmlsec/src/x509.c:364,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/x509.c:366,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/x509.c:374,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 62
    argCount: 4
    argNames:
    - str
    - replacements
    - callback
    - context
    argTypes:
    - xmlChar*
    - xmlSecx509NameReplacements*
    - xmlSecX509NameReadCallback
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 296
    functionDepth: 3
    functionLinenumber: 296
    functionLinenumberEnd: 381
    functionName: xmlSecX509NameRead
    functionSourceFile: /src/xmlsec/src/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - callback
    - xmlSecX509EscapedStringRead
    - xmlStrcmp
    - isspace
    - xmlSecX509AttrValueStringRead
    - xmlSecStrlen
    - xmlStrPrintf
    linkageType: ''
    returnType: int
    signature: int xmlSecX509NameRead(const xmlChar *str, xmlSecx509NameReplacements
      *replacements, xmlSecX509NameReadCallback callback, void * context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: xmlSecInternalError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 129
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInternalError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionName: xmlSecInternalError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInternalError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionName: xmlSecInternalError3
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInternalError3(errorFunction, errorObject, msg, param1, param2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - ','
    - param3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionName: xmlSecInternalError4
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInternalError4(errorFunction, errorObject, msg, param1, param2,
      param3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - allocSize
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionName: xmlSecMallocError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMallocError(allocSize, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - str
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: xmlSecStrdupError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecStrdupError(str, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 151
    functionName: xmlSecXmlError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecXmlError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 174
    functionName: xmlSecXmlError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecXmlError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - ctxt
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 196
    functionName: xmlSecXmlParserError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecXmlParserError(errorFunction, ctxt, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - ctxt
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 220
    functionName: xmlSecXmlParserError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecXmlParserError2(errorFunction, ctxt, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - ctxt
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 242
    functionName: xmlSecXsltError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecXsltError(errorFunction, ctxt, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - name
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 262
    functionName: xmlSecIOError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecIOError(errorFunction, name, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 277
    functionName: xmlSecNotImplementedError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNotImplementedError(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 292
    functionName: xmlSecNotImplementedError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 107
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNotImplementedError2(msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 313
    functionName: xmlSecInvalidSizeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 334
    functionName: xmlSecInvalidSizeLessThanError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeLessThanError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 355
    functionName: xmlSecInvalidSizeMoreThanError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeMoreThanError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - divider
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 376
    functionName: xmlSecInvalidSizeNotMultipleOfError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeNotMultipleOfError(name, actual, divider, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - msg
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 393
    functionName: xmlSecInvalidSizeOtherError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeOtherError(msg, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - msg
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 409
    functionName: xmlSecInvalidDataError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidDataError(msg, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 420
    functionDepth: 0
    functionLinenumber: 420
    functionLinenumberEnd: 430
    functionName: xmlSecInvalidStringDataError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidStringDataError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 450
    functionName: xmlSecInvalidIntegerDataError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidIntegerDataError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - name1
    - ','
    - actual1
    - ','
    - name2
    - ','
    - actual2
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 474
    functionName: xmlSecInvalidIntegerDataError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidIntegerDataError2(name1, actual1, name2, actual2, expected,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 494
    functionName: xmlSecInvalidSizeDataError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeDataError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - name1
    - ','
    - actual1
    - ','
    - name2
    - ','
    - actual2
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 518
    functionName: xmlSecInvalidSizeDataError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidSizeDataError2(name1, actual1, name2, actual2, expected,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - msg
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 534
    functionName: xmlSecInvalidTypeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTypeError(msg, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 554
    functionName: xmlSecInvalidStringTypeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidStringTypeError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 574
    functionName: xmlSecInvalidIntegerTypeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidIntegerTypeError(name, actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - name1
    - ','
    - actual1
    - ','
    - name2
    - ','
    - actual2
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 598
    functionName: xmlSecInvalidIntegerTypeError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidIntegerTypeError2(name1, actual1, name2, actual2, expected,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - name
    - ','
    - actual
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 617
    functionName: xmlSecUnsupportedEnumValueError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecUnsupportedEnumValueError(name, actual, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - actualNode
    - ','
    - expectedNodeName
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 639
    functionName: xmlSecInvalidNodeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidNodeError(actualNode, expectedNodeName, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - node
    - ','
    - errorObject
    - ','
    - reason
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 660
    functionName: xmlSecInvalidNodeContentError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidNodeContentError(node, errorObject, reason)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - node
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 682
    functionName: xmlSecInvalidNodeContentError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidNodeContentError2(node, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - node
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 706
    functionName: xmlSecInvalidNodeContentError3
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidNodeContentError3(node, errorObject, msg, param1, param2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - node
    - ','
    - attrName
    - ','
    - errorObject
    - ','
    - reason
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 717
    functionDepth: 0
    functionLinenumber: 717
    functionLinenumberEnd: 730
    functionName: xmlSecInvalidNodeAttributeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidNodeAttributeError(node, attrName, errorObject, reason)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - parent
    - ','
    - nodeName
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 739
    functionDepth: 0
    functionLinenumber: 739
    functionLinenumberEnd: 751
    functionName: xmlSecNodeAlreadyPresentError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNodeAlreadyPresentError(parent, nodeName, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - node
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 759
    functionDepth: 0
    functionLinenumber: 759
    functionLinenumberEnd: 770
    functionName: xmlSecUnexpectedNodeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecUnexpectedNodeError(node, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - startNode
    - ','
    - targetNodeName
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 792
    functionName: xmlSecNodeNotFoundError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNodeNotFoundError(errorFunction, startNode, targetNodeName, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 799
    functionDepth: 0
    functionLinenumber: 799
    functionLinenumberEnd: 808
    functionName: xmlSecInvalidTransfromError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTransfromError(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - transform
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 827
    functionName: xmlSecInvalidTransfromError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTransfromError2(transform, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - transform
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 838
    functionDepth: 0
    functionLinenumber: 838
    functionLinenumberEnd: 847
    functionName: xmlSecInvalidTransfromError3
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTransfromError3(transform, msg, param1, param2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 854
    functionDepth: 0
    functionLinenumber: 854
    functionLinenumberEnd: 864
    functionName: xmlSecInvalidTransfromStatusError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTransfromStatusError(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - transform
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 883
    functionName: xmlSecInvalidTransfromStatusError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidTransfromStatusError2(transform, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - actual
    - ','
    - expected
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 902
    functionName: xmlSecInvalidKeyDataSizeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidKeyDataSizeError(actual, expected, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 917
    functionName: xmlSecInvalidZeroKeyDataSizeError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecInvalidZeroKeyDataSizeError(errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - srcType
    - ','
    - srcVal
    - ','
    - srcFmt
    - ','
    - dstType
    - ','
    - dstMinVal
    - ','
    - dstMaxVal
    - ','
    - dstFmt
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 932
    functionDepth: 0
    functionLinenumber: 932
    functionLinenumberEnd: 942
    functionName: xmlSecImpossibleCastError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecImpossibleCastError(srcType, srcVal, srcFmt, dstType, dstMinVal,
      dstMaxVal, dstFmt, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - code
    - ','
    - errorObject
    - ','
    - details
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 951
    functionDepth: 0
    functionLinenumber: 951
    functionLinenumberEnd: 959
    functionName: xmlSecOtherError
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOtherError(code, errorObject, details)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - code
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 976
    functionName: xmlSecOtherError2
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOtherError2(code, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - code
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 987
    functionDepth: 0
    functionLinenumber: 987
    functionLinenumberEnd: 994
    functionName: xmlSecOtherError3
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOtherError3(code, errorObject, msg, param1, param2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - code
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - ','
    - param3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 1006
    functionDepth: 0
    functionLinenumber: 1006
    functionLinenumberEnd: 1013
    functionName: xmlSecOtherError4
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOtherError4(code, errorObject, msg, param1, param2, param3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - code
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - ','
    - param3
    - ','
    - param4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1026
    functionDepth: 0
    functionLinenumber: 1026
    functionLinenumberEnd: 1033
    functionName: xmlSecOtherError5
    functionSourceFile: /src/xmlsec/src/errors_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOtherError5(code, errorObject, msg, param1, param2, param3, param4)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - defAllocMode
    - defInitialSize
    argTypes:
    - xmlSecAllocMode
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: xmlSecBufferSetDefaultAllocMode
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecBufferSetDefaultAllocMode(xmlSecAllocMode defAllocMode,
      xmlSecSize defInitialSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/buffer.c:71,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/buffer.c:73,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/buffer.c:77,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:79,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/buffer.c:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - size
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 84
    functionName: xmlSecBufferCreate
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlMalloc
    - xmlSecBufferDestroy
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecBufferCreate(xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:94,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/buffer.c:96,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/buffer.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: xmlSecBufferDestroy
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecBufferDestroy(xmlSecBufferPtr buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:112,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 119
    functionName: xmlSecBufferInitialize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 7
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferSetMaxSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferInitialize(xmlSecBufferPtr buf, xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:130,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/buffer.c:132,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/buffer.c:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 139
    functionName: xmlSecBufferFinalize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 7
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: void
    signature: void xmlSecBufferFinalize(xmlSecBufferPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:149,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:152,1
    - Dst: memset
      Src: /src/xmlsec/src/buffer.c:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: xmlSecBufferEmpty
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecBufferEmpty(xmlSecBufferPtr buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: xmlSecBufferIsEmpty
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferIsEmpty(xmlSecBufferPtr buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: xmlSecBufferGetData
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 16
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecByte
    signature: 'xmlSecByte *

      xmlSecBufferGetData(xmlSecBufferPtr buf)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:200,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/buffer.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:204,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:206,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:208,1
    - Dst: memcpy
      Src: /src/xmlsec/src/buffer.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - buf
    - data
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 217
    functionName: xmlSecBufferSetData
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetMaxSize
    - memcpy
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferSetData(xmlSecBufferPtr buf, const xmlSecByte* data,
      xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 232
    functionName: xmlSecBufferGetSize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 18
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecBufferGetSize(xmlSecBufferPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:248,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:250,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 259
    functionName: xmlSecBufferSetSize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetMaxSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferSetSize(xmlSecBufferPtr buf, xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 269
    functionDepth: 1
    functionLinenumber: 269
    functionLinenumberEnd: 274
    functionName: xmlSecBufferGetMaxSize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecBufferGetMaxSize(xmlSecBufferPtr buf)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:291,1
    - Dst: xmlRealloc
      Src: /src/xmlsec/src/buffer.c:311,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/buffer.c:313,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/buffer.c:316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:324,1
    - Dst: memset
      Src: /src/xmlsec/src/buffer.c:325,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 329
    functionName: xmlSecBufferSetMaxSize
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 6
    functionsReached:
    - xmlRealloc
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferSetMaxSize(xmlSecBufferPtr buf, xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - type
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 332
    functionName: SWAP
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SWAP(type, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:342,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/buffer.c:343,1
    - Dst: SWAP
      Src: /src/xmlsec/src/buffer.c:346,1
    - Dst: SWAP
      Src: /src/xmlsec/src/buffer.c:347,1
    - Dst: SWAP
      Src: /src/xmlsec/src/buffer.c:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - buf1
    - buf2
    argTypes:
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 349
    functionName: xmlSecBufferSwap
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - SWAP
    linkageType: ''
    returnType: void
    signature: void xmlSecBufferSwap(xmlSecBufferPtr buf1, xmlSecBufferPtr buf2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:368,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:370,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:372,1
    - Dst: memcpy
      Src: /src/xmlsec/src/buffer.c:377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - buf
    - data
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 361
    functionDepth: 2
    functionLinenumber: 361
    functionLinenumberEnd: 382
    functionName: xmlSecBufferAppend
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    - memcpy
    - xmlSecInternalError2
    - xmlSecBufferSetMaxSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferAppend(xmlSecBufferPtr buf, const xmlSecByte* data,
      xmlSecSize size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:401,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:403,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:405,1
    - Dst: memmove
      Src: /src/xmlsec/src/buffer.c:410,1
    - Dst: memcpy
      Src: /src/xmlsec/src/buffer.c:411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - buf
    - data
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 394
    functionDepth: 2
    functionLinenumber: 394
    functionLinenumberEnd: 416
    functionName: xmlSecBufferPrepend
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetMaxSize
    - memmove
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferPrepend(xmlSecBufferPtr buf, const xmlSecByte* data,
      xmlSecSize size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:432,1
    - Dst: memmove
      Src: /src/xmlsec/src/buffer.c:435,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:440,1
    - Dst: memset
      Src: /src/xmlsec/src/buffer.c:441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 444
    functionName: xmlSecBufferRemoveHead
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 6
    functionsReached:
    - xmlSecAssert2
    - memmove
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferRemoveHead(xmlSecBufferPtr buf, xmlSecSize size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:465,1
    - Dst: memset
      Src: /src/xmlsec/src/buffer.c:466,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 469
    functionName: xmlSecBufferRemoveTail
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferRemoveTail(xmlSecBufferPtr buf, xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:486,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/buffer.c:489,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/buffer.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 504
    functionName: xmlSecBufferReverse
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferGetSize
    - xmlSecBufferGetData
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferReverse(xmlSecBufferPtr buf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:526,1
    - Dst: fopen
      Src: /src/xmlsec/src/buffer.c:529,1
    - Dst: fopen_s
      Src: /src/xmlsec/src/buffer.c:531,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/buffer.c:534,1
    - Dst: feof
      Src: /src/xmlsec/src/buffer.c:538,1
    - Dst: fread
      Src: /src/xmlsec/src/buffer.c:539,1
    - Dst: ferror
      Src: /src/xmlsec/src/buffer.c:540,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/buffer.c:541,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/buffer.c:546,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:548,1
    - Dst: fclose
      Src: /src/xmlsec/src/buffer.c:558,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - buf
    - filename
    argTypes:
    - xmlSecBufferPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 516
    functionDepth: 3
    functionLinenumber: 516
    functionLinenumberEnd: 561
    functionName: xmlSecBufferReadFile
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - ferror
    - xmlSecAssert2
    - xmlSecInternalError2
    - feof
    - fopen
    - fclose
    - fopen_s
    - xmlSecBufferAppend
    - xmlSecIOError
    - fread
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferReadFile(xmlSecBufferPtr buf, const char* filename)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:580,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:581,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/buffer.c:583,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/buffer.c:585,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/buffer.c:590,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/buffer.c:590,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/buffer.c:592,1
    - Dst: xmlSecBase64Decode_ex
      Src: /src/xmlsec/src/buffer.c:596,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/buffer.c:596,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/buffer.c:597,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/buffer.c:599,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/buffer.c:603,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:605,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/buffer.c:615,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 2
    argNames:
    - buf
    - node
    argTypes:
    - xmlSecBufferPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 573
    functionDepth: 3
    functionLinenumber: 573
    functionLinenumberEnd: 618
    functionName: xmlSecBufferBase64NodeContentRead
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - xmlSecStrlen
    - xmlSecBase64Decode_ex
    - xmlSecBufferGetMaxSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferBase64NodeContentRead(xmlSecBufferPtr buf, xmlNodePtr
      node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:634,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:635,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/buffer.c:637,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/buffer.c:637,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/buffer.c:637,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/buffer.c:639,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/buffer.c:643,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/buffer.c:644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - buf
    - node
    - columns
    argTypes:
    - xmlSecBufferPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 630
    functionDepth: 10
    functionLinenumber: 630
    functionLinenumberEnd: 647
    functionName: xmlSecBufferBase64NodeContentWrite
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlNodeAddContent
    - xmlSecBufferGetSize
    - xmlSecBase64Encode
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferBase64NodeContentWrite(xmlSecBufferPtr buf, xmlNodePtr
      node, int columns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:666,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:667,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/buffer.c:670,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/buffer.c:672,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/buffer.c:678,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/buffer.c:683,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:685,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/buffer.c:690,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:691,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/buffer.c:696,1
    - Dst: xmlSecIsHex
      Src: /src/xmlsec/src/buffer.c:696,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/buffer.c:697,1
    - Dst: xmlSecFromHex2
      Src: /src/xmlsec/src/buffer.c:700,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - buf
    - hexStr
    argTypes:
    - xmlSecBufferPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 659
    functionDepth: 2
    functionLinenumber: 659
    functionLinenumberEnd: 705
    functionName: xmlSecBufferHexRead
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 1
    functionsReached:
    - xmlSecIsHex
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidSizeDataError
    - xmlSecBufferSetSize
    - xmlSecStrlen
    - xmlSecFromHex2
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferHexRead(xmlSecBufferPtr buf, const xmlChar* hexStr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlOutputBufferCreateIO
      Src: /src/xmlsec/src/buffer.c:729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 727
    functionDepth: 4
    functionLinenumber: 727
    functionLinenumberEnd: 733
    functionName: xmlSecBufferCreateOutputBuffer
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 2
    functionsReached:
    - xmlOutputBufferCreateIO
    linkageType: ''
    returnType: xmlOutputBufferPtr
    signature: xmlOutputBufferPtr xmlSecBufferCreateOutputBuffer(xmlSecBufferPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:740,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:741,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:742,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/buffer.c:744,1
    - Dst: return
      Src: /src/xmlsec/src/buffer.c:744,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/buffer.c:745,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/buffer.c:747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - buf
    - data
    - len
    argTypes:
    - xmlSecBufferPtr
    - xmlSecByte*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 735
    functionDepth: 3
    functionLinenumber: 735
    functionLinenumberEnd: 752
    functionName: xmlSecBufferIOWrite
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecInternalError2
    - return
    - xmlSecBufferAppend
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferIOWrite(xmlSecBufferPtr buf, const xmlSecByte *data,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/buffer.c:756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 754
    functionDepth: 1
    functionLinenumber: 754
    functionLinenumberEnd: 760
    functionName: xmlSecBufferIOClose
    functionSourceFile: /src/xmlsec/src/buffer.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecBufferIOClose(xmlSecBufferPtr buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
    functionSourceFile: /src/xmlsec/src/transform_helpers.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES(bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:65,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:66,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:67,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:68,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/kw_aes_des.c:70,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:72,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - transform
    - ctx
    - kwDes3Id
    - keyId
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWDes3CtxPtr
    - xmlSecKWDes3Id
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 79
    functionName: xmlSecTransformKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlSecBufferInitialize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWDes3Initialize(xmlSecTransformPtr transform,
      xmlSecTransformKWDes3CtxPtr ctx,\n                    xmlSecKWDes3Id kwDes3Id,
      xmlSecKeyDataId keyId)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/kw_aes_des.c:83,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/kw_aes_des.c:84,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/kw_aes_des.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - transform
    - ctx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWDes3CtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionName: xmlSecTransformKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformKWDes3Finalize(xmlSecTransformPtr transform, xmlSecTransformKWDes3CtxPtr
      ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - transform
    - ctx
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWDes3CtxPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 101
    functionName: xmlSecTransformKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWDes3SetKeyReq(xmlSecTransformPtr transform, xmlSecTransformKWDes3CtxPtr
      ctx,\n                        xmlSecKeyReqPtr keyReq)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:112,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:113,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:114,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/kw_aes_des.c:114,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/kw_aes_des.c:114,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/kw_aes_des.c:116,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/kw_aes_des.c:116,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:117,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:119,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/kw_aes_des.c:121,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:122,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/kw_aes_des.c:126,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:126,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:128,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - transform
    - ctx
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWDes3CtxPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 103
    functionDepth: 3
    functionLinenumber: 103
    functionLinenumberEnd: 134
    functionName: xmlSecTransformKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferSetData
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWDes3SetKey(xmlSecTransformPtr transform, xmlSecTransformKWDes3CtxPtr
      ctx,\n                        xmlSecKeyPtr key)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:144,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:145,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:148,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:152,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:153,1
    - Dst: xmlSecInvalidSizeNotMultipleOfError
      Src: /src/xmlsec/src/kw_aes_des.c:163,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:169,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/kw_aes_des.c:180,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:182,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:183,1
    - Dst: xmlSecKWDes3Encode
      Src: /src/xmlsec/src/kw_aes_des.c:189,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:189,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:190,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/kw_aes_des.c:192,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:192,1
    - Dst: xmlSecKWDes3Decode
      Src: /src/xmlsec/src/kw_aes_des.c:199,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:199,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:200,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/kw_aes_des.c:202,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:202,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/kw_aes_des.c:210,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:212,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:212,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/kw_aes_des.c:217,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:219,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:228,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:228,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/kw_aes_des.c:230,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 3
    argNames:
    - transform
    - ctx
    - last
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWDes3CtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 235
    functionName: xmlSecTransformKWDes3Execute
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecKWDes3Decode
    - xmlSecInvalidTransfromStatusError
    - xmlSecInvalidSizeNotMultipleOfError
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferSetSize
    - xmlSecTransformGetName
    - xmlSecInternalError4
    - xmlSecKWDes3Encode
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformKWDes3Execute(xmlSecTransformPtr transform, xmlSecTransformKWDes3CtxPtr
      ctx, int last)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:299,1
    - Dst: xmlSecKWDes3CheckId
      Src: /src/xmlsec/src/kw_aes_des.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:302,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:305,1
    - Dst: xmlSecKWDes3Id::sha1
      Src: /src/xmlsec/src/kw_aes_des.c:309,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:311,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:317,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:318,1
    - Dst: xmlSecKWDes3Id::generateRandom
      Src: /src/xmlsec/src/kw_aes_des.c:322,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:324,1
    - Dst: xmlSecKWDes3Id::encrypt
      Src: /src/xmlsec/src/kw_aes_des.c:331,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:335,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/kw_aes_des.c:339,1
    - Dst: memmove
      Src: /src/xmlsec/src/kw_aes_des.c:345,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:346,1
    - Dst: xmlSecKWDes3BufferReverse
      Src: /src/xmlsec/src/kw_aes_des.c:350,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:352,1
    - Dst: xmlSecKWDes3Id::encrypt
      Src: /src/xmlsec/src/kw_aes_des.c:358,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:361,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/kw_aes_des.c:365,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 7
    argNames:
    - kwDes3Id
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecKWDes3Id
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 372
    functionName: xmlSecKWDes3Encode
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 1
    functionsReached:
    - xmlSecKWDes3CheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecKWDes3Id::generateRandom
    - xmlSecKWDes3Id::sha1
    - memmove
    - memcpy
    - xmlSecKWDes3Id::encrypt
    - xmlSecKWDes3BufferReverse
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, xmlSecTransformPtr
      transform,\n                  const xmlSecByte *in, xmlSecSize inSize,\n                  xmlSecByte
      *out, xmlSecSize outSize,\n                  xmlSecSize* outWritten)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:387,1
    - Dst: xmlSecKWDes3CheckId
      Src: /src/xmlsec/src/kw_aes_des.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:390,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:393,1
    - Dst: xmlSecBufferCreate
      Src: /src/xmlsec/src/kw_aes_des.c:396,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:398,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:402,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/kw_aes_des.c:403,1
    - Dst: xmlSecKWDes3Id::decrypt
      Src: /src/xmlsec/src/kw_aes_des.c:406,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:409,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/kw_aes_des.c:413,1
    - Dst: xmlSecKWDes3BufferReverse
      Src: /src/xmlsec/src/kw_aes_des.c:420,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:420,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:422,1
    - Dst: xmlSecKWDes3Id::decrypt
      Src: /src/xmlsec/src/kw_aes_des.c:428,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:434,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/kw_aes_des.c:438,1
    - Dst: xmlSecKWDes3Id::sha1
      Src: /src/xmlsec/src/kw_aes_des.c:446,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:448,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:453,1
    - Dst: memcmp
      Src: /src/xmlsec/src/kw_aes_des.c:454,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/kw_aes_des.c:455,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/kw_aes_des.c:465,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 69
    argCount: 7
    argNames:
    - kwDes3Id
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecKWDes3Id
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 374
    functionDepth: 2
    functionLinenumber: 374
    functionLinenumberEnd: 468
    functionName: xmlSecKWDes3Decode
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 1
    functionsReached:
    - xmlSecKWDes3CheckId
    - xmlSecInvalidSizeLessThanError
    - xmlSecBufferCreate
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecKWDes3Id::sha1
    - xmlSecKWDes3Id::decrypt
    - memcmp
    - xmlSecBufferDestroy
    - xmlSecBufferGetMaxSize
    - xmlSecKWDes3BufferReverse
    linkageType: ''
    returnType: int
    signature: "int xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, xmlSecTransformPtr
      transform,\n                  const xmlSecByte *in, xmlSecSize inSize,\n                  xmlSecByte
      *out, xmlSecSize outSize,\n                  xmlSecSize* outWritten)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:476,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:477,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 485
    functionName: xmlSecKWDes3BufferReverse
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecKWDes3BufferReverse(xmlSecByte *buf, xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:512,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:514,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:516,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/kw_aes_des.c:518,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:520,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 5
    argNames:
    - transform
    - ctx
    - kwAesId
    - keyId
    - keyExpectedSize
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWAesCtxPtr
    - xmlSecKWAesId
    - xmlSecKeyDataId
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 506
    functionDepth: 2
    functionLinenumber: 506
    functionLinenumberEnd: 528
    functionName: xmlSecTransformKWAesInitialize
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlSecBufferInitialize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWAesInitialize(xmlSecTransformPtr transform, xmlSecTransformKWAesCtxPtr
      ctx,\n                               xmlSecKWAesId kwAesId, xmlSecKeyDataId
      keyId,\n                               xmlSecSize keyExpectedSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/kw_aes_des.c:532,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/kw_aes_des.c:533,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/kw_aes_des.c:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - transform
    - ctx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWAesCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 530
    functionDepth: 2
    functionLinenumber: 530
    functionLinenumberEnd: 536
    functionName: xmlSecTransformKWAesFinalize
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformKWAesFinalize(xmlSecTransformPtr transform, xmlSecTransformKWAesCtxPtr
      ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:541,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:542,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:544,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - transform
    - ctx
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWAesCtxPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 538
    functionDepth: 1
    functionLinenumber: 538
    functionLinenumberEnd: 555
    functionName: xmlSecTransformKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWAesSetKeyReq(xmlSecTransformPtr transform, xmlSecTransformKWAesCtxPtr
      ctx,\n                              xmlSecKeyReqPtr keyReq)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:564,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:565,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:566,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:567,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:568,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/kw_aes_des.c:568,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/kw_aes_des.c:568,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/kw_aes_des.c:570,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/kw_aes_des.c:570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:571,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:573,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/kw_aes_des.c:575,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:576,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/kw_aes_des.c:580,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:580,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:583,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:583,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - transform
    - ctx
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWAesCtxPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 557
    functionDepth: 3
    functionLinenumber: 557
    functionLinenumberEnd: 589
    functionName: xmlSecTransformKWAesSetKey
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformKWAesSetKey(xmlSecTransformPtr transform, xmlSecTransformKWAesCtxPtr
      ctx,\n                           xmlSecKeyPtr key)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:597,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:598,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:600,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:602,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:603,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:608,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:609,1
    - Dst: xmlSecInvalidSizeNotMultipleOfError
      Src: /src/xmlsec/src/kw_aes_des.c:619,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:621,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:625,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/kw_aes_des.c:634,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:636,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:637,1
    - Dst: xmlSecKWAesEncode
      Src: /src/xmlsec/src/kw_aes_des.c:643,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:644,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:645,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:648,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:648,1
    - Dst: xmlSecKWAesDecode
      Src: /src/xmlsec/src/kw_aes_des.c:652,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:653,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/kw_aes_des.c:654,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/kw_aes_des.c:657,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:657,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/kw_aes_des.c:662,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:664,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:665,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/kw_aes_des.c:670,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:672,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/kw_aes_des.c:673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:681,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/kw_aes_des.c:681,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/kw_aes_des.c:683,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 3
    argNames:
    - transform
    - ctx
    - last
    argTypes:
    - xmlSecTransformPtr
    - xmlSecTransformKWAesCtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 687
    functionName: xmlSecTransformKWAesExecute
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecKWAesEncode
    - xmlSecInvalidTransfromStatusError
    - xmlSecInvalidSizeNotMultipleOfError
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferSetSize
    - xmlSecTransformGetName
    - xmlSecKWAesDecode
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformKWAesExecute(xmlSecTransformPtr transform, xmlSecTransformKWAesCtxPtr
      ctx, int last)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:776,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:777,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:778,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:779,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:780,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:781,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:782,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:783,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:784,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:788,1
    - Dst: memmove
      Src: /src/xmlsec/src/kw_aes_des.c:790,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:792,1
    - Dst: xmlSecKWAesId::encrypt
      Src: /src/xmlsec/src/kw_aes_des.c:797,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:800,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:810,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:811,1
    - Dst: xmlSecKWAesId::encrypt
      Src: /src/xmlsec/src/kw_aes_des.c:814,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:817,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:822,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:823,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 45
    argCount: 7
    argNames:
    - kwAesId
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecKWAesId
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 766
    functionDepth: 1
    functionLinenumber: 766
    functionLinenumberEnd: 830
    functionName: xmlSecKWAesEncode
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 1
    functionsReached:
    - xmlSecKWAesId::encrypt
    - xmlSecAssert2
    - xmlSecInternalError2
    - memmove
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecKWAesEncode(xmlSecKWAesId kwAesId, xmlSecTransformPtr transform,\n
      \                 const xmlSecByte *in, xmlSecSize inSize,\n                  xmlSecByte
      *out, xmlSecSize outSize,\n                  xmlSecSize* outWritten)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:842,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:844,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:846,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:847,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:848,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:849,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/kw_aes_des.c:850,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:854,1
    - Dst: xmlSecKWAesId::decrypt
      Src: /src/xmlsec/src/kw_aes_des.c:860,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:863,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:873,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:874,1
    - Dst: xmlSecKWAesId::decrypt
      Src: /src/xmlsec/src/kw_aes_des.c:878,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/kw_aes_des.c:881,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:885,1
    - Dst: memcpy
      Src: /src/xmlsec/src/kw_aes_des.c:886,1
    - Dst: memset
      Src: /src/xmlsec/src/kw_aes_des.c:891,1
    - Dst: memcmp
      Src: /src/xmlsec/src/kw_aes_des.c:894,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/kw_aes_des.c:895,1
    - Dst: memmove
      Src: /src/xmlsec/src/kw_aes_des.c:900,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 7
    argNames:
    - kwAesId
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecKWAesId
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 832
    functionDepth: 1
    functionLinenumber: 832
    functionLinenumberEnd: 903
    functionName: xmlSecKWAesDecode
    functionSourceFile: /src/xmlsec/src/kw_aes_des.c
    functionUses: 1
    functionsReached:
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecInternalError2
    - memcmp
    - xmlSecKWAesId::decrypt
    - memmove
    - memcpy
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecKWAesDecode(xmlSecKWAesId kwAesId, xmlSecTransformPtr transform,\n
      \                 const xmlSecByte *in, xmlSecSize inSize,\n                  xmlSecByte
      *out, xmlSecSize outSize,\n                  xmlSecSize* outWritten)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: xmlSecTransformRelationshipGetKlass
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRelationshipGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:172,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/relationship.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:173,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/relationship.c:173,1
    - Dst: xmlSecRelationshipGetCtx
      Src: /src/xmlsec/src/relationship.c:175,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:176,1
    - Dst: memset
      Src: /src/xmlsec/src/relationship.c:179,1
    - Dst: xmlSecPtrListCreate
      Src: /src/xmlsec/src/relationship.c:181,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:183,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 188
    functionName: xmlSecRelationshipInitialize
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecRelationshipGetCtx
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecPtrListCreate
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecRelationshipInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/relationship.c:194,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/relationship.c:194,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/relationship.c:195,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/relationship.c:195,1
    - Dst: xmlSecRelationshipGetCtx
      Src: /src/xmlsec/src/relationship.c:197,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/relationship.c:198,1
    - Dst: xmlSecPtrListDestroy
      Src: /src/xmlsec/src/relationship.c:201,1
    - Dst: memset
      Src: /src/xmlsec/src/relationship.c:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 205
    functionName: xmlSecRelationshipFinalize
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecRelationshipGetCtx
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecPtrListDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecRelationshipFinalize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:213,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/relationship.c:213,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:214,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/relationship.c:214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:216,1
    - Dst: xmlSecRelationshipGetCtx
      Src: /src/xmlsec/src/relationship.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:218,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/relationship.c:222,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/relationship.c:225,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/relationship.c:227,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/relationship.c:232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:234,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:235,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:236,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 207
    functionDepth: 11
    functionLinenumber: 207
    functionLinenumberEnd: 245
    functionName: xmlSecRelationshipReadNode
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecRelationshipGetCtx
    - xmlSecTransformCheckId
    - xmlSecCheckNodeName
    - xmlGetProp
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlFree
    - xmlSecInvalidNodeAttributeError
    - xmlSecPtrListAdd
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecRelationshipReadNode(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/relationship.c:264,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/relationship.c:265,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/relationship.c:275,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:279,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:282,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - node1
    - node2
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 248
    functionDepth: 11
    functionLinenumber: 248
    functionLinenumberEnd: 286
    functionName: xmlSecTransformRelationshipCompare
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlStrcmp
    - xmlGetProp
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipCompare(xmlNodePtr node1, xmlNodePtr
      node2)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:301,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/relationship.c:303,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/relationship.c:304,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/relationship.c:306,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:307,1
    - Dst: xmlSecRelationshipGetCtx
      Src: /src/xmlsec/src/relationship.c:312,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/relationship.c:313,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/relationship.c:314,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/relationship.c:314,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:320,1
    - Dst: xmlSecTransformRelationshipProcessElementNode
      Src: /src/xmlsec/src/relationship.c:327,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:329,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:330,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - buf
    - cur
    argTypes:
    - xmlSecTransformPtr
    - xmlOutputBufferPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 292
    functionDepth: 11
    functionLinenumber: 292
    functionLinenumberEnd: 335
    functionName: xmlSecTransformRelationshipProcessNode
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecRelationshipGetCtx
    - xmlFree
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecTransformRelationshipProcessElementNode
    - xmlStrcmp
    - xmlSecTransformGetName
    - xmlSecXmlError2
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipProcessNode(xmlSecTransformPtr transform,
      xmlOutputBufferPtr buf, xmlNodePtr cur)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:348,1
    - Dst: xmlListCreate
      Src: /src/xmlsec/src/relationship.c:350,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:352,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:352,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/relationship.c:357,1
    - Dst: xmlListInsert
      Src: /src/xmlsec/src/relationship.c:358,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:359,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:359,1
    - Dst: xmlSecTransformRelationshipProcessNode
      Src: /src/xmlsec/src/relationship.c:363,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:365,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:366,1
    - Dst: xmlListDelete
      Src: /src/xmlsec/src/relationship.c:367,1
    - Dst: xmlListSort
      Src: /src/xmlsec/src/relationship.c:373,1
    - Dst: xmlListEmpty
      Src: /src/xmlsec/src/relationship.c:375,1
    - Dst: xmlListFront
      Src: /src/xmlsec/src/relationship.c:376,1
    - Dst: xmlLinkGetData
      Src: /src/xmlsec/src/relationship.c:377,1
    - Dst: xmlSecTransformRelationshipProcessNode
      Src: /src/xmlsec/src/relationship.c:379,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:381,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:382,1
    - Dst: xmlListDelete
      Src: /src/xmlsec/src/relationship.c:383,1
    - Dst: xmlListPopFront
      Src: /src/xmlsec/src/relationship.c:387,1
    - Dst: xmlListDelete
      Src: /src/xmlsec/src/relationship.c:391,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 3
    argNames:
    - transform
    - buf
    - cur
    argTypes:
    - xmlSecTransformPtr
    - xmlOutputBufferPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 341
    functionDepth: 12
    functionLinenumber: 341
    functionLinenumberEnd: 393
    functionName: xmlSecTransformRelationshipProcessNodeList
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlListEmpty
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlListInsert
    - xmlListSort
    - xmlSecXmlError
    - xmlListFront
    - xmlLinkGetData
    - xmlListCreate
    - xmlListPopFront
    - xmlStrcmp
    - xmlListDelete
    - xmlSecTransformGetName
    - xmlSecTransformRelationshipProcessNode
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipProcessNodeList(xmlSecTransformPtr transform,
      xmlOutputBufferPtr buf, xmlNodePtr cur)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:400,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:402,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:404,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:408,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:410,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:415,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:417,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:420,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:422,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:425,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:427,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 3
    argNames:
    - buf
    - name
    - value
    argTypes:
    - xmlOutputBufferPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 395
    functionDepth: 4
    functionLinenumber: 395
    functionLinenumberEnd: 433
    functionName: xmlSecTransformRelationshipWriteProp
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlOutputBufferWriteString
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipWriteProp(xmlOutputBufferPtr buf, const
      xmlChar * name, const xmlChar * value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:437,1
    - Dst: xmlSecTransformRelationshipWriteProp
      Src: /src/xmlsec/src/relationship.c:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - buf
    - href
    argTypes:
    - xmlOutputBufferPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 435
    functionDepth: 5
    functionLinenumber: 435
    functionLinenumberEnd: 440
    functionName: xmlSecTransformRelationshipWriteNs
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformRelationshipWriteProp
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipWriteNs(xmlOutputBufferPtr buf, const
      xmlChar * href)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:452,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:455,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:457,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:458,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:461,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:463,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:464,1
    - Dst: xmlSecTransformRelationshipWriteNs
      Src: /src/xmlsec/src/relationship.c:470,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:472,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:473,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/relationship.c:484,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/relationship.c:486,1
    - Dst: xmlSecTransformRelationshipWriteProp
      Src: /src/xmlsec/src/relationship.c:490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:492,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:493,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:494,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/relationship.c:498,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/relationship.c:502,1
    - Dst: xmlSecTransformRelationshipWriteProp
      Src: /src/xmlsec/src/relationship.c:503,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:505,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:506,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:512,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:514,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:515,1
    - Dst: xmlSecTransformRelationshipProcessNodeList
      Src: /src/xmlsec/src/relationship.c:521,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:523,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:524,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:530,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:532,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:533,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:536,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:538,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:539,1
    - Dst: xmlOutputBufferWriteString
      Src: /src/xmlsec/src/relationship.c:542,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:543,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:544,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 68
    argCount: 3
    argNames:
    - transform
    - buf
    - cur
    argTypes:
    - xmlSecTransformPtr
    - xmlOutputBufferPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 443
    functionDepth: 13
    functionLinenumber: 443
    functionLinenumberEnd: 550
    functionName: xmlSecTransformRelationshipProcessElementNode
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 1
    functionsReached:
    - xmlGetProp
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlStrcmp
    - xmlSecTransformRelationshipWriteNs
    - xmlSecTransformGetName
    - xmlSecTransformRelationshipProcessNodeList
    - xmlOutputBufferWriteString
    - xmlSecTransformRelationshipWriteProp
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr
      transform, xmlOutputBufferPtr buf, xmlNodePtr cur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:556,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:557,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:558,1
    - Dst: xmlSecTransformRelationshipProcessNodeList
      Src: /src/xmlsec/src/relationship.c:561,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:563,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:564,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - buf
    - doc
    argTypes:
    - xmlSecTransformPtr
    - xmlOutputBufferPtr
    - xmlDocPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 552
    functionDepth: 13
    functionLinenumber: 552
    functionLinenumberEnd: 570
    functionName: xmlSecTransformRelationshipExecute
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlSecTransformRelationshipProcessNodeList
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipExecute(xmlSecTransformPtr transform,
      xmlOutputBufferPtr buf, xmlDocPtr doc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:579,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:580,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:581,1
    - Dst: xmlSecRelationshipGetCtx
      Src: /src/xmlsec/src/relationship.c:583,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:584,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/relationship.c:595,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:598,1
    - Dst: xmlSecTransformCreateOutputBuffer
      Src: /src/xmlsec/src/relationship.c:602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:604,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:605,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/relationship.c:609,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:611,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:612,1
    - Dst: xmlSecTransformRelationshipExecute
      Src: /src/xmlsec/src/relationship.c:617,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:619,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:620,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/relationship.c:621,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/relationship.c:625,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:627,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:627,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 572
    functionDepth: 14
    functionLinenumber: 572
    functionLinenumberEnd: 632
    functionName: xmlSecTransformRelationshipPushXml
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformRelationshipExecute
    - xmlSecRelationshipGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformCreateOutputBuffer
    - xmlSecBufferCreateOutputBuffer
    - xmlSecXmlError
    - xmlSecInvalidTransfromStatusError
    - xmlOutputBufferClose
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipPushXml(xmlSecTransformPtr transform,
      xmlSecNodeSetPtr nodes, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:639,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:641,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:647,1
    - Dst: xmlSecTransformPopXml
      Src: /src/xmlsec/src/relationship.c:656,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:658,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:659,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/relationship.c:664,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:666,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:667,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/relationship.c:671,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/relationship.c:673,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:674,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/relationship.c:675,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/relationship.c:679,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/relationship.c:681,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:681,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/relationship.c:691,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:699,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/relationship.c:699,1
    - Dst: memcpy
      Src: /src/xmlsec/src/relationship.c:701,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/relationship.c:701,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/relationship.c:702,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/relationship.c:704,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/relationship.c:705,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/relationship.c:709,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/relationship.c:715,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/relationship.c:715,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/relationship.c:718,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 65
    argCount: 5
    argNames:
    - transform
    - data
    - maxDataSize
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 634
    functionDepth: 15
    functionLinenumber: 634
    functionLinenumberEnd: 723
    functionName: xmlSecTransformRelationshipPopBin
    functionSourceFile: /src/xmlsec/src/relationship.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecBufferCreateOutputBuffer
    - xmlSecInternalError2
    - xmlSecXmlError
    - xmlSecBufferGetData
    - xmlSecTransformPopXml
    - xmlSecInvalidTransfromStatusError
    - xmlOutputBufferClose
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - memcpy
    - xmlC14NExecute
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformRelationshipPopBin(xmlSecTransformPtr transform,
      xmlSecByte* data, xmlSecSize maxDataSize, xmlSecSize* dataSize, xmlSecTransformCtxPtr
      transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CHECK_ARITY
      Src: /src/xmlsec/src/xpath.c:47,1
    - Dst: XP_ERROR
      Src: /src/xmlsec/src/xpath.c:50,1
    - Dst: valuePush
      Src: /src/xmlsec/src/xpath.c:52,1
    - Dst: xmlXPathNewNodeSet
      Src: /src/xmlsec/src/xpath.c:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctxt
    - nargs
    argTypes:
    - xmlXPathParserContextPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 45
    functionDepth: 4
    functionLinenumber: 45
    functionLinenumberEnd: 53
    functionName: xmlSecXPathHereFunction
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewNodeSet
    - CHECK_ARITY
    - valuePush
    - XP_ERROR
    linkageType: ''
    returnType: void
    signature: void xmlSecXPathHereFunction(xmlXPathParserContextPtr ctxt, int nargs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xpath.c:92,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xpath.c:94,1
    - Dst: memset
      Src: /src/xmlsec/src/xpath.c:97,1
    - Dst: xmlXPathNewContext
      Src: /src/xmlsec/src/xpath.c:106,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xpath.c:108,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:109,1
    - Dst: xmlXPathNewContext
      Src: /src/xmlsec/src/xpath.c:114,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xpath.c:116,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:117,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - type
    argTypes:
    - xmlSecXPathDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 88
    functionDepth: 5
    functionLinenumber: 88
    functionLinenumberEnd: 124
    functionName: xmlSecXPathDataCreate
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNewContext
    - xmlSecXPathDataDestroy
    - xmlSecXmlError
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecXPathDataPtr
    signature: xmlSecXPathDataPtr xmlSecXPathDataCreate(xmlSecXPathDataType type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xpath.c:128,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:131,1
    - Dst: xmlXPathFreeContext
      Src: /src/xmlsec/src/xpath.c:134,1
    - Dst: memset
      Src: /src/xmlsec/src/xpath.c:136,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecXPathDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 126
    functionDepth: 4
    functionLinenumber: 126
    functionLinenumberEnd: 138
    functionName: xmlSecXPathDataDestroy
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlXPathFreeContext
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecXPathDataDestroy(xmlSecXPathDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:144,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:145,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/xpath.c:147,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/xpath.c:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - data
    - expr
    argTypes:
    - xmlSecXPathDataPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 153
    functionName: xmlSecXPathDataSetExpr
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrdup
    - xmlSecStrdupError
    linkageType: ''
    returnType: int
    signature: int xmlSecXPathDataSetExpr(xmlSecXPathDataPtr data, const xmlChar*
      expr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:163,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:164,1
    - Dst: xmlXPathNsLookup
      Src: /src/xmlsec/src/xpath.c:170,1
    - Dst: xmlXPathRegisterNs
      Src: /src/xmlsec/src/xpath.c:171,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:173,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:174,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecXPathDataPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 156
    functionDepth: 6
    functionLinenumber: 156
    functionLinenumberEnd: 182
    functionName: xmlSecXPathDataRegisterNamespaces
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlXPathNsLookup
    - xmlXPathRegisterNs
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError2
    linkageType: ''
    returnType: int
    signature: int xmlSecXPathDataRegisterNamespaces(xmlSecXPathDataPtr data, xmlNodePtr
      node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:188,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:191,1
    - Dst: xmlSecXPathDataRegisterNamespaces
      Src: /src/xmlsec/src/xpath.c:193,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:195,1
    - Dst: xmlNodeGetContent
      Src: /src/xmlsec/src/xpath.c:200,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xpath.c:202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecXPathDataPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 184
    functionDepth: 9
    functionLinenumber: 184
    functionLinenumberEnd: 207
    functionName: xmlSecXPathDataNodeRead
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecXPathDataRegisterNamespaces
    - xmlSecAssert2
    - xmlSecInvalidNodeContentError
    - xmlNodeGetContent
    linkageType: ''
    returnType: int
    signature: int xmlSecXPathDataNodeRead(xmlSecXPathDataPtr data, xmlNodePtr node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:218,1
    - Dst: xmlXPathRegisterFunc
      Src: /src/xmlsec/src/xpath.c:225,1
    - Dst: xmlXPathEvalExpression
      Src: /src/xmlsec/src/xpath.c:234,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:236,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:237,1
    - Dst: xmlXPtrEval
      Src: /src/xmlsec/src/xpath.c:242,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:244,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:245,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:250,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/xmlsec/src/xpath.c:258,1
    - Dst: xmlXPathFreeObject
      Src: /src/xmlsec/src/xpath.c:260,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:261,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:262,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/xpath.c:267,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xpath.c:269,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/xpath.c:270,1
    - Dst: xmlXPathFreeObject
      Src: /src/xmlsec/src/xpath.c:271,1
    - Dst: xmlXPathFreeObject
      Src: /src/xmlsec/src/xpath.c:275,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 3
    argNames:
    - data
    - doc
    - hereNode
    argTypes:
    - xmlSecXPathDataPtr
    - xmlDocPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 209
    functionDepth: 21
    functionLinenumber: 209
    functionLinenumberEnd: 278
    functionName: xmlSecXPathDataExecute
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlXPathFreeObject
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlXPtrEval
    - xmlXPathNodeSetCreate
    - XMLSEC_ENUM_CAST
    - xmlXPathEvalExpression
    - xmlSecNodeSetCreate
    - xmlSecXmlError2
    - xmlXPathRegisterFunc
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: xmlSecNodeSetPtr xmlSecXPathDataExecute(xmlSecXPathDataPtr data, xmlDocPtr
      doc, xmlNodePtr hereNode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: xmlSecXPathDataListGetKlass
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecXPathDataListGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:314,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:315,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:317,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:320,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/xpath.c:321,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xpath.c:323,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xpath.c:325,1
    - Dst: xmlSecXPathDataExecute
      Src: /src/xmlsec/src/xpath.c:330,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:332,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xpath.c:334,1
    - Dst: xmlSecNodeSetAdd
      Src: /src/xmlsec/src/xpath.c:339,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xpath.c:341,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/xpath.c:342,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xpath.c:344,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/xpath.c:346,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 4
    argNames:
    - dataList
    - doc
    - hereNode
    - nodes
    argTypes:
    - xmlSecPtrListPtr
    - xmlDocPtr
    - xmlNodePtr
    - xmlSecNodeSetPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 307
    functionDepth: 22
    functionLinenumber: 307
    functionLinenumberEnd: 353
    functionName: xmlSecXPathDataListExecute
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecNodeSetAdd
    - xmlSecXPathDataExecute
    - xmlSecNodeSetDestroy
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecNodeSetPtr
    signature: "xmlSecNodeSetPtr xmlSecXPathDataListExecute(xmlSecPtrListPtr dataList,
      xmlDocPtr doc,\n                           xmlNodePtr hereNode, xmlSecNodeSetPtr
      nodes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: xmlSecTransformXPathCheckId
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformXPathCheckId(transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:381,1
    - Dst: xmlSecTransformXPathCheckId
      Src: /src/xmlsec/src/xpath.c:381,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:384,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/xpath.c:386,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:388,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:389,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 376
    functionDepth: 2
    functionLinenumber: 376
    functionLinenumberEnd: 393
    functionName: xmlSecTransformXPathInitialize
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecPtrListInitialize
    - xmlSecXPathGetCtx
    - xmlSecTransformXPathCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformXPathInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xpath.c:399,1
    - Dst: xmlSecTransformXPathCheckId
      Src: /src/xmlsec/src/xpath.c:399,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:401,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xpath.c:402,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:402,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/xpath.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 395
    functionDepth: 2
    functionLinenumber: 395
    functionLinenumberEnd: 405
    functionName: xmlSecTransformXPathFinalize
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecAssert
    - xmlSecXPathGetCtx
    - xmlSecTransformXPathCheckId
    - xmlSecPtrListCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformXPathFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:413,1
    - Dst: xmlSecTransformXPathCheckId
      Src: /src/xmlsec/src/xpath.c:413,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:417,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:420,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:420,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:421,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:421,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:424,1
    - Dst: xmlSecXPathDataListExecute
      Src: /src/xmlsec/src/xpath.c:426,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:429,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 407
    functionDepth: 23
    functionLinenumber: 407
    functionLinenumberEnd: 434
    functionName: xmlSecTransformXPathExecute
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecXPathGetCtx
    - xmlSecTransformXPathCheckId
    - xmlSecXPathDataListExecute
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformXPathExecute(xmlSecTransformPtr transform, int
      last,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 484
    functionName: xmlSecTransformXPathGetKlass
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformXPathGetKlass(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:498,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xpath.c:498,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:499,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:500,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:502,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:503,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:503,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:504,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:504,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:507,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xpath.c:508,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xpath.c:509,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:510,1
    - Dst: xmlSecXPathDataCreate
      Src: /src/xmlsec/src/xpath.c:515,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:517,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:518,1
    - Dst: xmlSecXPathDataNodeRead
      Src: /src/xmlsec/src/xpath.c:522,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:524,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:525,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:526,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xpath.c:531,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:533,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:534,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:540,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xpath.c:541,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xpath.c:541,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xpath.c:542,1
    - Dst: return
      Src: /src/xmlsec/src/xpath.c:542,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xpath.c:544,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xpath.c:546,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:547,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/xpath.c:550,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xpath.c:552,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:552,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:553,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:556,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:564,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xpath.c:566,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:566,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 53
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 488
    functionDepth: 10
    functionLinenumber: 488
    functionLinenumberEnd: 570
    functionName: xmlSecTransformXPathNodeRead
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - return
    - xmlStrPrintf
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlMalloc
    - xmlSecXPathGetCtx
    - xmlSecTransformGetName
    - xmlSecXPathDataCreate
    - xmlSecInternalError
    - xmlStrlen
    - xmlSecAssert2
    - xmlSecXPathDataNodeRead
    - xmlSecXmlError
    - xmlSecUnexpectedNodeError
    - xmlSecPtrListCheckId
    - xmlSecMallocError
    - xmlSecCheckNodeName
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecXPathDataDestroy
    - xmlSecInvalidNodeError
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformXPathNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: xmlSecTransformXPath2GetKlass
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformXPath2GetKlass(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:627,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xpath.c:627,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:629,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:631,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:632,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:632,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:633,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:633,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:636,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xpath.c:637,1
    - Dst: xmlSecXPathDataCreate
      Src: /src/xmlsec/src/xpath.c:639,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:641,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:642,1
    - Dst: xmlSecXPathDataNodeRead
      Src: /src/xmlsec/src/xpath.c:646,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:648,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:649,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:650,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xpath.c:655,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:657,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:658,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:659,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xpath.c:665,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/xpath.c:667,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:668,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xpath.c:672,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xpath.c:674,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xpath.c:676,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/xpath.c:679,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:680,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:682,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:685,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:687,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xpath.c:692,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:692,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 619
    functionDepth: 11
    functionLinenumber: 619
    functionLinenumberEnd: 696
    functionName: xmlSecTransformXPath2NodeRead
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecTransformCheckId
    - xmlSecGetNextElementNode
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecXPathDataNodeRead
    - xmlSecXPathDataDestroy
    - xmlFree
    - xmlSecUnexpectedNodeError
    - xmlSecXPathGetCtx
    - xmlSecInvalidNodeAttributeError
    - xmlSecPtrListAdd
    - xmlSecTransformGetName
    - xmlSecXPathDataCreate
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 744
    functionName: xmlSecTransformXPointerGetKlass
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformXPointerGetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:764,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xpath.c:764,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:765,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:766,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:767,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:771,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:772,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:772,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:773,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:773,1
    - Dst: xmlSecXPathDataCreate
      Src: /src/xmlsec/src/xpath.c:775,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:777,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:778,1
    - Dst: xmlSecXPathDataRegisterNamespaces
      Src: /src/xmlsec/src/xpath.c:782,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:784,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:785,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:786,1
    - Dst: xmlSecXPathDataSetExpr
      Src: /src/xmlsec/src/xpath.c:790,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:792,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:793,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:794,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xpath.c:799,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:801,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:802,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:803,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 4
    argNames:
    - transform
    - expr
    - nodeSetType
    - hereNode
    argTypes:
    - xmlSecTransformPtr
    - xmlChar*
    - xmlSecNodeSetType
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 757
    functionDepth: 7
    functionLinenumber: 757
    functionLinenumberEnd: 812
    functionName: xmlSecTransformXPointerSetExpr
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecXPathDataRegisterNamespaces
    - xmlSecXPathDataSetExpr
    - xmlSecAssert2
    - xmlSecXPathDataDestroy
    - xmlSecXPathGetCtx
    - xmlSecPtrListAdd
    - xmlSecTransformGetName
    - xmlSecXPathDataCreate
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformXPointerSetExpr(xmlSecTransformPtr transform, const
      xmlChar* expr,\n                            xmlSecNodeSetType  nodeSetType,
      xmlNodePtr hereNode)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:821,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xpath.c:821,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:822,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:823,1
    - Dst: xmlSecXPathGetCtx
      Src: /src/xmlsec/src/xpath.c:825,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:826,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/xpath.c:826,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:827,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/xpath.c:827,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:830,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xpath.c:831,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xpath.c:832,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:833,1
    - Dst: xmlSecXPathDataCreate
      Src: /src/xmlsec/src/xpath.c:838,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:840,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:841,1
    - Dst: xmlSecXPathDataNodeRead
      Src: /src/xmlsec/src/xpath.c:845,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:847,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:848,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:849,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/xpath.c:854,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:856,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:857,1
    - Dst: xmlSecXPathDataDestroy
      Src: /src/xmlsec/src/xpath.c:858,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xpath.c:867,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xpath.c:869,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:869,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 814
    functionDepth: 10
    functionLinenumber: 814
    functionLinenumberEnd: 873
    functionName: xmlSecTransformXPointerNodeRead
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecGetNextElementNode
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecUnexpectedNodeError
    - xmlSecAssert2
    - xmlSecXPathDataNodeRead
    - xmlSecXPathDataDestroy
    - xmlSecInvalidNodeError
    - xmlSecXPathGetCtx
    - xmlSecPtrListAdd
    - xmlSecTransformGetName
    - xmlSecXPathDataCreate
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformXPointerNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 886
    functionDepth: 0
    functionLinenumber: 886
    functionLinenumberEnd: 888
    functionName: xmlSecTransformVisa3DHackCheckId
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformVisa3DHackCheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 932
    functionDepth: 0
    functionLinenumber: 932
    functionLinenumberEnd: 935
    functionName: xmlSecTransformVisa3DHackGetKlass
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformVisa3DHackGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:950,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/xpath.c:950,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:951,1
    - Dst: xmlSecVisa3DHackGetCtx
      Src: /src/xmlsec/src/xpath.c:953,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:954,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:955,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/xpath.c:957,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/xpath.c:959,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - transform
    - id
    argTypes:
    - xmlSecTransformPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 946
    functionDepth: 2
    functionLinenumber: 946
    functionLinenumberEnd: 964
    functionName: xmlSecTransformVisa3DHackSetID
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlSecTransformCheckId
    - xmlSecAssert2
    - xmlSecStrdupError
    - xmlSecTransformGetName
    - xmlSecVisa3DHackGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformVisa3DHackSetID(xmlSecTransformPtr transform, const
      xmlChar* id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:968,1
    - Dst: xmlSecTransformVisa3DHackCheckId
      Src: /src/xmlsec/src/xpath.c:968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 966
    functionDepth: 1
    functionLinenumber: 966
    functionLinenumberEnd: 971
    functionName: xmlSecTransformVisa3DHackInitialize
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformVisa3DHackCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformVisa3DHackInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xpath.c:977,1
    - Dst: xmlSecTransformVisa3DHackCheckId
      Src: /src/xmlsec/src/xpath.c:977,1
    - Dst: xmlSecVisa3DHackGetCtx
      Src: /src/xmlsec/src/xpath.c:979,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xpath.c:980,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xpath.c:983,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 973
    functionDepth: 1
    functionLinenumber: 973
    functionLinenumberEnd: 986
    functionName: xmlSecTransformVisa3DHackFinalize
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecVisa3DHackGetCtx
    - xmlSecTransformVisa3DHackCheckId
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformVisa3DHackFinalize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:996,1
    - Dst: xmlSecTransformVisa3DHackCheckId
      Src: /src/xmlsec/src/xpath.c:996,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:997,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:998,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:999,1
    - Dst: xmlSecVisa3DHackGetCtx
      Src: /src/xmlsec/src/xpath.c:1001,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:1002,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:1003,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xpath.c:1006,1
    - Dst: xmlGetID
      Src: /src/xmlsec/src/xpath.c:1008,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:1010,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:1010,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:1011,1
    - Dst: xmlXPathNodeSetCreate
      Src: /src/xmlsec/src/xpath.c:1015,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xpath.c:1017,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:1017,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xpath.c:1018,1
    - Dst: xmlSecNodeSetCreate
      Src: /src/xmlsec/src/xpath.c:1022,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xpath.c:1024,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xpath.c:1025,1
    - Dst: xmlXPathFreeNodeSet
      Src: /src/xmlsec/src/xpath.c:1026,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 988
    functionDepth: 3
    functionLinenumber: 988
    functionLinenumberEnd: 1030
    functionName: xmlSecTransformVisa3DHackExecute
    functionSourceFile: /src/xmlsec/src/xpath.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformVisa3DHackCheckId
    - xmlGetID
    - xmlSecErrorsSafeString
    - xmlXPathNodeSetCreate
    - xmlSecNodeSetCreate
    - xmlSecTransformGetName
    - xmlSecVisa3DHackGetCtx
    - xmlSecXmlError2
    - xmlXPathFreeNodeSet
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformVisa3DHackExecute(xmlSecTransformPtr transform,
      int last,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:50,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keyUseWith
    argTypes:
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionName: xmlSecKeyUseWithInitialize
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyUseWithInitialize(xmlSecKeyUseWithPtr keyUseWith)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:64,1
    - Dst: xmlSecKeyUseWithReset
      Src: /src/xmlsec/src/keys.c:66,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keyUseWith
    argTypes:
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionName: xmlSecKeyUseWithFinalize
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyUseWithReset
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyUseWithFinalize(xmlSecKeyUseWithPtr keyUseWith)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:78,1
    - Dst: xmlSecKeyUseWithSet
      Src: /src/xmlsec/src/keys.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - keyUseWith
    argTypes:
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: xmlSecKeyUseWithReset
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyUseWithSet
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyUseWithReset(xmlSecKeyUseWithPtr keyUseWith)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:94,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:95,1
    - Dst: xmlSecKeyUseWithSet
      Src: /src/xmlsec/src/keys.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyUseWithPtr
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionName: xmlSecKeyUseWithCopy
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyUseWithSet
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyUseWithCopy(xmlSecKeyUseWithPtr dst, xmlSecKeyUseWithPtr
      src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keys.c:116,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keys.c:118,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:121,1
    - Dst: xmlSecKeyUseWithInitialize
      Src: /src/xmlsec/src/keys.c:123,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:125,1
    - Dst: xmlSecKeyUseWithDestroy
      Src: /src/xmlsec/src/keys.c:126,1
    - Dst: xmlSecKeyUseWithSet
      Src: /src/xmlsec/src/keys.c:130,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:132,1
    - Dst: xmlSecKeyUseWithDestroy
      Src: /src/xmlsec/src/keys.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - application
    - identifier
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 138
    functionName: xmlSecKeyUseWithCreate
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyUseWithDestroy
    - xmlSecInternalError
    - xmlSecKeyUseWithSet
    - xmlMalloc
    - xmlSecKeyUseWithInitialize
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeyUseWithPtr
    signature: xmlSecKeyUseWithPtr xmlSecKeyUseWithCreate(const xmlChar* application,
      const xmlChar* identifier)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:155,1
    - Dst: xmlSecKeyUseWithCreate
      Src: /src/xmlsec/src/keys.c:157,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:159,1
    - Dst: xmlSecKeyUseWithCopy
      Src: /src/xmlsec/src/keys.c:163,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:165,1
    - Dst: xmlSecKeyUseWithDestroy
      Src: /src/xmlsec/src/keys.c:166,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - keyUseWith
    argTypes:
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 149
    functionDepth: 3
    functionLinenumber: 149
    functionLinenumberEnd: 171
    functionName: xmlSecKeyUseWithDuplicate
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyUseWithDestroy
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyUseWithCreate
    - xmlSecKeyUseWithCopy
    linkageType: ''
    returnType: xmlSecKeyUseWithPtr
    signature: xmlSecKeyUseWithPtr xmlSecKeyUseWithDuplicate(xmlSecKeyUseWithPtr keyUseWith)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:182,1
    - Dst: xmlSecKeyUseWithFinalize
      Src: /src/xmlsec/src/keys.c:184,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keyUseWith
    argTypes:
    - xmlSecKeyUseWithPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 186
    functionName: xmlSecKeyUseWithDestroy
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 2
    functionsReached:
    - xmlSecKeyUseWithFinalize
    - xmlSecAssert
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyUseWithDestroy(xmlSecKeyUseWithPtr keyUseWith)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:200,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:203,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:207,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/keys.c:212,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keys.c:214,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/keys.c:219,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keys.c:221,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - keyUseWith
    - application
    - identifier
    argTypes:
    - xmlSecKeyUseWithPtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 227
    functionName: xmlSecKeyUseWithSet
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - xmlStrdup
    - xmlFree
    - xmlSecStrdupError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyUseWithSet(xmlSecKeyUseWithPtr keyUseWith, const xmlChar*
      application, const xmlChar* identifier)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:238,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:239,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - keyUseWith
    - output
    argTypes:
    - xmlSecKeyUseWithPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 244
    functionName: xmlSecKeyUseWithDebugDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyUseWithDebugDump(xmlSecKeyUseWithPtr keyUseWith, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:255,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:256,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:258,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:260,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keys.c:261,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:262,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:264,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keys.c:265,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:266,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - keyUseWith
    - output
    argTypes:
    - xmlSecKeyUseWithPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 269
    functionName: xmlSecKeyUseWithDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyUseWithDebugXmlDump(xmlSecKeyUseWithPtr keyUseWith, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionName: xmlSecKeyUseWithPtrListGetKlass
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecKeyUseWithPtrListGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:314,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:316,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keys.c:319,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - keyReq
    argTypes:
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 310
    functionDepth: 2
    functionLinenumber: 310
    functionLinenumberEnd: 327
    functionName: xmlSecKeyReqInitialize
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListInitialize
    - xmlSecInternalError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyReqInitialize(xmlSecKeyReqPtr keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:338,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keys.c:340,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keyReq
    argTypes:
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 336
    functionDepth: 2
    functionLinenumber: 336
    functionLinenumberEnd: 342
    functionName: xmlSecKeyReqFinalize
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyReqFinalize(xmlSecKeyReqPtr keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:352,1
    - Dst: xmlSecPtrListEmpty
      Src: /src/xmlsec/src/keys.c:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - keyReq
    argTypes:
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 359
    functionName: xmlSecKeyReqReset
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecPtrListEmpty
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyReqReset(xmlSecKeyReqPtr keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:375,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/keys.c:382,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:384,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyReqPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 370
    functionDepth: 2
    functionLinenumber: 370
    functionLinenumberEnd: 389
    functionName: xmlSecKeyReqCopy
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecPtrListCopy
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyReqCopy(xmlSecKeyReqPtr dst, xmlSecKeyReqPtr src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:403,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:404,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keys.c:404,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:406,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/keys.c:413,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keys.c:413,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - keyReq
    - key
    argTypes:
    - xmlSecKeyReqPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 414
    functionName: xmlSecKeyReqMatchKey
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyIsValid
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyGetType
    - xmlSecKeyReqMatchKeyValue
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyReqMatchKey(xmlSecKeyReqPtr keyReq, xmlSecKeyPtr key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:429,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/keys.c:432,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/keys.c:436,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/keys.c:437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - keyReq
    - value
    argTypes:
    - xmlSecKeyReqPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 441
    functionName: xmlSecKeyReqMatchKeyValue
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyReqMatchKeyValue(xmlSecKeyReqPtr keyReq, xmlSecKeyDataPtr
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:452,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:453,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:455,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:456,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:457,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:458,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:460,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:461,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:462,1
    - Dst: xmlSecPtrListDebugDump
      Src: /src/xmlsec/src/keys.c:463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - keyReq
    - output
    argTypes:
    - xmlSecKeyReqPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 464
    functionName: xmlSecKeyReqDebugDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListDebugDump
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataKlassGetName
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyReqDebugDump(xmlSecKeyReqPtr keyReq, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:475,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:476,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:478,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:480,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keys.c:481,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:481,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:482,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:484,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:485,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:486,1
    - Dst: xmlSecPtrListDebugXmlDump
      Src: /src/xmlsec/src/keys.c:487,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - keyReq
    - output
    argTypes:
    - xmlSecKeyReqPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 489
    functionName: xmlSecKeyReqDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListDebugXmlDump
    - xmlSecAssert
    - xmlSecPrintXmlString
    - xmlSecKeyDataKlassGetName
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyReqDebugXmlDump(xmlSecKeyReqPtr keyReq, FILE* output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keys.c:511,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keys.c:513,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 506
    functionDepth: 1
    functionLinenumber: 506
    functionLinenumberEnd: 519
    functionName: xmlSecKeyCreate
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyCreate(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:529,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:532,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:535,1
    - Dst: xmlSecPtrListDestroy
      Src: /src/xmlsec/src/keys.c:538,1
    - Dst: memset
      Src: /src/xmlsec/src/keys.c:541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 527
    functionDepth: 2
    functionLinenumber: 527
    functionLinenumberEnd: 542
    functionName: xmlSecKeyEmpty
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecPtrListDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyEmpty(xmlSecKeyPtr key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:552,1
    - Dst: xmlSecKeyEmpty
      Src: /src/xmlsec/src/keys.c:554,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:555,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 550
    functionDepth: 3
    functionLinenumber: 550
    functionLinenumberEnd: 556
    functionName: xmlSecKeyDestroy
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyEmpty
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDestroy(xmlSecKeyPtr key)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:569,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:570,1
    - Dst: xmlSecKeyEmpty
      Src: /src/xmlsec/src/keys.c:573,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/keys.c:577,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keys.c:579,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/keys.c:585,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:587,1
    - Dst: xmlSecPtrListDuplicate
      Src: /src/xmlsec/src/keys.c:593,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:595,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - keyDst
    - keySrc
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 567
    functionDepth: 3
    functionLinenumber: 567
    functionLinenumberEnd: 604
    functionName: xmlSecKeyCopy
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDuplicate
    - xmlSecPtrListDuplicate
    - xmlSecStrdupError
    - xmlSecKeyEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyCopy(xmlSecKeyPtr keyDst, xmlSecKeyPtr keySrc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - val1
    - ','
    - val2
    - ','
    - TYPE
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 612
    functionName: XMLSEC_SWAP
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_SWAP(val1, val2, TYPE)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:624,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:625,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:627,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:628,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:629,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:630,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:631,1
    - Dst: XMLSEC_SWAP
      Src: /src/xmlsec/src/keys.c:632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - key1
    - key2
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 622
    functionDepth: 1
    functionLinenumber: 622
    functionLinenumberEnd: 635
    functionName: xmlSecKeySwap
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_SWAP
    linkageType: ''
    returnType: int
    signature: int xmlSecKeySwap(xmlSecKeyPtr key1, xmlSecKeyPtr key2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:651,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/keys.c:653,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:655,1
    - Dst: xmlSecKeyCopy
      Src: /src/xmlsec/src/keys.c:659,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:661,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 646
    functionDepth: 4
    functionLinenumber: 646
    functionLinenumberEnd: 667
    functionName: xmlSecKeyDuplicate
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyCopy
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyCreate
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyDuplicate(xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:681,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keys.c:681,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:682,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keys.c:684,1
    - Dst: xmlSecKeyGetName
      Src: /src/xmlsec/src/keys.c:684,1
    - Dst: xmlSecKeyReqMatchKey
      Src: /src/xmlsec/src/keys.c:687,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - key
    - name
    - keyReq
    argTypes:
    - xmlSecKeyPtr
    - xmlChar*
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 679
    functionDepth: 2
    functionLinenumber: 679
    functionLinenumberEnd: 688
    functionName: xmlSecKeyMatch
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 2
    functionsReached:
    - xmlSecKeyGetName
    - xmlSecKeyIsValid
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecKeyReqMatchKey
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyMatch(xmlSecKeyPtr key, const xmlChar *name, xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:702,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keys.c:704,1
    - Dst: xmlSecKeyDataGetType
      Src: /src/xmlsec/src/keys.c:708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 709
    functionName: xmlSecKeyGetType
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyGetValue
    - xmlSecKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecKeyGetType(xmlSecKeyPtr key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 719
    functionDepth: 1
    functionLinenumber: 719
    functionLinenumberEnd: 724
    functionName: xmlSecKeyGetName
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecKeyGetName(xmlSecKeyPtr key)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:737,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:740,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/keys.c:745,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keys.c:747,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - key
    - name
    argTypes:
    - xmlSecKeyPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 735
    functionDepth: 2
    functionLinenumber: 735
    functionLinenumberEnd: 753
    functionName: xmlSecKeySetName
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrdup
    - xmlFree
    - xmlSecStrdupError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeySetName(xmlSecKeyPtr key, const xmlChar* name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:767,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keys.c:770,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/keys.c:777,1
    - Dst: return
      Src: /src/xmlsec/src/keys.c:777,1
    - Dst: xmlStrndup
      Src: /src/xmlsec/src/keys.c:778,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keys.c:780,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - key
    - name
    - nameSize
    argTypes:
    - xmlSecKeyPtr
    - xmlChar*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 765
    functionDepth: 1
    functionLinenumber: 765
    functionLinenumberEnd: 786
    functionName: xmlSecKeySetNameEx
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlStrndup
    - return
    - xmlSecStrdupError
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecKeySetNameEx(xmlSecKeyPtr key, const xmlChar* name, xmlSecSize
      nameSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 796
    functionDepth: 1
    functionLinenumber: 796
    functionLinenumberEnd: 801
    functionName: xmlSecKeyGetValue
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecKeyGetValue(xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:814,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:817,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - key
    - value
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 812
    functionDepth: 1
    functionLinenumber: 812
    functionLinenumberEnd: 823
    functionName: xmlSecKeySetValue
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    linkageType: ''
    returnType: int
    signature: int xmlSecKeySetValue(xmlSecKeyPtr key, xmlSecKeyDataPtr value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:835,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/keys.c:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 841
    functionName: xmlSecKeyGetSize
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecKeyGetSize(xmlSecKeyPtr key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:856,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:857,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keys.c:866,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keys.c:868,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - key
    - dataId
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 853
    functionDepth: 2
    functionLinenumber: 853
    functionLinenumberEnd: 875
    functionName: xmlSecKeyGetData
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecKeyGetData(xmlSecKeyPtr key, xmlSecKeyDataId
      dataId)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:891,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:892,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/keys.c:894,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/keys.c:899,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keys.c:901,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keys.c:903,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:903,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/keys.c:907,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keys.c:909,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keys.c:911,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:911,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:912,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - key
    - dataId
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 886
    functionDepth: 3
    functionLinenumber: 886
    functionLinenumberEnd: 917
    functionName: xmlSecKeyEnsureData
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyAdoptData
    - xmlSecKeyDataCreate
    - xmlSecKeyGetData
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecKeyEnsureData(xmlSecKeyPtr key, xmlSecKeyDataId
      dataId)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:934,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:935,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keys.c:935,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:940,1
    - Dst: xmlSecPtrListCreate
      Src: /src/xmlsec/src/keys.c:947,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:949,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keys.c:955,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keys.c:957,1
    - Dst: xmlSecPtrListSet
      Src: /src/xmlsec/src/keys.c:959,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keys.c:963,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - key
    - data
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 929
    functionDepth: 2
    functionLinenumber: 929
    functionLinenumberEnd: 964
    functionName: xmlSecKeyAdoptData
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCreate
    - xmlSecKeyDataDestroy
    - xmlSecPtrListSet
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyAdoptData(xmlSecKeyPtr key, xmlSecKeyDataPtr data)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:975,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keys.c:975,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:976,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:978,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:979,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:983,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:984,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:985,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:986,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:987,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:988,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:989,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:991,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:995,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:997,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:999,1
    - Dst: difftime
      Src: /src/xmlsec/src/keys.c:1000,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1001,1
    - Dst: difftime
      Src: /src/xmlsec/src/keys.c:1002,1
    - Dst: xmlSecKeyDataDebugDump
      Src: /src/xmlsec/src/keys.c:1005,1
    - Dst: xmlSecPtrListDebugDump
      Src: /src/xmlsec/src/keys.c:1008,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - key
    - output
    argTypes:
    - xmlSecKeyPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 973
    functionDepth: 2
    functionLinenumber: 973
    functionLinenumberEnd: 1010
    functionName: xmlSecKeyDebugDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyIsValid
    - xmlSecPtrListDebugDump
    - difftime
    - xmlSecKeyGetType
    - xmlSecAssert
    - xmlSecKeyDataDebugDump
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDebugDump(xmlSecKeyPtr key, FILE *output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:1021,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keys.c:1021,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keys.c:1022,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1024,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1026,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keys.c:1027,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1028,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1030,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:1031,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1032,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:1033,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1034,1
    - Dst: xmlSecKeyGetType
      Src: /src/xmlsec/src/keys.c:1035,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1036,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1038,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1040,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1042,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keys.c:1043,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1044,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1047,1
    - Dst: difftime
      Src: /src/xmlsec/src/keys.c:1048,1
    - Dst: difftime
      Src: /src/xmlsec/src/keys.c:1049,1
    - Dst: xmlSecKeyDataDebugXmlDump
      Src: /src/xmlsec/src/keys.c:1053,1
    - Dst: xmlSecPtrListDebugXmlDump
      Src: /src/xmlsec/src/keys.c:1056,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keys.c:1059,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - key
    - output
    argTypes:
    - xmlSecKeyPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1019
    functionDepth: 2
    functionLinenumber: 1019
    functionLinenumberEnd: 1060
    functionName: xmlSecKeyDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyIsValid
    - xmlSecKeyDataDebugXmlDump
    - difftime
    - xmlSecPtrListDebugXmlDump
    - xmlSecKeyGetType
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDebugXmlDump(xmlSecKeyPtr key, FILE *output)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1078,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/keys.c:1080,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1082,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1083,1
    - Dst: xmlSecKeyDataGenerate
      Src: /src/xmlsec/src/keys.c:1087,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/keys.c:1089,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1090,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:1092,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/keys.c:1096,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1098,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1099,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:1100,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keys.c:1104,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1106,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1107,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keys.c:1108,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - dataId
    - sizeBits
    - type
    argTypes:
    - xmlSecKeyDataId
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1072
    functionDepth: 4
    functionLinenumber: 1072
    functionLinenumberEnd: 1114
    functionName: xmlSecKeyGenerate
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecKeyDataGenerate
    - xmlSecInternalError
    - xmlSecKeySetValue
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyGenerate(xmlSecKeyDataId dataId, xmlSecSize sizeBits,
      xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1130,1
    - Dst: xmlSecKeyDataIdListFindByName
      Src: /src/xmlsec/src/keys.c:1132,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/src/keys.c:1132,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keys.c:1134,1
    - Dst: xmlSecKeyGenerate
      Src: /src/xmlsec/src/keys.c:1138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - name
    - sizeBits
    - type
    argTypes:
    - xmlChar*
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1126
    functionDepth: 5
    functionLinenumber: 1126
    functionLinenumberEnd: 1139
    functionName: xmlSecKeyGenerateByName
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyGenerate
    - xmlSecAssert2
    - xmlSecKeyDataIdsGet
    - xmlSecKeyDataIdListFindByName
    - xmlSecOtherError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyGenerateByName(const xmlChar* name, xmlSecSize
      sizeBits, xmlSecKeyDataType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1157,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/keys.c:1160,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1162,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1163,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/keys.c:1167,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1169,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1170,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1171,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/keys.c:1176,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keys.c:1177,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keys.c:1178,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1181,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1182,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keys.c:1183,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1184,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keys.c:1187,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - dataId
    - buffer
    argTypes:
    - xmlSecKeyDataId
    - xmlSecBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1150
    functionDepth: 4
    functionLinenumber: 1150
    functionLinenumberEnd: 1190
    functionName: xmlSecKeyReadBuffer
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyCreate
    - xmlSecBufferGetSize
    - xmlSecKeyInfoCtxInitialize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinRead
    - xmlSecKeyInfoCtxFinalize
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyReadBuffer(xmlSecKeyDataId dataId, xmlSecBuffer*
      buffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1208,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keys.c:1211,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1213,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1214,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/keys.c:1218,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keys.c:1220,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1221,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keys.c:1223,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1224,1
    - Dst: xmlSecKeyReadBuffer
      Src: /src/xmlsec/src/keys.c:1228,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keys.c:1230,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1231,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keys.c:1233,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1234,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - dataId
    - filename
    argTypes:
    - xmlSecKeyDataId
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1201
    functionDepth: 5
    functionLinenumber: 1201
    functionLinenumberEnd: 1240
    functionName: xmlSecKeyReadBinaryFile
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyReadBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyReadBinaryFile(xmlSecKeyDataId dataId, const
      char* filename)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1260,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keys.c:1263,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1265,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1266,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/keys.c:1270,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1271,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1272,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1273,1
    - Dst: xmlSecKeyReadBuffer
      Src: /src/xmlsec/src/keys.c:1277,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1279,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keys.c:1280,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1281,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keys.c:1285,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 3
    argNames:
    - dataId
    - data
    - dataSize
    argTypes:
    - xmlSecKeyDataId
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1252
    functionDepth: 5
    functionLinenumber: 1252
    functionLinenumberEnd: 1287
    functionName: xmlSecKeyReadMemory
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyReadBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecBufferAppend
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyReadMemory(xmlSecKeyDataId dataId, const xmlSecByte*
      data, xmlSecSize dataSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keys.c:1304,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/keys.c:1307,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1309,1
    - Dst: xmlSecKeyInfoNodeRead
      Src: /src/xmlsec/src/keys.c:1314,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keys.c:1316,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keys.c:1319,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keys.c:1319,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1320,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keys.c:1324,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/keys.c:1325,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1329,1
    - Dst: xmlSecKeysMngrFindKey
      Src: /src/xmlsec/src/keys.c:1333,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keys.c:1335,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keys.c:1338,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keys.c:1341,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keys.c:1344,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - keyInfoNode
    - keyInfoCtx
    argTypes:
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1299
    functionDepth: 4
    functionLinenumber: 1299
    functionLinenumberEnd: 1346
    functionName: xmlSecKeysMngrGetKey
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyInfoNodeRead
    - xmlSecKeysMngrFindKey
    - xmlSecKeyCreate
    - xmlSecNodeGetName
    - xmlSecKeyMatch
    - xmlSecKeyDestroy
    - xmlSecOtherError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeysMngrGetKey(xmlNodePtr keyInfoNode, xmlSecKeyInfoCtxPtr
      keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: xmlSecKeyPtrListGetKlass
    functionSourceFile: /src/xmlsec/src/keys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecKeyPtrListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionName: xmlSecErrorsInit
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecErrorsInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionName: xmlSecErrorsShutdown
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecErrorsShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - xmlSecErrorsCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionName: xmlSecErrorsSetCallback
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecErrorsSetCallback(xmlSecErrorsCallback callback)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsGetMsg
      Src: /src/xmlsec/src/errors.c:159,1
    - Dst: xmlSecErrorsGetCode
      Src: /src/xmlsec/src/errors.c:160,1
    - Dst: xmlSecErrorsGetMsg
      Src: /src/xmlsec/src/errors.c:161,1
    - Dst: xmlGenericError
      Src: /src/xmlsec/src/errors.c:165,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 7
    argNames:
    - file
    - line
    - func
    - errorObject
    - errorSubject
    - reason
    - msg
    argTypes:
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 176
    functionName: xmlSecErrorsDefaultCallback
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsGetMsg
    - xmlGenericError
    - xmlSecErrorsGetCode
    linkageType: ''
    returnType: void
    signature: "void xmlSecErrorsDefaultCallback(const char* file, int line, const
      char* func,\n                            const char* errorObject, const char*
      errorSubject,\n                            int reason, const char* msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enabled
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: xmlSecErrorsDefaultCallbackEnableOutput
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecErrorsDefaultCallbackEnableOutput(int enabled)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pos
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 206
    functionName: xmlSecErrorsGetCode
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecErrorsGetCode(xmlSecSize pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pos
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 224
    functionName: xmlSecErrorsGetMsg
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecErrorsGetMsg(xmlSecSize pos)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/xmlsec/src/errors.c:252,1
    - Dst: xmlStrVPrintf
      Src: /src/xmlsec/src/errors.c:253,1
    - Dst: memcpy
      Src: /src/xmlsec/src/errors.c:256,1
    - Dst: va_end
      Src: /src/xmlsec/src/errors.c:259,1
    - Dst: xmlSecErrorsClbk
      Src: /src/xmlsec/src/errors.c:263,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 7
    argNames:
    - file
    - line
    - func
    - errorObject
    - errorSubject
    - reason
    - msg
    argTypes:
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 265
    functionName: xmlSecError
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached:
    - va_end
    - xmlStrVPrintf
    - va_start
    - xmlSecErrorsClbk
    - memcpy
    linkageType: ''
    returnType: void
    signature: "void xmlSecError(const char* file, int line, const char* func,\n            const
      char* errorObject, const char* errorSubject,\n            int reason, const
      char* msg, ...)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enabled
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: xmlSecErrorsPrintCryptoLibraryLogOnExitSet
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecErrorsPrintCryptoLibraryLogOnExitSet(int enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 287
    functionName: xmlSecErrorsPrintCryptoLibraryLogOnExitIsEnabled
    functionSourceFile: /src/xmlsec/src/errors.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecErrorsPrintCryptoLibraryLogOnExitIsEnabled(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: xmlSecTransformEnvelopedGetKlass
    functionSourceFile: /src/xmlsec/src/enveloped.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformEnvelopedGetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/enveloped.c:107,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/enveloped.c:107,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/enveloped.c:108,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/enveloped.c:109,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/enveloped.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/enveloped.c:111,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/enveloped.c:114,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/enveloped.c:115,1
    - Dst: xmlSecFindParent
      Src: /src/xmlsec/src/enveloped.c:121,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/enveloped.c:123,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/enveloped.c:125,1
    - Dst: xmlSecNodeSetGetChildren
      Src: /src/xmlsec/src/enveloped.c:129,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/enveloped.c:131,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/enveloped.c:132,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/enveloped.c:134,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/enveloped.c:134,1
    - Dst: xmlSecNodeSetAdd
      Src: /src/xmlsec/src/enveloped.c:139,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/enveloped.c:141,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/enveloped.c:142,1
    - Dst: xmlSecNodeSetDestroy
      Src: /src/xmlsec/src/enveloped.c:143,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 101
    functionDepth: 4
    functionLinenumber: 101
    functionLinenumberEnd: 148
    functionName: xmlSecTransformEnvelopedExecute
    functionSourceFile: /src/xmlsec/src/enveloped.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecNodeSetAdd
    - xmlSecNodeSetGetChildren
    - xmlSecNodeNotFoundError
    - xmlSecTransformGetName
    - xmlSecNodeGetName
    - xmlSecNodeSetDestroy
    - xmlSecFindParent
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformEnvelopedExecute(xmlSecTransformPtr transform,
      int last,\n                                 xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:102,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/dl.c:105,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/dl.c:107,1
    - Dst: memset
      Src: /src/xmlsec/src/dl.c:110,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/dl.c:112,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/dl.c:114,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:115,1
    - Dst: xmlSecCryptoDLLibraryConstructFilename
      Src: /src/xmlsec/src/dl.c:119,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:121,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:122,1
    - Dst: xmlSecCryptoDLLibraryConstructGetFunctionsName
      Src: /src/xmlsec/src/dl.c:126,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:128,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:129,1
    - Dst: lt_dlopenext
      Src: /src/xmlsec/src/dl.c:134,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:136,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:137,1
    - Dst: XMLSEC_PTR_TO_FUNC
      Src: /src/xmlsec/src/dl.c:141,1
    - Dst: lt_dlsym
      Src: /src/xmlsec/src/dl.c:142,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:145,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:146,1
    - Dst: LoadLibraryA
      Src: /src/xmlsec/src/dl.c:153,1
    - Dst: xmlSecWin32ConvertUtf8ToUnicode
      Src: /src/xmlsec/src/dl.c:155,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:157,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:158,1
    - Dst: LoadPackagedLibrary
      Src: /src/xmlsec/src/dl.c:161,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:162,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:165,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:166,1
    - Dst: XMLSEC_PTR_TO_FUNC
      Src: /src/xmlsec/src/dl.c:170,1
    - Dst: GetProcAddress
      Src: /src/xmlsec/src/dl.c:171,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:177,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:178,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:184,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:185,1
    - Dst: getFunctions
      Src: /src/xmlsec/src/dl.c:189,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:191,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:192,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 69
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 197
    functionName: xmlSecCryptoDLLibraryCreate
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - lt_dlopenext
    - lt_dlsym
    - LoadPackagedLibrary
    - xmlSecCryptoDLLibraryDestroy
    - xmlFree
    - XMLSEC_PTR_TO_FUNC
    - xmlMalloc
    - xmlSecCryptoDLLibraryConstructFilename
    - xmlSecStrdupError
    - xmlSecIOError
    - xmlSecWin32ConvertUtf8ToUnicode
    - xmlSecInternalError
    - xmlSecAssert2
    - getFunctions
    - xmlSecMallocError
    - memset
    - xmlSecCryptoDLLibraryConstructGetFunctionsName
    - GetProcAddress
    - LoadLibraryA
    linkageType: ''
    returnType: xmlSecCryptoDLLibraryPtr
    signature: xmlSecCryptoDLLibraryPtr xmlSecCryptoDLLibraryCreate(const xmlChar*
      name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/dl.c:201,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:204,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:208,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:212,1
    - Dst: lt_dlclose
      Src: /src/xmlsec/src/dl.c:219,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:221,1
    - Dst: FreeLibrary
      Src: /src/xmlsec/src/dl.c:231,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:233,1
    - Dst: memset
      Src: /src/xmlsec/src/dl.c:239,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:240,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - lib
    argTypes:
    - xmlSecCryptoDLLibraryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 241
    functionName: xmlSecCryptoDLLibraryDestroy
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - lt_dlclose
    - FreeLibrary
    - xmlSecAssert
    - xmlSecIOError
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecCryptoDLLibraryDestroy(xmlSecCryptoDLLibraryPtr lib)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:246,1
    - Dst: xmlSecCryptoDLLibraryCreate
      Src: /src/xmlsec/src/dl.c:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - lib
    argTypes:
    - xmlSecCryptoDLLibraryPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 243
    functionDepth: 3
    functionLinenumber: 243
    functionLinenumberEnd: 249
    functionName: xmlSecCryptoDLLibraryDuplicate
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecCryptoDLLibraryCreate
    linkageType: ''
    returnType: xmlSecCryptoDLLibraryPtr
    signature: xmlSecCryptoDLLibraryPtr xmlSecCryptoDLLibraryDuplicate(xmlSecCryptoDLLibraryPtr
      lib)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:259,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/dl.c:261,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/dl.c:262,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/dl.c:263,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/dl.c:265,1
    - Dst: return
      Src: /src/xmlsec/src/dl.c:265,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/dl.c:267,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/dl.c:269,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/dl.c:273,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/dl.c:275,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 281
    functionName: xmlSecCryptoDLLibraryConstructFilename
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecXmlError
    - return
    - xmlMalloc
    - xmlSecStrlen
    - xmlStrPrintf
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecCryptoDLLibraryConstructFilename(const xmlChar* name)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:292,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/dl.c:294,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/dl.c:294,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/dl.c:295,1
    - Dst: return
      Src: /src/xmlsec/src/dl.c:295,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/dl.c:297,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/dl.c:299,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/dl.c:303,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/dl.c:305,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/dl.c:306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 311
    functionName: xmlSecCryptoDLLibraryConstructGetFunctionsName
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecXmlError
    - return
    - xmlMalloc
    - xmlStrPrintf
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecCryptoDLLibraryConstructGetFunctionsName(const xmlChar* name)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionName: xmlSecCryptoDLLibrariesListGetKlass
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecCryptoDLLibrariesListGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:323,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/dl.c:323,1
    - Dst: xmlSecCryptoDLLibrariesListGetKlass
      Src: /src/xmlsec/src/dl.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:325,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/dl.c:327,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/dl.c:329,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/dl.c:330,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - list
    - name
    - pos
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 336
    functionName: xmlSecCryptoDLLibrariesListFindByName
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecCryptoDLLibrariesListGetKlass
    - xmlStrcmp
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLLibrariesListFindByName(xmlSecPtrListPtr list, const
      xmlChar* name, xmlSecSize* pos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/dl.c:358,1
    - Dst: xmlSecCryptoDLLibrariesListGetKlass
      Src: /src/xmlsec/src/dl.c:359,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:361,1
    - Dst: lt_dlinit
      Src: /src/xmlsec/src/dl.c:367,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 354
    functionDepth: 2
    functionLinenumber: 354
    functionLinenumberEnd: 375
    functionName: xmlSecCryptoDLInit
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecCryptoDLLibrariesListGetKlass
    - xmlSecPtrListInitialize
    - lt_dlinit
    - xmlSecIOError
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLInit(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/dl.c:390,1
    - Dst: lt_dlexit
      Src: /src/xmlsec/src/dl.c:393,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/dl.c:395,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/dl.c:399,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 386
    functionDepth: 2
    functionLinenumber: 386
    functionLinenumberEnd: 403
    functionName: xmlSecCryptoDLShutdown
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - lt_dlexit
    - UNREFERENCED_PARAMETER
    - xmlSecIOError
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLShutdown(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoDLGetLibraryFunctions
      Src: /src/xmlsec/src/dl.c:422,1
    - Dst: xmlSecGetDefaultCrypto
      Src: /src/xmlsec/src/dl.c:422,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:424,1
    - Dst: xmlSecCryptoDLSetFunctions
      Src: /src/xmlsec/src/dl.c:428,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:430,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - crypto
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 416
    functionDepth: 1
    functionLinenumber: 416
    functionLinenumberEnd: 435
    functionName: xmlSecCryptoDLLoadLibrary
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecGetDefaultCrypto
    - xmlSecInternalError
    - xmlSecCryptoDLSetFunctions
    - xmlSecCryptoDLGetLibraryFunctions
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLLoadLibrary(const xmlChar* crypto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:453,1
    - Dst: xmlSecCryptoDLLibrariesListFindByName
      Src: /src/xmlsec/src/dl.c:455,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/dl.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:458,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:459,1
    - Dst: xmlSecCryptoDLLibraryCreate
      Src: /src/xmlsec/src/dl.c:463,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/dl.c:465,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/dl.c:466,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/dl.c:470,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/dl.c:472,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/dl.c:473,1
    - Dst: xmlSecCryptoDLLibraryDestroy
      Src: /src/xmlsec/src/dl.c:474,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - crypto
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 447
    functionDepth: 3
    functionLinenumber: 447
    functionLinenumberEnd: 479
    functionName: xmlSecCryptoDLGetLibraryFunctions
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecCryptoDLLibraryDestroy
    - xmlSecPtrListAdd
    - xmlSecCryptoDLLibraryCreate
    - xmlSecCryptoDLLibrariesListFindByName
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoDLGetLibraryFunctions(const
      xmlChar* crypto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:498,1
    - Dst: xmlSecCryptoDLLibrariesListFindByName
      Src: /src/xmlsec/src/dl.c:500,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/dl.c:506,1
    - Dst: xmlSecPtrListRemove
      Src: /src/xmlsec/src/dl.c:511,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/dl.c:513,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - crypto
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 492
    functionDepth: 3
    functionLinenumber: 492
    functionLinenumberEnd: 518
    functionName: xmlSecCryptoDLUnloadLibrary
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListRemove
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecCryptoDLLibrariesListFindByName
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLUnloadLibrary(const xmlChar* crypto)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - functions
    argTypes:
    - xmlSecCryptoDLFunctionsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 535
    functionName: xmlSecCryptoDLSetFunctions
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLSetFunctions(xmlSecCryptoDLFunctionsPtr functions)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 547
    functionName: xmlSecCryptoDLGetFunctions
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 107
    functionsReached: []
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoDLGetFunctions(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 558
    functionName: XMLSEC_REGISTER_KEY_DATA
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_REGISTER_KEY_DATA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 564
    functionName: XMLSEC_REGISTER_DISABLED_KEY_DATA
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_REGISTER_DISABLED_KEY_DATA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 570
    functionName: XMLSEC_REGISTER_TRANSFORM
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_REGISTER_TRANSFORM(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/dl.c:581,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:588,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:589,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:590,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:591,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:592,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:593,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:594,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:595,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:596,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:597,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:598,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:599,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:600,1
    - Dst: XMLSEC_REGISTER_KEY_DATA
      Src: /src/xmlsec/src/dl.c:601,1
    - Dst: XMLSEC_REGISTER_DISABLED_KEY_DATA
      Src: /src/xmlsec/src/dl.c:604,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:612,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:613,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:614,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:615,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:617,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:618,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:619,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:621,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:623,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:624,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:625,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:627,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:629,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:631,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:632,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:633,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:635,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:637,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:638,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:640,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:642,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:644,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:646,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:647,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:648,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:649,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:651,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:652,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:653,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:654,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:656,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:658,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:660,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:662,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:663,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:664,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:665,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:667,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:669,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:671,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:673,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:675,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:677,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:679,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:680,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:681,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:682,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:684,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:686,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:687,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:688,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:689,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:691,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:692,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:693,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:694,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:696,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:698,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:699,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:701,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:702,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:703,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:705,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:707,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:708,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:709,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:710,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:712,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:713,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:714,1
    - Dst: XMLSEC_REGISTER_TRANSFORM
      Src: /src/xmlsec/src/dl.c:715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 89
    argCount: 1
    argNames:
    - functions
    argTypes:
    - struct _xmlSecCryptoDLFunctions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 719
    functionName: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    functionSourceFile: /src/xmlsec/src/dl.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_REGISTER_TRANSFORM
    - XMLSEC_REGISTER_KEY_DATA
    - XMLSEC_REGISTER_DISABLED_KEY_DATA
    linkageType: ''
    returnType: int
    signature: int xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(struct _xmlSecCryptoDLFunctions*
      functions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferCreate
      Src: /src/xmlsec/src/bn.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionName: xmlSecBnCreate
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferCreate
    linkageType: ''
    returnType: xmlSecBnPtr
    signature: xmlSecBnPtr xmlSecBnCreate(xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/bn.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: xmlSecBnDestroy
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferDestroy
    linkageType: ''
    returnType: void
    signature: void xmlSecBnDestroy(xmlSecBnPtr bn)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/bn.c:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bn
    - size
    argTypes:
    - xmlSecBnPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 102
    functionDepth: 2
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionName: xmlSecBnInitialize
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecBnInitialize(xmlSecBnPtr bn, xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/bn.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: xmlSecBnFinalize
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecBnFinalize(xmlSecBnPtr bn)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionName: xmlSecBnGetData
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferGetData
    linkageType: ''
    returnType: xmlSecByte
    signature: 'xmlSecByte *

      xmlSecBnGetData(xmlSecBnPtr bn)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/bn.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bn
    - data
    - size
    argTypes:
    - xmlSecBnPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 141
    functionDepth: 3
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionName: xmlSecBnSetData
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecBnSetData(xmlSecBnPtr bn, const xmlSecByte* data, xmlSecSize
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: xmlSecBnGetSize
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecBnGetSize(xmlSecBnPtr bn)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/bn.c:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: xmlSecBnZero
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: void
    signature: void xmlSecBnZero(xmlSecBnPtr bn)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:192,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/bn.c:194,1
    - Dst: return
      Src: /src/xmlsec/src/bn.c:194,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/bn.c:197,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:209,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/bn.c:210,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:212,1
    - Dst: isspace
      Src: /src/xmlsec/src/bn.c:224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:239,1
    - Dst: isspace
      Src: /src/xmlsec/src/bn.c:247,1
    - Dst: xmlSecInvalidIntegerDataError2
      Src: /src/xmlsec/src/bn.c:253,1
    - Dst: xmlSecBnMul
      Src: /src/xmlsec/src/bn.c:257,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:259,1
    - Dst: xmlSecBnAdd
      Src: /src/xmlsec/src/bn.c:263,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:265,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:271,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:272,1
    - Dst: xmlSecBufferPrepend
      Src: /src/xmlsec/src/bn.c:275,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:277,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:284,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:285,1
    - Dst: xmlSecBnAdd
      Src: /src/xmlsec/src/bn.c:290,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:292,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 79
    argCount: 3
    argNames:
    - bn
    - str
    - base
    argTypes:
    - xmlSecBnPtr
    - xmlChar*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 180
    functionDepth: 3
    functionLinenumber: 180
    functionLinenumberEnd: 298
    functionName: xmlSecBnFromString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnAdd
    - xmlSecAssert2
    - xmlSecInvalidIntegerDataError2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - isspace
    - xmlSecStrlen
    - xmlSecBnMul
    - xmlSecBufferPrepend
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar* str, xmlSecSize
      base)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:324,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/bn.c:326,1
    - Dst: return
      Src: /src/xmlsec/src/bn.c:326,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:329,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:330,1
    - Dst: xmlSecBnInitialize
      Src: /src/xmlsec/src/bn.c:331,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:333,1
    - Dst: xmlSecBnSetData
      Src: /src/xmlsec/src/bn.c:337,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:339,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:340,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:345,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:346,1
    - Dst: xmlSecBnAdd
      Src: /src/xmlsec/src/bn.c:349,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:351,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:352,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/bn.c:370,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/bn.c:372,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:373,1
    - Dst: memset
      Src: /src/xmlsec/src/bn.c:376,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:378,1
    - Dst: xmlSecBnDiv
      Src: /src/xmlsec/src/bn.c:379,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:380,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:381,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:389,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:409,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 68
    argCount: 2
    argNames:
    - bn
    - base
    argTypes:
    - xmlSecBnPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 310
    functionDepth: 4
    functionLinenumber: 310
    functionLinenumberEnd: 411
    functionName: xmlSecBnToString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnSetData
    - xmlSecBnAdd
    - xmlFree
    - xmlSecAssert2
    - xmlSecBnFinalize
    - xmlSecInternalError2
    - xmlSecBnDiv
    - xmlSecBufferGetData
    - return
    - xmlMalloc
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecBnInitialize
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBnFromString
      Src: /src/xmlsec/src/bn.c:424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bn
    - str
    argTypes:
    - xmlSecBnPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 422
    functionDepth: 4
    functionLinenumber: 422
    functionLinenumberEnd: 425
    functionName: xmlSecBnFromHexString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnFromString
    linkageType: ''
    returnType: int
    signature: int xmlSecBnFromHexString(xmlSecBnPtr bn, const xmlChar* str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBnToString
      Src: /src/xmlsec/src/bn.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 436
    functionDepth: 5
    functionLinenumber: 436
    functionLinenumberEnd: 439
    functionName: xmlSecBnToHexString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnToString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecBnToHexString(xmlSecBnPtr bn)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBnFromString
      Src: /src/xmlsec/src/bn.c:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bn
    - str
    argTypes:
    - xmlSecBnPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 450
    functionDepth: 4
    functionLinenumber: 450
    functionLinenumberEnd: 453
    functionName: xmlSecBnFromDecString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnFromString
    linkageType: ''
    returnType: int
    signature: int xmlSecBnFromDecString(xmlSecBnPtr bn, const xmlChar* str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBnToString
      Src: /src/xmlsec/src/bn.c:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 464
    functionDepth: 5
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionName: xmlSecBnToDecString
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnToString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecBnToDecString(xmlSecBnPtr bn)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:487,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:493,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:497,1
    - Dst: xmlSecBufferPrepend
      Src: /src/xmlsec/src/bn.c:508,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:510,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - bn
    - multiplier
    argTypes:
    - xmlSecBnPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 478
    functionDepth: 3
    functionLinenumber: 478
    functionLinenumberEnd: 516
    functionName: xmlSecBnMul
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferPrepend
    linkageType: ''
    returnType: int
    signature: int xmlSecBnMul(xmlSecBnPtr bn, int multiplier)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:536,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:537,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:543,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:556,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/bn.c:563,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/bn.c:565,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - bn
    - divider
    - mod
    argTypes:
    - xmlSecBnPtr
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 528
    functionDepth: 2
    functionLinenumber: 528
    functionLinenumberEnd: 571
    functionName: xmlSecBnDiv
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 1
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBnDiv(xmlSecBnPtr bn, int divider, int* mod)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:590,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/bn.c:596,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:598,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:599,1
    - Dst: xmlSecBufferPrepend
      Src: /src/xmlsec/src/bn.c:610,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:612,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/bn.c:617,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:618,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - bn
    - delta
    argTypes:
    - xmlSecBnPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 582
    functionDepth: 3
    functionLinenumber: 582
    functionLinenumberEnd: 630
    functionName: xmlSecBnAdd
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferPrepend
    linkageType: ''
    returnType: int
    signature: int xmlSecBnAdd(xmlSecBnPtr bn, int delta)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/bn.c:642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bn
    argTypes:
    - xmlSecBnPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 3
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: xmlSecBnReverse
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferReverse
    linkageType: ''
    returnType: int
    signature: int xmlSecBnReverse(xmlSecBnPtr bn)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:661,1
    - Dst: xmlSecBnGetData
      Src: /src/xmlsec/src/bn.c:663,1
    - Dst: xmlSecBnGetSize
      Src: /src/xmlsec/src/bn.c:664,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:688,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:689,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:690,1
    - Dst: memcmp
      Src: /src/xmlsec/src/bn.c:692,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 31
    argCount: 3
    argNames:
    - bn
    - data
    - dataSize
    argTypes:
    - xmlSecBnPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 656
    functionDepth: 3
    functionLinenumber: 656
    functionLinenumberEnd: 693
    functionName: xmlSecBnCompare
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBnGetData
    - memcmp
    - xmlSecBnGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBnCompare(xmlSecBnPtr bn, const xmlSecByte* data, xmlSecSize
      dataSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:712,1
    - Dst: xmlSecBnGetData
      Src: /src/xmlsec/src/bn.c:714,1
    - Dst: xmlSecBnGetSize
      Src: /src/xmlsec/src/bn.c:715,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:738,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:739,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:740,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 38
    argCount: 3
    argNames:
    - bn
    - data
    - dataSize
    argTypes:
    - xmlSecBnPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 706
    functionDepth: 3
    functionLinenumber: 706
    functionLinenumberEnd: 750
    functionName: xmlSecBnCompareReverse
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBnGetData
    - xmlSecBnGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecBnCompareReverse(xmlSecBnPtr bn, const xmlSecByte* data,
      xmlSecSize dataSize)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:768,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:769,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/bn.c:773,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:775,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/bn.c:780,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:782,1
    - Dst: xmlSecBnFromHexString
      Src: /src/xmlsec/src/bn.c:785,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:787,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:788,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:791,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/bn.c:794,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:796,1
    - Dst: xmlSecBnFromDecString
      Src: /src/xmlsec/src/bn.c:799,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:801,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:802,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:805,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/bn.c:810,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:812,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 4
    argNames:
    - bn
    - cur
    - format
    - reverse
    argTypes:
    - xmlSecBnPtr
    - xmlNodePtr
    - xmlSecBnFormat
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 763
    functionDepth: 5
    functionLinenumber: 763
    functionLinenumberEnd: 817
    functionName: xmlSecBnGetNodeValue
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecBnFromDecString
    - xmlSecBnFromHexString
    linkageType: ''
    returnType: int
    signature: int xmlSecBnGetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat
      format, int reverse)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:836,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:837,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/bn.c:840,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:842,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/bn.c:848,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/bn.c:848,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/bn.c:853,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/bn.c:853,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:855,1
    - Dst: xmlSecBnToHexString
      Src: /src/xmlsec/src/bn.c:860,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:862,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:863,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/bn.c:866,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:867,1
    - Dst: xmlSecBnToDecString
      Src: /src/xmlsec/src/bn.c:870,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:872,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:873,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/bn.c:876,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/bn.c:877,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/bn.c:882,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/bn.c:882,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 5
    argNames:
    - bn
    - cur
    - format
    - reverse
    - addLineBreaks
    argTypes:
    - xmlSecBnPtr
    - xmlNodePtr
    - xmlSecBnFormat
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 831
    functionDepth: 11
    functionLinenumber: 831
    functionLinenumberEnd: 886
    functionName: xmlSecBnSetNodeValue
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlFree
    - xmlSecBnToHexString
    - xmlSecAssert2
    - xmlNodeAddContent
    - xmlNodeSetContent
    - xmlSecBase64GetDefaultLineSize
    - xmlSecBufferBase64NodeContentWrite
    - xmlSecBnToDecString
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: int
    signature: int xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat
      format, int reverse, int addLineBreaks)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:910,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/bn.c:911,1
    - Dst: xmlSecBnInitialize
      Src: /src/xmlsec/src/bn.c:913,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:915,1
    - Dst: xmlSecBnSetData
      Src: /src/xmlsec/src/bn.c:919,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:921,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:922,1
    - Dst: xmlSecBnSetNodeValue
      Src: /src/xmlsec/src/bn.c:926,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/bn.c:928,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:929,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/bn.c:933,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 6
    argNames:
    - data
    - dataSize
    - cur
    - format
    - reverse
    - addLineBreaks
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlNodePtr
    - xmlSecBnFormat
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 903
    functionDepth: 12
    functionLinenumber: 903
    functionLinenumberEnd: 935
    functionName: xmlSecBnBlobSetNodeValue
    functionSourceFile: /src/xmlsec/src/bn.c
    functionUses: 0
    functionsReached:
    - xmlSecBnSetNodeValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBnFinalize
    - xmlSecBnSetData
    - xmlSecBnInitialize
    linkageType: ''
    returnType: int
    signature: "int xmlSecBnBlobSetNodeValue(const xmlSecByte* data, xmlSecSize dataSize,\n
      \                        xmlNodePtr cur, xmlSecBnFormat format, int reverse,\n
      \                        int addLineBreaks)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmlenc.c:72,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmlenc.c:74,1
    - Dst: xmlSecEncCtxInitialize
      Src: /src/xmlsec/src/xmlenc.c:78,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:80,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/src/xmlenc.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - keysMngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 85
    functionName: xmlSecEncCtxCreate
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecEncCtxInitialize
    - xmlSecEncCtxDestroy
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecEncCtxPtr
    signature: xmlSecEncCtxPtr xmlSecEncCtxCreate(xmlSecKeysMngrPtr keysMngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:95,1
    - Dst: xmlSecEncCtxFinalize
      Src: /src/xmlsec/src/xmlenc.c:97,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: xmlSecEncCtxDestroy
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - xmlSecEncCtxFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxDestroy(xmlSecEncCtxPtr encCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: xmlSecEncCtxSetDefaults
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxSetDefaults(xmlSecEncCtxPtr encCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:127,1
    - Dst: memset
      Src: /src/xmlsec/src/xmlenc.c:129,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/xmlenc.c:132,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:134,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/xmlenc.c:138,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:140,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/xmlenc.c:145,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:147,1
    - Dst: xmlSecEncCtxSetDefaults
      Src: /src/xmlsec/src/xmlenc.c:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - encCtx
    - keysMngr
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 153
    functionName: xmlSecEncCtxInitialize
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyInfoCtxInitialize
    - xmlSecTransformCtxInitialize
    - xmlSecEncCtxSetDefaults
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxInitialize(xmlSecEncCtxPtr encCtx, xmlSecKeysMngrPtr
      keysMngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:163,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/xmlenc.c:165,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/xmlenc.c:167,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/xmlenc.c:168,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/xmlenc.c:169,1
    - Dst: memset
      Src: /src/xmlsec/src/xmlenc.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 161
    functionDepth: 3
    functionLinenumber: 161
    functionLinenumberEnd: 172
    functionName: xmlSecEncCtxFinalize
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCtxFinalize
    - xmlSecEncCtxReset
    - xmlSecAssert
    - xmlSecKeyInfoCtxFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxFinalize(xmlSecEncCtxPtr encCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:182,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/xmlenc.c:184,1
    - Dst: xmlSecKeyInfoCtxReset
      Src: /src/xmlsec/src/xmlenc.c:185,1
    - Dst: xmlSecKeyInfoCtxReset
      Src: /src/xmlsec/src/xmlenc.c:186,1
    - Dst: xmlFreeNodeList
      Src: /src/xmlsec/src/xmlenc.c:195,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/xmlenc.c:200,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:205,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:210,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:215,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:220,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:225,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:230,1
    - Dst: xmlSecEncCtxSetDefaults
      Src: /src/xmlsec/src/xmlenc.c:237,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 180
    functionDepth: 4
    functionLinenumber: 180
    functionLinenumberEnd: 238
    functionName: xmlSecEncCtxReset
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlFreeNodeList
    - xmlFree
    - xmlSecTransformCtxReset
    - xmlSecKeyInfoCtxReset
    - xmlSecAssert
    - xmlSecEncCtxSetDefaults
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxReset(xmlSecEncCtxPtr encCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:254,1
    - Dst: xmlSecTransformCtxCopyUserPref
      Src: /src/xmlsec/src/xmlenc.c:262,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:264,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/xmlenc.c:268,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:270,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/xmlenc.c:274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:276,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 249
    functionDepth: 3
    functionLinenumber: 249
    functionLinenumberEnd: 281
    functionName: xmlSecEncCtxCopyUserPref
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecTransformCtxCopyUserPref
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxCopyUserPref(xmlSecEncCtxPtr dst, xmlSecEncCtxPtr src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:302,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:306,1
    - Dst: xmlSecEncCtxEncDataNodeRead
      Src: /src/xmlsec/src/xmlenc.c:309,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:311,1
    - Dst: xmlSecTransformCtxBinaryExecute
      Src: /src/xmlsec/src/xmlenc.c:315,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmlenc.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:323,1
    - Dst: xmlSecEncCtxEncDataNodeWrite
      Src: /src/xmlsec/src/xmlenc.c:325,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:327,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 4
    argNames:
    - encCtx
    - tmpl
    - data
    - dataSize
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 294
    functionDepth: 5
    functionLinenumber: 294
    functionLinenumberEnd: 331
    functionName: xmlSecEncCtxBinaryEncrypt
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCtxBinaryExecute
    - xmlSecEncCtxEncDataNodeWrite
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecEncCtxEncDataNodeRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecEncCtxBinaryEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl,\n
      \                         const xmlSecByte* data, xmlSecSize dataSize)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:353,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:357,1
    - Dst: xmlSecEncCtxEncDataNodeRead
      Src: /src/xmlsec/src/xmlenc.c:360,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:362,1
    - Dst: xmlSecTransformCtxPrepare
      Src: /src/xmlsec/src/xmlenc.c:366,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:372,1
    - Dst: xmlSecTransformCreateOutputBuffer
      Src: /src/xmlsec/src/xmlenc.c:373,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:376,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:377,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:382,1
    - Dst: xmlNodeDumpOutput
      Src: /src/xmlsec/src/xmlenc.c:384,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:385,1
    - Dst: xmlNodeDumpOutput
      Src: /src/xmlsec/src/xmlenc.c:390,1
    - Dst: xmlSecInvalidStringTypeError
      Src: /src/xmlsec/src/xmlenc.c:393,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xmlenc.c:395,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/xmlenc.c:400,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmlenc.c:402,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:407,1
    - Dst: xmlSecEncCtxEncDataNodeWrite
      Src: /src/xmlsec/src/xmlenc.c:409,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:411,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:416,1
    - Dst: xmlSecReplaceNodeAndReturn
      Src: /src/xmlsec/src/xmlenc.c:419,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:421,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:422,1
    - Dst: xmlSecReplaceNode
      Src: /src/xmlsec/src/xmlenc.c:426,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:428,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:429,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:434,1
    - Dst: xmlSecReplaceContentAndReturn
      Src: /src/xmlsec/src/xmlenc.c:437,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:439,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:440,1
    - Dst: xmlSecReplaceContent
      Src: /src/xmlsec/src/xmlenc.c:444,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:446,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:447,1
    - Dst: xmlSecInvalidStringTypeError
      Src: /src/xmlsec/src/xmlenc.c:454,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 84
    argCount: 3
    argNames:
    - encCtx
    - tmpl
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 344
    functionDepth: 13
    functionLinenumber: 344
    functionLinenumberEnd: 460
    functionName: xmlSecEncCtxXmlEncrypt
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecEncCtxEncDataNodeWrite
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlStrEqual
    - xmlSecInvalidStringTypeError
    - xmlSecAssert2
    - xmlSecReplaceNodeAndReturn
    - xmlSecTransformCreateOutputBuffer
    - xmlSecReplaceNode
    - xmlSecXmlError
    - xmlSecReplaceContent
    - xmlSecReplaceContentAndReturn
    - xmlOutputBufferClose
    - xmlNodeDumpOutput
    - xmlSecTransformGetName
    - xmlSecEncCtxEncDataNodeRead
    - xmlSecNodeGetName
    - xmlSecTransformCtxPrepare
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl,
      xmlNodePtr node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:476,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:477,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:478,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:479,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:483,1
    - Dst: xmlSecTransformCtxSetUri
      Src: /src/xmlsec/src/xmlenc.c:486,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmlenc.c:488,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmlenc.c:489,1
    - Dst: xmlSecEncCtxEncDataNodeRead
      Src: /src/xmlsec/src/xmlenc.c:494,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:496,1
    - Dst: xmlSecTransformCtxExecute
      Src: /src/xmlsec/src/xmlenc.c:501,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:503,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:508,1
    - Dst: xmlSecEncCtxEncDataNodeWrite
      Src: /src/xmlsec/src/xmlenc.c:510,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:512,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 3
    argNames:
    - encCtx
    - tmpl
    - uri
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 472
    functionDepth: 6
    functionLinenumber: 472
    functionLinenumberEnd: 517
    functionName: xmlSecEncCtxUriEncrypt
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecEncCtxEncDataNodeWrite
    - xmlSecAddIDs
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecTransformCtxSetUri
    - xmlSecTransformCtxExecute
    - xmlSecEncCtxEncDataNodeRead
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxUriEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl,
      const xmlChar *uri)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:533,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:534,1
    - Dst: xmlSecEncCtxDecryptToBuffer
      Src: /src/xmlsec/src/xmlenc.c:537,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:539,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:544,1
    - Dst: xmlSecReplaceNodeBufferAndReturn
      Src: /src/xmlsec/src/xmlenc.c:547,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:547,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:549,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:550,1
    - Dst: xmlSecReplaceNodeBuffer
      Src: /src/xmlsec/src/xmlenc.c:554,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:554,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:554,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:556,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:557,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmlenc.c:563,1
    - Dst: xmlSecReplaceNodeBufferAndReturn
      Src: /src/xmlsec/src/xmlenc.c:568,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:568,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:568,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:570,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:571,1
    - Dst: xmlSecReplaceNodeBuffer
      Src: /src/xmlsec/src/xmlenc.c:575,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:575,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:575,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:577,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:578,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - encCtx
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 528
    functionDepth: 2
    functionLinenumber: 528
    functionLinenumberEnd: 586
    functionName: xmlSecEncCtxDecrypt
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecReplaceNodeBufferAndReturn
    - xmlSecReplaceNodeBuffer
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecEncCtxDecryptToBuffer
    - xmlSecNodeGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxDecrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr node)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:603,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:604,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:605,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:609,1
    - Dst: xmlSecEncCtxEncDataNodeRead
      Src: /src/xmlsec/src/xmlenc.c:611,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:613,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmlenc.c:619,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmlenc.c:621,1
    - Dst: xmlSecTransformCtxBinaryExecute
      Src: /src/xmlsec/src/xmlenc.c:625,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/xmlenc.c:625,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:627,1
    - Dst: xmlSecTransformCtxExecute
      Src: /src/xmlsec/src/xmlenc.c:631,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:640,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:644,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - encCtx
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 597
    functionDepth: 6
    functionLinenumber: 597
    functionLinenumberEnd: 647
    functionName: xmlSecEncCtxDecryptToBuffer
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCtxBinaryExecute
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlFree
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - xmlSecStrlen
    - xmlSecTransformCtxExecute
    - xmlSecEncCtxEncDataNodeRead
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecEncCtxDecryptToBuffer(xmlSecEncCtxPtr encCtx,
      xmlNodePtr node)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:654,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:655,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:656,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:660,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmlenc.c:661,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:666,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmlenc.c:667,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:674,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:675,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:676,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:677,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:678,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:679,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:681,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:682,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:683,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:684,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:686,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:689,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:692,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:693,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:699,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:700,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:702,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:706,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmlenc.c:707,1
    - Dst: xmlSecEncCtxCipherDataNodeRead
      Src: /src/xmlsec/src/xmlenc.c:711,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:713,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:716,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:719,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:720,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:726,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:727,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:731,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmlenc.c:732,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmlenc.c:734,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:738,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmlenc.c:744,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:749,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmlenc.c:751,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:754,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:755,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmlenc.c:759,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:762,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/xmlenc.c:763,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/xmlenc.c:767,1
    - Dst: xmlSecTransformSetKeyReq
      Src: /src/xmlsec/src/xmlenc.c:775,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:777,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:778,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/xmlenc.c:791,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/xmlenc.c:793,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmlenc.c:795,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:795,1
    - Dst: xmlSecEncCtxMarkAsFailed
      Src: /src/xmlsec/src/xmlenc.c:796,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/xmlenc.c:801,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:803,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:804,1
    - Dst: xmlSecTransformCtxCreateAndAppend
      Src: /src/xmlsec/src/xmlenc.c:813,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:815,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 121
    argCount: 2
    argNames:
    - encCtx
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 649
    functionDepth: 11
    functionLinenumber: 649
    functionLinenumberEnd: 823
    functionName: xmlSecEncCtxEncDataNodeRead
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 4
    functionsReached:
    - xmlGetProp
    - xmlSecGetNodeContentAndTrim
    - xmlSecEncCtxMarkAsFailed
    - xmlSecInvalidNodeContentError
    - xmlSecOtherError2
    - xmlSecNodeGetName
    - xmlSecGetNextElementNode
    - xmlSecErrorsSafeString
    - xmlSecTransformGetName
    - xmlSecTransformSetKey
    - xmlSecInternalError
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecUnexpectedNodeError
    - xmlSecCheckNodeName
    - xmlSecEncCtxCipherDataNodeRead
    - xmlSecInvalidDataError
    - xmlSecTransformCtxCreateAndAppend
    - xmlSecTransformKlassGetName
    - xmlSecInvalidNodeError
    - xmlSecTransformSetKeyReq
    - xmlSecKeyMatch
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr
      node)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:829,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:830,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:831,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:839,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:840,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:841,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/xmlenc.c:842,1
    - Dst: return
      Src: /src/xmlsec/src/xmlenc.c:842,1
    - Dst: xmlNodeSetContentLen
      Src: /src/xmlsec/src/xmlenc.c:844,1
    - Dst: xmlSecKeyInfoNodeWrite
      Src: /src/xmlsec/src/xmlenc.c:850,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:852,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 825
    functionDepth: 8
    functionLinenumber: 825
    functionLinenumberEnd: 858
    functionName: xmlSecEncCtxEncDataNodeWrite
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyInfoNodeWrite
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlNodeSetContentLen
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxEncDataNodeWrite(xmlSecEncCtxPtr encCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:865,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:866,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:868,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:871,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:872,1
    - Dst: xmlSecTransformCtxCreateAndPrepend
      Src: /src/xmlsec/src/xmlenc.c:878,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:880,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:885,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:886,1
    - Dst: xmlSecEncCtxCipherReferenceNodeRead
      Src: /src/xmlsec/src/xmlenc.c:889,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:891,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:892,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:896,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmlenc.c:900,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - encCtx
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 860
    functionDepth: 3
    functionLinenumber: 860
    functionLinenumberEnd: 904
    functionName: xmlSecEncCtxCipherDataNodeRead
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecTransformCtxCreateAndPrepend
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    - xmlSecEncCtxCipherReferenceNodeRead
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxCipherDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr
      node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:912,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:913,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmlenc.c:916,1
    - Dst: xmlSecTransformCtxSetUri
      Src: /src/xmlsec/src/xmlenc.c:917,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmlenc.c:919,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmlenc.c:920,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:921,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:924,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:926,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:929,1
    - Dst: xmlSecTransformCtxNodesListRead
      Src: /src/xmlsec/src/xmlenc.c:930,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:933,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:934,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:937,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmlenc.c:942,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - encCtx
    - node
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 906
    functionDepth: 11
    functionLinenumber: 906
    functionLinenumberEnd: 946
    functionName: xmlSecEncCtxCipherReferenceNodeRead
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecTransformCtxSetUri
    - xmlSecTransformCtxNodesListRead
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxCipherReferenceNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr
      node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:950,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - encCtx
    - failureReason
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecEncFailureReason
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 948
    functionDepth: 1
    functionLinenumber: 948
    functionLinenumberEnd: 955
    functionName: xmlSecEncCtxMarkAsFailed
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxMarkAsFailed(xmlSecEncCtxPtr encCtx, xmlSecEncFailureReason
      failureReason)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:966,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:967,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:972,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:974,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:979,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:981,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:985,1
    - Dst: xmlSecEncCtxGetFailureReasonString
      Src: /src/xmlsec/src/xmlenc.c:985,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:987,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:991,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:992,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:995,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:998,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1001,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1004,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1007,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1010,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1013,1
    - Dst: xmlSecKeyInfoCtxDebugDump
      Src: /src/xmlsec/src/xmlenc.c:1014,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1016,1
    - Dst: xmlSecKeyInfoCtxDebugDump
      Src: /src/xmlsec/src/xmlenc.c:1017,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1019,1
    - Dst: xmlSecTransformCtxDebugDump
      Src: /src/xmlsec/src/xmlenc.c:1020,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1023,1
    - Dst: xmlSecTransformDebugDump
      Src: /src/xmlsec/src/xmlenc.c:1024,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1028,1
    - Dst: xmlSecKeyDebugDump
      Src: /src/xmlsec/src/xmlenc.c:1029,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:1033,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1036,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmlenc.c:1037,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:1037,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:1038,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1040,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 2
    argNames:
    - encCtx
    - output
    argTypes:
    - xmlSecEncCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 964
    functionDepth: 3
    functionLinenumber: 964
    functionLinenumberEnd: 1042
    functionName: xmlSecEncCtxDebugDump
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCtxDebugDump
    - xmlSecTransformDebugDump
    - xmlSecEncCtxGetFailureReasonString
    - xmlSecKeyDebugDump
    - xmlSecBufferGetData
    - fwrite
    - xmlSecAssert
    - xmlSecBufferGetSize
    - fprintf
    - xmlSecKeyInfoCtxDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxDebugDump(xmlSecEncCtxPtr encCtx, FILE* output)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:1053,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmlenc.c:1054,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1059,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1061,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1066,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1068,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1072,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1073,1
    - Dst: xmlSecEncCtxGetFailureReasonString
      Src: /src/xmlsec/src/xmlenc.c:1073,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1074,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1076,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1077,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1079,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1080,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1081,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1083,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1084,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1085,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1087,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1088,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1089,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1091,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1092,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1093,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1095,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1096,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1097,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1099,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/xmlenc.c:1100,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1101,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1103,1
    - Dst: xmlSecKeyInfoCtxDebugXmlDump
      Src: /src/xmlsec/src/xmlenc.c:1104,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1105,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1107,1
    - Dst: xmlSecKeyInfoCtxDebugXmlDump
      Src: /src/xmlsec/src/xmlenc.c:1108,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1109,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1111,1
    - Dst: xmlSecTransformCtxDebugXmlDump
      Src: /src/xmlsec/src/xmlenc.c:1112,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1113,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1116,1
    - Dst: xmlSecTransformDebugXmlDump
      Src: /src/xmlsec/src/xmlenc.c:1117,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1118,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1122,1
    - Dst: xmlSecKeyDebugXmlDump
      Src: /src/xmlsec/src/xmlenc.c:1123,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1124,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:1128,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1131,1
    - Dst: fwrite
      Src: /src/xmlsec/src/xmlenc.c:1132,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:1132,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:1133,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1135,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1141,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1143,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1148,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmlenc.c:1150,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 82
    argCount: 2
    argNames:
    - encCtx
    - output
    argTypes:
    - xmlSecEncCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1051
    functionDepth: 3
    functionLinenumber: 1051
    functionLinenumberEnd: 1154
    functionName: xmlSecEncCtxDebugXmlDump
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecEncCtxGetFailureReasonString
    - fwrite
    - xmlSecTransformCtxDebugXmlDump
    - xmlSecBufferGetData
    - xmlSecAssert
    - xmlSecPrintXmlString
    - xmlSecKeyDebugXmlDump
    - xmlSecBufferGetSize
    - xmlSecKeyInfoCtxDebugXmlDump
    - fprintf
    - xmlSecTransformDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecEncCtxDebugXmlDump(xmlSecEncCtxPtr encCtx, FILE* output)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1170,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1171,1
    - Dst: xmlSecTransformCtxBinaryExecute
      Src: /src/xmlsec/src/xmlenc.c:1174,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1176,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1176,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/xmlenc.c:1181,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/xmlenc.c:1182,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1184,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1184,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/xmlenc.c:1188,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1190,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1190,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/xmlenc.c:1194,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1196,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/xmlenc.c:1197,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/xmlenc.c:1198,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - encCtx
    - keyId
    - keyInfoCtx
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecKeyDataId
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1162
    functionDepth: 5
    functionLinenumber: 1162
    functionLinenumberEnd: 1204
    functionName: xmlSecEncCtxGenerateKey
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCtxBinaryExecute
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyCreate
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecTransformGetName
    - xmlSecKeyDataBinRead
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecEncCtxGenerateKey(xmlSecEncCtxPtr encCtx, xmlSecKeyDataId
      keyId, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1251,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:1255,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:1258,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:1270,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/xmlenc.c:1271,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmlenc.c:1275,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1277,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:1277,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:1287,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:1290,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:1292,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:1296,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmlenc.c:1297,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmlenc.c:1299,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:1304,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmlenc.c:1308,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmlenc.c:1309,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmlenc.c:1311,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmlenc.c:1315,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/xmlenc.c:1320,1
    - Dst: xmlSecTransformSetKeyReq
      Src: /src/xmlsec/src/xmlenc.c:1325,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1327,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1327,1
    - Dst: xmlSecKeysMngrFindKey
      Src: /src/xmlsec/src/xmlenc.c:1331,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/xmlenc.c:1333,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/xmlenc.c:1334,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmlenc.c:1335,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1335,1
    - Dst: xmlSecEncCtxMarkAsFailed
      Src: /src/xmlsec/src/xmlenc.c:1336,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/xmlenc.c:1339,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1341,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/xmlenc.c:1341,1
    - Dst: xmlSecEncCtxGenerateKey
      Src: /src/xmlsec/src/xmlenc.c:1346,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1348,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/xmlenc.c:1354,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1356,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:1367,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmlenc.c:1370,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/xmlenc.c:1373,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 97
    argCount: 4
    argNames:
    - encCtx
    - keyId
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecKeyDataId
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1239
    functionDepth: 6
    functionLinenumber: 1239
    functionLinenumberEnd: 1376
    functionName: xmlSecEncCtxDerivedKeyGenerate
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecGetNodeContentAndTrim
    - xmlSecEncCtxMarkAsFailed
    - xmlSecInvalidNodeContentError
    - xmlSecOtherError2
    - xmlSecNodeGetName
    - xmlSecGetNextElementNode
    - xmlSecAddIDs
    - xmlFree
    - xmlSecErrorsSafeString
    - xmlSecEncCtxGenerateKey
    - xmlSecTransformGetName
    - xmlSecKeySetName
    - xmlSecKeyDestroy
    - xmlSecTransformSetKey
    - xmlSecInternalError
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecUnexpectedNodeError
    - xmlSecCheckNodeName
    - xmlSecKeysMngrFindKey
    - xmlSecInvalidNodeError
    - xmlSecTransformSetKeyReq
    - xmlSecKeyMatch
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecEncCtxDerivedKeyGenerate(xmlSecEncCtxPtr encCtx,
      xmlSecKeyDataId keyId, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1409,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1410,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:1414,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmlenc.c:1418,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1420,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:1420,1
    - Dst: xmlSecEncCtxGenerateKey
      Src: /src/xmlsec/src/xmlenc.c:1433,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 4
    argNames:
    - encCtx
    - keyId
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecEncCtxPtr
    - xmlSecKeyDataId
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1403
    functionDepth: 6
    functionLinenumber: 1403
    functionLinenumberEnd: 1441
    functionName: xmlSecEncCtxAgreementMethodGenerate
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecEncCtxGenerateKey
    - xmlSecNodeGetName
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecEncCtxAgreementMethodGenerate(xmlSecEncCtxPtr encCtx,
      xmlSecKeyDataId keyId, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1447,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1448,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmlenc.c:1450,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmlenc.c:1454,1
    - Dst: xmlSecTransformCtxNodeRead
      Src: /src/xmlsec/src/xmlenc.c:1458,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1460,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:1460,1
    - Dst: xmlSecEncCtxPtr::encMethod::id::writeNode
      Src: /src/xmlsec/src/xmlenc.c:1466,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlenc.c:1468,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/xmlenc.c:1468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - encCtx
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecEncCtxPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1474
      start: 1443
    functionDepth: 3
    functionLinenumber: 1443
    functionLinenumberEnd: 1474
    functionName: xmlSecEncCtxAgreementMethodXmlWrite
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 0
    functionsReached:
    - xmlSecEncCtxPtr::encMethod::id::writeNode
    - xmlSecInternalError
    - xmlSecAddIDs
    - xmlSecTransformCtxNodeRead
    - xmlSecAssert2
    - xmlSecNodeGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecEncCtxAgreementMethodXmlWrite(xmlSecEncCtxPtr encCtx, xmlNodePtr
      node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - failureReason
    argTypes:
    - xmlSecEncFailureReason
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1494
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1494
    functionName: xmlSecEncCtxGetFailureReasonString
    functionSourceFile: /src/xmlsec/src/xmlenc.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecEncCtxGetFailureReasonString(xmlSecEncFailureReason failureReason)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionName: xmlSecTransformC14NCheckId
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformC14NCheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: xmlSecTransformInclC14NCheckId
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformInclC14NCheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: xmlSecTransformInclC14N11CheckId
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformInclC14N11CheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: xmlSecTransformExclC14NCheckId
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformExclC14NCheckId(transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:83,1
    - Dst: xmlSecTransformC14NCheckId
      Src: /src/xmlsec/src/c14n.c:83,1
    - Dst: xmlSecC14NGetCtx
      Src: /src/xmlsec/src/c14n.c:85,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:86,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/c14n.c:88,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:90,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 95
    functionName: xmlSecTransformC14NInitialize
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformC14NCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListInitialize
    - xmlSecC14NGetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformC14NInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/c14n.c:101,1
    - Dst: xmlSecTransformC14NCheckId
      Src: /src/xmlsec/src/c14n.c:101,1
    - Dst: xmlSecC14NGetCtx
      Src: /src/xmlsec/src/c14n.c:103,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/c14n.c:104,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/c14n.c:104,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/c14n.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 97
    functionDepth: 2
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionName: xmlSecTransformC14NFinalize
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecTransformC14NCheckId
    - xmlSecAssert
    - xmlSecC14NGetCtx
    - xmlSecPtrListCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecTransformC14NFinalize(xmlSecTransformPtr transform)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:118,1
    - Dst: xmlSecTransformExclC14NCheckId
      Src: /src/xmlsec/src/c14n.c:118,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:120,1
    - Dst: xmlSecC14NGetCtx
      Src: /src/xmlsec/src/c14n.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:123,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/c14n.c:123,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:124,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/c14n.c:124,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/c14n.c:127,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/c14n.c:129,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/c14n.c:130,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:131,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/c14n.c:135,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/c14n.c:137,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:138,1
    - Dst: xmlStrchr
      Src: /src/xmlsec/src/c14n.c:145,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/c14n.c:150,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/c14n.c:152,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:152,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/c14n.c:153,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/c14n.c:157,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:159,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:160,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/c14n.c:161,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/c14n.c:162,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/c14n.c:166,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/c14n.c:169,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:171,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:172,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/c14n.c:176,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/c14n.c:181,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 109
    functionDepth: 11
    functionLinenumber: 109
    functionLinenumberEnd: 186
    functionName: xmlSecTransformC14NNodeRead
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecStrdupError
    - xmlFree
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformExclC14NCheckId
    - xmlSecPtrListAdd
    - xmlSecInvalidNodeError
    - xmlSecInvalidNodeAttributeError
    - xmlSecC14NGetCtx
    - xmlSecTransformGetName
    - xmlSecUnexpectedNodeError
    - xmlStrchr
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecTransformC14NNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:194,1
    - Dst: xmlSecTransformC14NCheckId
      Src: /src/xmlsec/src/c14n.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:197,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/c14n.c:208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:211,1
    - Dst: xmlSecTransformCreateOutputBuffer
      Src: /src/xmlsec/src/c14n.c:215,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:217,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:218,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/c14n.c:222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:224,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:225,1
    - Dst: xmlSecTransformC14NExecute
      Src: /src/xmlsec/src/c14n.c:230,1
    - Dst: xmlSecC14NGetCtx
      Src: /src/xmlsec/src/c14n.c:231,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:233,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:234,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/c14n.c:235,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/c14n.c:239,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/c14n.c:241,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:241,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 3
    argNames:
    - transform
    - nodes
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecNodeSetPtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 188
    functionDepth: 5
    functionLinenumber: 188
    functionLinenumberEnd: 246
    functionName: xmlSecTransformC14NPushXml
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformC14NCheckId
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformCreateOutputBuffer
    - xmlSecBufferCreateOutputBuffer
    - xmlSecXmlError
    - xmlSecInvalidTransfromStatusError
    - xmlOutputBufferClose
    - xmlSecC14NGetCtx
    - xmlSecTransformGetName
    - xmlSecTransformC14NExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformC14NPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr
      nodes,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:255,1
    - Dst: xmlSecTransformC14NCheckId
      Src: /src/xmlsec/src/c14n.c:255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:264,1
    - Dst: xmlSecTransformPopXml
      Src: /src/xmlsec/src/c14n.c:274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:277,1
    - Dst: xmlSecBufferCreateOutputBuffer
      Src: /src/xmlsec/src/c14n.c:282,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:284,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:285,1
    - Dst: xmlSecTransformC14NExecute
      Src: /src/xmlsec/src/c14n.c:291,1
    - Dst: xmlSecC14NGetCtx
      Src: /src/xmlsec/src/c14n.c:292,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/c14n.c:294,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:295,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/c14n.c:296,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/src/c14n.c:299,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/c14n.c:301,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:301,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/c14n.c:311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:319,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/c14n.c:319,1
    - Dst: memcpy
      Src: /src/xmlsec/src/c14n.c:321,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/c14n.c:321,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/c14n.c:322,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/c14n.c:324,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/c14n.c:324,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/c14n.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:334,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/c14n.c:334,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/c14n.c:337,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 66
    argCount: 5
    argNames:
    - transform
    - data
    - maxDataSize
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 248
    functionDepth: 5
    functionLinenumber: 248
    functionLinenumberEnd: 342
    functionName: xmlSecTransformC14NPopBin
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformC14NCheckId
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecBufferCreateOutputBuffer
    - xmlSecInternalError2
    - xmlSecXmlError
    - xmlSecBufferGetData
    - xmlSecTransformPopXml
    - xmlSecInvalidTransfromStatusError
    - xmlOutputBufferClose
    - xmlSecBufferGetSize
    - xmlSecC14NGetCtx
    - xmlSecTransformGetName
    - memcpy
    - xmlSecTransformC14NExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformC14NPopBin(xmlSecTransformPtr transform, xmlSecByte*
      data,\n                            xmlSecSize maxDataSize, xmlSecSize* dataSize,\n
      \                           xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:353,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/c14n.c:353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/c14n.c:354,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:358,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:362,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:366,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:370,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:376,1
    - Dst: xmlC14NExecute
      Src: /src/xmlsec/src/c14n.c:382,1
    - Dst: xmlSecNodeSetDumpTextNodes
      Src: /src/xmlsec/src/c14n.c:386,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/c14n.c:389,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/c14n.c:390,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/c14n.c:395,1
    - Dst: xmlSecTransformKlassGetName
      Src: /src/xmlsec/src/c14n.c:395,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 4
    argNames:
    - id
    - nodes
    - nsList
    - buf
    argTypes:
    - xmlSecTransformId
    - xmlSecNodeSetPtr
    - xmlSecPtrListPtr
    - xmlOutputBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 344
    functionDepth: 15
    functionLinenumber: 344
    functionLinenumberEnd: 400
    functionName: xmlSecTransformC14NExecute
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformKlassGetName
    - xmlSecXmlError
    - xmlSecNodeSetDumpTextNodes
    - xmlSecPtrListCheckId
    - xmlC14NExecute
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecTransformC14NExecute(xmlSecTransformId id, xmlSecNodeSetPtr
      nodes, xmlSecPtrListPtr nsList,\n                           xmlOutputBufferPtr
      buf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 447
    functionName: xmlSecTransformInclC14NGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformInclC14NGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 495
    functionName: xmlSecTransformInclC14NWithCommentsGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformInclC14NWithCommentsGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: xmlSecTransformInclC14N11GetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformInclC14N11GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: xmlSecTransformInclC14N11WithCommentsGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformInclC14N11WithCommentsGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 630
    functionDepth: 0
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionName: xmlSecTransformExclC14NGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformExclC14NGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: xmlSecTransformExclC14NWithCommentsGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformExclC14NWithCommentsGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 734
    functionName: xmlSecTransformRemoveXmlTagsC14NGetKlass
    functionSourceFile: /src/xmlsec/src/c14n.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecTransformRemoveXmlTagsC14NGetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysmngr.c:58,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysmngr.c:60,1
    - Dst: memset
      Src: /src/xmlsec/src/keysmngr.c:63,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keysmngr.c:65,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:67,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 72
    functionName: xmlSecKeysMngrCreate
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlMalloc
    - xmlSecPtrListInitialize
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr xmlSecKeysMngrCreate(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysmngr.c:82,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/keysmngr.c:86,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keysmngr.c:90,1
    - Dst: memset
      Src: /src/xmlsec/src/keysmngr.c:92,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysmngr.c:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: xmlSecKeysMngrDestroy
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlFree
    - xmlSecAssert
    - xmlSecKeyStoreDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeysMngrDestroy(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:112,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/keysmngr.c:114,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/keysmngr.c:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - mngr
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 121
    functionName: xmlSecKeysMngrFindKey
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreFindKey
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeysMngrFindKey(xmlSecKeysMngrPtr mngr, const xmlChar*
      name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:140,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/keysmngr.c:142,1
    - Dst: xmlSecKeyStoreFindKeyFromX509Data
      Src: /src/xmlsec/src/keysmngr.c:148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - mngr
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 149
    functionName: xmlSecKeysMngrFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreFindKeyFromX509Data
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeysMngrFindKeyFromX509Data(xmlSecKeysMngrPtr mngr,
      xmlSecKeyX509DataValuePtr x509Data, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:163,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:164,1
    - Dst: xmlSecKeyStoreIsValid
      Src: /src/xmlsec/src/keysmngr.c:164,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/keysmngr.c:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - mngr
    - store
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 172
    functionName: xmlSecKeysMngrAdoptKeysStore
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecKeysMngrAdoptKeysStore(xmlSecKeysMngrPtr mngr, xmlSecKeyStorePtr
      store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 188
    functionName: xmlSecKeysMngrGetKeysStore
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecKeyStorePtr
    signature: xmlSecKeyStorePtr xmlSecKeysMngrGetKeysStore(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:205,1
    - Dst: xmlSecKeyDataStoreIsValid
      Src: /src/xmlsec/src/keysmngr.c:205,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:207,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:209,1
    - Dst: xmlSecPtrListSet
      Src: /src/xmlsec/src/keysmngr.c:211,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysmngr.c:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - mngr
    - store
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 216
    functionName: xmlSecKeysMngrAdoptDataStore
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListSet
    - xmlSecKeyDataStoreIsValid
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeysMngrAdoptDataStore(xmlSecKeysMngrPtr mngr, xmlSecKeyDataStorePtr
      store)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:235,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:237,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:239,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - mngr
    - id
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyDataStoreId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 246
    functionName: xmlSecKeysMngrGetDataStore
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyDataStorePtr
    signature: xmlSecKeyDataStorePtr xmlSecKeysMngrGetDataStore(xmlSecKeysMngrPtr
      mngr, xmlSecKeyDataStoreId id)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:268,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysmngr.c:271,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysmngr.c:273,1
    - Dst: xmlSecKeyStoreKlassGetName
      Src: /src/xmlsec/src/keysmngr.c:274,1
    - Dst: memset
      Src: /src/xmlsec/src/keysmngr.c:277,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:283,1
    - Dst: xmlSecKeyStoreKlassGetName
      Src: /src/xmlsec/src/keysmngr.c:284,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/keysmngr.c:285,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecKeyStoreId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 291
    functionName: xmlSecKeyStoreCreate
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecKeyStoreKlassGetName
    - xmlSecKeyStoreDestroy
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeyStorePtr
    signature: xmlSecKeyStorePtr xmlSecKeyStoreCreate(xmlSecKeyStoreId id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysmngr.c:301,1
    - Dst: xmlSecKeyStoreIsValid
      Src: /src/xmlsec/src/keysmngr.c:301,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysmngr.c:302,1
    - Dst: memset
      Src: /src/xmlsec/src/keysmngr.c:307,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysmngr.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 309
    functionName: xmlSecKeyStoreDestroy
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - memset
    - xmlFree
    - xmlSecKeyStoreIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyStoreDestroy(xmlSecKeyStorePtr store)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:324,1
    - Dst: xmlSecKeyStoreIsValid
      Src: /src/xmlsec/src/keysmngr.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:325,1
    - Dst: xmlSecKeyStorePtr::id::findKey
      Src: /src/xmlsec/src/keysmngr.c:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 331
    functionName: xmlSecKeyStoreFindKey
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyStorePtr::id::findKey
    - xmlSecKeyStoreIsValid
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyStoreFindKey(xmlSecKeyStorePtr store, const xmlChar*
      name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:346,1
    - Dst: xmlSecKeyStoreIsValid
      Src: /src/xmlsec/src/keysmngr.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:348,1
    - Dst: xmlSecKeyStorePtr::id::findKeyFromX509Data
      Src: /src/xmlsec/src/keysmngr.c:353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - store
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 354
    functionName: xmlSecKeyStoreFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyStorePtr::id::findKeyFromX509Data
    - xmlSecKeyStoreIsValid
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecKeyStoreFindKeyFromX509Data(xmlSecKeyStorePtr store,
      xmlSecKeyX509DataValuePtr x509Data, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 399
    functionName: xmlSecSimpleKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecSimpleKeysStoreGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:415,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:416,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:419,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysmngr.c:419,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysmngr.c:421,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:423,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 429
    functionName: xmlSecSimpleKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecPtrListAdd
    - xmlSecPtrListCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecSimpleKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:444,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:444,1
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/keysmngr.c:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - store
    - uri
    - keysMngr
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 441
    functionDepth: 1
    functionLinenumber: 441
    functionLinenumberEnd: 448
    functionName: xmlSecSimpleKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreLoad_ex
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: int
    signature: "int xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char
      *uri,\n                            xmlSecKeysMngrPtr keysMngr)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:457,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/src/keysmngr.c:459,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:460,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:462,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:464,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:465,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysmngr.c:467,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:469,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 476
    functionName: xmlSecSimpleKeysStoreEnableAllKeyData
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataIdsGet
    - xmlSecPtrListGetItem
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecSimpleKeysStoreEnableAllKeyData(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:502,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:503,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:504,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/keysmngr.c:505,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/src/keysmngr.c:507,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/keysmngr.c:507,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/keysmngr.c:509,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:509,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysmngr.c:510,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/src/keysmngr.c:514,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysmngr.c:515,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysmngr.c:516,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:516,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:517,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysmngr.c:521,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysmngr.c:522,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/keysmngr.c:523,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:525,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:525,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:526,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/keysmngr.c:530,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:532,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:532,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysmngr.c:533,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:534,1
    - Dst: xmlSecSimpleKeysStoreEnableAllKeyData
      Src: /src/xmlsec/src/keysmngr.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:549,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:549,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:550,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysmngr.c:551,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:552,1
    - Dst: xmlSecKeyInfoNodeRead
      Src: /src/xmlsec/src/keysmngr.c:556,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:558,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:558,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:559,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysmngr.c:560,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:561,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:564,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keysmngr.c:566,1
    - Dst: adoptKeyFunc
      Src: /src/xmlsec/src/keysmngr.c:567,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:569,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:569,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysmngr.c:570,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:571,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysmngr.c:576,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysmngr.c:578,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysmngr.c:582,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:582,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:583,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:587,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 74
    argCount: 4
    argNames:
    - store
    - uri
    - XMLSEC_ATTRIBUTE_UNUSED
    - adoptKeyFunc
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    - xmlSecSimpleKeysStoreAdoptKeyFunc
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 489
    functionDepth: 14
    functionLinenumber: 489
    functionLinenumberEnd: 590
    functionName: xmlSecSimpleKeysStoreLoad_ex
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 1
    functionsReached:
    - xmlSecParserGetDefaultOptions
    - xmlSecXmlError2
    - adoptKeyFunc
    - xmlSecGetNextElementNode
    - xmlSecKeyStoreGetName
    - xmlSecErrorsSafeString
    - xmlSecKeyInfoNodeRead
    - xmlDocGetRootElement
    - xmlSecKeyDestroy
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreEnableAllKeyData
    - xmlSecKeyInfoCtxInitialize
    - xmlSecUnexpectedNodeError
    - xmlSecKeyInfoCtxFinalize
    - xmlSecCheckNodeName
    - UNREFERENCED_PARAMETER
    - xmlSecKeyIsValid
    - xmlSecKeyCreate
    - xmlSecInvalidNodeError
    - xmlReadFile
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmlSecSimpleKeysStoreLoad_ex(xmlSecKeyStorePtr store, const char
      *uri,\n                            xmlSecKeysMngrPtr keysMngr XMLSEC_ATTRIBUTE_UNUSED,\n
      \                           xmlSecSimpleKeysStoreAdoptKeyFunc adoptKeyFunc)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:616,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:616,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:617,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:619,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:620,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysmngr.c:620,1
    - Dst: xmlSecCreateTree
      Src: /src/xmlsec/src/keysmngr.c:623,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:625,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:625,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/src/keysmngr.c:629,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:630,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:632,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:633,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:635,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:636,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysmngr.c:638,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/src/keysmngr.c:638,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysmngr.c:640,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:640,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysmngr.c:641,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:642,1
    - Dst: xmlSecKeyGetName
      Src: /src/xmlsec/src/keysmngr.c:647,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysmngr.c:648,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysmngr.c:649,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:649,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysmngr.c:650,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:651,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:658,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:659,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/keysmngr.c:665,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysmngr.c:670,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysmngr.c:671,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:671,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysmngr.c:672,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:673,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/keysmngr.c:678,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:680,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:680,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:681,1
    - Dst: xmlSecSimpleKeysStoreEnableAllKeyData
      Src: /src/xmlsec/src/keysmngr.c:691,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:693,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:693,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:694,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:695,1
    - Dst: xmlSecKeyInfoNodeWrite
      Src: /src/xmlsec/src/keysmngr.c:700,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:702,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:702,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:703,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:704,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keysmngr.c:707,1
    - Dst: xmlSaveFormatFile
      Src: /src/xmlsec/src/keysmngr.c:711,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/keysmngr.c:713,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:713,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysmngr.c:714,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:715,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keysmngr.c:719,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 80
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 602
    functionDepth: 11
    functionLinenumber: 602
    functionLinenumberEnd: 721
    functionName: xmlSecSimpleKeysStoreSave
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecXmlError2
    - xmlSecKeyGetData
    - xmlSaveFormatFile
    - xmlSecAddChild
    - xmlSecPtrListGetItem
    - xmlSecKeyStoreGetName
    - xmlSecKeyDataIdsGet
    - xmlSecCreateTree
    - xmlSecErrorsSafeString
    - xmlDocGetRootElement
    - xmlSecKeyGetName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecSimpleKeysStoreEnableAllKeyData
    - xmlSecKeyInfoCtxInitialize
    - xmlSecKeyInfoNodeWrite
    - xmlSecKeyInfoCtxFinalize
    - xmlSecPtrListCheckId
    - xmlSecKeyStoreCheckId
    - xmlFreeDoc
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename,
      xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:736,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:736,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:738,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:739,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysmngr.c:739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 742
    functionName: xmlSecSimpleKeysStoreGetKeys
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListCheckId
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecSimpleKeysStoreGetKeys(xmlSecKeyStorePtr store)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:749,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:749,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:752,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keysmngr.c:754,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysmngr.c:756,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/keysmngr.c:757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 744
    functionDepth: 2
    functionLinenumber: 744
    functionLinenumberEnd: 762
    functionName: xmlSecSimpleKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecPtrListInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecSimpleKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysmngr.c:768,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:768,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:770,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysmngr.c:771,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keysmngr.c:773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 774
    functionName: xmlSecSimpleKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecAssert
    - xmlSecKeyStoreCheckId
    - xmlSecPtrListFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecSimpleKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:782,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/keysmngr.c:782,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:783,1
    - Dst: xmlSecSimpleKeysStoreGetCtx
      Src: /src/xmlsec/src/keysmngr.c:785,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysmngr.c:786,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysmngr.c:786,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysmngr.c:788,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysmngr.c:790,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/keysmngr.c:791,1
    - Dst: xmlSecKeyDuplicate
      Src: /src/xmlsec/src/keysmngr.c:792,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 776
    functionDepth: 5
    functionLinenumber: 776
    functionLinenumberEnd: 796
    functionName: xmlSecSimpleKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/keysmngr.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreGetCtx
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecKeyMatch
    - xmlSecKeyDuplicate
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecSimpleKeysStoreFindKey(xmlSecKeyStorePtr store,
      const xmlChar* name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:97,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:98,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:100,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keyinfo.c:103,1
    - Dst: xmlSecKeyMatch
      Src: /src/xmlsec/src/keyinfo.c:104,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:105,1
    - Dst: xmlSecGetNodeNsHref
      Src: /src/xmlsec/src/keyinfo.c:109,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:112,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:113,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:116,1
    - Dst: xmlSecKeyDataIdsGetEnabled
      Src: /src/xmlsec/src/keyinfo.c:116,1
    - Dst: xmlSecKeyDataXmlRead
      Src: /src/xmlsec/src/keyinfo.c:121,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:123,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:124,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:126,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:126,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:132,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - keyInfoNode
    - key
    - keyInfoCtx
    argTypes:
    - xmlNodePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 87
    functionDepth: 3
    functionLinenumber: 87
    functionLinenumberEnd: 140
    functionName: xmlSecKeyInfoNodeRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 2
    functionsReached:
    - xmlSecGetNodeNsHref
    - xmlSecKeyIsValid
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecKeyDataXmlRead
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataIdsGetEnabled
    - xmlSecKeyDataIdListFindByNode
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    - xmlSecKeyMatch
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyInfoNodeRead(xmlNodePtr keyInfoNode, xmlSecKeyPtr key,
      xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:163,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:165,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:167,1
    - Dst: xmlSecGetNodeNsHref
      Src: /src/xmlsec/src/keyinfo.c:171,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:174,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:175,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:179,1
    - Dst: xmlSecKeyDataIdsGetEnabled
      Src: /src/xmlsec/src/keyinfo.c:179,1
    - Dst: xmlSecKeyDataXmlWrite
      Src: /src/xmlsec/src/keyinfo.c:184,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:186,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:187,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:189,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:189,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:194,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - keyInfoNode
    - key
    - keyInfoCtx
    argTypes:
    - xmlNodePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 200
    functionName: xmlSecKeyInfoNodeWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 4
    functionsReached:
    - xmlSecGetNodeNsHref
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyDataXmlWrite
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataIdsGetEnabled
    - xmlSecKeyDataIdListFindByNode
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyInfoNodeWrite(xmlNodePtr keyInfoNode, xmlSecKeyPtr key,
      xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keyinfo.c:223,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keyinfo.c:225,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/keyinfo.c:229,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:231,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/src/keyinfo.c:232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - keysMngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 237
    functionName: xmlSecKeyInfoCtxCreate
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyInfoCtxDestroy
    - xmlMalloc
    - xmlSecKeyInfoCtxInitialize
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlSecKeyInfoCtxPtr
    signature: xmlSecKeyInfoCtxPtr xmlSecKeyInfoCtxCreate(xmlSecKeysMngrPtr keysMngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:247,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:249,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionName: xmlSecKeyInfoCtxDestroy
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyInfoCtxFinalize
    - xmlFree
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyInfoCtxDestroy(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:267,1
    - Dst: memset
      Src: /src/xmlsec/src/keyinfo.c:269,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/keyinfo.c:271,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keyinfo.c:272,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:274,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/keyinfo.c:279,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:281,1
    - Dst: xmlSecTransformCtxInitialize
      Src: /src/xmlsec/src/keyinfo.c:286,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:288,1
    - Dst: xmlSecKeyReqInitialize
      Src: /src/xmlsec/src/keyinfo.c:300,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - keyInfoCtx
    - keysMngr
    argTypes:
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 263
    functionDepth: 3
    functionLinenumber: 263
    functionLinenumberEnd: 307
    functionName: xmlSecKeyInfoCtxInitialize
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 9
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyReqInitialize
    - xmlSecPtrListInitialize
    - xmlSecBase64GetDefaultLineSize
    - xmlSecTransformCtxInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyInfoCtxInitialize(xmlSecKeyInfoCtxPtr keyInfoCtx, xmlSecKeysMngrPtr
      keysMngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:318,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keyinfo.c:320,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:321,1
    - Dst: xmlSecTransformCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:322,1
    - Dst: xmlSecKeyReqFinalize
      Src: /src/xmlsec/src/keyinfo.c:323,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/src/keyinfo.c:327,1
    - Dst: memset
      Src: /src/xmlsec/src/keyinfo.c:331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 316
    functionDepth: 3
    functionLinenumber: 316
    functionLinenumberEnd: 332
    functionName: xmlSecKeyInfoCtxFinalize
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 9
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecKeyReqFinalize
    - xmlSecTransformCtxFinalize
    - xmlSecEncCtxDestroy
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyInfoCtxFinalize(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:342,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/keyinfo.c:344,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/keyinfo.c:347,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:356,1
    - Dst: xmlSecKeyReqReset
      Src: /src/xmlsec/src/keyinfo.c:360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 340
    functionDepth: 5
    functionLinenumber: 340
    functionLinenumberEnd: 361
    functionName: xmlSecKeyInfoCtxReset
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecTransformCtxReset
    - xmlSecEncCtxReset
    - xmlSecKeyReqReset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyInfoCtxReset(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:379,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/src/keyinfo.c:382,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:384,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:392,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:394,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/src/keyinfo.c:395,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:400,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:402,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/src/keyinfo.c:403,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keyinfo.c:415,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 372
    functionDepth: 2
    functionLinenumber: 372
    functionLinenumberEnd: 418
    functionName: xmlSecKeyInfoCtxCreateEncCtx
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecEncCtxDestroy
    - xmlSecEncCtxCreate
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyInfoCtxCreateEncCtx(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:434,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/keyinfo.c:442,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:444,1
    - Dst: xmlSecTransformCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:450,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:452,1
    - Dst: xmlSecTransformCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:458,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:460,1
    - Dst: xmlSecEncCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:468,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:470,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 429
    functionDepth: 4
    functionLinenumber: 429
    functionLinenumberEnd: 484
    functionName: xmlSecKeyInfoCtxCopyUserPref
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 4
    functionsReached:
    - xmlSecEncCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListCopy
    - xmlSecTransformCtxCopyUserPref
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyInfoCtxCopyUserPref(xmlSecKeyInfoCtxPtr dst, xmlSecKeyInfoCtxPtr
      src)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:495,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:496,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:500,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:503,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:507,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:508,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:509,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:510,1
    - Dst: xmlSecKeyDataIdListDebugDump
      Src: /src/xmlsec/src/keyinfo.c:511,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:513,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:516,1
    - Dst: xmlSecTransformCtxDebugDump
      Src: /src/xmlsec/src/keyinfo.c:518,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:520,1
    - Dst: xmlSecTransformCtxDebugDump
      Src: /src/xmlsec/src/keyinfo.c:522,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:525,1
    - Dst: xmlSecEncCtxDebugDump
      Src: /src/xmlsec/src/keyinfo.c:528,1
    - Dst: xmlSecKeyReqDebugDump
      Src: /src/xmlsec/src/keyinfo.c:532,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - keyInfoCtx
    - output
    argTypes:
    - xmlSecKeyInfoCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 493
    functionDepth: 4
    functionLinenumber: 493
    functionLinenumberEnd: 533
    functionName: xmlSecKeyInfoCtxDebugDump
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 2
    functionsReached:
    - xmlSecTransformCtxDebugDump
    - xmlSecKeyReqDebugDump
    - xmlSecAssert
    - xmlSecEncCtxDebugDump
    - fprintf
    - xmlSecKeyDataIdListDebugDump
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyInfoCtxDebugDump(xmlSecKeyInfoCtxPtr keyInfoCtx, FILE*
      output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:544,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keyinfo.c:545,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:549,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:552,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:556,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:557,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:558,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:559,1
    - Dst: xmlSecKeyDataIdListDebugXmlDump
      Src: /src/xmlsec/src/keyinfo.c:560,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:561,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:563,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:566,1
    - Dst: xmlSecTransformCtxDebugXmlDump
      Src: /src/xmlsec/src/keyinfo.c:568,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:570,1
    - Dst: xmlSecTransformCtxDebugXmlDump
      Src: /src/xmlsec/src/keyinfo.c:572,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:575,1
    - Dst: xmlSecEncCtxDebugXmlDump
      Src: /src/xmlsec/src/keyinfo.c:578,1
    - Dst: xmlSecKeyReqDebugXmlDump
      Src: /src/xmlsec/src/keyinfo.c:582,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:585,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keyinfo.c:588,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 2
    argNames:
    - keyInfoCtx
    - output
    argTypes:
    - xmlSecKeyInfoCtxPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 542
    functionDepth: 4
    functionLinenumber: 542
    functionLinenumberEnd: 591
    functionName: xmlSecKeyInfoCtxDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 2
    functionsReached:
    - xmlSecEncCtxDebugXmlDump
    - xmlSecTransformCtxDebugXmlDump
    - xmlSecAssert
    - xmlSecKeyDataIdListDebugXmlDump
    - xmlSecKeyReqDebugXmlDump
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyInfoCtxDebugXmlDump(xmlSecKeyInfoCtxPtr keyInfoCtx, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 663
    functionName: xmlSecKeyDataNameGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataNameGetKlass(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:670,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:671,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:672,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:674,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keyinfo.c:677,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keyinfo.c:679,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:679,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keyinfo.c:684,1
    - Dst: xmlSecKeysMngrFindKey
      Src: /src/xmlsec/src/keyinfo.c:687,1
    - Dst: xmlSecKeyEmpty
      Src: /src/xmlsec/src/keyinfo.c:690,1
    - Dst: xmlSecKeyCopy
      Src: /src/xmlsec/src/keyinfo.c:698,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:700,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:701,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:702,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:703,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:706,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/keyinfo.c:709,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:711,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:712,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:713,1
    - Dst: xmlSecKeyGetName
      Src: /src/xmlsec/src/keyinfo.c:722,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keyinfo.c:724,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keyinfo.c:725,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:726,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:728,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/keyinfo.c:732,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:734,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:735,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:736,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:743,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 665
    functionDepth: 4
    functionLinenumber: 665
    functionLinenumberEnd: 745
    functionName: xmlSecKeyDataNameXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyCopy
    - xmlSecKeyGetName
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlFree
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - xmlSecKeysMngrFindKey
    - xmlSecKeyDataKlassGetName
    - xmlSecKeySetName
    - xmlSecKeyEmpty
    - xmlSecKeyDestroy
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataNameXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
      xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:752,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:753,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:754,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:755,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:756,1
    - Dst: xmlSecKeyGetName
      Src: /src/xmlsec/src/keyinfo.c:758,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keyinfo.c:763,1
    - Dst: xmlSecNodeEncodeAndSetContent
      Src: /src/xmlsec/src/keyinfo.c:767,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:769,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 747
    functionDepth: 2
    functionLinenumber: 747
    functionLinenumberEnd: 775
    functionName: xmlSecKeyDataNameXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyGetName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNodeEncodeAndSetContent
    - xmlSecIsEmptyNode
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataNameXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
      xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 842
    functionName: xmlSecKeyDataValueGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataValueGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:852,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:853,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:854,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:855,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:856,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:858,1
    - Dst: xmlSecGetNodeNsHref
      Src: /src/xmlsec/src/keyinfo.c:866,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:869,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:870,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:873,1
    - Dst: xmlSecKeyDataIdsGetEnabled
      Src: /src/xmlsec/src/keyinfo.c:873,1
    - Dst: xmlSecKeyDataXmlRead
      Src: /src/xmlsec/src/keyinfo.c:878,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:880,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:881,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:883,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:883,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:888,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:888,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:893,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:895,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:895,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 844
    functionDepth: 2
    functionLinenumber: 844
    functionLinenumberEnd: 900
    functionName: xmlSecKeyDataValueXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecGetNodeNsHref
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecKeyDataXmlRead
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataIdsGetEnabled
    - xmlSecKeyDataIdListFindByNode
    - xmlSecNodeGetName
    - xmlSecUnexpectedNodeError
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
      xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:909,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:910,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:911,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:912,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:913,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keyinfo.c:915,1
    - Dst: xmlSecKeyDataCheckUsage
      Src: /src/xmlsec/src/keyinfo.c:916,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:920,1
    - Dst: xmlSecKeyDataIdListFind
      Src: /src/xmlsec/src/keyinfo.c:921,1
    - Dst: xmlSecKeyReqMatchKey
      Src: /src/xmlsec/src/keyinfo.c:926,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:933,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keyinfo.c:936,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keyinfo.c:939,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:941,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:942,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:944,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:944,1
    - Dst: xmlSecKeyDataXmlWrite
      Src: /src/xmlsec/src/keyinfo.c:948,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:950,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:951,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:953,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:953,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 902
    functionDepth: 8
    functionLinenumber: 902
    functionLinenumberEnd: 958
    functionName: xmlSecKeyDataValueXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecKeyDataIsValid
    - xmlSecKeyDataCheckUsage
    - xmlSecKeyDataIdListFind
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeyDataXmlWrite
    - xmlNodeSetContent
    - xmlSecKeyDataKlassGetName
    - xmlSecNodeGetName
    - xmlSecKeyReqMatchKey
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataValueXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
      xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1037
    functionDepth: 0
    functionLinenumber: 1037
    functionLinenumberEnd: 1040
    functionName: xmlSecKeyDataRetrievalMethodGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataRetrievalMethodGetKlass(void)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1051,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1052,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1053,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1054,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1055,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1056,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:1060,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1060,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keyinfo.c:1066,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:1069,1
    - Dst: xmlSecKeyDataIdListFindByHref
      Src: /src/xmlsec/src/keyinfo.c:1070,1
    - Dst: xmlSecKeyDataIdListFindByHref
      Src: /src/xmlsec/src/keyinfo.c:1073,1
    - Dst: xmlSecKeyDataIdsGetEnabled
      Src: /src/xmlsec/src/keyinfo.c:1073,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/keyinfo.c:1081,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1081,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1091,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keyinfo.c:1094,1
    - Dst: xmlSecTransformCtxSetUri
      Src: /src/xmlsec/src/keyinfo.c:1095,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:1097,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1098,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:1099,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:1104,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keyinfo.c:1105,1
    - Dst: xmlSecTransformCtxNodesListRead
      Src: /src/xmlsec/src/keyinfo.c:1106,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:1109,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1110,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:1112,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:1112,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:1115,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:1119,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1119,1
    - Dst: xmlSecTransformCtxExecute
      Src: /src/xmlsec/src/keyinfo.c:1124,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1127,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1129,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1130,1
    - Dst: xmlSecKeyDataRetrievalMethodReadXmlResult
      Src: /src/xmlsec/src/keyinfo.c:1139,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1140,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keyinfo.c:1141,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1144,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1145,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/keyinfo.c:1149,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1150,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keyinfo.c:1151,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1154,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1155,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:1164,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:1167,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 86
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1042
    functionDepth: 11
    functionLinenumber: 1042
    functionLinenumberEnd: 1170
    functionName: xmlSecKeyDataRetrievalMethodXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecKeyDataKlassGetName
    - xmlSecNodeGetName
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlSecErrorsSafeString
    - xmlSecTransformCtxNodesListRead
    - xmlSecKeyDataRetrievalMethodReadXmlResult
    - xmlSecKeyDataBinRead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecTransformCtxSetUri
    - xmlSecBufferGetData
    - xmlSecInvalidNodeAttributeError
    - xmlSecOtherError3
    - xmlSecTransformCtxExecute
    - xmlSecUnexpectedNodeError
    - xmlSecCheckNodeName
    - xmlSecTransformCtxReset
    - xmlSecBufferGetSize
    - xmlSecKeyDataIdsGetEnabled
    - xmlSecKeyDataIdListFindByHref
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1175,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1176,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1172
    functionDepth: 1
    functionLinenumber: 1172
    functionLinenumberEnd: 1182
    functionName: xmlSecKeyDataRetrievalMethodXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataRetrievalMethodXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1199,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1200,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/keyinfo.c:1202,1
    - Dst: return
      Src: /src/xmlsec/src/keyinfo.c:1202,1
    - Dst: xmlReadMemory
      Src: /src/xmlsec/src/keyinfo.c:1203,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/keyinfo.c:1203,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/keyinfo.c:1205,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1205,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/src/keyinfo.c:1209,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/keyinfo.c:1211,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1211,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1212,1
    - Dst: xmlSecGetNodeNsHref
      Src: /src/xmlsec/src/keyinfo.c:1217,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keyinfo.c:1220,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:1221,1
    - Dst: xmlSecKeyDataIdListFindByNode
      Src: /src/xmlsec/src/keyinfo.c:1224,1
    - Dst: xmlSecKeyDataIdsGetEnabled
      Src: /src/xmlsec/src/keyinfo.c:1224,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1228,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:1232,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1232,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/keyinfo.c:1239,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1240,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:1241,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1241,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1242,1
    - Dst: xmlSecKeyDataXmlRead
      Src: /src/xmlsec/src/keyinfo.c:1247,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:1249,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1250,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:1252,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keyinfo.c:1252,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1253,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1257,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 5
    argNames:
    - typeId
    - key
    - buffer
    - bufferSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlChar*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1184
    functionDepth: 14
    functionLinenumber: 1184
    functionLinenumberEnd: 1259
    functionName: xmlSecKeyDataRetrievalMethodReadXmlResult
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 1
    functionsReached:
    - xmlSecParserGetDefaultOptions
    - xmlSecOtherError2
    - xmlReadMemory
    - return
    - xmlSecKeyDataKlassGetName
    - xmlSecNodeGetName
    - xmlSecKeyDataXmlRead
    - xmlSecErrorsSafeString
    - xmlDocGetRootElement
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecXmlError
    - xmlSecKeyDataIdListFindByNode
    - xmlSecUnexpectedNodeError
    - xmlSecGetNodeNsHref
    - xmlSecKeyDataIdsGetEnabled
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlFreeDoc
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataRetrievalMethodReadXmlResult(xmlSecKeyDataId typeId,
      xmlSecKeyPtr key,\n                                          const xmlChar*
      buffer, xmlSecSize bufferSize,\n                                          xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    functionName: xmlSecKeyDataKeyInfoReferenceGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataKeyInfoReferenceGetKlass(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1363,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:1367,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1367,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keyinfo.c:1374,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/keyinfo.c:1376,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1376,1
    - Dst: xmlSecTransformCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1381,1
    - Dst: xmlSecTransformCtxSetUri
      Src: /src/xmlsec/src/keyinfo.c:1382,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keyinfo.c:1384,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1384,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keyinfo.c:1385,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keyinfo.c:1390,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keyinfo.c:1392,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1392,1
    - Dst: xmlSecTransformCtxExecute
      Src: /src/xmlsec/src/keyinfo.c:1397,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1401,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1404,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1404,1
    - Dst: xmlSecKeyDataKeyInfoReferenceReadXmlResult
      Src: /src/xmlsec/src/keyinfo.c:1410,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1411,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keyinfo.c:1412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1415,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1415,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:1424,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1350
    functionDepth: 11
    functionLinenumber: 1350
    functionLinenumberEnd: 1427
    functionName: xmlSecKeyDataKeyInfoReferenceXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecTransformCtxExecute
    - xmlFree
    - xmlSecAssert2
    - xmlSecTransformCtxReset
    - xmlSecInternalError2
    - xmlSecTransformCtxSetUri
    - xmlSecErrorsSafeString
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecInvalidNodeAttributeError
    - xmlSecOtherError3
    - xmlSecKeyDataKlassGetName
    - xmlSecUnexpectedNodeError
    - xmlSecKeyDataKeyInfoReferenceReadXmlResult
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataKeyInfoReferenceXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1429
    functionDepth: 1
    functionLinenumber: 1429
    functionLinenumberEnd: 1439
    functionName: xmlSecKeyDataKeyInfoReferenceXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataKeyInfoReferenceXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1454,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/keyinfo.c:1457,1
    - Dst: return
      Src: /src/xmlsec/src/keyinfo.c:1457,1
    - Dst: xmlReadMemory
      Src: /src/xmlsec/src/keyinfo.c:1458,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/keyinfo.c:1458,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/keyinfo.c:1460,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1460,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/src/keyinfo.c:1464,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/keyinfo.c:1466,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1466,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1467,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keyinfo.c:1473,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keyinfo.c:1474,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1474,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1475,1
    - Dst: xmlSecKeyInfoNodeRead
      Src: /src/xmlsec/src/keyinfo.c:1479,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1481,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1481,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1482,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/keyinfo.c:1487,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 5
    argNames:
    - typeId
    - key
    - buffer
    - bufferSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlChar*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1441
    functionDepth: 14
    functionLinenumber: 1441
    functionLinenumberEnd: 1489
    functionName: xmlSecKeyDataKeyInfoReferenceReadXmlResult
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 1
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecParserGetDefaultOptions
    - xmlSecXmlError
    - xmlSecKeyInfoNodeRead
    - xmlReadMemory
    - return
    - xmlSecInvalidNodeError
    - xmlDocGetRootElement
    - xmlSecKeyDataKlassGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataKeyInfoReferenceReadXmlResult(xmlSecKeyDataId typeId,
      xmlSecKeyPtr key,\n                                          const xmlChar*
      buffer, xmlSecSize bufferSize,\n                                          xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1567
      start: 1564
    functionDepth: 0
    functionLinenumber: 1564
    functionLinenumberEnd: 1567
    functionName: xmlSecKeyDataEncryptedKeyGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataEncryptedKeyGetKlass(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1574,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1575,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1576,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1577,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1578,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:1582,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1582,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1589,1
    - Dst: xmlSecKeyInfoCtxCreateEncCtx
      Src: /src/xmlsec/src/keyinfo.c:1591,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1593,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1593,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1597,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1600,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1602,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1602,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1605,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1607,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1607,1
    - Dst: xmlSecEncCtxDecryptToBuffer
      Src: /src/xmlsec/src/keyinfo.c:1613,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1615,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1621,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1621,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/keyinfo.c:1627,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keyinfo.c:1628,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keyinfo.c:1629,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1632,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1633,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1569
    functionDepth: 7
    functionLinenumber: 1569
    functionLinenumberEnd: 1637
    functionName: xmlSecKeyDataEncryptedKeyXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecInternalError
    - xmlSecKeyInfoCtxCreateEncCtx
    - xmlSecAssert2
    - xmlSecEncCtxReset
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecEncCtxDecryptToBuffer
    - xmlSecOtherError3
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinRead
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataEncryptedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1648,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1649,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keyinfo.c:1649,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1650,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1651,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1652,1
    - Dst: xmlSecKeyInfoCtxInitialize
      Src: /src/xmlsec/src/keyinfo.c:1655,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1657,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1658,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1662,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1664,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1664,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:1665,1
    - Dst: xmlSecKeyDataBinWrite
      Src: /src/xmlsec/src/keyinfo.c:1670,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1672,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1672,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:1673,1
    - Dst: xmlSecKeyInfoCtxFinalize
      Src: /src/xmlsec/src/keyinfo.c:1676,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1680,1
    - Dst: xmlSecKeyInfoCtxCreateEncCtx
      Src: /src/xmlsec/src/keyinfo.c:1682,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1684,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1684,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1688,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1691,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1693,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1693,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1696,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1698,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1698,1
    - Dst: xmlSecEncCtxBinaryEncrypt
      Src: /src/xmlsec/src/keyinfo.c:1703,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1705,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1705,1
    - Dst: memset
      Src: /src/xmlsec/src/keyinfo.c:1712,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keyinfo.c:1713,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1639
    functionDepth: 6
    functionLinenumber: 1639
    functionLinenumberEnd: 1716
    functionName: xmlSecKeyDataEncryptedKeyXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecKeyDataBinWrite
    - xmlSecKeyIsValid
    - xmlSecInternalError
    - xmlSecKeyInfoCtxCreateEncCtx
    - xmlSecEncCtxBinaryEncrypt
    - xmlFree
    - xmlSecAssert2
    - xmlSecEncCtxReset
    - xmlSecKeyInfoCtxInitialize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyInfoCtxFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataEncryptedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1792
    functionDepth: 0
    functionLinenumber: 1792
    functionLinenumberEnd: 1795
    functionName: xmlSecKeyDataDerivedKeyGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataDerivedKeyGetKlass(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1803,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1804,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1805,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1806,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:1810,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1810,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1817,1
    - Dst: xmlSecKeyInfoCtxCreateEncCtx
      Src: /src/xmlsec/src/keyinfo.c:1819,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1821,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1821,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1825,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1828,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1830,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1830,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1833,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1835,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1835,1
    - Dst: xmlSecEncCtxDerivedKeyGenerate
      Src: /src/xmlsec/src/keyinfo.c:1840,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1849,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1849,1
    - Dst: xmlSecKeyReqMatchKey
      Src: /src/xmlsec/src/keyinfo.c:1860,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:1862,1
    - Dst: xmlSecKeyCopy
      Src: /src/xmlsec/src/keyinfo.c:1866,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1868,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1868,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:1869,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:1874,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1876
      start: 1797
    functionDepth: 7
    functionLinenumber: 1797
    functionLinenumberEnd: 1876
    functionName: xmlSecKeyDataDerivedKeyXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecKeyCopy
    - xmlSecInternalError
    - xmlSecKeyInfoCtxCreateEncCtx
    - xmlSecAssert2
    - xmlSecEncCtxReset
    - xmlSecEncCtxDerivedKeyGenerate
    - xmlSecOtherError3
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyReqMatchKey
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataDerivedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1880,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1881,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1882,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keyinfo.c:1882,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1883,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1884,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1878
    functionDepth: 1
    functionLinenumber: 1878
    functionLinenumberEnd: 1889
    functionName: xmlSecKeyDataDerivedKeyXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyIsValid
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataDerivedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1961
    functionDepth: 0
    functionLinenumber: 1961
    functionLinenumberEnd: 1964
    functionName: xmlSecKeyDataAgreementMethodGetKlass
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecKeyDataAgreementMethodGetKlass(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1971,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1972,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1973,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1974,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1975,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:1979,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1979,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:1986,1
    - Dst: xmlSecKeyInfoCtxCreateEncCtx
      Src: /src/xmlsec/src/keyinfo.c:1988,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1990,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1990,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:1994,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:1997,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:1999,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:1999,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:2002,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2004,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2004,1
    - Dst: xmlSecEncCtxAgreementMethodGenerate
      Src: /src/xmlsec/src/keyinfo.c:2009,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2018,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2018,1
    - Dst: xmlSecKeyReqMatchKey
      Src: /src/xmlsec/src/keyinfo.c:2024,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:2026,1
    - Dst: xmlSecKeyCopy
      Src: /src/xmlsec/src/keyinfo.c:2030,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2032,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2032,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:2033,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keyinfo.c:2038,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 1966
    functionDepth: 7
    functionLinenumber: 1966
    functionLinenumberEnd: 2040
    functionName: xmlSecKeyDataAgreementMethodXmlRead
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecKeyCopy
    - xmlSecInternalError
    - xmlSecKeyInfoCtxCreateEncCtx
    - xmlSecAssert2
    - xmlSecEncCtxReset
    - xmlSecEncCtxAgreementMethodGenerate
    - xmlSecOtherError3
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyReqMatchKey
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataAgreementMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2046,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2047,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2048,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/keyinfo.c:2048,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2049,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2050,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2051,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keyinfo.c:2057,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2057,1
    - Dst: xmlSecEncCtxReset
      Src: /src/xmlsec/src/keyinfo.c:2064,1
    - Dst: xmlSecKeyInfoCtxCreateEncCtx
      Src: /src/xmlsec/src/keyinfo.c:2066,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2068,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2068,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keyinfo.c:2072,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:2075,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2077,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2077,1
    - Dst: xmlSecKeyInfoCtxCopyUserPref
      Src: /src/xmlsec/src/keyinfo.c:2080,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2082,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2082,1
    - Dst: xmlSecEncCtxAgreementMethodXmlWrite
      Src: /src/xmlsec/src/keyinfo.c:2087,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keyinfo.c:2091,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keyinfo.c:2091,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2096
      start: 2042
    functionDepth: 5
    functionLinenumber: 2042
    functionLinenumberEnd: 2096
    functionName: xmlSecKeyDataAgreementMethodXmlWrite
    functionSourceFile: /src/xmlsec/src/keyinfo.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyInfoCtxCopyUserPref
    - xmlSecKeyIsValid
    - xmlSecInternalError
    - xmlSecKeyInfoCtxCreateEncCtx
    - xmlSecAssert2
    - xmlSecEncCtxReset
    - xmlSecEncCtxAgreementMethodXmlWrite
    - xmlSecOtherError3
    - xmlSecKeyDataKlassGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataAgreementMethodXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: xmlSecGetDefaultLineFeed
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGetDefaultLineFeed(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - linefeed
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: xmlSecSetDefaultLineFeed
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecSetDefaultLineFeed(const xmlChar *linefeed)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlNodeGetContent
      Src: /src/xmlsec/src/xmltree.c:81,1
    - Dst: isspace
      Src: /src/xmlsec/src/xmltree.c:88,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xmltree.c:91,1
    - Dst: isspace
      Src: /src/xmlsec/src/xmltree.c:92,1
    - Dst: memmove
      Src: /src/xmlsec/src/xmltree.c:97,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xmltree.c:97,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 75
    functionDepth: 9
    functionLinenumber: 75
    functionLinenumberEnd: 100
    functionName: xmlSecGetNodeContentAndTrim
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 6
    functionsReached:
    - isspace
    - xmlNodeGetContent
    - memmove
    - xmlStrlen
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGetNodeContentAndTrim(const xmlNodePtr cur)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:118,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:119,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmltree.c:121,1
    - Dst: strtol
      Src: /src/xmlsec/src/xmltree.c:127,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmltree.c:129,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:130,1
    - Dst: isspace
      Src: /src/xmlsec/src/xmltree.c:135,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xmltree.c:138,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/xmltree.c:139,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:140,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:143,1
    - Dst: XMLSEC_SAFE_CAST_LONG_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:146,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:146,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - cur
    - defValue
    - res
    argTypes:
    - xmlNodePtr
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 112
    functionDepth: 10
    functionLinenumber: 112
    functionLinenumberEnd: 148
    functionName: xmlSecGetNodeContentAsSize
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - strtol
    - xmlFree
    - xmlStrlen
    - XMLSEC_SAFE_CAST_LONG_TO_SIZE
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - return
    - isspace
    linkageType: ''
    returnType: int
    signature: int xmlSecGetNodeContentAsSize(const xmlNodePtr cur, xmlSecSize defValue,
      xmlSecSize* res)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:165,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmltree.c:169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - cur
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 175
    functionName: xmlSecFindSibling
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecCheckNodeName
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecFindSibling(const xmlNodePtr cur, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:192,1
    - Dst: xmlSecFindSibling
      Src: /src/xmlsec/src/xmltree.c:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - parent
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 195
    functionName: xmlSecFindChild
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 29
    functionsReached:
    - xmlSecAssert2
    - xmlSecFindSibling
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecFindChild(const xmlNodePtr parent, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:212,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmltree.c:214,1
    - Dst: xmlSecFindParent
      Src: /src/xmlsec/src/xmltree.c:217,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - cur
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 220
    functionName: xmlSecFindParent
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecCheckNodeName
    - xmlSecFindParent
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecFindParent(const xmlNodePtr cur, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:239,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmltree.c:243,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/src/xmltree.c:247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - parent
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 255
    functionName: xmlSecFindNode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecCheckNodeName
    - xmlSecFindNode
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecFindNode(const xmlNodePtr parent, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:269,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 283
    functionName: xmlSecGetNodeNsHref
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    - xmlSearchNs
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGetNodeNsHref(const xmlNodePtr cur)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:297,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:299,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:300,1
    - Dst: xmlSecGetNodeNsHref
      Src: /src/xmlsec/src/xmltree.c:300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - cur
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 301
    functionName: xmlSecCheckNodeName
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 30
    functionsReached:
    - xmlSecAssert2
    - xmlSecGetNodeNsHref
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: int xmlSecCheckNodeName(const xmlNodePtr cur, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:319,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:323,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:323,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:325,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/src/xmltree.c:328,1
    - Dst: xmlNewChild
      Src: /src/xmlsec/src/xmltree.c:331,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:333,1
    - Dst: xmlSearchNsByHref
      Src: /src/xmlsec/src/xmltree.c:342,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:343,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/xmltree.c:344,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:346,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/xmltree.c:350,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:354,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:354,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:356,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/src/xmltree.c:359,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - parent
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 313
    functionDepth: 9
    functionLinenumber: 313
    functionLinenumberEnd: 362
    functionName: xmlSecAddChild
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 38
    functionsReached:
    - xmlNewText
    - xmlSecAssert2
    - xmlNewChild
    - xmlSecXmlError
    - xmlSearchNsByHref
    - xmlSearchNs
    - xmlAddChild
    - xmlNewNs
    - xmlSetNs
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecAddChild(xmlNodePtr parent, const xmlChar *name, const
      xmlChar *ns)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:378,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:382,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:382,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:384,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/src/xmltree.c:387,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/src/xmltree.c:390,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:393,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:393,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:395,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/src/xmltree.c:398,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - parent
    - child
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 373
    functionDepth: 8
    functionLinenumber: 373
    functionLinenumberEnd: 401
    functionName: xmlSecAddChildNode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlNewText
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlAddChild
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecAddChildNode(xmlNodePtr parent, xmlNodePtr child)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:420,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:421,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/src/xmltree.c:424,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/xmltree.c:427,1
    - Dst: xmlSecFindSibling
      Src: /src/xmlsec/src/xmltree.c:430,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/xmltree.c:435,1
    - Dst: xmlSecAddNextSibling
      Src: /src/xmlsec/src/xmltree.c:437,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmltree.c:440,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:441,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - parent
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 415
    functionDepth: 10
    functionLinenumber: 415
    functionLinenumberEnd: 445
    functionName: xmlSecEnsureEmptyChild
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecFindSibling
    - xmlSecFindNode
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecIsEmptyNode
    - xmlSecAddNextSibling
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecEnsureEmptyChild(xmlNodePtr parent, const xmlChar
      *name, const xmlChar *ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:462,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:463,1
    - Dst: xmlNewNode
      Src: /src/xmlsec/src/xmltree.c:465,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:467,1
    - Dst: xmlAddNextSibling
      Src: /src/xmlsec/src/xmltree.c:470,1
    - Dst: xmlSearchNsByHref
      Src: /src/xmlsec/src/xmltree.c:477,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:478,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/xmltree.c:479,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/xmltree.c:481,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:485,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:485,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:487,1
    - Dst: xmlAddNextSibling
      Src: /src/xmlsec/src/xmltree.c:490,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - node
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 457
    functionDepth: 8
    functionLinenumber: 457
    functionLinenumberEnd: 493
    functionName: xmlSecAddNextSibling
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlAddNextSibling
    - xmlNewText
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlSearchNsByHref
    - xmlSearchNs
    - xmlNewNs
    - xmlNewNode
    - xmlSetNs
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecAddNextSibling(xmlNodePtr node, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:511,1
    - Dst: xmlNewNode
      Src: /src/xmlsec/src/xmltree.c:513,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:515,1
    - Dst: xmlAddPrevSibling
      Src: /src/xmlsec/src/xmltree.c:518,1
    - Dst: xmlSearchNsByHref
      Src: /src/xmlsec/src/xmltree.c:525,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:526,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/xmltree.c:527,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/xmltree.c:529,1
    - Dst: xmlNewText
      Src: /src/xmlsec/src/xmltree.c:533,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/xmltree.c:533,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:535,1
    - Dst: xmlAddPrevSibling
      Src: /src/xmlsec/src/xmltree.c:538,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - node
    - name
    - ns
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 505
    functionDepth: 8
    functionLinenumber: 505
    functionLinenumberEnd: 541
    functionName: xmlSecAddPrevSibling
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlNewText
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlSearchNsByHref
    - xmlSearchNs
    - xmlAddPrevSibling
    - xmlNewNs
    - xmlNewNode
    - xmlSetNs
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecAddPrevSibling(xmlNodePtr node, const xmlChar *name,
      const xmlChar *ns)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - cur
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 558
    functionName: xmlSecGetNextElementNode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 29
    functionsReached: []
    linkageType: ''
    returnType: xmlNodePtr
    signature: xmlNodePtr xmlSecGetNextElementNode(xmlNodePtr cur)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecReplaceNodeAndReturn
      Src: /src/xmlsec/src/xmltree.c:571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - newNode
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 572
    functionName: xmlSecReplaceNode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecReplaceNodeAndReturn
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceNode(xmlNodePtr node, xmlNodePtr newNode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:590,1
    - Dst: xmlReplaceNode
      Src: /src/xmlsec/src/xmltree.c:601,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:603,1
    - Dst: xmlDocSetRootElement
      Src: /src/xmlsec/src/xmltree.c:608,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/xmltree.c:615,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - node
    - newNode
    - replaced
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 584
    functionDepth: 9
    functionLinenumber: 584
    functionLinenumberEnd: 619
    functionName: xmlSecReplaceNodeAndReturn
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlDocSetRootElement
    - xmlReplaceNode
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceNodeAndReturn(xmlNodePtr node, xmlNodePtr newNode,
      xmlNodePtr* replaced)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecReplaceContentAndReturn
      Src: /src/xmlsec/src/xmltree.c:632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - newNode
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionName: xmlSecReplaceContent
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlSecReplaceContentAndReturn
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceContent(xmlNodePtr node, xmlNodePtr newNode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:648,1
    - Dst: xmlAddNextSibling
      Src: /src/xmlsec/src/xmltree.c:659,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/xmltree.c:663,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/xmltree.c:669,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/xmltree.c:673,1
    - Dst: xmlAddChildList
      Src: /src/xmlsec/src/xmltree.c:674,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - node
    - newNode
    - replaced
    argTypes:
    - xmlNodePtr
    - xmlNodePtr
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 645
    functionDepth: 8
    functionLinenumber: 645
    functionLinenumberEnd: 677
    functionName: xmlSecReplaceContentAndReturn
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlAddNextSibling
    - xmlUnlinkNode
    - xmlSecAssert2
    - xmlAddChildList
    - xmlNodeSetContent
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceContentAndReturn(xmlNodePtr node, xmlNodePtr newNode,
      xmlNodePtr *replaced)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecReplaceNodeBufferAndReturn
      Src: /src/xmlsec/src/xmltree.c:691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - buffer
    - size
    argTypes:
    - xmlNodePtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 689
    functionDepth: 1
    functionLinenumber: 689
    functionLinenumberEnd: 692
    functionName: xmlSecReplaceNodeBuffer
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecReplaceNodeBufferAndReturn
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceNodeBuffer(xmlNodePtr node, const xmlSecByte *buffer,
      xmlSecSize size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:717,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:718,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/xmltree.c:721,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:721,1
    - Dst: xmlParseInNodeContext
      Src: /src/xmlsec/src/xmltree.c:724,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/src/xmltree.c:725,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:728,1
    - Dst: xmlAddPrevSibling
      Src: /src/xmlsec/src/xmltree.c:735,1
    - Dst: xmlUnlinkNode
      Src: /src/xmlsec/src/xmltree.c:740,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/src/xmltree.c:746,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 4
    argNames:
    - node
    - buffer
    - size
    - replaced
    argTypes:
    - xmlNodePtr
    - xmlSecByte*
    - xmlSecSize
    - xmlNodePtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 705
    functionDepth: 11
    functionLinenumber: 705
    functionLinenumberEnd: 750
    functionName: xmlSecReplaceNodeBufferAndReturn
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlUnlinkNode
    - xmlSecAssert2
    - xmlSecParserGetDefaultOptions
    - xmlSecXmlError
    - return
    - xmlAddPrevSibling
    - xmlParseInNodeContext
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlFreeNode
    linkageType: ''
    returnType: int
    signature: int xmlSecReplaceNodeBufferAndReturn(xmlNodePtr node, const xmlSecByte
      *buffer, xmlSecSize size, xmlNodePtr *replaced)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:764,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:765,1
    - Dst: xmlEncodeSpecialChars
      Src: /src/xmlsec/src/xmltree.c:769,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:771,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/xmltree.c:774,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:775,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/xmltree.c:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - node
    - buffer
    argTypes:
    - xmlNodePtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 762
    functionDepth: 8
    functionLinenumber: 762
    functionLinenumberEnd: 780
    functionName: xmlSecNodeEncodeAndSetContent
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 7
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlNodeSetContent
    - xmlEncodeSpecialChars
    linkageType: ''
    returnType: int
    signature: int xmlSecNodeEncodeAndSetContent(xmlNodePtr node, const xmlChar *
      buffer)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:795,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:796,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:806,1
    - Dst: xmlNodeListGetString
      Src: /src/xmlsec/src/xmltree.c:807,1
    - Dst: xmlGetID
      Src: /src/xmlsec/src/xmltree.c:809,1
    - Dst: xmlAddID
      Src: /src/xmlsec/src/xmltree.c:811,1
    - Dst: xmlSecInvalidStringDataError
      Src: /src/xmlsec/src/xmltree.c:813,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:816,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/src/xmltree.c:829,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - doc
    - cur
    - ids
    argTypes:
    - xmlDocPtr
    - xmlNodePtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 791
    functionDepth: 8
    functionLinenumber: 791
    functionLinenumberEnd: 833
    functionName: xmlSecAddIDs
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 10
    functionsReached:
    - xmlStrEqual
    - xmlFree
    - xmlSecAddIDs
    - xmlAddID
    - xmlSecInvalidStringDataError
    - xmlNodeListGetString
    - xmlSecAssert
    - xmlGetID
    linkageType: ''
    returnType: void
    signature: void xmlSecAddIDs(xmlDocPtr doc, xmlNodePtr cur, const xmlChar** ids)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:850,1
    - Dst: xmlNewDoc
      Src: /src/xmlsec/src/xmltree.c:853,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:855,1
    - Dst: xmlNewDocNode
      Src: /src/xmlsec/src/xmltree.c:860,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:862,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xmltree.c:864,1
    - Dst: xmlDocSetRootElement
      Src: /src/xmlsec/src/xmltree.c:867,1
    - Dst: xmlNewNs
      Src: /src/xmlsec/src/xmltree.c:870,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:872,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:873,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/src/xmltree.c:874,1
    - Dst: xmlSetNs
      Src: /src/xmlsec/src/xmltree.c:877,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - rootNodeName
    - rootNodeNs
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 844
    functionDepth: 9
    functionLinenumber: 844
    functionLinenumberEnd: 880
    functionName: xmlSecCreateTree
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlNewDocNode
    - xmlDocSetRootElement
    - xmlNewDoc
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError
    - xmlNewNs
    - xmlSecXmlError2
    - xmlSetNs
    - xmlFreeDoc
    linkageType: ''
    returnType: xmlDocPtr
    signature: xmlDocPtr xmlSecCreateTree(const xmlChar* rootNodeName, const xmlChar*
      rootNodeNs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:895,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmltree.c:897,1
    - Dst: xmlNodeGetContent
      Src: /src/xmlsec/src/xmltree.c:901,1
    - Dst: xmlSecIsEmptyString
      Src: /src/xmlsec/src/xmltree.c:906,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:907,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 890
    functionDepth: 9
    functionLinenumber: 890
    functionLinenumberEnd: 909
    functionName: xmlSecIsEmptyNode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 2
    functionsReached:
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlSecIsEmptyString
    - xmlSecAssert2
    - xmlNodeGetContent
    linkageType: ''
    returnType: int
    signature: int xmlSecIsEmptyNode(xmlNodePtr node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:921,1
    - Dst: isspace
      Src: /src/xmlsec/src/xmltree.c:924,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 919
    functionDepth: 1
    functionLinenumber: 919
    functionLinenumberEnd: 929
    functionName: xmlSecIsEmptyString
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - isspace
    linkageType: ''
    returnType: int
    signature: int xmlSecIsEmptyString(const xmlChar* str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlEncodeSpecialChars
      Src: /src/xmlsec/src/xmltree.c:946,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:948,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:949,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:953,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:954,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:956,1
    - Dst: xmlSecIOError
      Src: /src/xmlsec/src/xmltree.c:960,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - fd
    - str
    argTypes:
    - FILE*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 940
    functionDepth: 3
    functionLinenumber: 940
    functionLinenumberEnd: 964
    functionName: xmlSecPrintXmlString
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 9
    functionsReached:
    - xmlFree
    - xmlSecErrorsSafeString
    - xmlSecIOError
    - fprintf
    - xmlSecXmlError2
    - xmlEncodeSpecialChars
    linkageType: ''
    returnType: int
    signature: int xmlSecPrintXmlString(FILE * fd, const xmlChar * str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:983,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:984,1
    - Dst: xmlSearchNsByHref
      Src: /src/xmlsec/src/xmltree.c:988,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:990,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:991,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xmltree.c:999,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/xmltree.c:999,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1000,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1000,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:1002,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:1004,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/xmltree.c:1008,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/xmltree.c:1010,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1011,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/xmltree.c:1015,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/xmltree.c:1017,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - node
    - href
    - local
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 977
    functionDepth: 2
    functionLinenumber: 977
    functionLinenumberEnd: 1024
    functionName: xmlSecGetQName
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError
    - xmlSearchNsByHref
    - return
    - xmlMalloc
    - xmlStrPrintf
    - xmlSecStrdupError
    - xmlSecXmlError2
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGetQName(xmlNodePtr node, const xmlChar* href, const xmlChar* local)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1046,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - info
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 1042
    functionDepth: 1
    functionLinenumber: 1042
    functionLinenumberEnd: 1055
    functionName: xmlSecQName2IntegerGetInfo
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecQName2IntegerInfoConstPtr
    signature: xmlSecQName2IntegerInfoConstPtr xmlSecQName2IntegerGetInfo(xmlSecQName2IntegerInfoConstPtr
      info, int intValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1074,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1075,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1076,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:1079,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:1080,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - info
    - qnameHref
    - qnameLocalPart
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlChar*
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1068
    functionDepth: 1
    functionLinenumber: 1068
    functionLinenumberEnd: 1087
    functionName: xmlSecQName2IntegerGetInteger
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2IntegerGetInteger(xmlSecQName2IntegerInfoConstPtr
      info,\n                             const xmlChar* qnameHref, const xmlChar*
      qnameLocalPart,\n                             int* intValue)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1112,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1113,1
    - Dst: xmlStrchr
      Src: /src/xmlsec/src/xmltree.c:1115,1
    - Dst: XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
      Src: /src/xmlsec/src/xmltree.c:1119,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1119,1
    - Dst: xmlStrndup
      Src: /src/xmlsec/src/xmltree.c:1120,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/xmltree.c:1122,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:1132,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:1134,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1135,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1137,1
    - Dst: xmlSecQName2IntegerGetInteger
      Src: /src/xmlsec/src/xmltree.c:1144,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/xmltree.c:1146,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1148,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1149,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1150,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1152,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1158,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 4
    argNames:
    - info
    - node
    - qname
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1100
    functionDepth: 2
    functionLinenumber: 1100
    functionLinenumberEnd: 1161
    functionName: xmlSecQName2IntegerGetIntegerFromString
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlStrndup
    - xmlSearchNs
    - return
    - xmlSecStrdupError
    - xmlSecQName2IntegerGetInteger
    - xmlSecXmlError2
    - xmlStrchr
    - xmlSecInternalError4
    - XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2IntegerGetIntegerFromString(xmlSecQName2IntegerInfoConstPtr
      info,\n                                        xmlNodePtr node, const xmlChar*
      qname,\n                                        int* intValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1181,1
    - Dst: xmlSecQName2IntegerGetInfo
      Src: /src/xmlsec/src/xmltree.c:1183,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/xmltree.c:1185,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1187,1
    - Dst: xmlSecGetQName
      Src: /src/xmlsec/src/xmltree.c:1192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - info
    - node
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1175
    functionDepth: 3
    functionLinenumber: 1175
    functionLinenumberEnd: 1193
    functionName: xmlSecQName2IntegerGetStringFromInteger
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecQName2IntegerGetInfo
    - xmlSecInternalError3
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecGetQName
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSecQName2IntegerGetStringFromInteger(xmlSecQName2IntegerInfoConstPtr
      info,\n                                        xmlNodePtr node, int intValue)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1213,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmltree.c:1215,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmltree.c:1217,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1218,1
    - Dst: xmlSecQName2IntegerGetIntegerFromString
      Src: /src/xmlsec/src/xmltree.c:1222,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/xmltree.c:1224,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1226,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1227,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1228,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - info
    - node
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1206
    functionDepth: 10
    functionLinenumber: 1206
    functionLinenumberEnd: 1234
    functionName: xmlSecQName2IntegerNodeRead
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecQName2IntegerGetIntegerFromString
    - xmlFree
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    linkageType: ''
    returnType: int
    signature: int xmlSecQName2IntegerNodeRead(xmlSecQName2IntegerInfoConstPtr info,
      xmlNodePtr node, int* intValue)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1256,1
    - Dst: xmlSecQName2IntegerGetStringFromInteger
      Src: /src/xmlsec/src/xmltree.c:1259,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/xmltree.c:1261,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1263,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/xmltree.c:1268,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/xmltree.c:1270,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1272,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1274,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/xmltree.c:1278,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 5
    argNames:
    - info
    - node
    - nodeName
    - nodeNs
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1248
    functionDepth: 10
    functionLinenumber: 1248
    functionLinenumberEnd: 1281
    functionName: xmlSecQName2IntegerNodeWrite
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError3
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecQName2IntegerGetStringFromInteger
    - xmlNodeSetContent
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2IntegerNodeWrite(xmlSecQName2IntegerInfoConstPtr info,
      xmlNodePtr node,\n                            const xmlChar* nodeName, const
      xmlChar* nodeNs, int intValue)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1302,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1304,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/xmltree.c:1306,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:1308,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1308,1
    - Dst: xmlSecQName2IntegerGetIntegerFromString
      Src: /src/xmlsec/src/xmltree.c:1313,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/xmltree.c:1315,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1317,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1318,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1319,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1320,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - info
    - node
    - attrName
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1295
    functionDepth: 11
    functionLinenumber: 1295
    functionLinenumberEnd: 1326
    functionName: xmlSecQName2IntegerAttributeRead
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecQName2IntegerGetIntegerFromString
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecXmlError2
    - xmlSecInternalError4
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2IntegerAttributeRead(xmlSecQName2IntegerInfoConstPtr
      info, xmlNodePtr node,\n                            const xmlChar* attrName,
      int* intValue)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1348,1
    - Dst: xmlSecQName2IntegerGetStringFromInteger
      Src: /src/xmlsec/src/xmltree.c:1351,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/xmltree.c:1353,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1355,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1356,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/xmltree.c:1361,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/xmltree.c:1363,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1365,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1366,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1368,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - info
    - node
    - attrName
    - intValue
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1374
      start: 1340
    functionDepth: 6
    functionLinenumber: 1340
    functionLinenumberEnd: 1374
    functionName: xmlSecQName2IntegerAttributeWrite
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError4
    - xmlSecQName2IntegerGetStringFromInteger
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2IntegerAttributeWrite(xmlSecQName2IntegerInfoConstPtr
      info, xmlNodePtr node,\n                            const xmlChar* attrName,
      int intValue)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1390,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1391,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1392,1
    - Dst: xmlSecQName2IntegerGetInfo
      Src: /src/xmlsec/src/xmltree.c:1394,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - info
    - intValue
    - name
    - output
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - int
    - xmlChar*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1385
    functionDepth: 2
    functionLinenumber: 1385
    functionLinenumberEnd: 1400
    functionName: xmlSecQName2IntegerDebugDump
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecQName2IntegerGetInfo
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlSecQName2IntegerDebugDump(xmlSecQName2IntegerInfoConstPtr
      info, int intValue,\n                            const xmlChar* name, FILE*
      output)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1416,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1417,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1418,1
    - Dst: xmlSecQName2IntegerGetInfo
      Src: /src/xmlsec/src/xmltree.c:1420,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1422,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - info
    - intValue
    - name
    - output
    argTypes:
    - xmlSecQName2IntegerInfoConstPtr
    - int
    - xmlChar*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1411
    functionDepth: 2
    functionLinenumber: 1411
    functionLinenumberEnd: 1427
    functionName: xmlSecQName2IntegerDebugXmlDump
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecQName2IntegerGetInfo
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlSecQName2IntegerDebugXmlDump(xmlSecQName2IntegerInfoConstPtr
      info, int intValue,\n                            const xmlChar* name, FILE*
      output)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1448,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1451,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - info
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlSecBitMask
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1444
    functionDepth: 1
    functionLinenumber: 1444
    functionLinenumberEnd: 1458
    functionName: xmlSecQName2BitMaskGetInfo
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlSecQName2BitMaskInfoConstPtr
    signature: xmlSecQName2BitMaskInfoConstPtr xmlSecQName2BitMaskGetInfo(xmlSecQName2BitMaskInfoConstPtr
      info, xmlSecBitMask mask)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1477,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1478,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1479,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1482,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:1483,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/xmltree.c:1484,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - info
    - qnameHref
    - qnameLocalPart
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlChar*
    - xmlChar*
    - xmlSecBitMask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1471
    functionDepth: 1
    functionLinenumber: 1471
    functionLinenumberEnd: 1492
    functionName: xmlSecQName2BitMaskGetBitMask
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2BitMaskGetBitMask(xmlSecQName2BitMaskInfoConstPtr
      info,\n                            const xmlChar* qnameHref, const xmlChar*
      qnameLocalPart,\n                            xmlSecBitMask* mask)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1516,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1517,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1518,1
    - Dst: xmlStrchr
      Src: /src/xmlsec/src/xmltree.c:1520,1
    - Dst: XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
      Src: /src/xmlsec/src/xmltree.c:1524,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1524,1
    - Dst: xmlStrndup
      Src: /src/xmlsec/src/xmltree.c:1525,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/xmltree.c:1527,1
    - Dst: xmlSearchNs
      Src: /src/xmlsec/src/xmltree.c:1537,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:1539,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1540,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1542,1
    - Dst: xmlSecQName2BitMaskGetBitMask
      Src: /src/xmlsec/src/xmltree.c:1549,1
    - Dst: xmlSecInternalError4
      Src: /src/xmlsec/src/xmltree.c:1551,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1553,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1554,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1555,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1557,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1563,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 4
    argNames:
    - info
    - node
    - qname
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - xmlSecBitMask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1566
      start: 1505
    functionDepth: 2
    functionLinenumber: 1505
    functionLinenumberEnd: 1566
    functionName: xmlSecQName2BitMaskGetBitMaskFromString
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlStrndup
    - xmlSearchNs
    - return
    - xmlSecQName2BitMaskGetBitMask
    - xmlSecStrdupError
    - xmlSecXmlError2
    - xmlStrchr
    - xmlSecInternalError4
    - XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2BitMaskGetBitMaskFromString(xmlSecQName2BitMaskInfoConstPtr
      info,\n                                        xmlNodePtr node, const xmlChar*
      qname,\n                                        xmlSecBitMask* mask)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1585,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1586,1
    - Dst: xmlSecQName2BitMaskGetInfo
      Src: /src/xmlsec/src/xmltree.c:1588,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/xmltree.c:1590,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1591,1
    - Dst: xmlSecGetQName
      Src: /src/xmlsec/src/xmltree.c:1595,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - info
    - node
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlNodePtr
    - xmlSecBitMask
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1580
    functionDepth: 3
    functionLinenumber: 1580
    functionLinenumberEnd: 1596
    functionName: xmlSecQName2BitMaskGetStringFromBitMask
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecAssert2
    - xmlSecQName2BitMaskGetInfo
    - xmlSecErrorsSafeString
    - xmlSecGetQName
    linkageType: ''
    returnType: xmlChar
    signature: "xmlChar *\nxmlSecQName2BitMaskGetStringFromBitMask(xmlSecQName2BitMaskInfoConstPtr
      info,\n                                        xmlNodePtr node, xmlSecBitMask
      mask)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1623,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1624,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1625,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/xmltree.c:1629,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/xmltree.c:1630,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmltree.c:1632,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1633,1
    - Dst: xmlSecQName2BitMaskGetBitMaskFromString
      Src: /src/xmlsec/src/xmltree.c:1637,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmltree.c:1639,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1640,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1641,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1644,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/xmltree.c:1648,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1649,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/xmltree.c:1654,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 6
    argNames:
    - info
    - node
    - nodeName
    - nodeNs
    - stopOnUnknown
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlNodePtr*
    - xmlChar*
    - xmlChar*
    - int
    - xmlSecBitMask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1614
    functionDepth: 10
    functionLinenumber: 1614
    functionLinenumberEnd: 1659
    functionName: xmlSecQName2BitMaskNodesRead
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecQName2BitMaskGetBitMaskFromString
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2BitMaskNodesRead(xmlSecQName2BitMaskInfoConstPtr info,
      xmlNodePtr* node,\n                            const xmlChar* nodeName, const
      xmlChar* nodeNs,\n                            int stopOnUnknown, xmlSecBitMask*
      mask)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1679,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1680,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1681,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1684,1
    - Dst: xmlSecGetQName
      Src: /src/xmlsec/src/xmltree.c:1690,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:1692,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1693,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/xmltree.c:1697,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmltree.c:1699,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmltree.c:1700,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1701,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/xmltree.c:1705,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1706,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - info
    - node
    - nodeName
    - nodeNs
    - mask
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlSecBitMask
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1673
    functionDepth: 10
    functionLinenumber: 1673
    functionLinenumberEnd: 1710
    functionName: xmlSecQName2BitMaskNodesWrite
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAddChild
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlNodeSetContent
    - xmlSecXmlError2
    - xmlSecGetQName
    linkageType: ''
    returnType: int
    signature: "int xmlSecQName2BitMaskNodesWrite(xmlSecQName2BitMaskInfoConstPtr
      info, xmlNodePtr node,\n                            const xmlChar* nodeName,
      const xmlChar* nodeNs,\n                            xmlSecBitMask mask)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1726,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1727,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1728,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1734,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1736,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1739,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1742,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - info
    - mask
    - name
    - output
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlSecBitMask
    - xmlChar*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1721
    functionDepth: 1
    functionLinenumber: 1721
    functionLinenumberEnd: 1743
    functionName: xmlSecQName2BitMaskDebugDump
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlSecQName2BitMaskDebugDump(xmlSecQName2BitMaskInfoConstPtr
      info, xmlSecBitMask mask,\n                            const xmlChar* name,
      FILE* output)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1759,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1760,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1761,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1767,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/xmltree.c:1769,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1772,1
    - Dst: fprintf
      Src: /src/xmlsec/src/xmltree.c:1776,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - info
    - mask
    - name
    - output
    argTypes:
    - xmlSecQName2BitMaskInfoConstPtr
    - xmlSecBitMask
    - xmlChar*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 1754
    functionDepth: 1
    functionLinenumber: 1754
    functionLinenumberEnd: 1777
    functionName: xmlSecQName2BitMaskDebugXmlDump
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void xmlSecQName2BitMaskDebugXmlDump(xmlSecQName2BitMaskInfoConstPtr
      info, xmlSecBitMask mask,\n                            const xmlChar* name,
      FILE* output)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1801,1
    - Dst: MultiByteToWideChar
      Src: /src/xmlsec/src/xmltree.c:1804,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1809,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1809,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:1812,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:1814,1
    - Dst: MultiByteToWideChar
      Src: /src/xmlsec/src/xmltree.c:1819,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1821,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1827
      start: 1794
    functionDepth: 1
    functionLinenumber: 1794
    functionLinenumberEnd: 1827
    functionName: xmlSecWin32ConvertUtf8ToUnicode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecMallocError
    - xmlFree
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - xmlMalloc
    - MultiByteToWideChar
    linkageType: ''
    returnType: LPWSTR
    signature: LPWSTR xmlSecWin32ConvertUtf8ToUnicode(const xmlChar* str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1844,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:1847,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1852,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1852,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:1855,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:1857,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:1862,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1864,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - str
    argTypes:
    - LPCWSTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1870
      start: 1837
    functionDepth: 1
    functionLinenumber: 1837
    functionLinenumberEnd: 1870
    functionName: xmlSecWin32ConvertUnicodeToUtf8
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - WideCharToMultiByte
    - return
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecWin32ConvertUnicodeToUtf8(LPCWSTR str)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1887,1
    - Dst: MultiByteToWideChar
      Src: /src/xmlsec/src/xmltree.c:1890,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1895,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1895,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:1898,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:1900,1
    - Dst: MultiByteToWideChar
      Src: /src/xmlsec/src/xmltree.c:1905,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1907,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1913
      start: 1880
    functionDepth: 1
    functionLinenumber: 1880
    functionLinenumberEnd: 1913
    functionName: xmlSecWin32ConvertLocaleToUnicode
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecMallocError
    - xmlFree
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - xmlMalloc
    - MultiByteToWideChar
    linkageType: ''
    returnType: LPWSTR
    signature: LPWSTR xmlSecWin32ConvertLocaleToUnicode(const char* str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1931,1
    - Dst: xmlSecWin32ConvertLocaleToUnicode
      Src: /src/xmlsec/src/xmltree.c:1933,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:1939,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1941,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1945,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1945,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:1948,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:1950,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1951,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:1956,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1958,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1959,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1964,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1923
    functionDepth: 2
    functionLinenumber: 1923
    functionLinenumberEnd: 1966
    functionName: xmlSecWin32ConvertLocaleToUtf8
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecWin32ConvertLocaleToUnicode
    - WideCharToMultiByte
    - return
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecWin32ConvertLocaleToUtf8(const char * str)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/xmltree.c:1984,1
    - Dst: xmlSecWin32ConvertUtf8ToUnicode
      Src: /src/xmlsec/src/xmltree.c:1986,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:1992,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:1994,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/xmltree.c:1998,1
    - Dst: return
      Src: /src/xmlsec/src/xmltree.c:1998,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/xmltree.c:2001,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/xmltree.c:2003,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:2004,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/xmltree.c:2009,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:2011,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:2012,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/xmltree.c:2017,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 1976
    functionDepth: 2
    functionLinenumber: 1976
    functionLinenumberEnd: 2019
    functionName: xmlSecWin32ConvertUtf8ToLocale
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - WideCharToMultiByte
    - return
    - xmlMalloc
    - xmlSecWin32ConvertUtf8ToUnicode
    - xmlSecMallocError
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecWin32ConvertUtf8ToLocale(const xmlChar* str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecWin32ConvertUnicodeToUtf8
      Src: /src/xmlsec/src/xmltree.c:2032,1
    - Dst: xmlSecWin32ConvertLocaleToUtf8
      Src: /src/xmlsec/src/xmltree.c:2034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - LPCTSTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 2029
    functionDepth: 3
    functionLinenumber: 2029
    functionLinenumberEnd: 2036
    functionName: xmlSecWin32ConvertTstrToUtf8
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 0
    functionsReached:
    - xmlSecWin32ConvertLocaleToUtf8
    - xmlSecWin32ConvertUnicodeToUtf8
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecWin32ConvertTstrToUtf8(LPCTSTR str)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecWin32ConvertUtf8ToUnicode
      Src: /src/xmlsec/src/xmltree.c:2049,1
    - Dst: xmlSecWin32ConvertUtf8ToLocale
      Src: /src/xmlsec/src/xmltree.c:2051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2053
      start: 2046
    functionDepth: 3
    functionLinenumber: 2046
    functionLinenumberEnd: 2053
    functionName: xmlSecWin32ConvertUtf8ToTstr
    functionSourceFile: /src/xmlsec/src/xmltree.c
    functionUses: 1
    functionsReached:
    - xmlSecWin32ConvertUtf8ToLocale
    - xmlSecWin32ConvertUtf8ToUnicode
    linkageType: ''
    returnType: LPTSTR
    signature: LPTSTR xmlSecWin32ConvertUtf8ToTstr(const xmlChar*  str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecDefaultExternalEntityLoader
      Src: /src/xmlsec/src/xmlsec.c:54,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/xmlsec.c:56,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/xmlsec.c:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - URL
    - ID
    - ctxt
    argTypes:
    - char*
    - char*
    - xmlParserCtxtPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 59
    functionName: xmlSecNoXxeExternalEntityLoader
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsSafeString
    - xmlSecXmlError2
    - xmlSecDefaultExternalEntityLoader
    linkageType: ''
    returnType: xmlParserInputPtr
    signature: "xmlParserInputPtr xmlSecNoXxeExternalEntityLoader(const char *URL,
      const char *ID,\n                          xmlParserCtxtPtr ctxt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSetExternalEntityLoader
      Src: /src/xmlsec/src/xmlsec.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - entityLoader
    argTypes:
    - xmlExternalEntityLoader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: xmlSecSetExternalEntityLoader
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSetExternalEntityLoader
    linkageType: ''
    returnType: void
    signature: void xmlSecSetExternalEntityLoader(xmlExternalEntityLoader entityLoader)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsInit
      Src: /src/xmlsec/src/xmlsec.c:88,1
    - Dst: xmlSecIOInit
      Src: /src/xmlsec/src/xmlsec.c:89,1
    - Dst: xmlSecCryptoDLInit
      Src: /src/xmlsec/src/xmlsec.c:92,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlsec.c:93,1
    - Dst: xmlSecKeyDataIdsInit
      Src: /src/xmlsec/src/xmlsec.c:98,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlsec.c:99,1
    - Dst: xmlSecTransformIdsInit
      Src: /src/xmlsec/src/xmlsec.c:103,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlsec.c:104,1
    - Dst: xmlGetExternalEntityLoader
      Src: /src/xmlsec/src/xmlsec.c:110,1
    - Dst: xmlSetExternalEntityLoader
      Src: /src/xmlsec/src/xmlsec.c:115,1
    - Dst: srand
      Src: /src/xmlsec/src/xmlsec.c:119,1
    - Dst: time
      Src: /src/xmlsec/src/xmlsec.c:119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 86
    functionDepth: 6
    functionLinenumber: 86
    functionLinenumberEnd: 121
    functionName: xmlSecInit
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecIOInit
    - xmlSetExternalEntityLoader
    - time
    - xmlSecTransformIdsInit
    - xmlSecErrorsInit
    - xmlSecKeyDataIdsInit
    - xmlSecCryptoDLInit
    - xmlGetExternalEntityLoader
    - srand
    linkageType: ''
    returnType: int
    signature: int xmlSecInit(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformIdsShutdown
      Src: /src/xmlsec/src/xmlsec.c:134,1
    - Dst: xmlSecKeyDataIdsShutdown
      Src: /src/xmlsec/src/xmlsec.c:135,1
    - Dst: xmlSecCryptoDLShutdown
      Src: /src/xmlsec/src/xmlsec.c:138,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/xmlsec.c:139,1
    - Dst: xmlSecIOShutdown
      Src: /src/xmlsec/src/xmlsec.c:151,1
    - Dst: xmlSecErrorsShutdown
      Src: /src/xmlsec/src/xmlsec.c:152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 130
    functionDepth: 3
    functionLinenumber: 130
    functionLinenumberEnd: 154
    functionName: xmlSecShutdown
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecCryptoDLShutdown
    - xmlSecIOShutdown
    - xmlSecKeyDataIdsShutdown
    - xmlSecTransformIdsShutdown
    - xmlSecErrorsShutdown
    linkageType: ''
    returnType: int
    signature: int xmlSecShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: xmlSecGetDefaultCrypto
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: xmlChar * xmlSecGetDefaultCrypto(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/xmlsec.c:183,1
    - Dst: xmlSecOtherError5
      Src: /src/xmlsec/src/xmlsec.c:192,1
    - Dst: xmlSecOtherError5
      Src: /src/xmlsec/src/xmlsec.c:201,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 4
    argNames:
    - major
    - minor
    - subminor
    - mode
    argTypes:
    - int
    - int
    - int
    - xmlSecCheckVersionMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 210
    functionName: xmlSecCheckVersionExt
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError3
    - xmlSecOtherError5
    linkageType: ''
    returnType: int
    signature: int xmlSecCheckVersionExt(int major, int minor, int subminor, xmlSecCheckVersionMode
      mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/xmlsec/src/xmlsec.c:228,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/xmlsec.c:229,1
    - Dst: return
      Src: /src/xmlsec/src/xmlsec.c:229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 231
    functionName: xmlSecStrlen
    functionSourceFile: /src/xmlsec/src/xmlsec.c
    functionUses: 11
    functionsReached:
    - return
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - strlen
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecStrlen(const xmlChar* str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: xmlSecKWDes3CheckId
    functionSourceFile: /src/xmlsec/src/kw_aes_des.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKWDes3CheckId(id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: xmlSecKeyDataIdsGet
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecKeyDataIdsGet(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: xmlSecKeyDataIdsGetEnabled
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecKeyDataIdsGetEnabled(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keysdata.c:85,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:87,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/keysdata.c:91,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:93,1
    - Dst: xmlSecKeyDataIdsRegisterDefault
      Src: /src/xmlsec/src/keysdata.c:97,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:99,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 104
    functionName: xmlSecKeyDataIdsInit
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListInitialize
    - xmlSecInternalError
    - xmlSecKeyDataIdsRegisterDefault
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataIdsInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keysdata.c:114,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/keysdata.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 116
    functionName: xmlSecKeyDataIdsShutdown
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataIdsShutdown(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:130,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysdata.c:132,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:134,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:134,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysdata.c:138,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:140,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 145
    functionName: xmlSecKeyDataIdsRegister
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecKeyDataKlassGetName
    - xmlSecPtrListAdd
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataIdsRegister(xmlSecKeyDataId id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:159,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/keysdata.c:161,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:163,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 168
    functionName: xmlSecKeyDataIdsRegisterDisabled
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecKeyDataKlassGetName
    - xmlSecPtrListAdd
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataId id)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:181,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:182,1
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:186,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:187,1
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:191,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:192,1
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:197,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:198,1
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:201,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:202,1
    - Dst: xmlSecKeyDataIdsRegister
      Src: /src/xmlsec/src/keysdata.c:205,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:206,1
    - Dst: xmlSecKeyDataIdsRegisterDisabled
      Src: /src/xmlsec/src/keysdata.c:212,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:213,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 218
    functionName: xmlSecKeyDataIdsRegisterDefault
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyDataIdsRegister
    - xmlSecKeyDataIdsRegisterDisabled
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataIdsRegisterDefault(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:244,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysdata.c:247,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysdata.c:249,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:250,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:259,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:260,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:261,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 267
    functionName: xmlSecKeyDataCreate
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlMalloc
    - xmlSecKeyDataKlassGetName
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecKeyDataCreate(xmlSecKeyDataId id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:284,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:285,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/keysdata.c:287,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:289,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:290,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:296,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:297,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 303
    functionName: xmlSecKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecKeyDataDuplicate(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:313,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:313,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:314,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:319,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 321
    functionName: xmlSecKeyDataDestroy
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 7
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyDataIsValid
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataDestroy(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 343
    functionName: xmlSecKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr
      node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 364
    functionName: xmlSecKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr
      node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 388
    functionName: xmlSecKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n                    const
      xmlSecByte* buf, xmlSecSize bufSize,\n                    xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 412
    functionName: xmlSecKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                   xmlSecByte** buf, xmlSecSize* bufSize,\n                    xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:429,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:430,1
    - Dst: xmlSecKeyDataPtr::id::generate
      Src: /src/xmlsec/src/keysdata.c:433,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:435,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:435,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - data
    - sizeBits
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 440
    functionName: xmlSecKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataPtr::id::generate
    - xmlSecInternalError2
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,\n
      \                     xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:452,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:453,1
    - Dst: xmlSecKeyDataPtr::id::getType
      Src: /src/xmlsec/src/keysdata.c:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 450
    functionDepth: 1
    functionLinenumber: 450
    functionLinenumberEnd: 456
    functionName: xmlSecKeyDataGetType
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataPtr::id::getType
    - xmlSecKeyDataIsValid
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:468,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:468,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:469,1
    - Dst: xmlSecKeyDataPtr::id::getSize
      Src: /src/xmlsec/src/keysdata.c:471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 466
    functionDepth: 1
    functionLinenumber: 466
    functionLinenumberEnd: 472
    functionName: xmlSecKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataIsValid
    - xmlSecKeyDataPtr::id::getSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:484,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:484,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/keysdata.c:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 482
    functionDepth: 1
    functionLinenumber: 482
    functionLinenumberEnd: 487
    functionName: xmlSecKeyDataGetIdentifier
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecKeyDataIsValid
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecKeyDataGetIdentifier(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:498,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:498,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:499,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:500,1
    - Dst: xmlSecKeyDataPtr::id::debugDump
      Src: /src/xmlsec/src/keysdata.c:502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 503
    functionName: xmlSecKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyDataIsValid
    - xmlSecKeyDataPtr::id::debugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataDebugDump(xmlSecKeyDataPtr data, FILE *output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:514,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:514,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:515,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:516,1
    - Dst: xmlSecKeyDataPtr::id::debugXmlDump
      Src: /src/xmlsec/src/keysdata.c:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 519
    functionName: xmlSecKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataPtr::id::debugXmlDump
    - xmlSecAssert
    - xmlSecKeyDataIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE *output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:540,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:541,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:541,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:545,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:549,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 535
    functionDepth: 2
    functionLinenumber: 535
    functionLinenumberEnd: 555
    functionName: xmlSecKeyDataBinaryValueInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataBinaryValueInitialize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:571,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:572,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:572,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:573,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:573,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:574,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:574,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:576,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:577,1
    - Dst: xmlSecKeyDataBinaryValueSetBuffer
      Src: /src/xmlsec/src/keysdata.c:580,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:581,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:582,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:584,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 590
    functionName: xmlSecKeyDataBinaryValueDuplicate
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyDataCheckSize
    - xmlSecBufferGetSize
    - xmlSecKeyDataBinaryValueSetBuffer
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataBinaryValueDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:602,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:602,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:603,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:603,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:606,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:607,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 598
    functionDepth: 2
    functionLinenumber: 598
    functionLinenumberEnd: 610
    functionName: xmlSecKeyDataBinaryValueFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataBinaryValueFinalize(xmlSecKeyDataPtr data)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:632,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:634,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:635,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keysdata.c:637,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keysdata.c:639,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:639,1
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/keysdata.c:645,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:647,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:647,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:652,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/keysdata.c:656,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/keysdata.c:657,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:657,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:658,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:658,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:662,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:664,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keysdata.c:665,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:666,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:668,1
    - Dst: memcmp
      Src: /src/xmlsec/src/keysdata.c:671,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:671,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:672,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:673,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/keysdata.c:687,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:689,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:689,1
    - Dst: xmlSecKeyDataBinaryValueSetBuffer
      Src: /src/xmlsec/src/keysdata.c:693,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:695,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:696,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/keysdata.c:701,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:702,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:702,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:706,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:708,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:708,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:718,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:721,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 623
    functionDepth: 10
    functionLinenumber: 623
    functionLinenumberEnd: 724
    functionName: xmlSecKeyDataBinaryValueXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - xmlSecOtherError2
    - xmlSecKeyDataBinaryValueSetBuffer
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecKeyGetValue
    - xmlFree
    - xmlSecErrorsSafeString
    - xmlSecKeyDataDestroy
    - memcmp
    - xmlSecKeyDataCreate
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecOtherError3
    - xmlSecOtherError
    - xmlSecBase64DecodeInPlace
    - xmlSecKeyReqMatchKeyValue
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinaryValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:745,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:746,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:747,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:748,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:755,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:756,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:756,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:758,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:759,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/keysdata.c:761,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:761,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:762,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:765,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:766,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:769,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:770,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 738
    functionDepth: 8
    functionLinenumber: 738
    functionLinenumberEnd: 772
    functionName: xmlSecKeyDataBinaryValueXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlFree
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlNodeSetContent
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBase64Encode
    - xmlSecKeyDataKlassGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinaryValueXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                            xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:793,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:794,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:795,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:796,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:797,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:800,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/keysdata.c:804,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/keysdata.c:805,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:806,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:808,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:808,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:812,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:814,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/keysdata.c:815,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:816,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:818,1
    - Dst: memcmp
      Src: /src/xmlsec/src/keysdata.c:821,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:821,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:822,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:823,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/keysdata.c:835,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:837,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:837,1
    - Dst: xmlSecKeyDataBinaryValueSetBuffer
      Src: /src/xmlsec/src/keysdata.c:841,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:843,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:844,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:846,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/keysdata.c:850,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:851,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:852,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:853,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:857,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:859,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:860,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:861,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 786
    functionDepth: 2
    functionLinenumber: 786
    functionLinenumberEnd: 866
    functionName: xmlSecKeyDataBinaryValueBinRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError2
    - xmlSecKeyDataBinaryValueSetBuffer
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecKeyGetValue
    - xmlSecErrorsSafeString
    - xmlSecKeyDataDestroy
    - memcmp
    - xmlSecKeyDataCreate
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecOtherError3
    - xmlSecOtherError
    - xmlSecKeyReqMatchKeyValue
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinaryValueBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                const xmlSecByte* buf, xmlSecSize bufSize,\n
      \                               xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:887,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:888,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:889,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:890,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:891,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:898,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:899,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:899,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:901,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:902,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:904,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysdata.c:905,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysdata.c:907,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:908,1
    - Dst: memcpy
      Src: /src/xmlsec/src/keysdata.c:911,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:911,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 880
    functionDepth: 2
    functionLinenumber: 880
    functionLinenumberEnd: 913
    functionName: xmlSecKeyDataBinaryValueBinWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlMalloc
    - xmlSecBufferGetSize
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecKeyDataKlassGetName
    - memcpy
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinaryValueBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlSecByte** buf, xmlSecSize* bufSize,\n
      \                               xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:926,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:926,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:927,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:927,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:928,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:929,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:931,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:932,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:935,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/keysdata.c:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 922
    functionDepth: 2
    functionLinenumber: 922
    functionLinenumberEnd: 937
    functionName: xmlSecKeyDataBinaryValueDebugDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecKeyDataGetSize
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataBinaryValueGetBuffer
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataBinaryValueDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:950,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:950,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:951,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:951,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:952,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:953,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:955,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:956,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:959,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/keysdata.c:960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 946
    functionDepth: 2
    functionLinenumber: 946
    functionLinenumberEnd: 961
    functionName: xmlSecKeyDataBinaryValueDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecKeyDataGetSize
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataBinaryValueGetBuffer
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataBinaryValueDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:975,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:975,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:976,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:976,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:978,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:979,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:982,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 971
    functionDepth: 2
    functionLinenumber: 971
    functionLinenumberEnd: 983
    functionName: xmlSecKeyDataBinaryValueGetSize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecBufferGetSize
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecKeyDataBinaryValueGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:995,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:995,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:996,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:996,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 993
    functionDepth: 1
    functionLinenumber: 993
    functionLinenumberEnd: 999
    functionName: xmlSecKeyDataBinaryValueGetBuffer
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 12
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    linkageType: ''
    returnType: xmlSecBufferPtr
    signature: xmlSecBufferPtr xmlSecKeyDataBinaryValueGetBuffer(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1016,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/keysdata.c:1016,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1017,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/keysdata.c:1017,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1018,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1019,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/keysdata.c:1021,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1022,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/keysdata.c:1024,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1011
    functionDepth: 3
    functionLinenumber: 1011
    functionLinenumberEnd: 1025
    functionName: xmlSecKeyDataBinaryValueSetBuffer
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecBufferSetData
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataBinaryValueSetBuffer(xmlSecKeyDataPtr data,\n                        const
      xmlSecByte* buf, xmlSecSize bufSize)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1068,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1069,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1070,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1071,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1072,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:1074,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:1075,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1076,1
    - Dst: xmlSecKeyValueEcInitialize
      Src: /src/xmlsec/src/keysdata.c:1080,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1082,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1083,1
    - Dst: xmlSecKeyValueEcXmlRead
      Src: /src/xmlsec/src/keysdata.c:1088,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1090,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1091,1
    - Dst: readFunc
      Src: /src/xmlsec/src/keysdata.c:1095,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1097,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1098,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:1103,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1105,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:1106,1
    - Dst: xmlSecKeyValueEcFinalize
      Src: /src/xmlsec/src/keysdata.c:1117,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:1120,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - readFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyDataEcRead
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1057
    functionDepth: 2
    functionLinenumber: 1057
    functionLinenumberEnd: 1123
    functionName: xmlSecKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecKeyValueEcInitialize
    - xmlSecAssert2
    - readFunc
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    - xmlSecKeyValueEcXmlRead
    - xmlSecKeyValueEcFinalize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataEcXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \   xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n    xmlSecKeyDataEcRead
      readFunc)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1155,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1156,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:1163,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:1165,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1166,1
    - Dst: xmlSecKeyValueEcInitialize
      Src: /src/xmlsec/src/keysdata.c:1170,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1172,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1173,1
    - Dst: writeFunc
      Src: /src/xmlsec/src/keysdata.c:1178,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1180,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1181,1
    - Dst: xmlSecKeyValueEcXmlWrite
      Src: /src/xmlsec/src/keysdata.c:1185,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1187,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1188,1
    - Dst: xmlSecKeyValueEcFinalize
      Src: /src/xmlsec/src/keysdata.c:1198,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 7
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - base64LineSize
    - addLineBreaks
    - writeFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - int
    - int
    - xmlSecKeyDataEcWrite
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1140
    functionDepth: 2
    functionLinenumber: 1140
    functionLinenumberEnd: 1201
    functionName: xmlSecKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecKeyValueEcInitialize
    - xmlSecAssert2
    - xmlSecKeyValueEcXmlWrite
    - writeFunc
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyValueEcFinalize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        int
      base64LineSize, int addLineBreaks,\n                        xmlSecKeyDataEcWrite
      writeFunc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1207,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:1208,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1210,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1212,1
    - Dst: xmlSecKeyValueEcFinalize
      Src: /src/xmlsec/src/keysdata.c:1213,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1216,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1218,1
    - Dst: xmlSecKeyValueEcFinalize
      Src: /src/xmlsec/src/keysdata.c:1219,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1224,1
    - Dst: xmlSecKeyValueEcFinalize
      Src: /src/xmlsec/src/keysdata.c:1225,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1203
    functionDepth: 2
    functionLinenumber: 1203
    functionLinenumberEnd: 1229
    functionName: xmlSecKeyValueEcInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecKeyValueEcFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueEcInitialize(xmlSecKeyValueEcPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:1233,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:1236,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1238,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1239,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1240,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:1242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1231
    functionDepth: 2
    functionLinenumber: 1231
    functionLinenumberEnd: 1243
    functionName: xmlSecKeyValueEcFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyValueEcFinalize(xmlSecKeyValueEcPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1263,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:1266,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1267,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/keysdata.c:1269,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/keysdata.c:1273,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/keysdata.c:1280,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:1282,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/keysdata.c:1288,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:1290,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - ecValue
    argTypes:
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1257
    functionDepth: 3
    functionLinenumber: 1257
    functionLinenumberEnd: 1297
    functionName: xmlSecKeyDataEcPublicKeySplitComponents
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecInvalidSizeDataError
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataEcPublicKeySplitComponents (xmlSecKeyValueEcPtr ecValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1305,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:1307,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1308,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:1309,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1315,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/keysdata.c:1320,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:1322,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:1326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1327,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:1330,1
    - Dst: memcpy
      Src: /src/xmlsec/src/keysdata.c:1332,1
    - Dst: memcpy
      Src: /src/xmlsec/src/keysdata.c:1333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 1
    argNames:
    - ecValue
    argTypes:
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1299
    functionDepth: 2
    functionLinenumber: 1299
    functionLinenumberEnd: 1337
    functionName: xmlSecKeyDataEcPublicKeyCombineComponents
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - memcpy
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataEcPublicKeyCombineComponents (xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1377,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1379,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1382,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:1383,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keysdata.c:1386,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/keysdata.c:1388,1
    - Dst: xmlStrncmp
      Src: /src/xmlsec/src/keysdata.c:1392,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:1392,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/keysdata.c:1393,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:1393,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/keysdata.c:1395,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:1398,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1401,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1405,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:1406,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1409,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1411,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1414,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:1418,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecKeyValueEcPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1370
    functionDepth: 11
    functionLinenumber: 1370
    functionLinenumberEnd: 1424
    functionName: xmlSecKeyValueEcXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlStrdup
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlStrlen
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecInvalidNodeAttributeError
    - xmlSecStrdupError
    - xmlStrncmp
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueEcXmlRead(xmlSecKeyValueEcPtr data, xmlNodePtr node)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1433,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1436,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1438,1
    - Dst: xmlStrncmp
      Src: /src/xmlsec/src/keysdata.c:1442,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:1442,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:1447,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:1447,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/keysdata.c:1448,1
    - Dst: return
      Src: /src/xmlsec/src/keysdata.c:1448,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysdata.c:1450,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysdata.c:1452,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/keysdata.c:1456,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/keysdata.c:1458,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:1459,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/keysdata.c:1462,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:1463,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/keysdata.c:1465,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1469,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1471,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1475,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1475,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1477,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1480,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1482,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1486,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1486,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 47
    argCount: 4
    argNames:
    - data
    - node
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecKeyValueEcPtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1426
    functionDepth: 11
    functionLinenumber: 1426
    functionLinenumberEnd: 1491
    functionName: xmlSecKeyValueEcXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlSecGetDefaultLineFeed
    - xmlSecInternalError
    - xmlFree
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecXmlError
    - return
    - xmlMalloc
    - xmlNodeAddContent
    - xmlNodeSetContent
    - xmlStrPrintf
    - xmlStrncmp
    - xmlSecBufferBase64NodeContentWrite
    - xmlSetProp
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueEcXmlWrite(xmlSecKeyValueEcPtr data, xmlNodePtr node,  int
      base64LineSize, int addLineBreaks)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1551,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1552,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1553,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1554,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1555,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:1557,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:1558,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1559,1
    - Dst: xmlSecKeyValueDhInitialize
      Src: /src/xmlsec/src/keysdata.c:1563,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1565,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1566,1
    - Dst: xmlSecKeyValueDhXmlRead
      Src: /src/xmlsec/src/keysdata.c:1571,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1573,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1574,1
    - Dst: readFunc
      Src: /src/xmlsec/src/keysdata.c:1578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1580,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1581,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:1586,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1588,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:1589,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1600,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:1603,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - readFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyDataDhRead
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1606
      start: 1540
    functionDepth: 2
    functionLinenumber: 1540
    functionLinenumberEnd: 1606
    functionName: xmlSecKeyDataDhXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecKeyValueDhFinalize
    - xmlSecAssert2
    - xmlSecKeyValueDhInitialize
    - readFunc
    - xmlSecKeyValueDhXmlRead
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataDhXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        xmlSecKeyDataDhRead
      readFunc\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1635,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1637,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1638,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1639,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1640,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:1647,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:1649,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1650,1
    - Dst: xmlSecKeyValueDhInitialize
      Src: /src/xmlsec/src/keysdata.c:1654,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1656,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1657,1
    - Dst: writeFunc
      Src: /src/xmlsec/src/keysdata.c:1662,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1664,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1665,1
    - Dst: xmlSecKeyValueDhXmlWrite
      Src: /src/xmlsec/src/keysdata.c:1669,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1671,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:1672,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1682,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 7
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - base64LineSize
    - addLineBreaks
    - writeFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - int
    - int
    - xmlSecKeyDataDhWrite
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1685
      start: 1623
    functionDepth: 2
    functionLinenumber: 1623
    functionLinenumberEnd: 1685
    functionName: xmlSecKeyDataDhXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecKeyValueDhFinalize
    - xmlSecAssert2
    - xmlSecKeyValueDhInitialize
    - xmlSecKeyValueDhXmlWrite
    - writeFunc
    - xmlSecKeyDataKlassGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataDhXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        int
      base64LineSize, int addLineBreaks,\n                        xmlSecKeyDataDhWrite
      writeFunc\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1691,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:1692,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1694,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1696,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1697,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1700,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1702,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1703,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1706,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1708,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1709,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1712,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1714,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1715,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1718,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1720,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1721,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:1724,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1726,1
    - Dst: xmlSecKeyValueDhFinalize
      Src: /src/xmlsec/src/keysdata.c:1727,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1687
    functionDepth: 2
    functionLinenumber: 1687
    functionLinenumberEnd: 1732
    functionName: xmlSecKeyValueDhInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyValueDhFinalize
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueDhInitialize(xmlSecKeyValueDhPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:1736,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1738,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1739,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1740,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1741,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1742,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:1743,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:1744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1734
    functionDepth: 2
    functionLinenumber: 1734
    functionLinenumberEnd: 1745
    functionName: xmlSecKeyValueDhFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyValueDhFinalize(xmlSecKeyValueDhPtr data)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1752,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1753,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1755,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1758,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1759,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1761,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1764,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1767,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1768,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1770,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1773,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1776,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1777,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1779,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1782,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1786,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:1787,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1790,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1792,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1795,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1798,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1799,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1801,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1804,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:1808,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:1809,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1811,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:1814,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:1819,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 59
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecKeyValueDhPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1747
    functionDepth: 4
    functionLinenumber: 1747
    functionLinenumberEnd: 1825
    functionName: xmlSecKeyValueDhXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueDhXmlRead(xmlSecKeyValueDhPtr data, xmlNodePtr node)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1832,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:1833,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1836,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1837,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1839,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1843,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1843,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1845,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1847,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1849,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1853,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1853,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1858,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1861,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1865,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1865,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1867,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1869,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1871,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1875,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1875,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1880,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1881,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1883,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1887,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1887,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1889,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1891,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1893,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1897,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1897,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1902,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1904,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1908,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1908,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1910,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1912,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1914,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1918,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1918,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1922,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1923,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1925,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1929,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1929,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1931,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1933,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1935,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1939,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1939,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:1944,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:1945,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1947,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1951,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1951,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:1953,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:1955,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:1957,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:1961,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:1961,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 122
    argCount: 4
    argNames:
    - data
    - node
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecKeyValueDhPtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1827
    functionDepth: 11
    functionLinenumber: 1827
    functionLinenumberEnd: 1967
    functionName: xmlSecKeyValueDhXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlNodeAddContent
    - xmlSecBufferGetSize
    - xmlNodeSetContent
    - xmlSecBufferBase64NodeContentWrite
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueDhXmlWrite(xmlSecKeyValueDhPtr data, xmlNodePtr node,
      int base64LineSize, int addLineBreaks)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2012,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2013,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2014,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2015,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2016,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:2018,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:2019,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2020,1
    - Dst: xmlSecKeyValueDsaInitialize
      Src: /src/xmlsec/src/keysdata.c:2024,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2026,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2027,1
    - Dst: xmlSecKeyValueDsaXmlRead
      Src: /src/xmlsec/src/keysdata.c:2032,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2034,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2035,1
    - Dst: readFunc
      Src: /src/xmlsec/src/keysdata.c:2039,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2041,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2042,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:2047,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2049,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:2050,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2061,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:2064,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - readFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyDataDsaRead
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2067
      start: 2002
    functionDepth: 2
    functionLinenumber: 2002
    functionLinenumberEnd: 2067
    functionName: xmlSecKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyValueDsaXmlRead
    - readFunc
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyValueDsaInitialize
    - xmlSecKeyDataGetName
    - xmlSecKeyValueDsaFinalize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        xmlSecKeyDataDsaRead
      readFunc)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2096,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2097,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2098,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2099,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2100,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2101,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:2111,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:2113,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2114,1
    - Dst: xmlSecKeyValueDsaInitialize
      Src: /src/xmlsec/src/keysdata.c:2118,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2120,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2121,1
    - Dst: writeFunc
      Src: /src/xmlsec/src/keysdata.c:2126,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2128,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2129,1
    - Dst: xmlSecKeyValueDsaXmlWrite
      Src: /src/xmlsec/src/keysdata.c:2133,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2136,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2137,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2147,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 7
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - base64LineSize
    - addLineBreaks
    - writeFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - int
    - int
    - xmlSecKeyDataDsaWrite
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2084
    functionDepth: 2
    functionLinenumber: 2084
    functionLinenumberEnd: 2150
    functionName: xmlSecKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyValueDsaXmlWrite
    - writeFunc
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyValueDsaInitialize
    - xmlSecKeyValueDsaFinalize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        int
      base64LineSize, int addLineBreaks,\n                        xmlSecKeyDataDsaWrite
      writeFunc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2156,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:2157,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2159,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2161,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2162,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2165,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2167,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2168,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2171,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2173,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2174,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2177,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2179,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2180,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2183,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2185,1
    - Dst: xmlSecKeyValueDsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2186,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2152
    functionDepth: 2
    functionLinenumber: 2152
    functionLinenumberEnd: 2191
    functionName: xmlSecKeyValueDsaInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecKeyValueDsaFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueDsaInitialize(xmlSecKeyValueDsaPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:2195,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2197,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2198,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2199,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2200,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2201,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:2202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2203
      start: 2193
    functionDepth: 2
    functionLinenumber: 2193
    functionLinenumberEnd: 2203
    functionName: xmlSecKeyValueDsaFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyValueDsaFinalize(xmlSecKeyValueDsaPtr data)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2211,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2213,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2216,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2217,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2220,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2222,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2225,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2228,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2229,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2234,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2237,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2240,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2241,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2244,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2246,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2249,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2251,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2254,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2256,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2259,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/keysdata.c:2262,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2264,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2270,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2271,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2276,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2279,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2281,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/keysdata.c:2282,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2283,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2286,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/keysdata.c:2287,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2288,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2291,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/keysdata.c:2292,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2293,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:2297,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 75
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecKeyValueDsaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2205
    functionDepth: 4
    functionLinenumber: 2205
    functionLinenumberEnd: 2303
    functionName: xmlSecKeyValueDsaXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecInvalidNodeError
    - xmlSecBufferSetSize
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueDsaXmlRead(xmlSecKeyValueDsaPtr data, xmlNodePtr
      node)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2312,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2315,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2317,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2321,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2321,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2323,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2325,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2327,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2331,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2331,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2335,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2337,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2341,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2341,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2343,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2345,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2347,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2351,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2351,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2355,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2357,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2361,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2361,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2363,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2365,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2367,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2371,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2371,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:2375,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2378,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2382,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2382,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2384,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2386,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2388,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2392,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2392,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2397,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2399,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2403,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2403,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2405,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2407,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2409,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2413,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2413,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 96
    argCount: 5
    argNames:
    - data
    - node
    - writePrivateKey
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecKeyValueDsaPtr
    - xmlNodePtr
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2417
      start: 2305
    functionDepth: 11
    functionLinenumber: 2305
    functionLinenumberEnd: 2417
    functionName: xmlSecKeyValueDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlNodeAddContent
    - xmlNodeSetContent
    - xmlSecBufferGetSize
    - xmlSecBufferBase64NodeContentWrite
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyValueDsaXmlWrite(xmlSecKeyValueDsaPtr data, xmlNodePtr
      node,\n                      int writePrivateKey, int base64LineSize, int addLineBreaks)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2462,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2463,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2464,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2465,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2466,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:2468,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:2469,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2470,1
    - Dst: xmlSecKeyValueRsaInitialize
      Src: /src/xmlsec/src/keysdata.c:2474,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2476,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2477,1
    - Dst: xmlSecKeyValueRsaXmlRead
      Src: /src/xmlsec/src/keysdata.c:2482,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2484,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2485,1
    - Dst: readFunc
      Src: /src/xmlsec/src/keysdata.c:2489,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2491,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2492,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/keysdata.c:2497,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2499,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:2500,1
    - Dst: xmlSecKeyValueRsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2511,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/keysdata.c:2514,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 5
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - readFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyDataRsaRead
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2517
      start: 2452
    functionDepth: 2
    functionLinenumber: 2452
    functionLinenumberEnd: 2517
    functionName: xmlSecKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecKeyValueRsaInitialize
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - readFunc
    - xmlSecKeyDataDestroy
    - xmlSecKeyValueRsaFinalize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    - xmlSecKeyValueRsaXmlRead
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        xmlSecKeyDataRsaRead
      readFunc)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2548,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2551,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/keysdata.c:2561,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/keysdata.c:2563,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2564,1
    - Dst: xmlSecKeyValueRsaInitialize
      Src: /src/xmlsec/src/keysdata.c:2568,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2570,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2571,1
    - Dst: writeFunc
      Src: /src/xmlsec/src/keysdata.c:2576,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2578,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2579,1
    - Dst: xmlSecKeyValueRsaXmlWrite
      Src: /src/xmlsec/src/keysdata.c:2583,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2586,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/keysdata.c:2587,1
    - Dst: xmlSecKeyValueRsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2597,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 7
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    - base64LineSize
    - addLineBreaks
    - writeFunc
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - int
    - int
    - xmlSecKeyDataRsaWrite
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2534
    functionDepth: 2
    functionLinenumber: 2534
    functionLinenumberEnd: 2600
    functionName: xmlSecKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyValueRsaInitialize
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyValueRsaXmlWrite
    - writeFunc
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyValueRsaFinalize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                       xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx,\n                        int
      base64LineSize, int addLineBreaks,\n                        xmlSecKeyDataRsaWrite
      writeFunc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2606,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:2607,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2609,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2611,1
    - Dst: xmlSecKeyValueRsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2612,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2615,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2617,1
    - Dst: xmlSecKeyValueRsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2618,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:2621,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2623,1
    - Dst: xmlSecKeyValueRsaFinalize
      Src: /src/xmlsec/src/keysdata.c:2624,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2628
      start: 2602
    functionDepth: 2
    functionLinenumber: 2602
    functionLinenumberEnd: 2628
    functionName: xmlSecKeyValueRsaInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecKeyValueRsaFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueRsaInitialize(xmlSecKeyValueRsaPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:2632,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2634,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2635,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:2636,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:2637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2638
      start: 2630
    functionDepth: 2
    functionLinenumber: 2630
    functionLinenumberEnd: 2638
    functionName: xmlSecKeyValueRsaFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyValueRsaFinalize(xmlSecKeyValueRsaPtr data)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2645,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2646,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2648,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2651,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2652,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2655,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2657,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2660,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2663,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:2664,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2667,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2669,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2672,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2676,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/keysdata.c:2677,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2679,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2682,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/keysdata.c:2685,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2687,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:2693,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - data
    - node
    argTypes:
    - xmlSecKeyValueRsaPtr
    - xmlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2699
      start: 2640
    functionDepth: 4
    functionLinenumber: 2640
    functionLinenumberEnd: 2699
    functionName: xmlSecKeyValueRsaXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInvalidNodeError
    - xmlSecBufferSetSize
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyValueRsaXmlRead(xmlSecKeyValueRsaPtr data, xmlNodePtr
      node)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2707,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2708,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2711,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2713,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2717,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2717,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2719,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2721,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2723,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2727,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2727,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2731,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2733,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2737,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2737,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2739,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2741,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2743,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2747,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2747,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:2751,1
    - Dst: xmlSecAddChild
      Src: /src/xmlsec/src/keysdata.c:2752,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2754,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2758,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2758,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:2760,1
    - Dst: xmlSecBufferBase64NodeContentWrite
      Src: /src/xmlsec/src/keysdata.c:2762,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2764,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:2768,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:2768,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 60
    argCount: 5
    argNames:
    - data
    - node
    - writePrivateKey
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecKeyValueRsaPtr
    - xmlNodePtr
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2773
      start: 2701
    functionDepth: 11
    functionLinenumber: 2701
    functionLinenumberEnd: 2773
    functionName: xmlSecKeyValueRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAddChild
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlNodeAddContent
    - xmlNodeSetContent
    - xmlSecBufferGetSize
    - xmlSecBufferBase64NodeContentWrite
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyValueRsaXmlWrite(xmlSecKeyValueRsaPtr data, xmlNodePtr
      node,\n                      int writePrivateKey, int base64LineSize, int addLineBreaks)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2903,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2904,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2905,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2906,1
    - Dst: xmlSecKeyX509DataValueInitialize
      Src: /src/xmlsec/src/keysdata.c:2908,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2910,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2915,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2915,1
    - Dst: xmlSecKeyX509DataValueXmlRead
      Src: /src/xmlsec/src/keysdata.c:2916,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2918,1
    - Dst: xmlSecKeysMngrFindKeyFromX509Data
      Src: /src/xmlsec/src/keysdata.c:2926,1
    - Dst: xmlSecKeySwap
      Src: /src/xmlsec/src/keysdata.c:2928,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2930,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysdata.c:2931,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/keysdata.c:2934,1
    - Dst: readFunc
      Src: /src/xmlsec/src/keysdata.c:2944,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:2946,1
    - Dst: xmlSecKeyX509DataValueReset
      Src: /src/xmlsec/src/keysdata.c:2952,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:2961,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 5
    argNames:
    - key
    - data
    - node
    - keyInfoCtx
    - readFunc
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlSecKeyDataX509Read
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2892
    functionDepth: 4
    functionLinenumber: 2892
    functionLinenumberEnd: 2965
    functionName: xmlSecKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrFindKeyFromX509Data
    - xmlSecKeyX509DataValueInitialize
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecKeySwap
    - xmlSecKeyX509DataValueFinalize
    - xmlSecAssert2
    - readFunc
    - xmlSecKeyX509DataValueXmlRead
    - xmlSecKeyX509DataValueReset
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataX509XmlRead(xmlSecKeyPtr key, xmlSecKeyDataPtr data,
      xmlNodePtr node,\n    xmlSecKeyInfoCtxPtr keyInfoCtx, xmlSecKeyDataX509Read
      readFunc\n)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2973,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2974,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2975,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:2976,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:2979,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2981,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:2982,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2988,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:2989,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:2994,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:2995,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3000,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:3001,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3006,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:3007,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keysdata.c:3014,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/keysdata.c:3016,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3020,1
    - Dst: xmlSecIsEmptyNode
      Src: /src/xmlsec/src/keysdata.c:3021,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:3029,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 3
    argNames:
    - node
    - keyInfoCtx
    - digestAlgorithm
    argTypes:
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3033
      start: 2968
    functionDepth: 11
    functionLinenumber: 2968
    functionLinenumberEnd: 3033
    functionName: xmlSecX509DataGetNodeContent
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecIsEmptyNode
    - xmlSecInvalidNodeAttributeError
    linkageType: ''
    returnType: int
    signature: int xmlSecX509DataGetNodeContent(xmlNodePtr node, xmlSecKeyInfoCtxPtr
      keyInfoCtx, xmlChar** digestAlgorithm)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3060,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3061,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3062,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3063,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3064,1
    - Dst: xmlSecKeyX509DataValueInitialize
      Src: /src/xmlsec/src/keysdata.c:3071,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3073,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:3074,1
    - Dst: xmlSecX509DataGetNodeContent
      Src: /src/xmlsec/src/keysdata.c:3080,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3082,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:3083,1
    - Dst: writeFunc
      Src: /src/xmlsec/src/keysdata.c:3094,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3096,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:3096,1
    - Dst: xmlSecKeyX509DataValueXmlWrite
      Src: /src/xmlsec/src/keysdata.c:3102,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3104,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/keysdata.c:3104,1
    - Dst: xmlSecKeyX509DataValueReset
      Src: /src/xmlsec/src/keysdata.c:3109,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:3118,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 7
    argNames:
    - data
    - node
    - keyInfoCtx
    - base64LineSize
    - addLineBreaks
    - writeFunc
    - writeFuncContext
    argTypes:
    - xmlSecKeyDataPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    - int
    - int
    - xmlSecKeyDataX509Write
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3122
      start: 3050
    functionDepth: 12
    functionLinenumber: 3050
    functionLinenumberEnd: 3122
    functionName: xmlSecKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyX509DataValueInitialize
    - xmlSecInternalError
    - xmlSecKeyX509DataValueFinalize
    - xmlSecAssert2
    - xmlSecKeyX509DataValueXmlWrite
    - xmlSecInternalError2
    - xmlSecKeyX509DataValueReset
    - writeFunc
    - xmlSecX509DataGetNodeContent
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyDataX509XmlWrite(xmlSecKeyDataPtr data, xmlNodePtr node,
      xmlSecKeyInfoCtxPtr keyInfoCtx,\n                          int base64LineSize,
      int addLineBreaks,\n                          xmlSecKeyDataX509Write writeFunc,
      void* writeFuncContext)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3128,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:3129,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:3131,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3133,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:3134,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:3137,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3139,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:3140,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:3143,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3145,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:3146,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/keysdata.c:3149,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3151,1
    - Dst: xmlSecKeyX509DataValueFinalize
      Src: /src/xmlsec/src/keysdata.c:3152,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 1
    argNames:
    - x509Value
    argTypes:
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3156
      start: 3124
    functionDepth: 2
    functionLinenumber: 3124
    functionLinenumberEnd: 3156
    functionName: xmlSecKeyX509DataValueInitialize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecKeyX509DataValueFinalize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyX509DataValueInitialize(xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3160,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:3162,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:3163,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:3164,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3167,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3171,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3174,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3178,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/keysdata.c:3180,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:3182,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - x509Value
    argTypes:
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3183
      start: 3158
    functionDepth: 2
    functionLinenumber: 3158
    functionLinenumberEnd: 3183
    functionName: xmlSecKeyX509DataValueFinalize
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyX509DataValueFinalize(xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3187,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/keysdata.c:3189,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/keysdata.c:3190,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/keysdata.c:3191,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3194,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3199,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3203,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3209,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/keysdata.c:3212,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - x509Value
    - writeMode
    argTypes:
    - xmlSecKeyX509DataValuePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3214
      start: 3185
    functionDepth: 2
    functionLinenumber: 3185
    functionLinenumberEnd: 3214
    functionName: xmlSecKeyX509DataValueReset
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyX509DataValueReset(xmlSecKeyX509DataValuePtr x509Value,
      int writeMode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3225,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keysdata.c:3227,1
    - Dst: xmlSecIsEmptyString
      Src: /src/xmlsec/src/keysdata.c:3228,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keysdata.c:3230,1
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/keysdata.c:3241,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3243,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3244,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keysdata.c:3244,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/keysdata.c:3248,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/keysdata.c:3250,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3252,1
    - Dst: xmlSecNodeGetName
      Src: /src/xmlsec/src/keysdata.c:3252,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3263,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 3
    argNames:
    - buf
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecBufferPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3216
    functionDepth: 10
    functionLinenumber: 3216
    functionLinenumberEnd: 3266
    functionName: xmlSecKeyX509DataValueXmlReadBase64Blob
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecBase64DecodeInPlace
    - xmlSecInternalError3
    - xmlFree
    - xmlSecIsEmptyString
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecErrorsSafeString
    - xmlSecInvalidNodeContentError
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - xmlSecNodeGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyX509DataValueXmlReadBase64Blob(xmlSecBufferPtr buf, xmlNodePtr
      node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3276,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keysdata.c:3278,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/src/keysdata.c:3279,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keysdata.c:3281,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3298,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - str
    - node
    - keyInfoCtx
    argTypes:
    - xmlChar**
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3301
      start: 3268
    functionDepth: 10
    functionLinenumber: 3268
    functionLinenumberEnd: 3301
    functionName: xmlSecKeyX509DataValueXmlReadString
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlStrlen
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyX509DataValueXmlReadString(xmlChar **str, xmlNodePtr node,
      xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3313,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:3315,1
    - Dst: xmlSecNodeNotFoundError
      Src: /src/xmlsec/src/keysdata.c:3318,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3325,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:3326,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keysdata.c:3329,1
    - Dst: xmlSecIsEmptyString
      Src: /src/xmlsec/src/keysdata.c:3330,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keysdata.c:3331,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:3334,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3337,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/keysdata.c:3338,1
    - Dst: xmlSecGetNodeContentAndTrim
      Src: /src/xmlsec/src/keysdata.c:3341,1
    - Dst: xmlSecIsEmptyString
      Src: /src/xmlsec/src/keysdata.c:3342,1
    - Dst: xmlSecInvalidNodeContentError
      Src: /src/xmlsec/src/keysdata.c:3343,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/keysdata.c:3346,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:3350,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 3
    argNames:
    - x509Value
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyX509DataValuePtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3356
      start: 3303
    functionDepth: 10
    functionLinenumber: 3303
    functionLinenumberEnd: 3356
    functionName: xmlSecKeyX509DataValueXmlReadIssuerSerial
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecCheckNodeName
    - xmlSecGetNextElementNode
    - xmlSecIsEmptyString
    - xmlSecAssert2
    - xmlSecGetNodeContentAndTrim
    - xmlSecInvalidNodeContentError
    - xmlSecNodeNotFoundError
    - xmlSecInvalidNodeError
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyX509DataValueXmlReadIssuerSerial(xmlSecKeyX509DataValuePtr
      x509Value, xmlNodePtr node,\n    xmlSecKeyInfoCtxPtr keyInfoCtx\n)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3364,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3366,1
    - Dst: xmlSecKeyX509DataValueXmlReadBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3367,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3369,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3372,1
    - Dst: xmlSecKeyX509DataValueXmlReadBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3373,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3375,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3378,1
    - Dst: xmlSecKeyX509DataValueXmlReadBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3379,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3381,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3384,1
    - Dst: xmlSecKeyX509DataValueXmlReadString
      Src: /src/xmlsec/src/keysdata.c:3385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3387,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3390,1
    - Dst: xmlSecKeyX509DataValueXmlReadIssuerSerial
      Src: /src/xmlsec/src/keysdata.c:3391,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3393,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/keysdata.c:3396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3397,1
    - Dst: xmlGetProp
      Src: /src/xmlsec/src/keysdata.c:3400,1
    - Dst: xmlSecInvalidNodeAttributeError
      Src: /src/xmlsec/src/keysdata.c:3402,1
    - Dst: xmlSecKeyX509DataValueXmlReadBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3407,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3409,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/keysdata.c:3415,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 57
    argCount: 3
    argNames:
    - x509Value
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyX509DataValuePtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3421
      start: 3358
    functionDepth: 11
    functionLinenumber: 3358
    functionLinenumberEnd: 3421
    functionName: xmlSecKeyX509DataValueXmlRead
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyX509DataValueXmlReadBase64Blob
    - xmlGetProp
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyX509DataValueXmlReadIssuerSerial
    - xmlSecKeyX509DataValueXmlReadString
    - xmlSecInvalidNodeAttributeError
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyX509DataValueXmlRead(xmlSecKeyX509DataValuePtr x509Value,
      xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3432,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/keysdata.c:3434,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/keysdata.c:3434,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/keysdata.c:3434,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3437,1
    - Dst: xmlSecEnsureEmptyChild
      Src: /src/xmlsec/src/keysdata.c:3441,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3443,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3444,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:3449,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:3449,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:3452,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/keysdata.c:3455,1
    - Dst: xmlSecGetDefaultLineFeed
      Src: /src/xmlsec/src/keysdata.c:3455,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3463,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 6
    argNames:
    - buf
    - node
    - nodeName
    - nodeNs
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecBufferPtr
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3466
      start: 3423
    functionDepth: 11
    functionLinenumber: 3423
    functionLinenumberEnd: 3466
    functionName: xmlSecKeyX509DataValueXmlWriteBase64Blob
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecEnsureEmptyChild
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlNodeAddContent
    - xmlSecBufferGetSize
    - xmlNodeSetContent
    - xmlSecBase64Encode
    - xmlSecGetDefaultLineFeed
    linkageType: ''
    returnType: xmlNodePtr
    signature: "xmlNodePtr xmlSecKeyX509DataValueXmlWriteBase64Blob(xmlSecBufferPtr
      buf, xmlNodePtr node,\n                                    const xmlChar* nodeName,
      const xmlChar* nodeNs,\n                                    int base64LineSize,
      int addLineBreaks)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3474,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3475,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3476,1
    - Dst: xmlSecEnsureEmptyChild
      Src: /src/xmlsec/src/keysdata.c:3478,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3480,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3481,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/src/keysdata.c:3485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - content
    - node
    - nodeName
    - nodeNs
    argTypes:
    - xmlChar*
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3489
      start: 3469
    functionDepth: 11
    functionLinenumber: 3469
    functionLinenumberEnd: 3489
    functionName: xmlSecKeyX509DataValueXmlWriteString
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecEnsureEmptyChild
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlNodeSetContent
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyX509DataValueXmlWriteString(const xmlChar* content, xmlNodePtr
      node,\n                                 const xmlChar* nodeName, const xmlChar*
      nodeNs)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3495,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/keysdata.c:3497,1
    - Dst: xmlSecKeyX509DataValueXmlWriteBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3500,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3504,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/keysdata.c:3508,1
    - Dst: xmlSecKeyX509DataValueXmlWriteBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3511,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3515,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/keysdata.c:3519,1
    - Dst: xmlSecKeyX509DataValueXmlWriteBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3522,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3526,1
    - Dst: xmlSecKeyX509DataValueXmlWriteString
      Src: /src/xmlsec/src/keysdata.c:3533,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3536,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3537,1
    - Dst: xmlSecEnsureEmptyChild
      Src: /src/xmlsec/src/keysdata.c:3545,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3547,1
    - Dst: xmlSecKeyX509DataValueXmlWriteString
      Src: /src/xmlsec/src/keysdata.c:3550,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3553,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3554,1
    - Dst: xmlSecKeyX509DataValueXmlWriteString
      Src: /src/xmlsec/src/keysdata.c:3558,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/keysdata.c:3561,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3562,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/keysdata.c:3566,1
    - Dst: xmlSecKeyX509DataValueXmlWriteBase64Blob
      Src: /src/xmlsec/src/keysdata.c:3569,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3573,1
    - Dst: xmlSetProp
      Src: /src/xmlsec/src/keysdata.c:3577,1
    - Dst: xmlSecXmlError2
      Src: /src/xmlsec/src/keysdata.c:3578,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/keysdata.c:3578,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 4
    argNames:
    - x509Value
    - node
    - base64LineSize
    - addLineBreaks
    argTypes:
    - xmlSecKeyX509DataValuePtr
    - xmlNodePtr
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3583
      start: 3491
    functionDepth: 12
    functionLinenumber: 3491
    functionLinenumberEnd: 3583
    functionName: xmlSecKeyX509DataValueXmlWrite
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferIsEmpty
    - xmlSecAssert2
    - xmlSecEnsureEmptyChild
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecXmlError2
    - xmlSecKeyX509DataValueXmlWriteString
    - xmlSecKeyX509DataValueXmlWriteBase64Blob
    - xmlSetProp
    linkageType: ''
    returnType: int
    signature: "int xmlSecKeyX509DataValueXmlWrite(xmlSecKeyX509DataValuePtr x509Value,
      xmlNodePtr node,\n                           int base64LineSize, int addLineBreaks)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3611
      start: 3608
    functionDepth: 0
    functionLinenumber: 3608
    functionLinenumberEnd: 3611
    functionName: xmlSecKeyDataListGetKlass
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecKeyDataListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3637
      start: 3634
    functionDepth: 0
    functionLinenumber: 3634
    functionLinenumberEnd: 3637
    functionName: xmlSecKeyDataIdListGetKlass
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecKeyDataIdListGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3653,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3653,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3654,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3656,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3658,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - list
    - dataId
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecKeyDataId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3663
      start: 3649
    functionDepth: 2
    functionLinenumber: 3649
    functionLinenumberEnd: 3663
    functionName: xmlSecKeyDataIdListFind
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecKeyDataIdListFind(xmlSecPtrListPtr list, xmlSecKeyDataId
      dataId)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3683,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3683,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3684,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3686,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3688,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3689,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keysdata.c:3692,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keysdata.c:3693,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - list
    - nodeName
    - nodeNs
    - usage
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlChar*
    - xmlSecKeyDataUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3699
      start: 3677
    functionDepth: 2
    functionLinenumber: 3677
    functionLinenumberEnd: 3699
    functionName: xmlSecKeyDataIdListFindByNode
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 4
    functionsReached:
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: "xmlSecKeyDataId xmlSecKeyDataIdListFindByNode(xmlSecPtrListPtr list,
      const xmlChar* nodeName,\n                            const xmlChar* nodeNs,
      xmlSecKeyDataUsage usage)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3717,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3717,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3718,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3720,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3722,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3723,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keysdata.c:3726,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - list
    - href
    - usage
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlSecKeyDataUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3732
      start: 3711
    functionDepth: 2
    functionLinenumber: 3711
    functionLinenumberEnd: 3732
    functionName: xmlSecKeyDataIdListFindByHref
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: "xmlSecKeyDataId xmlSecKeyDataIdListFindByHref(xmlSecPtrListPtr list,
      const xmlChar* href,\n                            xmlSecKeyDataUsage usage)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3750,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3751,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3753,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3755,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3756,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/keysdata.c:3759,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - list
    - name
    - usage
    argTypes:
    - xmlSecPtrListPtr
    - xmlChar*
    - xmlSecKeyDataUsage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3765
      start: 3744
    functionDepth: 2
    functionLinenumber: 3744
    functionLinenumberEnd: 3765
    functionName: xmlSecKeyDataIdListFindByName
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: "xmlSecKeyDataId xmlSecKeyDataIdListFindByName(xmlSecPtrListPtr list,
      const xmlChar* name,\n                            xmlSecKeyDataUsage usage)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3779,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3779,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3780,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3782,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3784,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3785,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3786,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3789,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3791,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3794,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3795
      start: 3774
    functionDepth: 2
    functionLinenumber: 3774
    functionLinenumberEnd: 3795
    functionName: xmlSecKeyDataIdListDebugDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListGetItem
    - xmlSecAssert
    - fprintf
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataIdListDebugDump(xmlSecPtrListPtr list, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3809,1
    - Dst: xmlSecPtrListCheckId
      Src: /src/xmlsec/src/keysdata.c:3809,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3810,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3812,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/keysdata.c:3813,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/keysdata.c:3815,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3816,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3817,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3819,1
    - Dst: xmlSecPrintXmlString
      Src: /src/xmlsec/src/keysdata.c:3820,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3821,1
    - Dst: fprintf
      Src: /src/xmlsec/src/keysdata.c:3823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - list
    - output
    argTypes:
    - xmlSecPtrListPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3824
      start: 3804
    functionDepth: 4
    functionLinenumber: 3804
    functionLinenumberEnd: 3824
    functionName: xmlSecKeyDataIdListDebugXmlDump
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecPtrListGetItem
    - xmlSecAssert
    - xmlSecPrintXmlString
    - fprintf
    - xmlSecPtrListCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataIdListDebugXmlDump(xmlSecPtrListPtr list, FILE* output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3846,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/keysdata.c:3847,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/keysdata.c:3850,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/keysdata.c:3852,1
    - Dst: xmlSecKeyDataStoreKlassGetName
      Src: /src/xmlsec/src/keysdata.c:3853,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:3856,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/keysdata.c:3862,1
    - Dst: xmlSecKeyDataStoreKlassGetName
      Src: /src/xmlsec/src/keysdata.c:3863,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/keysdata.c:3864,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - id
    argTypes:
    - xmlSecKeyDataStoreId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3870
      start: 3841
    functionDepth: 1
    functionLinenumber: 3841
    functionLinenumberEnd: 3870
    functionName: xmlSecKeyDataStoreCreate
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeyDataStoreKlassGetName
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: xmlSecKeyDataStorePtr
    signature: xmlSecKeyDataStorePtr xmlSecKeyDataStoreCreate(xmlSecKeyDataStoreId
      id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3881,1
    - Dst: xmlSecKeyDataStoreIsValid
      Src: /src/xmlsec/src/keysdata.c:3881,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/keysdata.c:3882,1
    - Dst: memset
      Src: /src/xmlsec/src/keysdata.c:3887,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/keysdata.c:3888,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3889
      start: 3879
    functionDepth: 1
    functionLinenumber: 3879
    functionLinenumberEnd: 3889
    functionName: xmlSecKeyDataStoreDestroy
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - memset
    - xmlFree
    - xmlSecKeyDataStoreIsValid
    linkageType: ''
    returnType: void
    signature: void xmlSecKeyDataStoreDestroy(xmlSecKeyDataStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3914
      start: 3911
    functionDepth: 0
    functionLinenumber: 3911
    functionLinenumberEnd: 3914
    functionName: xmlSecKeyDataStorePtrListGetKlass
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecKeyDataStorePtrListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3925
      start: 3923
    functionDepth: 0
    functionLinenumber: 3923
    functionLinenumberEnd: 3925
    functionName: xmlSecImportSetPersistKey
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void xmlSecImportSetPersistKey(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3937
      start: 3935
    functionDepth: 0
    functionLinenumber: 3935
    functionLinenumberEnd: 3937
    functionName: xmlSecImportGetPersistKey
    functionSourceFile: /src/xmlsec/src/keysdata.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecImportGetPersistKey(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:86,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:88,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:90,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 96
    functionName: xmlSecMSCngGcmBlockCipherCheckId
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGcmBlockCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:103,1
    - Dst: xmlSecMSCngGcmBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:104,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:104,1
    - Dst: xmlSecMSCngGcmBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:107,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:109,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:128,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:132,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:138,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:139,1
    - Dst: BCryptSetProperty
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:143,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:149,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:149,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 156
    functionName: xmlSecMSCngGcmBlockCipherInitialize
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngGcmBlockCipherCheckId
    - BCryptSetProperty
    - xmlSecTransformGetName
    - xmlSecMSCngGcmBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGcmBlockCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:162,1
    - Dst: xmlSecMSCngGcmBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:162,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:163,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:163,1
    - Dst: xmlSecMSCngGcmBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:165,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:166,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:169,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:173,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:176,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:179,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:183,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:187,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:191,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:194,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 158
    functionDepth: 2
    functionLinenumber: 158
    functionLinenumberEnd: 195
    functionName: xmlSecMSCngGcmBlockCipherFinalize
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - BCryptCloseAlgorithmProvider
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - BCryptDestroyKey
    - xmlSecMSCngGcmBlockCipherCheckId
    - xmlSecMSCngGcmBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngGcmBlockCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:201,1
    - Dst: xmlSecMSCngGcmBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:201,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:203,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:204,1
    - Dst: xmlSecMSCngGcmBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 220
    functionName: xmlSecMSCngGcmBlockCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngGcmBlockCipherGetCtx
    - xmlSecMSCngGcmBlockCipherCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGcmBlockCipherSetKeyReq(xmlSecTransformPtr transform,
      xmlSecKeyReqPtr keyReq)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:237,1
    - Dst: xmlSecMSCngGcmBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:239,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:239,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:240,1
    - Dst: xmlSecMSCngGcmBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:247,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:249,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:251,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:252,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:255,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:257,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:258,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:258,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:258,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:264,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:270,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:273,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:275,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:277,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:277,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:283,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:285,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:285,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:291,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:292,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:297,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:297,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:298,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:302,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:312,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:312,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:322,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 64
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 222
    functionDepth: 2
    functionLinenumber: 222
    functionLinenumberEnd: 325
    functionName: xmlSecMSCngGcmBlockCipherSetKey
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - BCryptImportKey
    - xmlSecInvalidKeyDataSizeError
    - BCryptGetProperty
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferFinalize
    - xmlSecKeyGetValue
    - xmlMalloc
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - xmlSecMSCngGcmBlockCipherGetCtx
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngGcmBlockCipherCheckId
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGcmBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:344,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:345,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:347,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:351,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:362,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:367,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:369,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:378,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:380,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:384,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:388,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:388,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:392,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:394,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:399,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:402,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:409,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:414,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:416,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:421,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:428,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:429,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:431,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:435,1
    - Dst: BCryptGenRandom
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:438,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:443,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:447,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:452,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:459,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:462,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:465,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:467,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 88
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngGcmBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 474
    functionName: xmlSecMSCngGcmBlockCipherCtxInit
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlMalloc
    - BCryptGetProperty
    - return
    - xmlSecBufferGetSize
    - xmlSecBufferSetSize
    - BCryptGenRandom
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngGcmBlockCipherCtxInit(xmlSecMSCngGcmBlockCipherCtxPtr
      ctx,\n        xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n        const
      xmlChar* cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:487,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:488,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:490,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:491,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:492,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:495,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:497,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:497,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:498,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:504,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:511,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:516,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:516,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:518,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:519,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:521,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:526,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:529,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:541,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:548,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:554,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:566,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:573,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:578,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:578,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:581,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:583,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:589,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:591,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 63
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngGcmBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 476
    functionDepth: 2
    functionLinenumber: 476
    functionLinenumberEnd: 597
    functionName: xmlSecMSCngGcmBlockCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - xmlSecInternalError3
    - xmlSecBufferRemoveHead
    - BCryptEncrypt
    - xmlSecAssert2
    - xmlSecInternalError2
    - BCryptDecrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngGcmBlockCipherCtxUpdate(xmlSecMSCngGcmBlockCipherCtxPtr
      ctx,\n    xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n    const xmlChar*
      cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:610,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:611,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:612,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:613,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:614,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:618,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:619,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:620,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:627,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:629,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:634,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:634,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:635,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:638,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:650,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:657,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:663,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:669,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:672,1
    - Dst: xmlSecBufferRemoveTail
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:676,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:678,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:681,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:682,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:686,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:688,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:693,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:693,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:694,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:697,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:709,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:716,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:725,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:727,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:733,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:735,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 72
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngGcmBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 599
    functionDepth: 2
    functionLinenumber: 599
    functionLinenumberEnd: 741
    functionName: xmlSecMSCngGcmBlockCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - xmlSecInternalError3
    - xmlSecInternalError
    - BCryptEncrypt
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - BCryptDecrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferRemoveTail
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngGcmBlockCipherCtxFinal(xmlSecMSCngGcmBlockCipherCtxPtr
      ctx,\n    xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n    const xmlChar*
      cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:749,1
    - Dst: xmlSecMSCngGcmBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:751,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:752,1
    - Dst: xmlSecMSCngGcmBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:757,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:758,1
    - Dst: BCRYPT_INIT_AUTH_MODE_INFO
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:762,1
    - Dst: xmlSecMSCngGcmBlockCipherCtxInit
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:771,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:772,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:774,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:775,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:781,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:782,1
    - Dst: xmlSecMSCngGcmBlockCipherCtxUpdate
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:788,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:789,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:791,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:792,1
    - Dst: xmlSecMSCngGcmBlockCipherCtxFinal
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:798,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:799,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:802,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:803,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:811,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:811,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:814,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/ciphers_gcm.c:816,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 743
    functionDepth: 3
    functionLinenumber: 743
    functionLinenumberEnd: 821
    functionName: xmlSecMSCngGcmBlockCipherExecute
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecMSCngGcmBlockCipherCtxInit
    - xmlSecTransformCheckSize
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecMSCngGcmBlockCipherCtxUpdate
    - xmlSecMSCngGcmBlockCipherCtxFinal
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecMSCngGcmBlockCipherCheckId
    - xmlSecTransformGetName
    - xmlSecMSCngGcmBlockCipherGetCtx
    - BCRYPT_INIT_AUTH_MODE_INFO
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGcmBlockCipherExecute(xmlSecTransformPtr transform,
      int last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: xmlSecMSCngTransformAes128GcmGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes128GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 850
    functionDepth: 0
    functionLinenumber: 850
    functionLinenumberEnd: 853
    functionName: xmlSecMSCngTransformAes192GcmGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes192GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 865
    functionDepth: 0
    functionLinenumber: 865
    functionLinenumberEnd: 868
    functionName: xmlSecMSCngTransformAes256GcmGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes256GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: xmlSecMSCngLastError
    functionSourceFile: /src/xmlsec/src/mscng/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngLastError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 79
    functionName: xmlSecMSCngLastError2
    functionSourceFile: /src/xmlsec/src/mscng/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngLastError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - status
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 98
    functionName: xmlSecMSCngNtError
    functionSourceFile: /src/xmlsec/src/mscng/globals.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngNtError(errorFunction, errorObject, status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - status
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 120
    functionName: xmlSecMSCngNtError2
    functionSourceFile: /src/xmlsec/src/mscng/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngNtError2(errorFunction, errorObject, status, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - status
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 144
    functionName: xmlSecMSCngNtError3
    functionSourceFile: /src/xmlsec/src/mscng/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngNtError3(errorFunction, errorObject, status, msg, param1,
      param2)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:96,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:100,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 109
    functionName: xmlSecMSCngKWAesCheckId
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWAesCheckId(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:117,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:117,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:118,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:118,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:120,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:121,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kw_aes.c:122,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/kw_aes.c:132,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/mscng/kw_aes.c:136,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:140,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_aes.c:140,1
    - Dst: xmlSecMSCngKWAesFinalize
      Src: /src/xmlsec/src/mscng/kw_aes.c:141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 111
    functionDepth: 3
    functionLinenumber: 111
    functionLinenumberEnd: 147
    functionName: xmlSecMSCngKWAesInitialize
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWAesGetCtx
    - xmlSecMSCngKWAesFinalize
    - xmlSecMSCngKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_aes.c:153,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:153,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_aes.c:154,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:154,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:156,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_aes.c:157,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/mscng/kw_aes.c:159,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kw_aes.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 149
    functionDepth: 3
    functionLinenumber: 149
    functionLinenumberEnd: 161
    functionName: xmlSecMSCngKWAesFinalize
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecMSCngKWAesGetCtx
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - xmlSecMSCngKWAesCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:168,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:169,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:169,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:172,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/mscng/kw_aes.c:174,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:176,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_aes.c:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 180
    functionName: xmlSecMSCngKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWAesGetCtx
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecMSCngKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:187,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:187,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:188,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:188,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:191,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/mscng/kw_aes.c:193,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:195,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_aes.c:195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 182
    functionDepth: 4
    functionLinenumber: 182
    functionLinenumberEnd: 199
    functionName: xmlSecMSCngKWAesSetKey
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWAesGetCtx
    - xmlSecTransformKWAesSetKey
    - xmlSecMSCngKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:207,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:208,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:208,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/kw_aes.c:209,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:212,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/mscng/kw_aes.c:214,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:216,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_aes.c:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 201
    functionDepth: 3
    functionLinenumber: 201
    functionLinenumberEnd: 221
    functionName: xmlSecMSCngKWAesExecute
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWAesGetCtx
    - xmlSecMSCngKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                       xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: xmlSecMSCngTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: xmlSecMSCngTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 347
    functionName: xmlSecMSCngTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformKWAes256GetKlass(void)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:376,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:377,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:379,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:380,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:382,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:385,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:387,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:390,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:391,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kw_aes.c:393,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:395,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_aes.c:400,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:406,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_aes.c:411,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:418,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_aes.c:422,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_aes.c:424,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:430,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kw_aes.c:432,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:437,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kw_aes.c:440,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_aes.c:442,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:442,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:445,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/kw_aes.c:449,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:455,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:459,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_aes.c:465,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/kw_aes.c:470,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:481,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/kw_aes.c:486,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/kw_aes.c:491,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_aes.c:494,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_aes.c:497,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kw_aes.c:500,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 88
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 355
    functionDepth: 2
    functionLinenumber: 355
    functionLinenumberEnd: 503
    functionName: xmlSecMSCngKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - BCryptImportKey
    - BCryptEncrypt
    - BCryptGetProperty
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecBufferFinalize
    - xmlFree
    - xmlMalloc
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - BCryptDestroyKey
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecMSCngKWAesGetCtx
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngKWAesCheckId
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWAesBlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte* in, xmlSecSize inSize,\n                             xmlSecByte*
      out, xmlSecSize outSize,\n                             xmlSecSize* outWritten)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:526,1
    - Dst: xmlSecMSCngKWAesCheckId
      Src: /src/xmlsec/src/mscng/kw_aes.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:527,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:532,1
    - Dst: xmlSecMSCngKWAesGetCtx
      Src: /src/xmlsec/src/mscng/kw_aes.c:534,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:535,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:537,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:538,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:539,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_aes.c:541,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kw_aes.c:543,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_aes.c:545,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_aes.c:550,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:556,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_aes.c:561,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:568,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_aes.c:572,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_aes.c:574,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:580,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kw_aes.c:582,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:587,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kw_aes.c:590,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_aes.c:592,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:592,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_aes.c:595,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/kw_aes.c:599,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_aes.c:605,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:609,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_aes.c:615,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/kw_aes.c:620,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_aes.c:631,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/kw_aes.c:636,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/kw_aes.c:641,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_aes.c:644,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_aes.c:647,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kw_aes.c:650,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 88
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 505
    functionDepth: 2
    functionLinenumber: 505
    functionLinenumberEnd: 653
    functionName: xmlSecMSCngKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/mscng/kw_aes.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - BCryptImportKey
    - BCryptGetProperty
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecBufferFinalize
    - xmlFree
    - xmlMalloc
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - BCryptDestroyKey
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecMSCngKWAesGetCtx
    - BCryptDecrypt
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngKWAesCheckId
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWAesBlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte* in, xmlSecSize inSize,\n                             xmlSecByte*
      out, xmlSecSize outSize,\n                             xmlSecSize* outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:82,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:84,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:86,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:92,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 98
    functionName: xmlSecMSCngCbcBlockCipherCheckId
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngCbcBlockCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:105,1
    - Dst: xmlSecMSCngCbcBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:106,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:106,1
    - Dst: xmlSecMSCngCbcBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:108,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:109,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:111,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:138,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:142,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:148,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:149,1
    - Dst: BCryptSetProperty
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:153,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:159,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:159,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 41
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 166
    functionName: xmlSecMSCngCbcBlockCipherInitialize
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngCbcBlockCipherGetCtx
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngCbcBlockCipherCheckId
    - BCryptSetProperty
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngCbcBlockCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:172,1
    - Dst: xmlSecMSCngCbcBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:172,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:173,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:173,1
    - Dst: xmlSecMSCngCbcBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:175,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:176,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:179,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:182,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:186,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:190,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:193,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 194
    functionName: xmlSecMSCngCbcBlockCipherFinalize
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngCbcBlockCipherGetCtx
    - BCryptCloseAlgorithmProvider
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecMSCngCbcBlockCipherCheckId
    - xmlSecAssert
    - BCryptDestroyKey
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngCbcBlockCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:200,1
    - Dst: xmlSecMSCngCbcBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:201,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:202,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:203,1
    - Dst: xmlSecMSCngCbcBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 219
    functionName: xmlSecMSCngCbcBlockCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngCbcBlockCipherGetCtx
    - xmlSecMSCngCbcBlockCipherCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngCbcBlockCipherSetKeyReq(xmlSecTransformPtr transform,
      xmlSecKeyReqPtr keyReq)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:236,1
    - Dst: xmlSecMSCngCbcBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:238,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:239,1
    - Dst: xmlSecMSCngCbcBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:246,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:248,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:250,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:251,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:254,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:256,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:257,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:257,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:257,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:263,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:269,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:272,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:274,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:276,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:282,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:284,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:284,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:290,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:291,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:296,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:296,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:297,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:301,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:311,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:311,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:321,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 64
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 324
    functionName: xmlSecMSCngCbcBlockCipherSetKey
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - BCryptImportKey
    - xmlSecInvalidKeyDataSizeError
    - xmlSecMSCngCbcBlockCipherCheckId
    - BCryptGetProperty
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferFinalize
    - xmlSecMSCngCbcBlockCipherGetCtx
    - xmlSecKeyGetValue
    - xmlMalloc
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngCbcBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:344,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:348,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:359,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:363,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:363,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:370,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:371,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:373,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:377,1
    - Dst: BCryptGenRandom
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:380,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:385,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:390,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:393,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:397,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:402,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:405,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:405,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:409,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:412,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:415,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:415,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:418,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:420,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 62
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngCbcBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 326
    functionDepth: 2
    functionLinenumber: 326
    functionLinenumberEnd: 429
    functionName: xmlSecMSCngCbcBlockCipherCtxInit
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - BCryptGetProperty
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - BCryptGenRandom
    - xmlMalloc
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngCbcBlockCipherCtxInit(xmlSecMSCngCbcBlockCipherCtxPtr
      ctx,\n        xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n        const
      xmlChar* cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:443,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:445,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:447,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:448,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:450,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:451,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:453,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:453,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:468,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:470,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:474,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:475,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:476,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:479,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:479,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:482,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:493,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:500,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:505,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:516,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:523,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:530,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:532,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:538,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:540,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 62
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngCbcBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 546
    functionName: xmlSecMSCngCbcBlockCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - xmlSecInternalError3
    - xmlSecBufferRemoveHead
    - BCryptEncrypt
    - xmlSecAssert2
    - xmlSecInternalError2
    - BCryptDecrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngCbcBlockCipherCtxUpdate(xmlSecMSCngCbcBlockCipherCtxPtr
      ctx,\n    xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n    const xmlChar*
      cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:561,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:562,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:563,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:564,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:565,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:570,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:571,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:572,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:572,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:577,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:581,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:583,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:587,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:593,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:593,1
    - Dst: BCryptGenRandom
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:594,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:599,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:604,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:604,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:608,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:611,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:615,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:617,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:622,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:625,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:625,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:627,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:627,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:628,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:639,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:646,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:651,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:662,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:669,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:677,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:686,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:688,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:694,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:696,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 87
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCngCbcBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 548
    functionDepth: 2
    functionLinenumber: 548
    functionLinenumberEnd: 702
    functionName: xmlSecMSCngCbcBlockCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    - xmlSecBufferRemoveHead
    - BCryptEncrypt
    - xmlSecAssert2
    - xmlSecInternalError2
    - BCryptDecrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - BCryptGenRandom
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngCbcBlockCipherCtxFinal(xmlSecMSCngCbcBlockCipherCtxPtr
      ctx,\n    xmlSecBufferPtr in, xmlSecBufferPtr out, int encrypt,\n    const xmlChar*
      cipherName, xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:711,1
    - Dst: xmlSecMSCngCbcBlockCipherCheckId
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:711,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:712,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:713,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:713,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:714,1
    - Dst: xmlSecMSCngCbcBlockCipherGetCtx
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:719,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:720,1
    - Dst: xmlSecMSCngCbcBlockCipherCtxInit
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:731,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:732,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:735,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:736,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:742,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:743,1
    - Dst: xmlSecMSCngCbcBlockCipherCtxUpdate
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:748,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:749,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:751,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:752,1
    - Dst: xmlSecMSCngCbcBlockCipherCtxFinal
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:758,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:759,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:762,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:763,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:771,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:771,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:774,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/ciphers_cbc.c:776,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 704
    functionDepth: 3
    functionLinenumber: 704
    functionLinenumberEnd: 781
    functionName: xmlSecMSCngCbcBlockCipherExecute
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngCbcBlockCipherGetCtx
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngCbcBlockCipherCheckId
    - xmlSecMSCngCbcBlockCipherCtxInit
    - xmlSecInvalidTransfromStatusError
    - xmlSecMSCngCbcBlockCipherCtxUpdate
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecMSCngCbcBlockCipherCtxFinal
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngCbcBlockCipherExecute(xmlSecTransformPtr transform,
      int last,\n        xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 798
    functionName: xmlSecMSCngTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 810
    functionDepth: 0
    functionLinenumber: 810
    functionLinenumberEnd: 813
    functionName: xmlSecMSCngTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 825
    functionDepth: 0
    functionLinenumber: 825
    functionLinenumberEnd: 828
    functionName: xmlSecMSCngTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 847
    functionName: xmlSecMSCngTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformDes3CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionName: xmlSecMSCngPbkdf2CheckId
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2CheckId(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:95,1
    - Dst: xmlSecMSCngPbkdf2CheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:96,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:96,1
    - Dst: xmlSecMSCngPbkdf2GetCtx
      Src: /src/xmlsec/src/mscng/pbkdf2.c:98,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:99,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/pbkdf2.c:102,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:104,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:106,1
    - Dst: xmlSecMSCngPbkdf2Finalize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:107,1
    - Dst: xmlSecTransformPbkdf2ParamsInitialize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:110,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:112,1
    - Dst: xmlSecMSCngPbkdf2Finalize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 119
    functionName: xmlSecMSCngPbkdf2Initialize
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformPbkdf2ParamsInitialize
    - xmlSecBufferInitialize
    - xmlSecMSCngPbkdf2CheckId
    - xmlSecMSCngPbkdf2GetCtx
    - xmlSecMSCngPbkdf2Finalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/pbkdf2.c:125,1
    - Dst: xmlSecMSCngPbkdf2CheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:125,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/pbkdf2.c:126,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:126,1
    - Dst: xmlSecMSCngPbkdf2GetCtx
      Src: /src/xmlsec/src/mscng/pbkdf2.c:128,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/pbkdf2.c:129,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:131,1
    - Dst: xmlSecTransformPbkdf2ParamsFinalize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:132,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/pbkdf2.c:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 135
    functionName: xmlSecMSCngPbkdf2Finalize
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecTransformPbkdf2ParamsFinalize
    - xmlSecAssert
    - xmlSecMSCngPbkdf2CheckId
    - xmlSecMSCngPbkdf2GetCtx
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngPbkdf2Finalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:140,1
    - Dst: xmlSecMSCngPbkdf2CheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:141,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:141,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 138
    functionDepth: 2
    functionLinenumber: 138
    functionLinenumberEnd: 148
    functionName: xmlSecMSCngPbkdf2SetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngPbkdf2CheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:159,1
    - Dst: xmlSecMSCngPbkdf2CheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:159,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:161,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:162,1
    - Dst: xmlSecMSCngPbkdf2GetCtx
      Src: /src/xmlsec/src/mscng/pbkdf2.c:164,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:166,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:166,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/pbkdf2.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:169,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/pbkdf2.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:172,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/pbkdf2.c:174,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:175,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:177,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:177,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/pbkdf2.c:181,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:183,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:183,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 150
    functionDepth: 3
    functionLinenumber: 150
    functionLinenumberEnd: 189
    functionName: xmlSecMSCngPbkdf2SetKey
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecMSCngPbkdf2CheckId
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecMSCngPbkdf2GetCtx
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/pbkdf2.c:197,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/pbkdf2.c:199,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/pbkdf2.c:201,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/pbkdf2.c:203,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:206,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/pbkdf2.c:207,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 210
    functionName: xmlSecMSCngPbkdf2GetMacFromHref
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsSafeString
    - xmlStrcmp
    - xmlSecOtherError2
    linkageType: ''
    returnType: LPCWSTR
    signature: LPCWSTR xmlSecMSCngPbkdf2GetMacFromHref(const xmlChar* href)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/pbkdf2.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:220,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:221,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/pbkdf2.c:222,1
    - Dst: xmlSecMSCngPbkdf2GetCtx
      Src: /src/xmlsec/src/mscng/pbkdf2.c:224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:225,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/mscng/pbkdf2.c:228,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:229,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:230,1
    - Dst: xmlSecTransformPbkdf2ParamsRead
      Src: /src/xmlsec/src/mscng/pbkdf2.c:233,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:235,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/mscng/pbkdf2.c:240,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:242,1
    - Dst: xmlSecMSCngPbkdf2GetMacFromHref
      Src: /src/xmlsec/src/mscng/pbkdf2.c:247,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:249,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:249,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 212
    functionDepth: 12
    functionLinenumber: 212
    functionLinenumberEnd: 255
    functionName: xmlSecMSCngPbkdf2NodeRead
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecGetNextElementNode
    - xmlSecTransformCheckSize
    - xmlSecCheckNodeName
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecMSCngPbkdf2GetMacFromHref
    - xmlSecTransformPbkdf2ParamsRead
    - xmlSecInvalidNodeError
    - xmlSecMSCngPbkdf2GetCtx
    - xmlSecTransformGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngPbkdf2NodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: wcslen
      Src: /src/xmlsec/src/mscng/pbkdf2.c:282,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/pbkdf2.c:296,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:302,1
    - Dst: BCryptGenerateSymmetricKey
      Src: /src/xmlsec/src/mscng/pbkdf2.c:307,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:316,1
    - Dst: BCryptKeyDerivation
      Src: /src/xmlsec/src/mscng/pbkdf2.c:321,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:329,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:333,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/pbkdf2.c:343,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/pbkdf2.c:347,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 8
    argNames:
    - pszHashAlgo
    - pbSecret
    - cbSecret
    - pbSalt
    - cbSalt
    - cbIterationCount
    - pbOut
    - cbOut
    argTypes:
    - LPCWSTR
    - PBYTE
    - ULONG
    - PBYTE
    - ULONG
    - ULONGLONG
    - PBYTE
    - ULONG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 350
    functionName: xmlSecMSCngPbkdf2PeformKeyDerivation
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - BCryptOpenAlgorithmProvider
    - BCryptCloseAlgorithmProvider
    - wcslen
    - BCryptGenerateSymmetricKey
    - BCryptDestroyKey
    - BCryptKeyDerivation
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngPbkdf2PeformKeyDerivation(\n    LPCWSTR pszHashAlgo,\n
      \   PBYTE pbSecret, ULONG cbSecret,\n    PBYTE pbSalt, ULONG cbSalt,\n    ULONGLONG
      cbIterationCount,\n    PBYTE pbOut, ULONG cbOut\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:367,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/pbkdf2.c:370,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:373,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/pbkdf2.c:374,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/pbkdf2.c:374,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/pbkdf2.c:376,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:379,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/pbkdf2.c:380,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/pbkdf2.c:380,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:383,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:385,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/pbkdf2.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:390,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/pbkdf2.c:391,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/pbkdf2.c:391,1
    - Dst: xmlSecMSCngPbkdf2PeformKeyDerivation
      Src: /src/xmlsec/src/mscng/pbkdf2.c:393,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 29
    argCount: 2
    argNames:
    - ctx
    - out
    argTypes:
    - xmlSecMSCngPbkdf2CtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 408
    functionName: xmlSecMSCngPbkdf2Derive
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngPbkdf2PeformKeyDerivation
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2Derive(xmlSecMSCngPbkdf2CtxPtr ctx, xmlSecBufferPtr
      out)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:416,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscng/pbkdf2.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:417,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:418,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:419,1
    - Dst: xmlSecMSCngPbkdf2GetCtx
      Src: /src/xmlsec/src/mscng/pbkdf2.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:425,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:437,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:441,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:442,1
    - Dst: xmlSecMSCngPbkdf2Derive
      Src: /src/xmlsec/src/mscng/pbkdf2.c:448,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:450,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/pbkdf2.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/pbkdf2.c:459,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/pbkdf2.c:459,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/pbkdf2.c:461,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 410
    functionDepth: 3
    functionLinenumber: 410
    functionLinenumberEnd: 466
    functionName: xmlSecMSCngPbkdf2Execute
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngPbkdf2Derive
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidSizeError
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecMSCngPbkdf2GetCtx
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngPbkdf2Execute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: xmlSecMSCngTransformPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/pbkdf2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformPbkdf2GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/kw_des.c:57,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:58,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:59,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:60,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kw_des.c:62,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/kw_des.c:62,1
    - Dst: BCryptGenRandom
      Src: /src/xmlsec/src/mscng/kw_des.c:63,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 74
    functionName: xmlSecMSCngKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - return
    - BCryptGenRandom
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWDes3GenerateRandom(xmlSecTransformPtr transform XMLSEC_ATTRIBUTE_UNUSED,
      xmlSecByte * out,\n        xmlSecSize outSize, xmlSecSize* outWritten)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:91,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:91,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:92,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:93,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:94,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:97,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:100,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:103,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:108,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:112,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:119,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_des.c:123,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_des.c:125,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:129,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:136,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_des.c:140,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_des.c:142,1
    - Dst: BCryptCreateHash
      Src: /src/xmlsec/src/mscng/kw_des.c:146,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:154,1
    - Dst: BCryptHashData
      Src: /src/xmlsec/src/mscng/kw_des.c:160,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:165,1
    - Dst: BCryptFinishHash
      Src: /src/xmlsec/src/mscng/kw_des.c:170,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:175,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:178,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/kw_des.c:179,1
    - Dst: BCryptDestroyHash
      Src: /src/xmlsec/src/mscng/kw_des.c:184,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_des.c:188,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_des.c:192,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:196,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 77
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 200
    functionName: xmlSecMSCngKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - BCryptCreateHash
    - BCryptOpenAlgorithmProvider
    - xmlSecTransformCheckId
    - xmlSecMSCngNtError
    - xmlFree
    - xmlSecTransformCheckSize
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlMalloc
    - BCryptGetProperty
    - BCryptHashData
    - BCryptFinishHash
    - BCryptDestroyHash
    - xmlSecMSCngKWDes3GetCtx
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWDes3Sha1(xmlSecTransformPtr transform, const xmlSecByte
      * in, xmlSecSize inSize,\n        xmlSecByte * out, xmlSecSize outSize, xmlSecSize*
      outWritten)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:223,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:224,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:228,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:231,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:235,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:236,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:236,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kw_des.c:238,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:240,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:244,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:250,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:255,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:262,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_des.c:266,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_des.c:268,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:273,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:274,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kw_des.c:276,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:281,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:285,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kw_des.c:286,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:288,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:288,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:289,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:291,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/kw_des.c:295,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:301,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:305,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:311,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:318,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscng/kw_des.c:324,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:330,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kw_des.c:334,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kw_des.c:336,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:341,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:341,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/kw_des.c:347,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:351,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:358,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/kw_des.c:361,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kw_des.c:365,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/kw_des.c:368,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kw_des.c:371,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_des.c:374,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:378,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 108
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 382
    functionName: xmlSecMSCngKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - BCryptImportKey
    - BCryptEncrypt
    - BCryptGetProperty
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecBufferFinalize
    - xmlFree
    - xmlMalloc
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - BCryptDestroyKey
    - xmlSecMallocError
    - xmlSecInvalidSizeLessThanError
    - xmlSecTransformCheckSize
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngKWDes3GetCtx
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWDes3BlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte * iv,\n        xmlSecSize ivSize, const xmlSecByte * in, xmlSecSize
      inSize,\n        xmlSecByte * out, xmlSecSize outSize, xmlSecSize* outWritten)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:404,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:405,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:409,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:410,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:412,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:416,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:417,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:417,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kw_des.c:419,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:421,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:425,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:431,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:436,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:443,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/kw_des.c:447,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/kw_des.c:449,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:454,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:455,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kw_des.c:457,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:462,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:466,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kw_des.c:467,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:469,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:469,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:470,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kw_des.c:472,1
    - Dst: BCryptImportKey
      Src: /src/xmlsec/src/mscng/kw_des.c:476,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kw_des.c:482,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:486,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/kw_des.c:492,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:499,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscng/kw_des.c:505,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/kw_des.c:511,1
    - Dst: BCryptDecrypt
      Src: /src/xmlsec/src/mscng/kw_des.c:519,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kw_des.c:530,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/kw_des.c:533,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/kw_des.c:538,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kw_des.c:541,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/kw_des.c:544,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/kw_des.c:548,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 100
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 552
    functionName: xmlSecMSCngKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - BCryptImportKey
    - BCryptGetProperty
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecBufferFinalize
    - xmlFree
    - xmlMalloc
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - BCryptDestroyKey
    - xmlSecMallocError
    - xmlSecInvalidSizeLessThanError
    - xmlSecTransformCheckSize
    - BCryptDecrypt
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCngKWDes3GetCtx
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWDes3BlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte * iv,\n        xmlSecSize ivSize, const xmlSecByte * in, xmlSecSize
      inSize,\n        xmlSecByte * out, xmlSecSize outSize, xmlSecSize* outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:571,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:572,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:572,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:574,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:575,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kw_des.c:576,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/mscng/kw_des.c:578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:581,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_des.c:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 566
    functionDepth: 3
    functionLinenumber: 566
    functionLinenumberEnd: 585
    functionName: xmlSecMSCngKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWDes3GetCtx
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_des.c:591,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:591,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_des.c:592,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:592,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:594,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kw_des.c:595,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/mscng/kw_des.c:597,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kw_des.c:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 587
    functionDepth: 3
    functionLinenumber: 587
    functionLinenumberEnd: 599
    functionName: xmlSecMSCngKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - xmlSecMSCngKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:606,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:606,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:607,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:607,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:609,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:610,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/mscng/kw_des.c:612,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:614,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_des.c:614,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 601
    functionDepth: 1
    functionLinenumber: 601
    functionLinenumberEnd: 618
    functionName: xmlSecMSCngKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWDes3GetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:625,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:625,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:626,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:626,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:629,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/mscng/kw_des.c:631,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:633,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_des.c:633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 620
    functionDepth: 4
    functionLinenumber: 620
    functionLinenumberEnd: 637
    functionName: xmlSecMSCngKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3SetKey
    - xmlSecMSCngKWDes3GetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:645,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kw_des.c:645,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:646,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kw_des.c:646,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/kw_des.c:647,1
    - Dst: xmlSecMSCngKWDes3GetCtx
      Src: /src/xmlsec/src/mscng/kw_des.c:649,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kw_des.c:650,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/mscng/kw_des.c:651,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kw_des.c:653,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kw_des.c:653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 639
    functionDepth: 3
    functionLinenumber: 639
    functionLinenumberEnd: 657
    functionName: xmlSecMSCngKWDes3Execute
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngKWDes3GetCtx
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKWDes3Execute(xmlSecTransformPtr transform, int last,\n
      \                        xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 696
    functionName: xmlSecMSCngTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformKWDes3GetKlass(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/xmlsec/src/mscng/app.c:58,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/app.c:61,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:63,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscng/app.c:67,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:69,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:70,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 53
    functionDepth: 4
    functionLinenumber: 53
    functionLinenumberEnd: 76
    functionName: xmlSecMSCngAppInit
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOtherError2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppInit(const char* config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/app.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: xmlSecMSCngAppShutdown
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: xmlSecMSCngAppGetCertStoreName
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LPCTSTR
    signature: LPCTSTR xmlSecMSCngAppGetCertStoreName(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:130,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:131,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:132,1
    - Dst: xmlSecMSCngAppPkcs12Load
      Src: /src/xmlsec/src/mscng/app.c:136,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:139,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/app.c:144,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:146,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscng/app.c:150,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:152,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:153,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:154,1
    - Dst: xmlSecMSCngAppKeyLoadMemory
      Src: /src/xmlsec/src/mscng/app.c:158,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/app.c:158,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/app.c:159,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:162,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:163,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:166,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/app.c:169,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscng/app.c:170,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 6
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 122
    functionDepth: 4
    functionLinenumber: 122
    functionLinenumberEnd: 176
    functionName: xmlSecMSCngAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngAppPkcs12Load
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOtherError2
    - XMLSEC_ENUM_CAST
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecMSCngAppKeyLoadMemory
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCngAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataFormat format,\n    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:205,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:206,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:207,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:208,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:212,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:214,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:217,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:219,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscng/app.c:224,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:226,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/app.c:227,1
    - Dst: xmlSecMSCngCertAdopt
      Src: /src/xmlsec/src/mscng/app.c:231,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:233,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscng/app.c:238,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:240,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/app.c:246,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:248,1
    - Dst: xmlSecMSCngKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscng/app.c:252,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:254,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscng/app.c:259,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:261,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:272,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:275,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/app.c:278,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/app.c:281,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/app.c:284,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 80
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 191
    functionDepth: 4
    functionLinenumber: 191
    functionLinenumberEnd: 288
    functionName: xmlSecMSCngAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngKeyDataX509AdoptKeyCert
    - xmlSecKeySetValue
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - CertCreateCertificateContext
    - xmlSecKeyCreate
    - xmlSecKeyDestroy
    - xmlSecKeyAdoptData
    - xmlSecKeyDataGetName
    - xmlSecMSCngLastError
    - xmlSecKeyDataCreate
    - xmlSecMSCngCertAdopt
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCngAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize
      dataSize, xmlSecKeyDataFormat format,\n                            const char
      *pwd, void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:307,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/app.c:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 311
    functionName: xmlSecMSCngAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,\n
      \                         xmlSecKeyDataFormat format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:330,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/app.c:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 334
    functionName: xmlSecMSCngAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize,\n                                xmlSecKeyDataFormat
      format)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:361,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/app.c:363,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:365,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscng/app.c:369,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:371,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:372,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/app.c:376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:378,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:379,1
    - Dst: xmlSecMSCngAppPkcs12LoadMemory
      Src: /src/xmlsec/src/mscng/app.c:383,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/app.c:383,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:386,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:387,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:391,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 351
    functionDepth: 4
    functionLinenumber: 351
    functionLinenumberEnd: 393
    functionName: xmlSecMSCngAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngAppPkcs12LoadMemory
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCngAppPkcs12Load(const char *filename,\n    const
      char *pwd, void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:397,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/app.c:402,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/app.c:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - cert
    - isPersistentKey
    argTypes:
    - PCCERT_CONTEXT
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 408
    functionName: xmlSecMSCngIsPrivateKeyCert
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertGetCertificateContextProperty
    linkageType: ''
    returnType: BOOL
    signature: BOOL xmlSecMSCngIsPrivateKeyCert(PCCERT_CONTEXT cert, BOOL isPersistentKey)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:428,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/app.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:443,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/app.c:445,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/app.c:447,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/app.c:447,1
    - Dst: PFXIsPFXBlob
      Src: /src/xmlsec/src/mscng/app.c:449,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:451,1
    - Dst: xmlSecWin32ConvertLocaleToUnicode
      Src: /src/xmlsec/src/mscng/app.c:455,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:457,1
    - Dst: PFXVerifyPassword
      Src: /src/xmlsec/src/mscng/app.c:461,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:463,1
    - Dst: xmlSecImportGetPersistKey
      Src: /src/xmlsec/src/mscng/app.c:468,1
    - Dst: PFXImportCertStore
      Src: /src/xmlsec/src/mscng/app.c:471,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:473,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/app.c:477,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:479,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscng/app.c:484,1
    - Dst: xmlSecMSCngIsPrivateKeyCert
      Src: /src/xmlsec/src/mscng/app.c:486,1
    - Dst: xmlSecImportGetPersistKey
      Src: /src/xmlsec/src/mscng/app.c:486,1
    - Dst: xmlSecMSCngX509GetFriendlyNameUtf8
      Src: /src/xmlsec/src/mscng/app.c:489,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:493,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:495,1
    - Dst: xmlSecMSCngCertAdopt
      Src: /src/xmlsec/src/mscng/app.c:499,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:501,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:507,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:509,1
    - Dst: xmlSecMSCngKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscng/app.c:513,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:515,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:521,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:523,1
    - Dst: xmlSecMSCngKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscng/app.c:527,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:529,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:538,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscng/app.c:542,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:544,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscng/app.c:548,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:550,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/app.c:551,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscng/app.c:557,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:559,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/app.c:560,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/mscng/app.c:567,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:569,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/app.c:570,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/app.c:577,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/app.c:580,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/app.c:583,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/app.c:586,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/app.c:589,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:592,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:595,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 150
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 424
    functionDepth: 4
    functionLinenumber: 424
    functionLinenumberEnd: 598
    functionName: xmlSecMSCngAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecWin32ConvertLocaleToUnicode
    - xmlSecImportGetPersistKey
    - return
    - PFXVerifyPassword
    - CertCloseStore
    - xmlSecMSCngX509GetFriendlyNameUtf8
    - xmlSecMSCngKeyDataX509AdoptKeyCert
    - xmlFree
    - xmlSecMSCngIsPrivateKeyCert
    - xmlSecMSCngKeyDataX509AdoptCert
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCreate
    - xmlSecMSCngLastError
    - PFXIsPFXBlob
    - xmlSecKeyDestroy
    - xmlSecKeySetName
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - PFXImportCertStore
    - CertEnumCertificatesInStore
    - xmlSecKeyAdoptData
    - memset
    - UNREFERENCED_PARAMETER
    - CertDuplicateCertificateContext
    - CertFreeCertificateContext
    - xmlSecKeyCreate
    - xmlSecMSCngCertAdopt
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCngAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize, const char *pwd,\n                               void *pwdCallback,\n
      \                              void* pwdCallbackCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:620,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:621,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:622,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/app.c:624,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:626,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscng/app.c:630,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:632,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:633,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:634,1
    - Dst: xmlSecMSCngAppKeysMngrCertLoadMemory
      Src: /src/xmlsec/src/mscng/app.c:638,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/app.c:638,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/app.c:639,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:641,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:642,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:643,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/app.c:647,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 613
    functionDepth: 4
    functionLinenumber: 613
    functionLinenumberEnd: 649
    functionName: xmlSecMSCngAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecMSCngAppKeysMngrCertLoadMemory
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char
      *filename,\n                               xmlSecKeyDataFormat format,\n                               xmlSecKeyDataType
      type)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:674,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:675,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscng/app.c:677,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:679,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/app.c:683,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/app.c:683,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:687,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/app.c:692,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/app.c:697,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscng/app.c:698,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:702,1
    - Dst: xmlSecMSCngX509StoreAdoptCert
      Src: /src/xmlsec/src/mscng/app.c:703,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:705,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/app.c:706,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 664
    functionDepth: 3
    functionLinenumber: 664
    functionLinenumberEnd: 711
    functionName: xmlSecMSCngAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInternalError
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - CertFreeCertificateContext
    - return
    - CertCreateCertificateContext
    - xmlSecMSCngLastError
    - xmlSecMSCngX509StoreAdoptCert
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data,\n    xmlSecSize dataSize, xmlSecKeyDataFormat format, xmlSecKeyDataType
      type\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:725,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:726,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:727,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/app.c:729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 731
    functionName: xmlSecMSCngAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:746,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:747,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:748,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:749,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/app.c:751,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 753
    functionName: xmlSecMSCngAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:771,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscng/app.c:774,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/mscng/app.c:777,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:779,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/mscng/app.c:783,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:785,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/mscng/app.c:786,1
    - Dst: xmlSecMSCngKeysMngrInit
      Src: /src/xmlsec/src/mscng/app.c:791,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:793,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 799
    functionName: xmlSecMSCngAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecInternalError
    - xmlSecMSCngKeysMngrInit
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:816,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:817,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscng/app.c:819,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:821,1
    - Dst: xmlSecMSCngKeysStoreAdoptKey
      Src: /src/xmlsec/src/mscng/app.c:825,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 811
    functionDepth: 2
    functionLinenumber: 811
    functionLinenumberEnd: 832
    functionName: xmlSecMSCngAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecInternalError
    - xmlSecMSCngKeysStoreAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:855,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:856,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:857,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscng/app.c:859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:861,1
    - Dst: xmlSecMSCngX509StoreVerifyKey
      Src: /src/xmlsec/src/mscng/app.c:865,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:869,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:870,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:871,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/app.c:873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 850
    functionDepth: 3
    functionLinenumber: 850
    functionLinenumberEnd: 877
    functionName: xmlSecMSCngAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecMSCngX509StoreVerifyKey
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:894,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:895,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscng/app.c:897,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:899,1
    - Dst: xmlSecMSCngKeysStoreLoad
      Src: /src/xmlsec/src/mscng/app.c:903,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:905,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:906,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 889
    functionDepth: 2
    functionLinenumber: 889
    functionLinenumberEnd: 911
    functionName: xmlSecMSCngAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecMSCngKeysStoreLoad
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:928,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/app.c:929,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscng/app.c:931,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/app.c:933,1
    - Dst: xmlSecMSCngKeysStoreSave
      Src: /src/xmlsec/src/mscng/app.c:937,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/app.c:939,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/app.c:940,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 923
    functionDepth: 2
    functionLinenumber: 923
    functionLinenumberEnd: 945
    functionName: xmlSecMSCngAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecMSCngKeysStoreSave
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 958
    functionName: xmlSecMSCngAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/mscng/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecMSCngAppGetDefaultPwdCallback(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:60,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:60,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:61,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:62,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509.c:63,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509.c:65,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:71,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 76
    functionName: xmlSecMSCngKeyDataX509Initialize
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - CertOpenStore
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecMSCngLastError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509Initialize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:82,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:82,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:84,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:85,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509.c:88,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:89,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509.c:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 95
    functionName: xmlSecMSCngKeyDataX509Finalize
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    - CertCloseStore
    - xmlSecMSCngLastError
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataX509Finalize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:105,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:106,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:106,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:108,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:109,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:111,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscng/x509.c:114,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:115,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:117,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:118,1
    - Dst: xmlSecMSCngKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscng/x509.c:124,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:126,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:127,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:128,1
    - Dst: xmlSecMSCngKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscng/x509.c:132,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:134,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:135,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:136,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 145
    functionName: xmlSecMSCngKeyDataX509Duplicate
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecMSCngKeyDataX509AdoptKeyCert
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlSecMSCngKeyDataX509AdoptCert
    - CertFreeCertificateContext
    - xmlSecKeyDataCheckId
    - CertEnumCertificatesInStore
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:158,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/x509.c:160,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/x509.c:160,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:161,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 168
    functionName: xmlSecMSCngX509CertDerRead
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecAssert2
    - return
    - CertCreateCertificateContext
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509CertDerRead(const xmlSecByte* buf, xmlSecSize
      size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:173,1
    - Dst: CertAddCertificateContextToStore
      Src: /src/xmlsec/src/mscng/x509.c:175,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:180,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - cert
    argTypes:
    - xmlSecMSCngX509DataCtxPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 187
    functionName: xmlSecMSCngKeyDataX509AddCertInternal
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngLastError
    - CertAddCertificateContextToStore
    - CertFreeCertificateContext
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509AddCertInternal(xmlSecMSCngX509DataCtxPtr
      ctx, PCCERT_CONTEXT cert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:204,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:205,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:208,1
    - Dst: CertCompareCertificate
      Src: /src/xmlsec/src/mscng/x509.c:211,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:215,1
    - Dst: xmlSecMSCngKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/mscng/x509.c:217,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:219,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 226
    functionName: xmlSecMSCngKeyDataX509AdoptKeyCert
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - CertFreeCertificateContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataX509AddCertInternal
    - xmlSecKeyDataGetName
    - CertCompareCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:241,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:242,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:246,1
    - Dst: CertCompareCertificate
      Src: /src/xmlsec/src/mscng/x509.c:249,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:250,1
    - Dst: xmlSecMSCngKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/mscng/x509.c:253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 254
    functionName: xmlSecMSCngKeyDataX509AdoptCert
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 2
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecAssert2
    - CertFreeCertificateContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataX509AddCertInternal
    - CertCompareCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509AdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:269,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:270,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:274,1
    - Dst: CertAddCRLContextToStore
      Src: /src/xmlsec/src/mscng/x509.c:276,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:277,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscng/x509.c:280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - crl
    argTypes:
    - xmlSecKeyDataPtr
    - PCCRL_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 283
    functionName: xmlSecMSCngKeyDataX509AdoptCrl
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecAssert2
    - CertFreeCRLContext
    - xmlSecMSCngLastError
    - xmlSecKeyDataCheckId
    - CertAddCRLContextToStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, PCCRL_CONTEXT
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:298,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:298,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 304
    functionName: xmlSecMSCngKeyDataX509GetKeyCert
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngKeyDataX509GetKeyCert(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:310,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:310,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 316
    functionName: xmlSecMSCngKeyDataX509GetCertStore
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: HCERTSTORE
    signature: HCERTSTORE xmlSecMSCngKeyDataX509GetCertStore(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:325,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/x509.c:327,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/x509.c:327,1
    - Dst: CertCreateCRLContext
      Src: /src/xmlsec/src/mscng/x509.c:328,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 335
    functionName: xmlSecMSCngX509CrlDerRead
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - CertCreateCRLContext
    - xmlSecAssert2
    - return
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: PCCRL_CONTEXT
    signature: PCCRL_CONTEXT xmlSecMSCngX509CrlDerRead(xmlSecByte* buf, xmlSecSize
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - in
    - out
    argTypes:
    - FILETIME
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 357
    functionName: xmlSecMSCngX509CertGetTime
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509CertGetTime(FILETIME in, time_t* out)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:370,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:373,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:378,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/x509.c:381,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscng/x509.c:387,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:389,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:389,1
    - Dst: xmlSecMSCngX509StoreVerify
      Src: /src/xmlsec/src/mscng/x509.c:392,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509.c:396,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:396,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:405,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:407,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:407,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:408,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:411,1
    - Dst: xmlSecMSCngKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscng/x509.c:412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:414,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:414,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:415,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:421,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:423,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:423,1
    - Dst: xmlSecMSCngCertAdopt
      Src: /src/xmlsec/src/mscng/x509.c:427,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:429,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:429,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:430,1
    - Dst: xmlSecMSCngCertAdopt
      Src: /src/xmlsec/src/mscng/x509.c:435,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:437,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:437,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:438,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/mscng/x509.c:445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:446,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:446,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:447,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscng/x509.c:452,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:454,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:454,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:455,1
    - Dst: xmlSecMSCngX509CertGetTime
      Src: /src/xmlsec/src/mscng/x509.c:461,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:463,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:463,1
    - Dst: xmlSecMSCngX509CertGetTime
      Src: /src/xmlsec/src/mscng/x509.c:466,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:468,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:468,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscng/x509.c:475,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:477,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:477,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 88
    argCount: 3
    argNames:
    - key
    - data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 360
    functionDepth: 3
    functionLinenumber: 360
    functionLinenumberEnd: 483
    functionName: xmlSecMSCnVerifyAndAdoptX509KeyData
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngKeyDataX509AdoptKeyCert
    - xmlSecKeyGetValue
    - xmlSecKeyDataDestroy
    - xmlSecMSCngLastError
    - xmlSecMSCngX509CertGetTime
    - xmlSecMSCngX509DataGetCtx
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngX509StoreVerify
    - xmlSecKeyAdoptData
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    - CertDuplicateCertificateContext
    - CertFreeCertificateContext
    - xmlSecKeyReqMatchKeyValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecMSCngCertAdopt
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCnVerifyAndAdoptX509KeyData(xmlSecKeyPtr key, xmlSecKeyDataPtr
      data, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:495,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:497,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509.c:500,1
    - Dst: xmlSecMSCngX509CertDerRead
      Src: /src/xmlsec/src/mscng/x509.c:501,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/x509.c:501,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509.c:502,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:504,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:504,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509.c:508,1
    - Dst: xmlSecMSCngX509CrlDerRead
      Src: /src/xmlsec/src/mscng/x509.c:509,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/x509.c:509,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509.c:510,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:512,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:512,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscng/x509.c:522,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:524,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:524,1
    - Dst: xmlSecMSCngX509StoreFindCertByValue
      Src: /src/xmlsec/src/mscng/x509.c:532,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509.c:534,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:534,1
    - Dst: xmlSecMSCngKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscng/x509.c:541,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:543,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:543,1
    - Dst: xmlSecMSCngKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/mscng/x509.c:549,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:551,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:551,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:563,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscng/x509.c:566,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 4
    argNames:
    - data
    - x509Value
    - keysMngr
    - flags
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeysMngrPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 486
    functionDepth: 3
    functionLinenumber: 486
    functionLinenumberEnd: 569
    functionName: xmlSecMSCngKeyDataX509Read
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngKeyDataX509AdoptCert
    - xmlSecMSCngX509CrlDerRead
    - CertFreeCRLContext
    - CertFreeCertificateContext
    - xmlSecBufferGetData
    - xmlSecMSCngKeyDataX509AdoptCrl
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecMSCngX509StoreFindCertByValue
    - xmlSecKeysMngrGetDataStore
    - xmlSecMSCngX509CertDerRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataX509Read(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n    xmlSecKeysMngrPtr keysMngr, unsigned int flags)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:577,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:578,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/x509.c:580,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:582,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:582,1
    - Dst: xmlSecKeyDataX509XmlRead
      Src: /src/xmlsec/src/mscng/x509.c:586,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:588,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:588,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:589,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/x509.c:594,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:595,1
    - Dst: xmlSecMSCnVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/mscng/x509.c:599,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:601,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:601,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:602,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:605,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 571
    functionDepth: 5
    functionLinenumber: 571
    functionLinenumberEnd: 612
    functionName: xmlSecMSCngKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecMSCnVerifyAndAdoptX509KeyData
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecKeyDataX509XmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                              xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:621,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:622,1
    - Dst: CertNameToStr
      Src: /src/xmlsec/src/mscng/x509.c:624,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:626,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/x509.c:630,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/x509.c:632,1
    - Dst: CertNameToStr
      Src: /src/xmlsec/src/mscng/x509.c:636,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:638,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509.c:639,1
    - Dst: xmlSecWin32ConvertTstrToUtf8
      Src: /src/xmlsec/src/mscng/x509.c:643,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:645,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509.c:646,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509.c:650,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - nm
    argTypes:
    - PCERT_NAME_BLOB
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 614
    functionDepth: 4
    functionLinenumber: 614
    functionLinenumberEnd: 652
    functionName: xmlSecMSCngX509NameWrite
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - CertNameToStr
    - xmlSecWin32ConvertTstrToUtf8
    - xmlSecMSCngLastError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCngX509NameWrite(PCERT_NAME_BLOB nm)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:660,1
    - Dst: xmlSecBnInitialize
      Src: /src/xmlsec/src/mscng/x509.c:662,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/x509.c:664,1
    - Dst: xmlSecBnSetData
      Src: /src/xmlsec/src/mscng/x509.c:668,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:670,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscng/x509.c:671,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/mscng/x509.c:677,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:679,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscng/x509.c:680,1
    - Dst: xmlSecBnToDecString
      Src: /src/xmlsec/src/mscng/x509.c:684,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:686,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscng/x509.c:687,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscng/x509.c:692,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - num
    argTypes:
    - PCRYPT_INTEGER_BLOB
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 654
    functionDepth: 6
    functionLinenumber: 654
    functionLinenumberEnd: 694
    functionName: xmlSecMSCngASN1IntegerWrite
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBnFinalize
    - xmlSecInternalError2
    - xmlSecBnSetData
    - xmlSecBnInitialize
    - xmlSecBnToDecString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCngASN1IntegerWrite(PCRYPT_INTEGER_BLOB num)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:703,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:704,1
    - Dst: CertFindExtension
      Src: /src/xmlsec/src/mscng/x509.c:707,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:709,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/x509.c:713,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:715,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/x509.c:719,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/x509.c:721,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/x509.c:726,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/x509.c:726,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:727,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/x509.c:731,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/x509.c:733,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - PCCERT_CONTEXT
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 696
    functionDepth: 2
    functionLinenumber: 696
    functionLinenumberEnd: 738
    functionName: xmlSecMSCngX509SKIWrite
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - CertFindExtension
    - xmlSecAssert2
    - xmlSecInternalError2
    - CertGetCertificateContextProperty
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509SKIWrite(PCCERT_CONTEXT cert, xmlSecBufferPtr buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:750,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/x509.c:753,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/x509.c:754,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/x509.c:755,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/x509.c:759,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509.c:764,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/x509.c:768,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:770,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - cert
    - algorithm
    - buf
    argTypes:
    - PCCERT_CONTEXT
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 742
    functionDepth: 3
    functionLinenumber: 742
    functionLinenumberEnd: 776
    functionName: xmlSecMSCngX509DigestWrite
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    - CertGetCertificateContextProperty
    - xmlSecBufferSetData
    - xmlStrcmp
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509DigestWrite(PCCERT_CONTEXT cert, const xmlChar*
      algorithm, xmlSecBufferPtr buf)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:796,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:797,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:797,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:798,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:799,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:803,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscng/x509.c:807,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscng/x509.c:809,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:810,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:811,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/x509.c:813,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:815,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:815,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscng/x509.c:819,1
    - Dst: xmlSecMSCngX509SKIWrite
      Src: /src/xmlsec/src/mscng/x509.c:820,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:822,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:822,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscng/x509.c:826,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:827,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:828,1
    - Dst: xmlSecMSCngX509NameWrite
      Src: /src/xmlsec/src/mscng/x509.c:830,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:832,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:832,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscng/x509.c:836,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:837,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:838,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:839,1
    - Dst: xmlSecMSCngX509NameWrite
      Src: /src/xmlsec/src/mscng/x509.c:841,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:843,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:843,1
    - Dst: xmlSecMSCngASN1IntegerWrite
      Src: /src/xmlsec/src/mscng/x509.c:846,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:848,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:848,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscng/x509.c:852,1
    - Dst: xmlSecMSCngX509DigestWrite
      Src: /src/xmlsec/src/mscng/x509.c:853,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:855,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:855,1
    - Dst: CertEnumCRLsInStore
      Src: /src/xmlsec/src/mscng/x509.c:868,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:871,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:872,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/x509.c:874,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:876,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/x509.c:876,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:888,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:889,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 83
    argCount: 4
    argNames:
    - data
    - x509Value
    - content
    - context
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 790
    functionDepth: 7
    functionLinenumber: 790
    functionLinenumberEnd: 891
    functionName: xmlSecMSCngKeyDataX509Write
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509SKIWrite
    - xmlSecMSCngX509NameWrite
    - XMLSEC_X509DATA_HAS_EMPTY_NODE
    - xmlSecInternalError
    - xmlSecMSCngASN1IntegerWrite
    - xmlSecAssert2
    - xmlSecBufferSetData
    - xmlSecKeyDataCheckId
    - CertEnumCertificatesInStore
    - CertEnumCRLsInStore
    - xmlSecKeyDataGetName
    - xmlSecMSCngX509DigestWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataX509Write(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n                            int content, void* context)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:901,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:902,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/mscng/x509.c:905,1
    - Dst: xmlSecMSCngX509DataGetCtx
      Src: /src/xmlsec/src/mscng/x509.c:910,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:911,1
    - Dst: xmlSecKeyDataX509XmlWrite
      Src: /src/xmlsec/src/mscng/x509.c:919,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscng/x509.c:920,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:923,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:924,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 893
    functionDepth: 13
    functionLinenumber: 893
    functionLinenumberEnd: 930
    functionName: xmlSecMSCngKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509DataGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataX509XmlWrite
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyGetData
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:934,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:934,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:935,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/x509.c:937,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 932
    functionDepth: 1
    functionLinenumber: 932
    functionLinenumberEnd: 939
    functionName: xmlSecMSCngKeyDataX509DebugDump
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNotImplementedError
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:943,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/x509.c:943,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509.c:944,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/x509.c:946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 941
    functionDepth: 1
    functionLinenumber: 941
    functionLinenumberEnd: 948
    functionName: xmlSecMSCngKeyDataX509DebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNotImplementedError
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 998
      start: 995
    functionDepth: 0
    functionLinenumber: 995
    functionLinenumberEnd: 998
    functionName: xmlSecMSCngKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataX509GetKlass(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:1014,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:1015,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:1016,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:1017,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509.c:1018,1
    - Dst: xmlSecMSCngX509CertDerRead
      Src: /src/xmlsec/src/mscng/x509.c:1020,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:1022,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/x509.c:1026,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:1028,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:1028,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:1029,1
    - Dst: xmlSecMSCngKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscng/x509.c:1033,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:1035,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:1035,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509.c:1036,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:1037,1
    - Dst: xmlSecMSCnVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/mscng/x509.c:1042,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509.c:1044,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/x509.c:1044,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:1045,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/x509.c:1049,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 1006
    functionDepth: 4
    functionLinenumber: 1006
    functionLinenumberEnd: 1056
    functionName: xmlSecMSCngKeyDataRawX509CertBinRead
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCnVerifyAndAdoptX509KeyData
    - xmlSecMSCngKeyDataX509AdoptCert
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecMSCngX509CertDerRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        const xmlSecByte* buf, xmlSecSize bufSize,\n        xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1106
    functionName: xmlSecMSCngKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataRawX509CertGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:53,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:54,1
    - Dst: CryptImportPublicKeyInfoEx2
      Src: /src/xmlsec/src/mscng/certkeys.c:56,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/certkeys.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - cert
    - key
    argTypes:
    - PCCERT_CONTEXT
    - BCRYPT_KEY_HANDLE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 66
    functionName: xmlSecMSCngKeyDataCertGetPubkey
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CryptImportPublicKeyInfoEx2
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataCertGetPubkey(PCCERT_CONTEXT cert, BCRYPT_KEY_HANDLE*
      key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:72,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:73,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:74,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/certkeys.c:79,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/certkeys.c:88,1
    - Dst: CryptAcquireCertificatePrivateKey
      Src: /src/xmlsec/src/mscng/certkeys.c:91,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/certkeys.c:99,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/certkeys.c:108,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - cert
    - key
    - needsFree
    argTypes:
    - PCCERT_CONTEXT
    - NCRYPT_KEY_HANDLE*
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 110
    functionName: xmlSecMSCngKeyDataCertGetPrivkey
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngLastError
    - CertGetCertificateContextProperty
    - CryptAcquireCertificatePrivateKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataCertGetPrivkey(PCCERT_CONTEXT cert, NCRYPT_KEY_HANDLE*
      key, BOOL* needsFree)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:127,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:127,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:128,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:128,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:129,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:130,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:131,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:134,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:135,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:136,1
    - Dst: xmlSecMSCngKeyDataCertGetPrivkey
      Src: /src/xmlsec/src/mscng/certkeys.c:143,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:145,1
    - Dst: xmlSecMSCngKeyDataCertGetPubkey
      Src: /src/xmlsec/src/mscng/certkeys.c:153,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 3
    argNames:
    - data
    - cert
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 163
    functionName: xmlSecMSCngKeyDataAdoptCert
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecMSCngKeyDataCertGetPrivkey
    - xmlSecInternalError
    - xmlSecMSCngKeyDataCertGetPubkey
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataAdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      cert, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:169,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:170,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:170,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:171,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:173,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - data
    - hPubKey
    argTypes:
    - xmlSecKeyDataPtr
    - BCRYPT_KEY_HANDLE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 180
    functionName: xmlSecMSCngKeyDataAdoptKey
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataAdoptKey(xmlSecKeyDataPtr data, BCRYPT_KEY_HANDLE
      hPubKey)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:186,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscng/certkeys.c:189,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:190,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:192,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscng/certkeys.c:199,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:200,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:202,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscng/certkeys.c:209,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:210,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:212,1
    - Dst: xmlSecInvalidStringTypeError
      Src: /src/xmlsec/src/mscng/certkeys.c:219,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - pszObjId
    argTypes:
    - LPSTR
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 227
    functionName: xmlSecMSCngKeyDataFromAlgorithm
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidStringTypeError
    - xmlSecAssert2
    - strcmp
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCngKeyDataFromAlgorithm(LPSTR pszObjId)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:245,1
    - Dst: xmlSecMSCngKeyDataFromAlgorithm
      Src: /src/xmlsec/src/mscng/certkeys.c:247,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:249,1
    - Dst: xmlSecMSCngKeyDataAdoptCert
      Src: /src/xmlsec/src/mscng/certkeys.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:255,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/certkeys.c:256,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - pCert
    - type
    argTypes:
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 238
    functionDepth: 3
    functionLinenumber: 238
    functionLinenumberEnd: 261
    functionName: xmlSecMSCngCertAdopt
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecMSCngKeyDataAdoptCert
    - xmlSecMSCngKeyDataFromAlgorithm
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCngCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:276,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:276,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:277,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:277,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 283
    functionName: xmlSecMSCngKeyDataGetPubKey
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    linkageType: ''
    returnType: BCRYPT_KEY_HANDLE
    signature: BCRYPT_KEY_HANDLE xmlSecMSCngKeyDataGetPubKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:298,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:298,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:299,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:299,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 305
    functionName: xmlSecMSCngKeyDataGetPrivKey
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    linkageType: ''
    returnType: NCRYPT_KEY_HANDLE
    signature: NCRYPT_KEY_HANDLE xmlSecMSCngKeyDataGetPrivKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:311,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:312,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:312,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:315,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 320
    functionName: xmlSecMSCngKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:327,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:327,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:328,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:328,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:330,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:331,1
    - Dst: NCryptFreeObject
      Src: /src/xmlsec/src/mscng/certkeys.c:334,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:336,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:342,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:344,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/certkeys.c:350,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:353,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 354
    functionName: xmlSecMSCngKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecMSCngNtError
    - CertFreeCertificateContext
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - BCryptDestroyKey
    - NCryptFreeObject
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:367,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:368,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:369,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:369,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:370,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:370,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:373,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:376,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:379,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/certkeys.c:382,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/certkeys.c:384,1
    - Dst: xmlSecMSCngKeyDataCertGetPrivkey
      Src: /src/xmlsec/src/mscng/certkeys.c:390,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:392,1
    - Dst: xmlSecMSCngKeyDataCertGetPubkey
      Src: /src/xmlsec/src/mscng/certkeys.c:399,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:401,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:407,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:415,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/certkeys.c:419,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/certkeys.c:421,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:425,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:433,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:434,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/mscng/certkeys.c:466,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:467,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:471,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:477,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:478,1
    - Dst: BCryptImportKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:482,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:491,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:492,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:493,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:497,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:498,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 91
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 502
    functionName: xmlSecMSCngKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - BCryptImportKeyPair
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecMSCngKeyDataCertGetPrivkey
    - xmlSecInternalError
    - xmlSecMSCngKeyDataCertGetPubkey
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlFree
    - BCryptOpenAlgorithmProvider
    - BCryptCloseAlgorithmProvider
    - xmlMalloc
    - xmlSecKeyDataCheckSize
    - xmlSecNotImplementedError2
    - xmlSecMSCngLastError
    - BCryptExportKey
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: xmlSecMSCngKeyDataDEREncodedKeyValueGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataDEREncodedKeyValueGetKlass(void)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:600,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:601,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:602,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:603,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:604,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:606,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:608,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:608,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/mscng/certkeys.c:613,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/mscng/certkeys.c:615,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:615,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/mscng/certkeys.c:620,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:622,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:622,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:625,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:626,1
    - Dst: CryptDecodeObjectEx
      Src: /src/xmlsec/src/mscng/certkeys.c:635,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:646,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:646,1
    - Dst: CryptImportPublicKeyInfoEx2
      Src: /src/xmlsec/src/mscng/certkeys.c:650,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:658,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:658,1
    - Dst: xmlSecMSCngKeyDataFromAlgorithm
      Src: /src/xmlsec/src/mscng/certkeys.c:663,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:665,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:665,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:669,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:671,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:671,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscng/certkeys.c:676,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:678,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:678,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/certkeys.c:689,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:692,1
    - Dst: LocalFree
      Src: /src/xmlsec/src/mscng/certkeys.c:695,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:697,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 78
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 584
    functionDepth: 4
    functionLinenumber: 584
    functionLinenumberEnd: 699
    functionName: xmlSecMSCngKeyDataDEREncodedKeyValueXmlRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - LocalFree
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecGetNextElementNode
    - xmlSecKeyDataDestroy
    - CryptImportPublicKeyInfoEx2
    - xmlSecMSCngKeyDataFromAlgorithm
    - xmlSecBufferBase64NodeContentRead
    - xmlSecMSCngNtError
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - BCryptDestroyKey
    - xmlSecUnexpectedNodeError
    - xmlSecMSCngKeyDataAdoptKey
    - CryptDecodeObjectEx
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataDEREncodedKeyValueXmlRead(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:713,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:714,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:715,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:716,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:717,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/certkeys.c:720,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:722,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:722,1
    - Dst: xmlSecMSCngKeyDataGetPubKey
      Src: /src/xmlsec/src/mscng/certkeys.c:725,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:727,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:727,1
    - Dst: CryptExportPublicKeyInfoFromBCryptKeyHandle
      Src: /src/xmlsec/src/mscng/certkeys.c:732,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:742,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:742,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/certkeys.c:745,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/certkeys.c:747,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:747,1
    - Dst: CryptExportPublicKeyInfoFromBCryptKeyHandle
      Src: /src/xmlsec/src/mscng/certkeys.c:750,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:760,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:760,1
    - Dst: CryptEncodeObjectEx
      Src: /src/xmlsec/src/mscng/certkeys.c:764,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:774,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:774,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/mscng/certkeys.c:779,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscng/certkeys.c:779,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:781,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:781,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/mscng/certkeys.c:784,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:791,1
    - Dst: LocalFree
      Src: /src/xmlsec/src/mscng/certkeys.c:794,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/certkeys.c:797,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 701
    functionDepth: 10
    functionLinenumber: 701
    functionLinenumberEnd: 800
    functionName: xmlSecMSCngKeyDataDEREncodedKeyValueXmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlFree
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetPubKey
    - CryptExportPublicKeyInfoFromBCryptKeyHandle
    - xmlMalloc
    - CryptEncodeObjectEx
    - xmlNodeAddContent
    - LocalFree
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataKlassGetName
    - xmlSecBase64Encode
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataDEREncodedKeyValueXmlWrite(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:823,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:824,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:825,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:825,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:826,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:826,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:827,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:827,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:828,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:828,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:831,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:832,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:833,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:834,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:835,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:836,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:837,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:838,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:848,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:849,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:850,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:854,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:856,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:862,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:864,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:864,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:868,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:868,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:870,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/mscng/certkeys.c:873,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:873,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:875,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:876,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:879,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:880,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:880,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:883,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:883,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:887,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:887,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:891,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:891,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:895,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:901,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:901,1
    - Dst: BCryptImportKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:906,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:915,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:915,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:919,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:921,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:921,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:925,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:927,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:927,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/certkeys.c:938,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:941,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:944,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:947,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 91
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 807
    functionDepth: 2
    functionLinenumber: 807
    functionLinenumberEnd: 950
    functionName: xmlSecMSCngKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecKeyDataDestroy
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecKeyDataCreate
    - BCryptImportKeyPair
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - BCryptDestroyKey
    - memset
    - xmlSecMSCngKeyDataAdoptKey
    - xmlSecKeyDataGetName
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - memcpy
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCngKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:966,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:967,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:968,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:968,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:969,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/certkeys.c:970,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:972,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:973,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:974,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:977,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:985,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:985,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:990,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:992,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:992,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:998,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:999,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1001,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1009,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1009,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1016,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1016,1
    - Dst: xmlSecMSCngNtError3
      Src: /src/xmlsec/src/mscng/certkeys.c:1024,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1024,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1032,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1034,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1034,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1041,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1042,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1044,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1044,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1050,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1052,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1052,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1062,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1064,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1064,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:1077,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 77
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 952
    functionDepth: 3
    functionLinenumber: 952
    functionLinenumberEnd: 1080
    functionName: xmlSecMSCngKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngKeyDataGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCngNtError2
    - xmlSecBufferFinalize
    - xmlSecMSCngNtError3
    - BCryptExportKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                        xmlSecKeyValueDsaPtr dsaValue,\n                        int
      writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1084,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1084,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1085,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1085,1
    - Dst: xmlSecMSCngKeyDataDuplicate
      Src: /src/xmlsec/src/mscng/certkeys.c:1087,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1082
    functionDepth: 3
    functionLinenumber: 1082
    functionLinenumberEnd: 1088
    functionName: xmlSecMSCngKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1094,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1094,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1096,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1090
    functionDepth: 1
    functionLinenumber: 1090
    functionLinenumberEnd: 1104
    functionName: xmlSecMSCngKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCngKeyDataDsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1108,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1108,1
    - Dst: xmlSecMSCngKeyDataGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1106
    functionDepth: 1
    functionLinenumber: 1106
    functionLinenumberEnd: 1111
    functionName: xmlSecMSCngKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCngKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1116,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/mscng/certkeys.c:1117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1113
    functionDepth: 3
    functionLinenumber: 1113
    functionLinenumberEnd: 1119
    functionName: xmlSecMSCngKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1124,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/mscng/certkeys.c:1125,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1121
    functionDepth: 3
    functionLinenumber: 1121
    functionLinenumberEnd: 1128
    functionName: xmlSecMSCngKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n          xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1132,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1132,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1133,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1135,1
    - Dst: xmlSecMSCngKeyDataDsaGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1130
    functionDepth: 2
    functionLinenumber: 1130
    functionLinenumberEnd: 1137
    functionName: xmlSecMSCngKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCngKeyDataDsaGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1140,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1140,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1141,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1143,1
    - Dst: xmlSecMSCngKeyDataDsaGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1139
    functionDepth: 2
    functionLinenumber: 1139
    functionLinenumberEnd: 1145
    functionName: xmlSecMSCngKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCngKeyDataDsaGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/certkeys.c:1150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1159,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:1159,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1160,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1161,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1162,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1164,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1165,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1167,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1169,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1169,1
    - Dst: BCryptGenerateKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1174,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1176,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1176,1
    - Dst: BCryptFinalizeKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1182,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1184,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1184,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1189,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1191,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1192,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1202,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1206,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - data
    - sizeBits
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1147
    functionDepth: 2
    functionLinenumber: 1147
    functionLinenumberEnd: 1210
    functionName: xmlSecMSCngKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - UNREFERENCED_PARAMETER
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - BCryptGenerateKeyPair
    - xmlSecAssert2
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecMSCngKeyDataAdoptKey
    - xmlSecKeyDataCheckSize
    - BCryptDestroyKey
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - BCryptFinalizeKeyPair
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits,\n        xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1257
    functionDepth: 0
    functionLinenumber: 1257
    functionLinenumberEnd: 1260
    functionName: xmlSecMSCngKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataDsaGetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1283,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1284,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1284,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1287,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1290,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:1298,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1300,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1300,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1306,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1308,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1313,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:1314,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/certkeys.c:1319,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1319,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/certkeys.c:1320,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1320,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/certkeys.c:1321,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1321,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:1325,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1325,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:1329,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1329,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1336,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1342,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1342,1
    - Dst: BCryptImportKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1347,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1356,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1356,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:1361,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1363,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1363,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1367,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1369,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1369,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/certkeys.c:1380,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1383,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1386,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:1389,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 80
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1264
    functionDepth: 2
    functionLinenumber: 1264
    functionLinenumberEnd: 1392
    functionName: xmlSecMSCngKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecKeyDataDestroy
    - xmlSecMSCngNtError2
    - xmlSecKeyDataCreate
    - BCryptImportKeyPair
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - BCryptDestroyKey
    - memset
    - xmlSecMSCngKeyDataAdoptKey
    - memcpy
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCngKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1409,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1410,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1410,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1411,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/certkeys.c:1412,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1416,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1419,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1427,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1427,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:1432,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1434,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1434,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1440,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1441,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1443,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1451,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1451,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1456,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1458,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1458,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1465,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1465,1
    - Dst: xmlSecMSCngNtError3
      Src: /src/xmlsec/src/mscng/certkeys.c:1473,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1473,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1481,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1483,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1483,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1490,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1492,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1492,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:1506,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 69
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1394
    functionDepth: 3
    functionLinenumber: 1394
    functionLinenumberEnd: 1509
    functionName: xmlSecMSCngKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngKeyDataGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferSetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCngNtError2
    - xmlSecBufferFinalize
    - xmlSecMSCngNtError3
    - BCryptExportKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataRsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                           xmlSecKeyValueRsaPtr rsaValue,\n                           int
      writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1513,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1514,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1514,1
    - Dst: xmlSecMSCngKeyDataDuplicate
      Src: /src/xmlsec/src/mscng/certkeys.c:1516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1517
      start: 1511
    functionDepth: 3
    functionLinenumber: 1511
    functionLinenumberEnd: 1517
    functionName: xmlSecMSCngKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1523,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1523,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1526,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1519
    functionDepth: 1
    functionLinenumber: 1519
    functionLinenumberEnd: 1533
    functionName: xmlSecMSCngKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCngKeyDataRsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1542,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:1542,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1543,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1543,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1549,1
    - Dst: CertGetPublicKeyLength
      Src: /src/xmlsec/src/mscng/certkeys.c:1550,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/certkeys.c:1554,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1561,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1564,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscng/certkeys.c:1566,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/certkeys.c:1570,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/certkeys.c:1570,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1535
    functionDepth: 1
    functionLinenumber: 1535
    functionLinenumberEnd: 1572
    functionName: xmlSecMSCngKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - CertGetPublicKeyLength
    - return
    - BCryptGetProperty
    - xmlSecKeyDataCheckSize
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCngKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1576,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1576,1
    - Dst: xmlSecMSCngKeyDataGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1574
    functionDepth: 2
    functionLinenumber: 1574
    functionLinenumberEnd: 1579
    functionName: xmlSecMSCngKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCngKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1584,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1584,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1585,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1587,1
    - Dst: xmlSecMSCngKeyDataRsaGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1582
    functionDepth: 3
    functionLinenumber: 1582
    functionLinenumberEnd: 1589
    functionName: xmlSecMSCngKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataRsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1592,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1592,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1593,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1595,1
    - Dst: xmlSecMSCngKeyDataRsaGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1591
    functionDepth: 3
    functionLinenumber: 1591
    functionLinenumberEnd: 1597
    functionName: xmlSecMSCngKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataRsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1602,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/mscng/certkeys.c:1603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1599
    functionDepth: 3
    functionLinenumber: 1599
    functionLinenumberEnd: 1605
    functionName: xmlSecMSCngKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1610,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/mscng/certkeys.c:1611,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1607
    functionDepth: 3
    functionLinenumber: 1607
    functionLinenumberEnd: 1614
    functionName: xmlSecMSCngKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n          xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/certkeys.c:1619,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1628,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscng/certkeys.c:1628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1629,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1629,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1630,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1630,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1631,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1634,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1636,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1642,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1642,1
    - Dst: BCryptGenerateKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1647,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1649,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1649,1
    - Dst: BCryptFinalizeKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1654,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1656,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1656,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1660,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1662,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1662,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1673,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1676,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - data
    - sizeBits
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1616
    functionDepth: 2
    functionLinenumber: 1616
    functionLinenumberEnd: 1679
    functionName: xmlSecMSCngKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCngKeyDataGetCtx
    - UNREFERENCED_PARAMETER
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - BCryptGenerateKeyPair
    - xmlSecAssert2
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecMSCngKeyDataAdoptKey
    - xmlSecKeyDataCheckSize
    - BCryptDestroyKey
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - BCryptFinalizeKeyPair
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits,\n        xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1726
    functionDepth: 0
    functionLinenumber: 1726
    functionLinenumberEnd: 1729
    functionName: xmlSecMSCngKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataRsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1735,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1735,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1736,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1736,1
    - Dst: xmlSecMSCngKeyDataDuplicate
      Src: /src/xmlsec/src/mscng/certkeys.c:1738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1733
    functionDepth: 3
    functionLinenumber: 1733
    functionLinenumberEnd: 1739
    functionName: xmlSecMSCngKeyDataEcDuplicate
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataEcDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1745,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1745,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1747,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1741
    functionDepth: 1
    functionLinenumber: 1741
    functionLinenumberEnd: 1755
    functionName: xmlSecMSCngKeyDataEcGetType
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCngKeyDataEcGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1759,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1759,1
    - Dst: xmlSecMSCngKeyDataGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1757
    functionDepth: 2
    functionLinenumber: 1757
    functionLinenumberEnd: 1762
    functionName: xmlSecMSCngKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCngKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCngKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1767,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1767,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1768,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1770,1
    - Dst: xmlSecMSCngKeyDataEcGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1765
    functionDepth: 3
    functionLinenumber: 1765
    functionLinenumberEnd: 1772
    functionName: xmlSecMSCngKeyDataEcDebugDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecMSCngKeyDataEcGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataEcDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1775,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1775,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/certkeys.c:1776,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscng/certkeys.c:1778,1
    - Dst: xmlSecMSCngKeyDataEcGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1774
    functionDepth: 3
    functionLinenumber: 1774
    functionLinenumberEnd: 1780
    functionName: xmlSecMSCngKeyDataEcDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecMSCngKeyDataEcGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeyDataEcDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1800,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - magic
    argTypes:
    - ULONG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1796
    functionDepth: 1
    functionLinenumber: 1796
    functionLinenumberEnd: 1808
    functionName: xmlSecOpenSSLKeyDataEcGetOidFromMagic
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLKeyDataEcGetOidFromMagic(ULONG magic)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1814,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1815,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/certkeys.c:1818,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - oid
    - magic
    argTypes:
    - xmlChar*
    - ULONG*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1824
      start: 1810
    functionDepth: 1
    functionLinenumber: 1810
    functionLinenumberEnd: 1824
    functionName: xmlSecOpenSSLKeyDataEcGetTypeAndMagicFromOid
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: LPCWSTR
    signature: LPCWSTR xmlSecOpenSSLKeyDataEcGetTypeAndMagicFromOid(const xmlChar*
      oid, ULONG * magic)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1844,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1846,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1849,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1850,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1852,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:1865,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1867,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1867,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/certkeys.c:1873,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1875,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1875,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/certkeys.c:1879,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1879,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1881,1
    - Dst: xmlSecOpenSSLKeyDataEcGetTypeAndMagicFromOid
      Src: /src/xmlsec/src/mscng/certkeys.c:1883,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1885,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1885,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/certkeys.c:1886,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/mscng/certkeys.c:1889,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1889,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/certkeys.c:1892,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1895,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1901,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1901,1
    - Dst: BCryptImportKeyPair
      Src: /src/xmlsec/src/mscng/certkeys.c:1906,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/certkeys.c:1915,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1915,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/certkeys.c:1919,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1921,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1921,1
    - Dst: xmlSecMSCngKeyDataAdoptKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1925,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/certkeys.c:1927,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1927,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/certkeys.c:1938,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/certkeys.c:1941,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1944,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:1947,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 79
    argCount: 2
    argNames:
    - id
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1826
    functionDepth: 2
    functionLinenumber: 1826
    functionLinenumberEnd: 1950
    functionName: xmlSecMSCngKeyDataEcRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecOpenSSLKeyDataEcGetTypeAndMagicFromOid
    - xmlSecErrorsSafeString
    - xmlSecKeyDataDestroy
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecKeyDataCreate
    - BCryptImportKeyPair
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - BCryptCloseAlgorithmProvider
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - BCryptDestroyKey
    - memset
    - xmlSecMSCngKeyDataAdoptKey
    - xmlSecKeyDataGetName
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - memcpy
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCngKeyDataEcRead(xmlSecKeyDataId id, xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1966,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1967,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1968,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/certkeys.c:1968,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1969,1
    - Dst: xmlSecMSCngKeyDataGetCtx
      Src: /src/xmlsec/src/mscng/certkeys.c:1971,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1972,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1973,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:1976,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1984,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1984,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/certkeys.c:1989,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:1991,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:1991,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/certkeys.c:1997,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:1998,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/certkeys.c:2000,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:2008,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2008,1
    - Dst: xmlSecMSCngNtError2
      Src: /src/xmlsec/src/mscng/certkeys.c:2015,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2015,1
    - Dst: xmlSecMSCngNtError3
      Src: /src/xmlsec/src/mscng/certkeys.c:2023,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2023,1
    - Dst: xmlSecOpenSSLKeyDataEcGetOidFromMagic
      Src: /src/xmlsec/src/mscng/certkeys.c:2028,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:2030,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2030,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/mscng/certkeys.c:2034,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/mscng/certkeys.c:2036,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2036,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/certkeys.c:2042,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:2044,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2044,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/mscng/certkeys.c:2048,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/certkeys.c:2050,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/certkeys.c:2050,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/certkeys.c:2062,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 73
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2065
      start: 1952
    functionDepth: 3
    functionLinenumber: 1952
    functionLinenumberEnd: 2065
    functionName: xmlSecMSCngKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataEcGetOidFromMagic
    - xmlSecMSCngKeyDataGetCtx
    - xmlStrdup
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferAppend
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecStrdupError
    - xmlSecMSCngNtError2
    - xmlSecBufferFinalize
    - xmlSecMSCngNtError3
    - BCryptExportKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueEcPtr ecValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:2071,1
    - Dst: xmlSecKeyDataEcXmlRead
      Src: /src/xmlsec/src/mscng/certkeys.c:2072,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2068
    functionDepth: 3
    functionLinenumber: 2068
    functionLinenumberEnd: 2074
    functionName: xmlSecMSCngKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataEcXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataEcXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \   xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/certkeys.c:2079,1
    - Dst: xmlSecKeyDataEcXmlWrite
      Src: /src/xmlsec/src/mscng/certkeys.c:2080,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscng/certkeys.c:2081,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2083
      start: 2076
    functionDepth: 3
    functionLinenumber: 2076
    functionLinenumberEnd: 2083
    functionName: xmlSecMSCngKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataEcXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n    xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2133
      start: 2130
    functionDepth: 0
    functionLinenumber: 2130
    functionLinenumberEnd: 2133
    functionName: xmlSecMSCngKeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataEcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:96,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:97,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:97,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:100,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:103,1
    - Dst: xmlSecTransformKeyAgreementParamsInitialize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:105,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:107,1
    - Dst: xmlSecMSCngEcdhFinalize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 114
    functionName: xmlSecMSCngEcdhInitialize
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngEcdhGetCtx
    - xmlSecMSCngEcdhFinalize
    - xmlSecTransformKeyAgreementParamsInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:120,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:120,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:121,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:121,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:123,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:124,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:127,1
    - Dst: xmlSecTransformKeyAgreementParamsFinalize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:129,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 116
    functionDepth: 6
    functionLinenumber: 116
    functionLinenumberEnd: 131
    functionName: xmlSecMSCngEcdhFinalize
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecMSCngEcdhGetCtx
    - xmlSecAssert
    - xmlSecTransformKeyAgreementParamsFinalize
    - xmlSecKeyDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngEcdhFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:138,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:139,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:140,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 150
    functionName: xmlSecMSCngEcdhSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecMSCngEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhSetKeyReq(xmlSecTransformPtr transform, xmlSecKeyReqPtr
      keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:156,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:157,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:158,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 166
    functionName: xmlSecMSCngEcdhSetKey
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecMSCngEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:173,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:173,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:174,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:175,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:176,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:180,1
    - Dst: xmlSecTransformKeyAgreementParamsRead
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:182,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 168
    functionDepth: 13
    functionLinenumber: 168
    functionLinenumberEnd: 190
    functionName: xmlSecMSCngEcdhNodeRead
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKeyAgreementParamsRead
    - xmlSecMSCngEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:197,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:198,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:199,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:200,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:203,1
    - Dst: xmlSecTransformKeyAgreementParamsWrite
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:205,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 212
    functionName: xmlSecMSCngEcdhNodeWrite
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformKeyAgreementParamsWrite
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhNodeWrite(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:228,1
    - Dst: xmlSecMSCngKeyDataGetPubKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:231,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:233,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:236,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:244,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:247,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:249,1
    - Dst: BCryptExportKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:252,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:260,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:290,1
    - Dst: NCryptGetProperty
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:295,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:303,1
    - Dst: NCryptImportKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:307,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:317,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:326,1
    - Dst: NCryptFreeObject
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:329,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 76
    argCount: 3
    argNames:
    - ctx
    - keyValue
    - hPrivKey
    argTypes:
    - xmlSecMSCngEcdhCtxPtr
    - xmlSecKeyDataPtr
    - NCRYPT_KEY_HANDLE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 332
    functionName: xmlSecMSCngEcdhGetPublicKey
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - NCryptGetProperty
    - xmlSecInternalError
    - xmlFree
    - NCryptFreeObject
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetPubKey
    - NCryptImportKey
    - xmlMalloc
    - xmlSecNotImplementedError2
    - BCryptExportKey
    - xmlSecMallocError
    linkageType: ''
    returnType: NCRYPT_KEY_HANDLE
    signature: NCRYPT_KEY_HANDLE xmlSecMSCngEcdhGetPublicKey(xmlSecMSCngEcdhCtxPtr
      ctx, xmlSecKeyDataPtr keyValue, NCRYPT_KEY_HANDLE hPrivKey)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:348,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:351,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:356,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:358,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:361,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:363,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:368,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:370,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:373,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:375,1
    - Dst: xmlSecMSCngKeyDataGetPrivKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:381,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:383,1
    - Dst: xmlSecMSCngEcdhGetPublicKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:387,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:389,1
    - Dst: NCryptSecretAgreement
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:393,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:395,1
    - Dst: NCryptDeriveKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:400,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:409,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:413,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:415,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:420,1
    - Dst: NCryptDeriveKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:423,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:432,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:438,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:440,1
    - Dst: NCryptFreeObject
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:462,1
    - Dst: NCryptFreeObject
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:465,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 94
    argCount: 3
    argNames:
    - ctx
    - operation
    - secret
    argTypes:
    - xmlSecMSCngEcdhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 468
    functionName: xmlSecMSCngEcdhGenerateSecret
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - xmlSecMSCngKeyDataGetPrivKey
    - xmlSecKeyGetValue
    - NCryptDeriveKey
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - NCryptSecretAgreement
    - xmlSecMSCngEcdhGetPublicKey
    - NCryptFreeObject
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhGenerateSecret(xmlSecMSCngEcdhCtxPtr ctx, xmlSecTransformOperation
      operation, xmlSecBufferPtr secret)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:478,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:479,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:481,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:482,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:483,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:484,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:489,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:491,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:491,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:494,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:496,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:496,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:497,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - secret
    argTypes:
    - xmlSecMSCngEcdhCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 470
    functionDepth: 4
    functionLinenumber: 470
    functionLinenumberEnd: 503
    functionName: xmlSecMSCngEcdhCreateKdfKey
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyCreate
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinRead
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecMSCngEcdhCreateKdfKey(xmlSecMSCngEcdhCtxPtr ctx,
      xmlSecBufferPtr secret)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:514,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:516,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:517,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:518,1
    - Dst: xmlSecMSCngEcdhCreateKdfKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:523,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:525,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:529,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:531,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:535,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:537,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:541,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:543,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:548,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 6
    argNames:
    - ctx
    - operation
    - secret
    - out
    - expectedOutputSize
    - transformCtx
    argTypes:
    - xmlSecMSCngEcdhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 505
    functionDepth: 5
    functionLinenumber: 505
    functionLinenumberEnd: 550
    functionName: xmlSecMSCngEcdhGenerateExecuteKdf
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformSetKey
    - xmlSecMSCngEcdhCreateKdfKey
    - xmlSecTransformMemBufGetBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPushBin
    - xmlSecBufferSwap
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngEcdhGenerateExecuteKdf(xmlSecMSCngEcdhCtxPtr ctx, xmlSecTransformOperation
      operation,\n    xmlSecBufferPtr secret, xmlSecBufferPtr out, xmlSecSize expectedOutputSize,\n
      \   xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:558,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:559,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:560,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:560,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:561,1
    - Dst: xmlSecMSCngEcdhGetCtx
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:566,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:567,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:568,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:580,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:582,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:582,1
    - Dst: xmlSecMSCngEcdhGenerateSecret
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:587,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:589,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:589,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:590,1
    - Dst: xmlSecMSCngEcdhGenerateExecuteKdf
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:595,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:598,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:598,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:599,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:604,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:609,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:609,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/key_agrmnt.c:611,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 552
    functionDepth: 6
    functionLinenumber: 552
    functionLinenumberEnd: 616
    functionName: xmlSecMSCngEcdhExecute
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecMSCngEcdhGenerateExecuteKdf
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngEcdhGetCtx
    - xmlSecBufferInitialize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecMSCngEcdhGenerateSecret
    - xmlSecTransformGetName
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngEcdhExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 657
    functionDepth: 0
    functionLinenumber: 657
    functionLinenumberEnd: 660
    functionName: xmlSecMSCngTransformEcdhGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/key_agrmnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformEcdhGetKlass(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509vfy.c:65,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:65,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:66,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509vfy.c:67,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:70,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:72,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:72,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:78,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:80,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:80,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:86,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:88,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:88,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:94,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:96,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:96,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:101,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 102
    functionName: xmlSecMSCngX509StoreFinalize
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecKeyDataStoreGetName
    - xmlSecAssert
    - xmlSecKeyDataStoreCheckId
    - CertCloseStore
    - xmlSecMSCngLastError
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngX509StoreFinalize(xmlSecKeyDataStorePtr store)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:118,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:118,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:119,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:121,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:123,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:125,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:127,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - store
    - keyStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 133
    functionName: xmlSecMSCngX509StoreAdoptKeyStore
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngLastError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreAdoptKeyStore(xmlSecKeyDataStorePtr store,
      HCERTSTORE keyStore)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:149,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:150,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:154,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:156,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:158,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - store
    - trustedStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 164
    functionName: xmlSecMSCngX509StoreAdoptTrustedStore
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngLastError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreAdoptTrustedStore(xmlSecKeyDataStorePtr store,
      HCERTSTORE trustedStore)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:180,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:181,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:185,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:187,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:189,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - store
    - untrustedStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 195
    functionName: xmlSecMSCngX509StoreAdoptUntrustedStore
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngLastError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreAdoptUntrustedStore(xmlSecKeyDataStorePtr store,
      HCERTSTORE untrustedStore)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:202,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:202,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:204,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:206,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:209,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:216,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:216,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:221,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:228,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:228,1
    - Dst: xmlSecMSCngX509StoreFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:229,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:234,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:240,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:240,1
    - Dst: xmlSecMSCngX509StoreFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:241,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:246,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:253,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:253,1
    - Dst: xmlSecMSCngX509StoreFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:254,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:259,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:266,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:266,1
    - Dst: xmlSecMSCngX509StoreFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:267,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:272,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:278,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:278,1
    - Dst: xmlSecMSCngX509StoreFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:279,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 41
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 284
    functionName: xmlSecMSCngX509StoreInitialize
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - CertOpenStore
    - xmlSecAssert2
    - xmlSecMSCngX509StoreFinalize
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngLastError
    - CertAddStoreToCollection
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreInitialize(xmlSecKeyDataStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionName: xmlSecMSCngX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecMSCngX509StoreGetKlass(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:330,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:331,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:335,1
    - Dst: xmlSecNotImplementedError2
      Src: /src/xmlsec/src/mscng/x509vfy.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:346,1
    - Dst: CertAddCertificateContextToStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:347,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:353,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:353,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - store
    - pCert
    - type
    argTypes:
    - xmlSecKeyDataStorePtr
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 359
    functionName: xmlSecMSCngX509StoreAdoptCert
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - CertAddCertificateContextToStore
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - CertFreeCertificateContext
    - xmlSecKeyDataStoreCheckId
    - xmlSecNotImplementedError2
    - xmlSecMSCngLastError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreAdoptCert(xmlSecKeyDataStorePtr store, PCCERT_CONTEXT
      pCert, xmlSecKeyDataType type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:377,1
    - Dst: CertEnumCRLsInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:379,1
    - Dst: CertFindCertificateInCRL
      Src: /src/xmlsec/src/mscng/x509vfy.c:380,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:392,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:394,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - store
    - cert
    argTypes:
    - HCERTSTORE
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 399
    functionName: xmlSecMSCngCheckRevocation
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertFindCertificateInCRL
    - CertFreeCRLContext
    - CertEnumCRLsInStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngCheckRevocation(HCERTSTORE store, PCCERT_CONTEXT cert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:409,1
    - Dst: CertVerifySubjectCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:412,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:414,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:420,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:427,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - cert
    - issuerCert
    argTypes:
    - PCCERT_CONTEXT
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 435
    functionName: xmlSecMSCngX509StoreVerifySubject
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngLastError
    - xmlSecOtherError
    - CertVerifySubjectCertificateContext
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreVerifySubject(PCCERT_CONTEXT cert, PCCERT_CONTEXT
      issuerCert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:455,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:457,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:460,1
    - Dst: xmlSecMSCngX509StoreVerifySubject
      Src: /src/xmlsec/src/mscng/x509vfy.c:470,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:472,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:475,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:480,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - store
    - name
    - cert
    argTypes:
    - HCERTSTORE
    - CERT_NAME_BLOB*
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 448
    functionDepth: 2
    functionLinenumber: 448
    functionLinenumberEnd: 486
    functionName: xmlSecMSCngX509StoreContainsCert
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecMSCngX509StoreVerifySubject
    - xmlSecAssert2
    - CertFreeCertificateContext
    - CertFindCertificateInStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngX509StoreContainsCert(HCERTSTORE store, CERT_NAME_BLOB*
      name,\n        PCCERT_CONTEXT cert)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:490,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:491,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:492,1
    - Dst: CompareFileTime
      Src: /src/xmlsec/src/mscng/x509vfy.c:494,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:495,1
    - Dst: CompareFileTime
      Src: /src/xmlsec/src/mscng/x509vfy.c:501,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - cert
    - time
    argTypes:
    - PCCERT_CONTEXT
    - LPFILETIME
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 509
    functionName: xmlSecMSCngVerifyCertTime
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CompareFileTime
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngVerifyCertTime(PCCERT_CONTEXT cert, LPFILETIME time)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:532,1
    - Dst: xmlSecMSCngVerifyCertTime
      Src: /src/xmlsec/src/mscng/x509vfy.c:536,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:538,1
    - Dst: xmlSecMSCngCheckRevocation
      Src: /src/xmlsec/src/mscng/x509vfy.c:544,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:546,1
    - Dst: xmlSecMSCngX509StoreContainsCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:551,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:554,1
    - Dst: xmlSecMSCngX509StoreContainsCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:562,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:565,1
    - Dst: CertCompareCertificateName
      Src: /src/xmlsec/src/mscng/x509vfy.c:573,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:581,1
    - Dst: xmlSecMSCngX509StoreVerifySubject
      Src: /src/xmlsec/src/mscng/x509vfy.c:588,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:590,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:591,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:595,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:598,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificateOwn
      Src: /src/xmlsec/src/mscng/x509vfy.c:602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:605,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:606,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:610,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:613,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:617,1
    - Dst: xmlSecMSCngX509StoreVerifySubject
      Src: /src/xmlsec/src/mscng/x509vfy.c:624,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:626,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:627,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/x509vfy.c:631,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:634,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificateOwn
      Src: /src/xmlsec/src/mscng/x509vfy.c:638,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:641,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:642,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:646,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:649,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 86
    argCount: 5
    argNames:
    - cert
    - time
    - trustedStore
    - untrustedStore
    - certStore
    argTypes:
    - PCCERT_CONTEXT
    - FILETIME*
    - HCERTSTORE
    - HCERTSTORE
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 523
    functionDepth: 3
    functionLinenumber: 523
    functionLinenumberEnd: 654
    functionName: xmlSecMSCngX509StoreVerifyCertificateOwn
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecMSCngX509StoreVerifySubject
    - xmlSecMSCngCheckRevocation
    - xmlSecAssert2
    - CertFreeCertificateContext
    - xmlSecMSCngVerifyCertTime
    - CertFindCertificateInStore
    - xmlSecMSCngX509StoreVerifyCertificateOwn
    - CertCompareCertificateName
    - xmlSecMSCngX509StoreContainsCert
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngX509StoreVerifyCertificateOwn(PCCERT_CONTEXT cert,
      FILETIME* time,\n    HCERTSTORE trustedStore, HCERTSTORE untrustedStore, HCERTSTORE
      certStore\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:677,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:681,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:683,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:687,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:689,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscng/x509vfy.c:693,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:695,1
    - Dst: CertGetCertificateChain
      Src: /src/xmlsec/src/mscng/x509vfy.c:701,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:704,1
    - Dst: CertFreeCertificateChain
      Src: /src/xmlsec/src/mscng/x509vfy.c:709,1
    - Dst: CertGetCertificateChain
      Src: /src/xmlsec/src/mscng/x509vfy.c:711,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:715,1
    - Dst: CertFreeCertificateChain
      Src: /src/xmlsec/src/mscng/x509vfy.c:730,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:733,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 4
    argNames:
    - cert
    - time
    - untrustedStore
    - docStore
    argTypes:
    - PCCERT_CONTEXT
    - FILETIME*
    - HCERTSTORE
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 667
    functionDepth: 1
    functionLinenumber: 667
    functionLinenumberEnd: 736
    functionName: xmlSecMSCngX509StoreVerifyCertificateSystem
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - CertOpenStore
    - CertFreeCertificateChain
    - CertGetCertificateChain
    - CertCloseStore
    - xmlSecMSCngLastError
    - CertAddStoreToCollection
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngX509StoreVerifyCertificateSystem(PCCERT_CONTEXT cert,\n
      \       FILETIME* time, HCERTSTORE untrustedStore, HCERTSTORE docStore)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:749,1
    - Dst: Int32x32To64
      Src: /src/xmlsec/src/mscng/x509vfy.c:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - in
    - out
    argTypes:
    - time_t
    - LPFILETIME
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 744
    functionDepth: 1
    functionLinenumber: 744
    functionLinenumberEnd: 758
    functionName: xmlSecMSCngUnixTimeToFileTime
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - Int32x32To64
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngUnixTimeToFileTime(time_t in, LPFILETIME out)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:779,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:780,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:781,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:782,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:783,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:784,1
    - Dst: xmlSecMSCngUnixTimeToFileTime
      Src: /src/xmlsec/src/mscng/x509vfy.c:794,1
    - Dst: GetSystemTimeAsFileTime
      Src: /src/xmlsec/src/mscng/x509vfy.c:799,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificateOwn
      Src: /src/xmlsec/src/mscng/x509vfy.c:803,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:806,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificateSystem
      Src: /src/xmlsec/src/mscng/x509vfy.c:814,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:816,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - cert
    - certStore
    - keyInfoCtx
    argTypes:
    - xmlSecMSCngX509StoreCtxPtr
    - PCCERT_CONTEXT
    - HCERTSTORE
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 771
    functionDepth: 4
    functionLinenumber: 771
    functionLinenumberEnd: 825
    functionName: xmlSecMSCngX509StoreVerifyCertificate
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngX509StoreVerifyCertificateSystem
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngX509StoreVerifyCertificateOwn
    - xmlSecMSCngUnixTimeToFileTime
    - GetSystemTimeAsFileTime
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngX509StoreVerifyCertificate(xmlSecMSCngX509StoreCtxPtr
      ctx, PCCERT_CONTEXT cert,\n    HCERTSTORE certStore, xmlSecKeyInfoCtx* keyInfoCtx\n)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:851,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:852,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:853,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:855,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:856,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/mscng/x509vfy.c:859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:861,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:861,1
    - Dst: xmlSecMSCngKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:864,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:866,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:866,1
    - Dst: xmlSecMSCngKeyDataX509GetCertStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:869,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:871,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:871,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificate
      Src: /src/xmlsec/src/mscng/x509vfy.c:876,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:878,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:878,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 3
    argNames:
    - store
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 843
    functionDepth: 5
    functionLinenumber: 843
    functionLinenumberEnd: 886
    functionName: xmlSecMSCngX509StoreVerifyKey
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngKeyDataX509GetCertStore
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngKeyDataX509GetKeyCert
    - xmlSecKeyGetData
    - xmlSecMSCngX509StoreVerifyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509StoreVerifyKey(xmlSecKeyDataStorePtr store, xmlSecKeyPtr
      key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:904,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:904,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:905,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:906,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:908,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:909,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:911,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:914,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:918,1
    - Dst: CertCompareCertificateName
      Src: /src/xmlsec/src/mscng/x509vfy.c:926,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/x509vfy.c:933,1
    - Dst: xmlSecMSCngX509StoreVerifyCertificate
      Src: /src/xmlsec/src/mscng/x509vfy.c:937,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:939,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscng/x509vfy.c:939,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 3
    argNames:
    - store
    - certs
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 898
    functionDepth: 5
    functionLinenumber: 898
    functionLinenumberEnd: 951
    functionName: xmlSecMSCngX509StoreVerify
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - CertFreeCertificateContext
    - CertCompareCertificateName
    - xmlSecKeyDataStoreCheckId
    - CertEnumCertificatesInStore
    - CertFindCertificateInStore
    - xmlSecMSCngX509StoreVerifyCertificate
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509StoreVerify(xmlSecKeyDataStorePtr store,
      HCERTSTORE certs, xmlSecKeyInfoCtx* keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:959,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/mscng/x509vfy.c:962,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/mscng/x509vfy.c:964,1
    - Dst: xmlStrstr
      Src: /src/xmlsec/src/mscng/x509vfy.c:968,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/x509vfy.c:969,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscng/x509vfy.c:972,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:974,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:975,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:979,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 953
    functionDepth: 4
    functionLinenumber: 953
    functionLinenumberEnd: 982
    functionName: xmlSecMSCngX509GetCertName
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlStrstr
    - xmlSecStrdupError
    - memcpy
    linkageType: ''
    returnType: LPTSTR
    signature: LPTSTR xmlSecMSCngX509GetCertName(const xmlChar* name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:989,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:990,1
    - Dst: CertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:992,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/x509vfy.c:998,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1000,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:1003,1
    - Dst: CertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1005,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1007,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1008,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 4
    argNames:
    - dwCertEncodingType
    - pszX500
    - dwStrType
    - len
    argTypes:
    - DWORD
    - LPTSTR
    - DWORD
    - DWORD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 984
    functionDepth: 1
    functionLinenumber: 984
    functionLinenumberEnd: 1013
    functionName: xmlSecMSCngCertStrToName
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - CertStrToName
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMSCngLastError
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: BYTE
    signature: 'BYTE *

      xmlSecMSCngCertStrToName(DWORD dwCertEncodingType, LPTSTR pszX500, DWORD dwStrType,
      DWORD* len)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1023,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1024,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1025,1
    - Dst: xmlSecBnGetData
      Src: /src/xmlsec/src/mscng/x509vfy.c:1027,1
    - Dst: xmlSecBnGetSize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1028,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/x509vfy.c:1029,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/x509vfy.c:1029,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1033,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1041,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1047,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1054,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1062,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1068,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1075,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1083,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1089,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1096,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1104,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1110,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1116,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 4
    argNames:
    - store
    - wcIssuerName
    - issuerSerialBn
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - LPTSTR
    - xmlSecBnPtr
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1015
    functionDepth: 3
    functionLinenumber: 1015
    functionLinenumberEnd: 1119
    functionName: xmlSecMSCngX509FindCertByIssuerNameAndSerial
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlFree
    - xmlSecMSCngCertStrToName
    - xmlSecAssert2
    - xmlSecBnGetSize
    - return
    - CertFindCertificateInStore
    - xmlSecBnGetData
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509FindCertByIssuerNameAndSerial(HCERTSTORE
      store, LPTSTR wcIssuerName, xmlSecBnPtr issuerSerialBn, DWORD dwCertEncodingType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1125,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1126,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1127,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - store
    - ski
    - skiLen
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - xmlSecByte*
    - DWORD
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1121
    functionDepth: 1
    functionLinenumber: 1121
    functionLinenumberEnd: 1138
    functionName: xmlSecMSCngX509FindCertBySki
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertFindCertificateInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509FindCertBySki(HCERTSTORE store, const
      xmlSecByte* ski, DWORD skiLen, DWORD dwCertEncodingType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1145,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1147,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - store
    - digest
    - digestLen
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - xmlSecByte*
    - DWORD
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1141
    functionDepth: 1
    functionLinenumber: 1141
    functionLinenumberEnd: 1158
    functionName: xmlSecMSCngX509FindCertByDigest
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertFindCertificateInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509FindCertByDigest(HCERTSTORE store, const
      xmlSecByte* digest, DWORD digestLen, DWORD dwCertEncodingType)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1166,1
    - Dst: xmlSecMSCngX509FindCertBySubject
      Src: /src/xmlsec/src/mscng/x509vfy.c:1169,1
    - Dst: xmlSecMSCngX509FindCertByIssuerNameAndSerial
      Src: /src/xmlsec/src/mscng/x509vfy.c:1173,1
    - Dst: xmlSecMSCngX509FindCertBySki
      Src: /src/xmlsec/src/mscng/x509vfy.c:1177,1
    - Dst: xmlSecMSCngX509FindCertByDigest
      Src: /src/xmlsec/src/mscng/x509vfy.c:1180,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 16
    argCount: 2
    argNames:
    - store
    - findCertCtx
    argTypes:
    - HCERTSTORE
    - xmlSecMSCngX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1160
    functionDepth: 4
    functionLinenumber: 1160
    functionLinenumberEnd: 1184
    functionName: xmlSecMSCngX509FindCert
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngX509FindCertByIssuerNameAndSerial
    - xmlSecMSCngX509FindCertByDigest
    - xmlSecMSCngX509FindCertBySubject
    - xmlSecMSCngX509FindCertBySki
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509FindCert(HCERTSTORE store, xmlSecMSCngX509FindCertCtxPtr
      findCertCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1193,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/x509vfy.c:1197,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/x509vfy.c:1205,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1207,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscng/x509vfy.c:1211,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1216,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - cert
    argTypes:
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1187
    functionDepth: 1
    functionLinenumber: 1187
    functionLinenumberEnd: 1222
    functionName: xmlSecMSCngX509GetFriendlyNameUnicode
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertGetCertificateContextProperty
    - xmlMalloc
    - xmlSecMSCngLastError
    - xmlSecMallocError
    linkageType: ''
    returnType: LPCWSTR
    signature: LPCWSTR xmlSecMSCngX509GetFriendlyNameUnicode(PCCERT_CONTEXT cert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1230,1
    - Dst: xmlSecMSCngX509GetFriendlyNameUnicode
      Src: /src/xmlsec/src/mscng/x509vfy.c:1232,1
    - Dst: xmlSecWin32ConvertUnicodeToUtf8
      Src: /src/xmlsec/src/mscng/x509vfy.c:1239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1241,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1242,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - cert
    argTypes:
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1225
    functionDepth: 2
    functionLinenumber: 1225
    functionLinenumberEnd: 1249
    functionName: xmlSecMSCngX509GetFriendlyNameUtf8
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecMSCngX509GetFriendlyNameUnicode
    - xmlSecWin32ConvertUnicodeToUtf8
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCngX509GetFriendlyNameUtf8(PCCERT_CONTEXT cert)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/mscng/x509vfy.c:1274,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1276,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/x509vfy.c:1277,1
    - Dst: xmlSecMSCngX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscng/x509vfy.c:1281,1
    - Dst: xmlSecMSCngX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscng/x509vfy.c:1284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1265
    functionDepth: 4
    functionLinenumber: 1265
    functionLinenumberEnd: 1288
    functionName: xmlSecMSCngX509StoreFindCert
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecBase64DecodeInPlace
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecMSCngX509StoreFindCert_ex
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCngX509StoreFindCert(xmlSecKeyDataStorePtr
      store, xmlChar *subjectName,\n                            xmlChar* issuerName,
      xmlChar* issuerSerial, xmlChar* ski,\n                            xmlSecKeyInfoCtx*
      keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1315,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:1315,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/x509vfy.c:1316,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:1318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1319,1
    - Dst: xmlSecMSCngX509FindCertCtxInitialize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1321,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1326,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1327,1
    - Dst: xmlSecMSCngX509FindCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:1333,1
    - Dst: xmlSecMSCngX509FindCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:1338,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1342,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 7
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    - keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1305
    functionDepth: 5
    functionLinenumber: 1305
    functionLinenumberEnd: 1344
    functionName: xmlSecMSCngX509StoreFindCert_ex
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngX509FindCert
    - xmlSecMSCngX509FindCertCtxFinalize
    - xmlSecMSCngX509FindCertCtxInitialize
    - xmlSecKeyDataStoreCheckId
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCngX509StoreFindCert_ex(xmlSecKeyDataStorePtr
      store, xmlChar* subjectName,\n                                xmlChar* issuerName,
      xmlChar* issuerSerial,\n                                xmlSecByte* ski, xmlSecSize
      skiSize,\n                                xmlSecKeyInfoCtx* keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1353,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscng/x509vfy.c:1353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1354,1
    - Dst: xmlSecMSCngX509StoreGetCtx
      Src: /src/xmlsec/src/mscng/x509vfy.c:1356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1357,1
    - Dst: xmlSecMSCngX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/mscng/x509vfy.c:1359,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1361,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1362,1
    - Dst: xmlSecMSCngX509FindCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:1368,1
    - Dst: xmlSecMSCngX509FindCert
      Src: /src/xmlsec/src/mscng/x509vfy.c:1373,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1377,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - store
    - x509Value
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1346
    functionDepth: 5
    functionLinenumber: 1346
    functionLinenumberEnd: 1380
    functionName: xmlSecMSCngX509StoreFindCertByValue
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCngX509StoreGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCngX509FindCert
    - xmlSecMSCngX509FindCertCtxFinalize
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCngX509FindCertCtxInitializeFromValue
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngX509StoreFindCertByValue(xmlSecKeyDataStorePtr
      store, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1401,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1405,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1413,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1419,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1425,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1433,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1439,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1445,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1453,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1459,1
    - Dst: xmlSecMSCngCertStrToName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1465,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/x509vfy.c:1473,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1479,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - store
    - wcSubject
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - LPTSTR
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1392
    functionDepth: 2
    functionLinenumber: 1392
    functionLinenumberEnd: 1484
    functionName: xmlSecMSCngX509FindCertBySubject
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlFree
    - xmlSecMSCngCertStrToName
    - CertFindCertificateInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCngX509FindCertBySubject(HCERTSTORE store,
      LPTSTR wcSubject,\n        DWORD dwCertEncodingType)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1499,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:1501,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/mscng/x509vfy.c:1506,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/x509vfy.c:1506,1
    - Dst: xmlSecMSCngX509GetCertName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1510,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1512,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1513,1
    - Dst: xmlSecMSCngX509GetCertName
      Src: /src/xmlsec/src/mscng/x509vfy.c:1519,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1521,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1522,1
    - Dst: xmlSecBnCreate
      Src: /src/xmlsec/src/mscng/x509vfy.c:1526,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1528,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1529,1
    - Dst: xmlSecBnFromDecString
      Src: /src/xmlsec/src/mscng/x509vfy.c:1532,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1534,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1535,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/mscng/x509vfy.c:1539,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1541,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1542,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 6
    argNames:
    - ctx
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    argTypes:
    - xmlSecMSCngX509FindCertCtxPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1549
      start: 1492
    functionDepth: 5
    functionLinenumber: 1492
    functionLinenumberEnd: 1549
    functionName: xmlSecMSCngX509FindCertCtxInitialize
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBnFromDecString
    - xmlSecMSCngX509FindCertCtxFinalize
    - xmlSecBnCreate
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecMSCngX509GetCertName
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngX509FindCertCtxInitialize(xmlSecMSCngX509FindCertCtxPtr
      ctx,\n    const xmlChar* subjectName,\n    const xmlChar* issuerName, const
      xmlChar* issuerSerial,\n    const xmlSecByte* ski, xmlSecSize skiSize\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1555,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1556,1
    - Dst: xmlSecMSCngX509FindCertCtxInitialize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1558,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/x509vfy.c:1561,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1561,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/x509vfy.c:1564,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1565,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/mscng/x509vfy.c:1569,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/x509vfy.c:1573,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/x509vfy.c:1574,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/x509vfy.c:1575,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1576,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/x509vfy.c:1579,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/x509vfy.c:1580,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/mscng/x509vfy.c:1581,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/x509vfy.c:1581,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - x509Value
    argTypes:
    - xmlSecMSCngX509FindCertCtxPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1551
    functionDepth: 6
    functionLinenumber: 1551
    functionLinenumberEnd: 1586
    functionName: xmlSecMSCngX509FindCertCtxInitializeFromValue
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferIsEmpty
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecMSCngX509FindCertCtxFinalize
    - xmlSecOtherError2
    - xmlSecBufferGetData
    - xmlSecMSCngX509FindCertCtxInitialize
    - return
    - xmlStrcmp
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngX509FindCertCtxInitializeFromValue(xmlSecMSCngX509FindCertCtxPtr
      ctx, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/x509vfy.c:1589,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1592,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/x509vfy.c:1595,1
    - Dst: xmlSecBnDestroy
      Src: /src/xmlsec/src/mscng/x509vfy.c:1598,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/x509vfy.c:1600,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCngX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1601
      start: 1588
    functionDepth: 3
    functionLinenumber: 1588
    functionLinenumberEnd: 1601
    functionName: xmlSecMSCngX509FindCertCtxFinalize
    functionSourceFile: /src/xmlsec/src/mscng/x509vfy.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert
    - xmlSecBnDestroy
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngX509FindCertCtxFinalize(xmlSecMSCngX509FindCertCtxPtr
      ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:55,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:61,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:67,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:73,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:79,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 88
    functionName: xmlSecMSCngHmacCheckId
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:93,1
    - Dst: xmlSecMSCngHmacCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:93,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:94,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:94,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:97,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/hmac.c:100,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:103,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:109,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:115,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:121,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:127,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/hmac.c:134,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 139
    functionName: xmlSecMSCngHmacInitialize
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecMSCngHmacCheckId
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromError
    - xmlSecAssert2
    - xmlSecMSCngHmacGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/hmac.c:145,1
    - Dst: xmlSecMSCngHmacCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:145,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/hmac.c:146,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:146,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:148,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/hmac.c:149,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/hmac.c:152,1
    - Dst: BCryptDestroyHash
      Src: /src/xmlsec/src/mscng/hmac.c:156,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/hmac.c:160,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/hmac.c:163,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 164
    functionName: xmlSecMSCngHmacFinalize
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - BCryptCloseAlgorithmProvider
    - xmlSecMSCngHmacCheckId
    - xmlSecTransformCheckSize
    - xmlFree
    - xmlSecAssert
    - BCryptDestroyHash
    - xmlSecMSCngHmacGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:172,1
    - Dst: xmlSecMSCngHmacCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:173,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:173,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:174,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/hmac.c:175,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:178,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/mscng/hmac.c:180,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/hmac.c:182,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 188
    functionName: xmlSecMSCngHmacNodeRead
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecMSCngHmacCheckId
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformHmacReadOutputBitsSize
    - xmlSecTransformGetName
    - xmlSecMSCngHmacGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                        xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:192,1
    - Dst: xmlSecMSCngHmacCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:194,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:195,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 206
    functionName: xmlSecMSCngHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngHmacCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:217,1
    - Dst: xmlSecMSCngHmacCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:219,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:220,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:224,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/hmac.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:227,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/hmac.c:227,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/hmac.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:230,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/hmac.c:232,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/mscng/hmac.c:233,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:237,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/hmac.c:237,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/hmac.c:242,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/hmac.c:247,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:247,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/hmac.c:251,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/hmac.c:258,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:258,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/hmac.c:262,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/hmac.c:264,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/hmac.c:268,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/hmac.c:269,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/hmac.c:269,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:269,1
    - Dst: BCryptCreateHash
      Src: /src/xmlsec/src/mscng/hmac.c:270,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/hmac.c:274,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/hmac.c:278,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:278,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 289
    functionName: xmlSecMSCngHmacSetKey
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngHmacCheckId
    - return
    - BCryptGetProperty
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlMalloc
    - xmlSecTransformGetName
    - xmlSecMSCngHmacGetCtx
    - BCryptCreateHash
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:297,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscng/hmac.c:297,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:298,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:298,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:302,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/hmac.c:303,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:307,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/mscng/hmac.c:310,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/hmac.c:312,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 322
    functionName: xmlSecMSCngHmacVerify
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformHmacVerify
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecMSCngHmacGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngHmacVerify(xmlSecTransformPtr transform, const xmlSecByte*
      data,\n        xmlSecSize dataSize, xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:331,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscng/hmac.c:331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:332,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:333,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/hmac.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:334,1
    - Dst: xmlSecMSCngHmacGetCtx
      Src: /src/xmlsec/src/mscng/hmac.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:341,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/hmac.c:351,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/hmac.c:355,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/hmac.c:355,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:355,1
    - Dst: BCryptHashData
      Src: /src/xmlsec/src/mscng/hmac.c:356,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/hmac.c:357,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/hmac.c:361,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:361,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/hmac.c:365,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/hmac.c:367,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:367,1
    - Dst: BCryptFinishHash
      Src: /src/xmlsec/src/mscng/hmac.c:374,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/hmac.c:379,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:379,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/mscng/hmac.c:385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/hmac.c:387,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/hmac.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/hmac.c:395,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/hmac.c:395,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/hmac.c:397,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 324
    functionDepth: 2
    functionLinenumber: 324
    functionLinenumberEnd: 402
    functionName: xmlSecMSCngHmacExecute
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - BCryptFinishHash
    - BCryptHashData
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecTransformHmacWriteOutput
    - xmlSecInvalidTransfromStatusError
    - xmlSecTransformGetName
    - xmlSecMSCngHmacGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngHmacExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 447
    functionName: xmlSecMSCngTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformHmacMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 494
    functionName: xmlSecMSCngTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 538
    functionDepth: 0
    functionLinenumber: 538
    functionLinenumberEnd: 541
    functionName: xmlSecMSCngTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionName: xmlSecMSCngTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 635
    functionName: xmlSecMSCngTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: xmlSecMSCngSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCngSymKeyDataCheckId(data)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 76
    functionName: xmlSecMSCngSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:80,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:80,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/mscng/symkeys.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 3
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: xmlSecMSCngSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:87,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:87,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:88,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:88,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:89,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/mscng/symkeys.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 3
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: xmlSecMSCngSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecMSCngSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/symkeys.c:96,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:96,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/mscng/symkeys.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 3
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: xmlSecMSCngSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:106,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:107,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/symkeys.c:108,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/symkeys.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:111,1
    - Dst: xmlSecMSCngGenerateRandom
      Src: /src/xmlsec/src/mscng/symkeys.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - sizeBits
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: xmlSecMSCngSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecMSCngGenerateRandom
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits,\n        xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:120,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:120,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/symkeys.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:123,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/symkeys.c:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 126
    functionName: xmlSecMSCngSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferGetSize
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCngSymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:130,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:130,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/mscng/symkeys.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 133
    functionName: xmlSecMSCngSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCngSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:138,1
    - Dst: xmlSecMSCngSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscng/symkeys.c:138,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/mscng/symkeys.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 135
    functionDepth: 11
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionName: xmlSecMSCngSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecMSCngSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:146,1
    - Dst: xmlSecMSCngSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscng/symkeys.c:146,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/mscng/symkeys.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 143
    functionDepth: 9
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionName: xmlSecMSCngSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecMSCngSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:155,1
    - Dst: xmlSecMSCngSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscng/symkeys.c:155,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/mscng/symkeys.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - unsigned char*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 151
    functionDepth: 3
    functionLinenumber: 151
    functionLinenumberEnd: 158
    functionName: xmlSecMSCngSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinRead
    - xmlSecMSCngSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        const unsigned char* buf, xmlSecSize bufSize,\n        xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/symkeys.c:164,1
    - Dst: xmlSecMSCngSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscng/symkeys.c:164,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/mscng/symkeys.c:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - unsigned char**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 160
    functionDepth: 3
    functionLinenumber: 160
    functionLinenumberEnd: 167
    functionName: xmlSecMSCngSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinWrite
    - xmlSecMSCngSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n        unsigned char** buf, xmlSecSize* bufSize,\n        xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/symkeys.c:171,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:171,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/mscng/symkeys.c:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 169
    functionDepth: 3
    functionLinenumber: 169
    functionLinenumberEnd: 174
    functionName: xmlSecMSCngSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/symkeys.c:178,1
    - Dst: xmlSecMSCngSymKeyDataCheckId
      Src: /src/xmlsec/src/mscng/symkeys.c:178,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/mscng/symkeys.c:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 3
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: xmlSecMSCngSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngSymKeyDataCheckId
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionName: xmlSecMSCngKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 297
    functionName: xmlSecMSCngKeyDataConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataConcatKdfGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 356
    functionName: xmlSecMSCngKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionName: xmlSecMSCngKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionName: xmlSecMSCngKeyDataPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCngKeyDataPbkdf2GetKlass(void)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:93,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:103,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:109,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:115,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:121,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:127,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:133,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:139,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:145,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:151,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:161,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:167,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:173,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:179,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 188
    functionName: xmlSecMSCngSignatureCheckId
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:193,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:194,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:194,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:197,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/signatures.c:199,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:204,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:216,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:224,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:232,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:240,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:248,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:256,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:265,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:274,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:283,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:296,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:303,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:310,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:317,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/signatures.c:327,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 80
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 332
    functionName: xmlSecMSCngSignatureInitialize
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecMSCngSignatureGetCtx
    - xmlSecAssert2
    - xmlSecMSCngSignatureCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/signatures.c:337,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:337,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/signatures.c:338,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:338,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:340,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/signatures.c:341,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/signatures.c:344,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/signatures.c:356,1
    - Dst: BCryptDestroyHash
      Src: /src/xmlsec/src/mscng/signatures.c:360,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/signatures.c:364,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/signatures.c:368,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/signatures.c:371,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 334
    functionDepth: 2
    functionLinenumber: 334
    functionLinenumberEnd: 372
    functionName: xmlSecMSCngSignatureFinalize
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - BCryptCloseAlgorithmProvider
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecMSCngSignatureGetCtx
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - BCryptDestroyHash
    - xmlSecMSCngSignatureCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:378,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:379,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:380,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:380,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:381,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:387,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:387,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/signatures.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:390,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/mscng/signatures.c:392,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:394,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 374
    functionDepth: 3
    functionLinenumber: 374
    functionLinenumberEnd: 400
    functionName: xmlSecMSCngSignatureSetKey
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecMSCngSignatureGetCtx
    - xmlSecAssert2
    - xmlSecMSCngSignatureCheckId
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:405,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:407,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:408,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:410,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 402
    functionDepth: 2
    functionLinenumber: 402
    functionLinenumberEnd: 423
    functionName: xmlSecMSCngSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngSignatureCheckId
    - xmlSecTransformCheckSize
    - xmlSecMSCngSignatureGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:447,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:448,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:451,1
    - Dst: xmlSecMSCngKeyDataGetSize
      Src: /src/xmlsec/src/mscng/signatures.c:456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:458,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/signatures.c:478,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/signatures.c:480,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/signatures.c:483,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/signatures.c:487,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/signatures.c:488,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/signatures.c:498,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/signatures.c:500,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/signatures.c:503,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/signatures.c:508,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscng/signatures.c:509,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscng/signatures.c:515,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 5
    argNames:
    - ctx
    - data
    - dataSize
    - out
    - outSize
    argTypes:
    - xmlSecMSCngSignatureCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte**
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 437
    functionDepth: 2
    functionLinenumber: 437
    functionLinenumberEnd: 522
    functionName: xmlSecMSCngSignatureFixBrokenJava
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMSCngKeyDataGetSize
    - memcpy
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSignatureFixBrokenJava(xmlSecMSCngSignatureCtxPtr ctx,\n
      \   const xmlSecByte* data, xmlSecSize dataSize,\n    const xmlSecByte** out,
      xmlSecSize* outSize\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:541,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:541,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:542,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:543,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:547,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:550,1
    - Dst: xmlSecMSCngKeyDataGetPubKey
      Src: /src/xmlsec/src/mscng/signatures.c:552,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:554,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:554,1
    - Dst: xmlSecMSCngSignatureFixBrokenJava
      Src: /src/xmlsec/src/mscng/signatures.c:570,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:572,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:572,1
    - Dst: BCryptVerifySignature
      Src: /src/xmlsec/src/mscng/signatures.c:582,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/signatures.c:592,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:593,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:598,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:599,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/signatures.c:610,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 58
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 524
    functionDepth: 3
    functionLinenumber: 524
    functionLinenumberEnd: 613
    functionName: xmlSecMSCngSignatureVerify
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecMSCngSignatureGetCtx
    - xmlSecAssert2
    - xmlSecMSCngKeyDataGetPubKey
    - BCryptVerifySignature
    - xmlSecMSCngSignatureCheckId
    - xmlSecTransformGetName
    - xmlSecMSCngSignatureFixBrokenJava
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngSignatureVerify(xmlSecTransformPtr transform,\n    const
      xmlSecByte* data, xmlSecSize dataSize,\n    xmlSecTransformCtxPtr transformCtx\n)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:628,1
    - Dst: xmlSecMSCngSignatureCheckId
      Src: /src/xmlsec/src/mscng/signatures.c:628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:629,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:630,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/signatures.c:630,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:631,1
    - Dst: xmlSecMSCngSignatureGetCtx
      Src: /src/xmlsec/src/mscng/signatures.c:633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:634,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:635,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/signatures.c:637,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/signatures.c:638,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:641,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/signatures.c:644,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:650,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:651,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/signatures.c:656,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:664,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:665,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/signatures.c:670,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/signatures.c:672,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/signatures.c:677,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:685,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:686,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/signatures.c:691,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/signatures.c:693,1
    - Dst: BCryptCreateHash
      Src: /src/xmlsec/src/mscng/signatures.c:698,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:707,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:708,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:719,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/signatures.c:722,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/signatures.c:722,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:722,1
    - Dst: BCryptHashData
      Src: /src/xmlsec/src/mscng/signatures.c:723,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/signatures.c:725,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:729,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:729,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/signatures.c:733,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:735,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:735,1
    - Dst: BCryptFinishHash
      Src: /src/xmlsec/src/mscng/signatures.c:742,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:748,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:748,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:752,1
    - Dst: xmlSecMSCngKeyDataGetPrivKey
      Src: /src/xmlsec/src/mscng/signatures.c:758,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/signatures.c:760,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:760,1
    - Dst: NCryptSignHash
      Src: /src/xmlsec/src/mscng/signatures.c:765,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:775,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:775,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/signatures.c:778,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/signatures.c:778,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:778,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/signatures.c:781,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/signatures.c:783,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:783,1
    - Dst: NCryptSignHash
      Src: /src/xmlsec/src/mscng/signatures.c:800,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/signatures.c:805,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/signatures.c:810,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/signatures.c:811,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/signatures.c:821,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/signatures.c:821,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/signatures.c:823,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 108
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 615
    functionDepth: 2
    functionLinenumber: 615
    functionLinenumberEnd: 828
    functionName: xmlSecMSCngSignatureExecute
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngSignatureGetCtx
    - return
    - BCryptGetProperty
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - NCryptSignHash
    - xmlMalloc
    - BCryptFinishHash
    - xmlSecTransformGetName
    - BCryptCreateHash
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecMSCngKeyDataGetPrivKey
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - BCryptHashData
    - xmlSecMSCngSignatureCheckId
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngSignatureExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 875
    functionName: xmlSecMSCngTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformDsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 922
    functionDepth: 0
    functionLinenumber: 922
    functionLinenumberEnd: 925
    functionName: xmlSecMSCngTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 968
    functionDepth: 0
    functionLinenumber: 968
    functionLinenumberEnd: 971
    functionName: xmlSecMSCngTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1017
    functionName: xmlSecMSCngTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1063
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1063
    functionName: xmlSecMSCngTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1106
    functionDepth: 0
    functionLinenumber: 1106
    functionLinenumberEnd: 1109
    functionName: xmlSecMSCngTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1153
    functionDepth: 0
    functionLinenumber: 1153
    functionLinenumberEnd: 1156
    functionName: xmlSecMSCngTransformRsaPssSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaPssSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1199
    functionDepth: 0
    functionLinenumber: 1199
    functionLinenumberEnd: 1202
    functionName: xmlSecMSCngTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaPssSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1248
      start: 1245
    functionDepth: 0
    functionLinenumber: 1245
    functionLinenumberEnd: 1248
    functionName: xmlSecMSCngTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaPssSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1291
    functionDepth: 0
    functionLinenumber: 1291
    functionLinenumberEnd: 1294
    functionName: xmlSecMSCngTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaPssSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1344
    functionName: xmlSecMSCngTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1387
    functionDepth: 0
    functionLinenumber: 1387
    functionLinenumberEnd: 1390
    functionName: xmlSecMSCngTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1436
    functionName: xmlSecMSCngTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1482
      start: 1479
    functionDepth: 0
    functionLinenumber: 1479
    functionLinenumberEnd: 1482
    functionName: xmlSecMSCngTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformEcdsaSha512GetKlass(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:63,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:68,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:73,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:78,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:83,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 89
    functionName: xmlSecMSCngDigestCheckId
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:95,1
    - Dst: xmlSecMSCngDigestCheckId
      Src: /src/xmlsec/src/mscng/digests.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:96,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/digests.c:96,1
    - Dst: xmlSecMSCngDigestGetCtx
      Src: /src/xmlsec/src/mscng/digests.c:98,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:99,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/digests.c:102,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:105,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:111,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:123,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/digests.c:129,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/digests.c:135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 140
    functionName: xmlSecMSCngDigestInitialize
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngDigestGetCtx
    - xmlSecMSCngDigestCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/digests.c:145,1
    - Dst: xmlSecMSCngDigestCheckId
      Src: /src/xmlsec/src/mscng/digests.c:145,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/digests.c:146,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/digests.c:146,1
    - Dst: xmlSecMSCngDigestGetCtx
      Src: /src/xmlsec/src/mscng/digests.c:148,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/digests.c:149,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/digests.c:152,1
    - Dst: BCryptDestroyHash
      Src: /src/xmlsec/src/mscng/digests.c:156,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/digests.c:160,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/digests.c:164,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/digests.c:167,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 168
    functionName: xmlSecMSCngDigestFinalize
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached:
    - BCryptCloseAlgorithmProvider
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - BCryptDestroyHash
    - xmlSecMSCngDigestGetCtx
    - xmlSecMSCngDigestCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:178,1
    - Dst: xmlSecMSCngDigestCheckId
      Src: /src/xmlsec/src/mscng/digests.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:179,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/digests.c:179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:182,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:183,1
    - Dst: xmlSecMSCngDigestGetCtx
      Src: /src/xmlsec/src/mscng/digests.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:187,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscng/digests.c:189,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/digests.c:189,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:189,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/digests.c:191,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:192,1
    - Dst: memcmp
      Src: /src/xmlsec/src/mscng/digests.c:197,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscng/digests.c:198,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 170
    functionDepth: 2
    functionLinenumber: 170
    functionLinenumberEnd: 206
    functionName: xmlSecMSCngDigestVerify
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - return
    - memcmp
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecMSCngDigestGetCtx
    - xmlSecMSCngDigestCheckId
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngDigestVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data,\n                        xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:219,1
    - Dst: xmlSecMSCngDigestCheckId
      Src: /src/xmlsec/src/mscng/digests.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:221,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/digests.c:221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:228,1
    - Dst: xmlSecMSCngDigestGetCtx
      Src: /src/xmlsec/src/mscng/digests.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:231,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/digests.c:235,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:241,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:241,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/digests.c:246,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:254,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:254,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/digests.c:259,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/digests.c:261,1
    - Dst: BCryptGetProperty
      Src: /src/xmlsec/src/mscng/digests.c:266,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:274,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:274,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscng/digests.c:279,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscng/digests.c:281,1
    - Dst: BCryptCreateHash
      Src: /src/xmlsec/src/mscng/digests.c:286,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:295,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:295,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/digests.c:305,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/digests.c:310,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/digests.c:310,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:310,1
    - Dst: BCryptHashData
      Src: /src/xmlsec/src/mscng/digests.c:311,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/digests.c:313,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:317,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:317,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/digests.c:321,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/digests.c:323,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:323,1
    - Dst: BCryptFinishHash
      Src: /src/xmlsec/src/mscng/digests.c:330,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/digests.c:336,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:340,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/mscng/digests.c:344,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/digests.c:346,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/digests.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/digests.c:354,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/digests.c:354,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/digests.c:356,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 83
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 208
    functionDepth: 3
    functionLinenumber: 208
    functionLinenumberEnd: 361
    functionName: xmlSecMSCngDigestExecute
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - return
    - BCryptGetProperty
    - xmlSecMSCngDigestCheckId
    - xmlMalloc
    - BCryptFinishHash
    - xmlSecTransformGetName
    - BCryptCreateHash
    - BCryptOpenAlgorithmProvider
    - xmlSecMSCngNtError
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - BCryptHashData
    - xmlSecBufferAppend
    - xmlSecMSCngDigestGetCtx
    - xmlSecMallocError
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngDigestExecute(xmlSecTransformPtr transform,\n                         int
      last,\n                         xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionName: xmlSecMSCngTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 448
    functionName: xmlSecMSCngTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 492
    functionName: xmlSecMSCngTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 536
    functionName: xmlSecMSCngTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 580
    functionName: xmlSecMSCngTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformSha512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:52,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:52,1
    - Dst: xmlSecMSCngKeysStoreGetCtx
      Src: /src/xmlsec/src/mscng/keysstore.c:54,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:55,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/mscng/keysstore.c:57,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:59,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 48
    functionDepth: 2
    functionLinenumber: 48
    functionLinenumberEnd: 64
    functionName: xmlSecMSCngKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecMSCngKeysStoreGetCtx
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/keysstore.c:70,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:70,1
    - Dst: xmlSecMSCngKeysStoreGetCtx
      Src: /src/xmlsec/src/mscng/keysstore.c:72,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/keysstore.c:73,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionName: xmlSecMSCngKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCngKeysStoreGetCtx
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:86,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:86,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:87,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:88,1
    - Dst: xmlSecMSCngAppGetCertStoreName
      Src: /src/xmlsec/src/mscng/keysstore.c:90,1
    - Dst: CertOpenSystemStore
      Src: /src/xmlsec/src/mscng/keysstore.c:95,1
    - Dst: xmlSecMSCngLastError2
      Src: /src/xmlsec/src/mscng/keysstore.c:97,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:97,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/keysstore.c:98,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscng/keysstore.c:103,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:105,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:106,1
    - Dst: xmlSecMSCngX509FindCertBySubject
      Src: /src/xmlsec/src/mscng/keysstore.c:112,1
    - Dst: xmlSecWin32ConvertUtf8ToUnicode
      Src: /src/xmlsec/src/mscng/keysstore.c:123,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:125,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:126,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscng/keysstore.c:134,1
    - Dst: xmlSecMSCngX509GetFriendlyNameUnicode
      Src: /src/xmlsec/src/mscng/keysstore.c:139,1
    - Dst: lstrcmpW
      Src: /src/xmlsec/src/mscng/keysstore.c:144,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/keysstore.c:146,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/keysstore.c:150,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscng/keysstore.c:156,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/keysstore.c:169,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscng/keysstore.c:172,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/keysstore.c:177,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 62
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 78
    functionDepth: 4
    functionLinenumber: 78
    functionLinenumberEnd: 181
    functionName: xmlSecMSCngKeysStoreFindCert
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngLastError2
    - xmlSecInternalError
    - xmlFree
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecErrorsSafeString
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlSecMSCngX509GetFriendlyNameUnicode
    - lstrcmpW
    - xmlSecMSCngX509FindCertBySubject
    - CertEnumCertificatesInStore
    - CertFindCertificateInStore
    - CertCloseStore
    - xmlSecWin32ConvertUtf8ToUnicode
    - CertOpenSystemStore
    - xmlSecMSCngAppGetCertStoreName
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCngKeysStoreFindCert(xmlSecKeyStorePtr store,
      const xmlChar* name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:191,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscng/keysstore.c:194,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:196,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:201,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/keysstore.c:203,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:204,1
    - Dst: xmlSecMSCngKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscng/keysstore.c:207,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:209,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:210,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:211,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscng/keysstore.c:217,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:219,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:220,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - key
    - cert
    argTypes:
    - xmlSecKeyPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 227
    functionName: xmlSecMSCngKeysStoreAddCertDataToKey
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngKeyDataX509AdoptKeyCert
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - xmlSecMSCngLastError
    - xmlSecKeyAdoptData
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreAddCertDataToKey(xmlSecKeyPtr key, PCCERT_CONTEXT
      cert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:237,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:240,1
    - Dst: xmlSecMSCngLastError
      Src: /src/xmlsec/src/mscng/keysstore.c:242,1
    - Dst: xmlSecMSCngCertAdopt
      Src: /src/xmlsec/src/mscng/keysstore.c:246,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:248,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:249,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscng/keysstore.c:255,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:257,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:258,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - key
    - cert
    - keyReq
    argTypes:
    - xmlSecKeyPtr
    - PCCERT_CONTEXT
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 229
    functionDepth: 4
    functionLinenumber: 229
    functionLinenumberEnd: 265
    functionName: xmlSecMSCngKeysStoreSetKeyValueFromCert
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - xmlSecMSCngLastError
    - xmlSecMSCngCertAdopt
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreSetKeyValueFromCert(xmlSecKeyPtr key, PCCERT_CONTEXT
      cert, xmlSecKeyReqPtr keyReq)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:273,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscng/keysstore.c:276,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:278,1
    - Dst: xmlSecMSCngKeysStoreSetKeyValueFromCert
      Src: /src/xmlsec/src/mscng/keysstore.c:283,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:285,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:286,1
    - Dst: xmlSecMSCngKeysStoreAddCertDataToKey
      Src: /src/xmlsec/src/mscng/keysstore.c:291,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:293,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - cert
    - keyReq
    argTypes:
    - PCCERT_CONTEXT
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 267
    functionDepth: 5
    functionLinenumber: 267
    functionLinenumberEnd: 300
    functionName: xmlSecMSCngKeysStoreCreateKeyFromCert
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyCreate
    - xmlSecMSCngKeysStoreSetKeyValueFromCert
    - xmlSecMSCngKeysStoreAddCertDataToKey
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecMSCngKeysStoreCreateKeyFromCert(PCCERT_CONTEXT cert,
      xmlSecKeyReqPtr keyReq)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:311,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:312,1
    - Dst: xmlSecMSCngKeysStoreGetCtx
      Src: /src/xmlsec/src/mscng/keysstore.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:315,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/mscng/keysstore.c:318,1
    - Dst: xmlSecMSCngKeysStoreFindCert
      Src: /src/xmlsec/src/mscng/keysstore.c:333,1
    - Dst: xmlSecMSCngKeysStoreCreateKeyFromCert
      Src: /src/xmlsec/src/mscng/keysstore.c:339,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:341,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:341,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/mscng/keysstore.c:346,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:348,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:348,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/mscng/keysstore.c:353,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:360,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscng/keysstore.c:363,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 302
    functionDepth: 6
    functionLinenumber: 302
    functionLinenumberEnd: 366
    functionName: xmlSecMSCngKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyIsValid
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecKeyStoreFindKey
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecMSCngKeysStoreFindCert
    - xmlSecMSCngKeysStoreCreateKeyFromCert
    - CertFreeCertificateContext
    - xmlSecKeyDestroy
    - xmlSecMSCngKeysStoreGetCtx
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecMSCngKeysStoreFindKey(xmlSecKeyStorePtr store, const
      xmlChar* name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:378,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:379,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:380,1
    - Dst: xmlSecMSCngAppGetCertStoreName
      Src: /src/xmlsec/src/mscng/keysstore.c:383,1
    - Dst: CertOpenSystemStore
      Src: /src/xmlsec/src/mscng/keysstore.c:388,1
    - Dst: xmlSecMSCngLastError2
      Src: /src/xmlsec/src/mscng/keysstore.c:390,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:390,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/keysstore.c:391,1
    - Dst: xmlSecMSCngX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/mscng/keysstore.c:396,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:398,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/keysstore.c:399,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/keysstore.c:400,1
    - Dst: xmlSecMSCngX509FindCert
      Src: /src/xmlsec/src/mscng/keysstore.c:405,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/keysstore.c:407,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/keysstore.c:408,1
    - Dst: xmlSecMSCngKeysStoreCreateKeyFromCert
      Src: /src/xmlsec/src/mscng/keysstore.c:413,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/keysstore.c:415,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscng/keysstore.c:415,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:416,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/keysstore.c:417,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/keysstore.c:418,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscng/keysstore.c:439,1
    - Dst: xmlSecMSCngX509FindCertCtxFinalize
      Src: /src/xmlsec/src/mscng/keysstore.c:440,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscng/keysstore.c:441,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 3
    argNames:
    - store
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 368
    functionDepth: 7
    functionLinenumber: 368
    functionLinenumberEnd: 446
    functionName: xmlSecMSCngKeysStoreFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngLastError2
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecErrorsSafeString
    - xmlSecMSCngX509FindCertCtxFinalize
    - xmlSecMSCngX509FindCert
    - xmlSecMSCngKeysStoreCreateKeyFromCert
    - CertFreeCertificateContext
    - CertCloseStore
    - xmlSecMSCngX509FindCertCtxInitializeFromValue
    - CertOpenSystemStore
    - xmlSecMSCngAppGetCertStoreName
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecMSCngKeysStoreFindKeyFromX509Data(xmlSecKeyStorePtr
      store, xmlSecKeyX509DataValuePtr x509Data, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 476
    functionName: xmlSecMSCngKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecMSCngKeysStoreGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:491,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:491,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:492,1
    - Dst: xmlSecMSCngKeysStoreGetCtx
      Src: /src/xmlsec/src/mscng/keysstore.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:497,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:497,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/mscng/keysstore.c:499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 487
    functionDepth: 3
    functionLinenumber: 487
    functionLinenumberEnd: 500
    functionName: xmlSecMSCngKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngKeysStoreGetCtx
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/mscng/keysstore.c:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - store
    - uri
    - keysMngr
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 512
    functionDepth: 15
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionName: xmlSecMSCngKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecSimpleKeysStoreLoad_ex
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
      xmlSecKeysMngrPtr keysMngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:531,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:532,1
    - Dst: xmlSecMSCngKeysStoreGetCtx
      Src: /src/xmlsec/src/mscng/keysstore.c:534,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:536,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/keysstore.c:537,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscng/keysstore.c:537,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/mscng/keysstore.c:539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 527
    functionDepth: 12
    functionLinenumber: 527
    functionLinenumberEnd: 540
    functionName: xmlSecMSCngKeysStoreSave
    functionSourceFile: /src/xmlsec/src/mscng/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngKeysStoreGetCtx
    - xmlSecKeyStoreCheckId
    - xmlSecSimpleKeysStoreSave
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysStoreSave(xmlSecKeyStorePtr store, const char *filename,
      xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/mscng/crypto.c:52,1
    - Dst: xmlSecMSCngAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/mscng/crypto.c:303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 81
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 306
    functionName: xmlSecCryptoGetFunctions_mscng
    functionSourceFile: /src/xmlsec/src/mscng/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_mscng(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/mscng/crypto.c:319,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/crypto.c:320,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/mscng/crypto.c:325,1
    - Dst: xmlSecCryptoGetFunctions_mscng
      Src: /src/xmlsec/src/mscng/crypto.c:325,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/crypto.c:326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 316
    functionDepth: 2
    functionLinenumber: 316
    functionLinenumberEnd: 332
    functionName: xmlSecMSCngInit
    functionSourceFile: /src/xmlsec/src/mscng/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecCryptoGetFunctions_mscng
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecInternalError
    - xmlSecCheckVersionExact
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 345
    functionName: xmlSecMSCngShutdown
    functionSourceFile: /src/xmlsec/src/mscng/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngShutdown(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/crypto.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/crypto.c:363,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/crypto.c:365,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/crypto.c:367,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/crypto.c:371,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/crypto.c:371,1
    - Dst: BCryptGenRandom
      Src: /src/xmlsec/src/mscng/crypto.c:372,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/crypto.c:374,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/crypto.c:378,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 383
    functionName: xmlSecMSCngGenerateRandom
    functionSourceFile: /src/xmlsec/src/mscng/crypto.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCngNtError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - BCryptGenRandom
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/crypto.c:396,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscng/crypto.c:400,1
    - Dst: xmlSecKeyDataStoreCreate
      Src: /src/xmlsec/src/mscng/crypto.c:403,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/crypto.c:405,1
    - Dst: xmlSecKeysMngrAdoptDataStore
      Src: /src/xmlsec/src/mscng/crypto.c:409,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/crypto.c:411,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/mscng/crypto.c:412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 393
    functionDepth: 3
    functionLinenumber: 393
    functionLinenumberEnd: 419
    functionName: xmlSecMSCngKeysMngrInit
    functionSourceFile: /src/xmlsec/src/mscng/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCreate
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeysMngrAdoptDataStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:61,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:67,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 77
    functionName: xmlSecMSCngRsaPkcs1OaepCheckId
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngRsaPkcs1OaepCheckId(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:84,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:84,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:85,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:85,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:87,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:88,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kt_rsa.c:91,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:93,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:95,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 102
    functionName: xmlSecMSCngRsaPkcs1OaepInitialize
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngRsaPkcs1OaepInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kt_rsa.c:108,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:108,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kt_rsa.c:109,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:109,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:111,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/kt_rsa.c:112,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscng/kt_rsa.c:115,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:119,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/kt_rsa.c:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 121
    functionName: xmlSecMSCngRsaPkcs1OaepFinalize
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngRsaPkcs1OaepFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:127,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:127,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:128,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:129,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:129,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:130,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:132,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:133,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: xmlSecMSCngRsaPkcs1OaepSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngRsaPkcs1OaepSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:150,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:152,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:154,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:154,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/kt_rsa.c:154,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:158,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/mscng/kt_rsa.c:160,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/kt_rsa.c:160,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:162,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 146
    functionDepth: 3
    functionLinenumber: 146
    functionLinenumberEnd: 168
    functionName: xmlSecMSCngRsaPkcs1OaepSetKey
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngRsaPkcs1OaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:185,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:187,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:187,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:191,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:194,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:199,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:201,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:206,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:207,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:210,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:211,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:216,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:218,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:218,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kt_rsa.c:224,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kt_rsa.c:225,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kt_rsa.c:227,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/kt_rsa.c:227,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:227,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kt_rsa.c:228,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/kt_rsa.c:228,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:228,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:233,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:234,1
    - Dst: xmlSecMSCngKeyDataGetPubKey
      Src: /src/xmlsec/src/mscng/kt_rsa.c:239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:241,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:242,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:248,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/kt_rsa.c:249,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:260,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:261,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:268,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:268,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kt_rsa.c:273,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:275,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kt_rsa.c:276,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/kt_rsa.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:276,1
    - Dst: BCryptEncrypt
      Src: /src/xmlsec/src/mscng/kt_rsa.c:278,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:289,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:289,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:295,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:302,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:303,1
    - Dst: xmlSecMSCngKeyDataGetPrivKey
      Src: /src/xmlsec/src/mscng/kt_rsa.c:308,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:310,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:311,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:317,1
    - Dst: NCryptDecrypt
      Src: /src/xmlsec/src/mscng/kt_rsa.c:318,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:327,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:328,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:335,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:335,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/kt_rsa.c:340,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:342,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/kt_rsa.c:343,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/kt_rsa.c:343,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:343,1
    - Dst: NCryptDecrypt
      Src: /src/xmlsec/src/mscng/kt_rsa.c:345,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:354,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:355,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:361,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:368,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:370,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:371,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscng/kt_rsa.c:375,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:377,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:378,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 108
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 170
    functionDepth: 2
    functionLinenumber: 170
    functionLinenumberEnd: 383
    functionName: xmlSecMSCngRsaPkcs1OaepProcess
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - xmlSecKeyDataGetSize
    - BCryptEncrypt
    - return
    - xmlSecInvalidSizeError
    - xmlSecBufferSetMaxSize
    - xmlSecTransformGetName
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    - xmlSecMSCngNtError
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecMSCngKeyDataGetPrivKey
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - NCryptDecrypt
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidSizeLessThanError
    - xmlSecTransformCheckSize
    - xmlSecMSCngKeyDataGetPubKey
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngRsaPkcs1OaepProcess(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:391,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:393,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:393,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/kt_rsa.c:394,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:397,1
    - Dst: xmlSecMSCngRsaPkcs1OaepProcess
      Src: /src/xmlsec/src/mscng/kt_rsa.c:406,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:408,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:409,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:416,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:416,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:418,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 385
    functionDepth: 3
    functionLinenumber: 385
    functionLinenumberEnd: 423
    functionName: xmlSecMSCngRsaPkcs1OaepExecute
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngRsaPkcs1OaepProcess
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngRsaPkcs1OaepExecute(xmlSecTransformPtr transform, int
      last,\n                               xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:433,1
    - Dst: xmlSecMSCngRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscng/kt_rsa.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:434,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:435,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/kt_rsa.c:436,1
    - Dst: xmlSecMSCngRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscng/kt_rsa.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:439,1
    - Dst: xmlSecTransformRsaOaepParamsInitialize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:441,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:443,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:444,1
    - Dst: xmlSecTransformRsaOaepParamsRead
      Src: /src/xmlsec/src/mscng/kt_rsa.c:448,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:450,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/kt_rsa.c:451,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:452,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:461,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:462,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:467,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:473,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:479,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:485,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:491,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:496,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/kt_rsa.c:498,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:499,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/kt_rsa.c:508,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:509,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:514,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:520,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:526,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/kt_rsa.c:532,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/mscng/kt_rsa.c:537,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/kt_rsa.c:539,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:540,1
    - Dst: lstrcmpW
      Src: /src/xmlsec/src/mscng/kt_rsa.c:545,1
    - Dst: xmlSecWin32ConvertUnicodeToUtf8
      Src: /src/xmlsec/src/mscng/kt_rsa.c:546,1
    - Dst: xmlSecWin32ConvertUnicodeToUtf8
      Src: /src/xmlsec/src/mscng/kt_rsa.c:547,1
    - Dst: xmlSecInvalidTransfromError3
      Src: /src/xmlsec/src/mscng/kt_rsa.c:549,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/kt_rsa.c:551,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/kt_rsa.c:552,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:553,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/mscng/kt_rsa.c:558,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscng/kt_rsa.c:561,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 73
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 425
    functionDepth: 12
    functionLinenumber: 425
    functionLinenumberEnd: 563
    functionName: xmlSecMSCngRsaOaepNodeRead
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidTransfromError3
    - xmlSecOtherError
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecBufferSwap
    - xmlSecMSCngRsaPkcs1OaepCheckId
    - xmlSecTransformRsaOaepParamsFinalize
    - xmlSecTransformRsaOaepParamsInitialize
    - xmlSecWin32ConvertUnicodeToUtf8
    - xmlStrcmp
    - xmlSecTransformGetName
    - xmlSecMSCngRsaPkcs1OaepGetCtx
    - lstrcmpW
    - xmlSecTransformRsaOaepParamsRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                           xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: xmlSecMSCngTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaOaepGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: xmlSecMSCngTransformRsaOaepEnc11GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaOaepEnc11GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 687
    functionDepth: 0
    functionLinenumber: 687
    functionLinenumberEnd: 690
    functionName: xmlSecMSCngTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/mscng/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformRsaPkcs1GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:80,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: xmlSecMSCngConcatKdfCheckId
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfCheckId(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:94,1
    - Dst: xmlSecMSCngConcatKdfCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:94,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:95,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:95,1
    - Dst: xmlSecMSCngConcatKdfGetCtx
      Src: /src/xmlsec/src/mscng/concatkdf.c:97,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:98,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/concatkdf.c:101,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/concatkdf.c:103,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:105,1
    - Dst: xmlSecMSCngConcatKdfFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:106,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscng/concatkdf.c:109,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:111,1
    - Dst: xmlSecMSCngConcatKdfFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:112,1
    - Dst: xmlSecTransformConcatKdfParamsInitialize
      Src: /src/xmlsec/src/mscng/concatkdf.c:115,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:117,1
    - Dst: xmlSecMSCngConcatKdfFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:118,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 124
    functionName: xmlSecMSCngConcatKdfInitialize
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngConcatKdfFinalize
    - xmlSecTransformConcatKdfParamsInitialize
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecMSCngConcatKdfGetCtx
    - xmlSecMSCngConcatKdfCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/concatkdf.c:130,1
    - Dst: xmlSecMSCngConcatKdfCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:130,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/concatkdf.c:131,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:131,1
    - Dst: xmlSecMSCngConcatKdfGetCtx
      Src: /src/xmlsec/src/mscng/concatkdf.c:133,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscng/concatkdf.c:134,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:136,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:137,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/mscng/concatkdf.c:138,1
    - Dst: memset
      Src: /src/xmlsec/src/mscng/concatkdf.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 141
    functionName: xmlSecMSCngConcatKdfFinalize
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecMSCngConcatKdfGetCtx
    - xmlSecMSCngConcatKdfCheckId
    - xmlSecBufferFinalize
    - memset
    - xmlSecTransformConcatKdfParamsFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCngConcatKdfFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:146,1
    - Dst: xmlSecMSCngConcatKdfCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:147,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: xmlSecMSCngConcatKdfSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCngConcatKdfCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:165,1
    - Dst: xmlSecMSCngConcatKdfCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:167,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:168,1
    - Dst: xmlSecMSCngConcatKdfGetCtx
      Src: /src/xmlsec/src/mscng/concatkdf.c:170,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:172,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:172,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscng/concatkdf.c:174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:175,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscng/concatkdf.c:177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:178,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/concatkdf.c:180,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:181,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/mscng/concatkdf.c:183,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/concatkdf.c:183,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscng/concatkdf.c:187,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:189,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/concatkdf.c:189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 195
    functionName: xmlSecMSCngConcatKdfSetKey
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecMSCngConcatKdfGetCtx
    - xmlSecMSCngConcatKdfCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/concatkdf.c:203,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/concatkdf.c:205,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/concatkdf.c:207,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscng/concatkdf.c:209,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscng/concatkdf.c:212,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscng/concatkdf.c:213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 216
    functionName: xmlSecMSCngConcatKdfGetDigestFromHref
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsSafeString
    - xmlStrcmp
    - xmlSecOtherError2
    linkageType: ''
    returnType: LPCWSTR
    signature: LPCWSTR xmlSecMSCngConcatKdfGetDigestFromHref(const xmlChar* href)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:225,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscng/concatkdf.c:225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:226,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:227,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscng/concatkdf.c:228,1
    - Dst: xmlSecMSCngConcatKdfGetCtx
      Src: /src/xmlsec/src/mscng/concatkdf.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:231,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/mscng/concatkdf.c:234,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/mscng/concatkdf.c:235,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/mscng/concatkdf.c:236,1
    - Dst: xmlSecTransformConcatKdfParamsRead
      Src: /src/xmlsec/src/mscng/concatkdf.c:239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:241,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/mscng/concatkdf.c:246,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/mscng/concatkdf.c:248,1
    - Dst: xmlSecMSCngConcatKdfGetDigestFromHref
      Src: /src/xmlsec/src/mscng/concatkdf.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:255,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/concatkdf.c:255,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 218
    functionDepth: 13
    functionLinenumber: 218
    functionLinenumberEnd: 261
    functionName: xmlSecMSCngConcatKdfNodeRead
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecGetNextElementNode
    - xmlSecTransformCheckSize
    - xmlSecCheckNodeName
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecMSCngConcatKdfGetDigestFromHref
    - xmlSecInvalidNodeError
    - xmlSecMSCngConcatKdfGetCtx
    - xmlSecTransformGetName
    - xmlSecUnexpectedNodeError
    - xmlSecTransformConcatKdfParamsRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngConcatKdfNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: wcslen
      Src: /src/xmlsec/src/mscng/concatkdf.c:282,1
    - Dst: BCryptOpenAlgorithmProvider
      Src: /src/xmlsec/src/mscng/concatkdf.c:296,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/concatkdf.c:302,1
    - Dst: BCryptGenerateSymmetricKey
      Src: /src/xmlsec/src/mscng/concatkdf.c:307,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/concatkdf.c:316,1
    - Dst: BCryptKeyDerivation
      Src: /src/xmlsec/src/mscng/concatkdf.c:321,1
    - Dst: xmlSecMSCngNtError
      Src: /src/xmlsec/src/mscng/concatkdf.c:329,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscng/concatkdf.c:333,1
    - Dst: BCryptDestroyKey
      Src: /src/xmlsec/src/mscng/concatkdf.c:343,1
    - Dst: BCryptCloseAlgorithmProvider
      Src: /src/xmlsec/src/mscng/concatkdf.c:347,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 7
    argNames:
    - pszHashAlgo
    - pbSecret
    - cbSecret
    - pbFixedInfo
    - cbFixedInfo
    - pbOut
    - cbOut
    argTypes:
    - LPCWSTR
    - PBYTE
    - ULONG
    - PBYTE
    - ULONG
    - PBYTE
    - ULONG
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 350
    functionName: xmlSecMSCngConcatKdfPeformKeyDerivation
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngNtError
    - BCryptOpenAlgorithmProvider
    - BCryptCloseAlgorithmProvider
    - wcslen
    - BCryptGenerateSymmetricKey
    - BCryptDestroyKey
    - BCryptKeyDerivation
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCngConcatKdfPeformKeyDerivation(\n    LPCWSTR pszHashAlgo,\n
      \   PBYTE pbSecret, ULONG cbSecret,\n    PBYTE pbFixedInfo, ULONG cbFixedInfo,\n
      \   PBYTE pbOut, ULONG cbOut\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:367,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/concatkdf.c:370,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:373,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/concatkdf.c:374,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/concatkdf.c:374,1
    - Dst: xmlSecTransformConcatKdfParamsGetFixedInfo
      Src: /src/xmlsec/src/mscng/concatkdf.c:376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:378,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/concatkdf.c:381,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:382,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/mscng/concatkdf.c:384,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/concatkdf.c:387,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/concatkdf.c:387,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:390,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/concatkdf.c:392,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscng/concatkdf.c:396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:397,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscng/concatkdf.c:398,1
    - Dst: return
      Src: /src/xmlsec/src/mscng/concatkdf.c:398,1
    - Dst: xmlSecMSCngConcatKdfPeformKeyDerivation
      Src: /src/xmlsec/src/mscng/concatkdf.c:400,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscng/concatkdf.c:407,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - out
    - outSize
    argTypes:
    - xmlSecMSCngConcatKdfCtxPtr
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 414
    functionName: xmlSecMSCngConcatKdfDerive
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCngConcatKdfPeformKeyDerivation
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecInvalidSizeDataError
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecTransformConcatKdfParamsGetFixedInfo
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfDerive(xmlSecMSCngConcatKdfCtxPtr ctx, xmlSecBufferPtr
      out, xmlSecSize outSize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:422,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscng/concatkdf.c:422,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:424,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:425,1
    - Dst: xmlSecMSCngConcatKdfGetCtx
      Src: /src/xmlsec/src/mscng/concatkdf.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:431,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscng/concatkdf.c:443,1
    - Dst: xmlSecMSCngConcatKdfDerive
      Src: /src/xmlsec/src/mscng/concatkdf.c:448,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscng/concatkdf.c:450,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscng/concatkdf.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscng/concatkdf.c:459,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscng/concatkdf.c:459,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscng/concatkdf.c:461,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 416
    functionDepth: 3
    functionLinenumber: 416
    functionLinenumberEnd: 466
    functionName: xmlSecMSCngConcatKdfExecute
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCngConcatKdfDerive
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecMSCngConcatKdfGetCtx
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCngConcatKdfExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: xmlSecMSCngTransformConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/mscng/concatkdf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCngTransformConcatKdfGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 63
    functionName: xmlSecMSCryptoError
    functionSourceFile: /src/xmlsec/src/mscrypto/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 89
    functionName: xmlSecMSCryptoError2
    functionSourceFile: /src/xmlsec/src/mscrypto/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 117
    functionName: xmlSecMSCryptoError3
    functionSourceFile: /src/xmlsec/src/mscrypto/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoError3(errorFunction, errorObject, msg, param1, param2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:118,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 125
    functionName: xmlSecMSCryptoKWAesCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWAesCheckId(xmlSecTransformPtr transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:133,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:134,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:134,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:137,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:138,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:153,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:157,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:161,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:161,1
    - Dst: xmlSecMSCryptoKWAesFinalize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:162,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:167,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:169,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:170,1
    - Dst: xmlSecMSCryptoKWAesFinalize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:171,1
    - Dst: xmlSecMSCryptoCreatePrivateExponentOneKey
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:176,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:177,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:178,1
    - Dst: xmlSecMSCryptoKWAesFinalize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:179,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 127
    functionDepth: 3
    functionLinenumber: 127
    functionLinenumberEnd: 184
    functionName: xmlSecMSCryptoKWAesInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecMSCryptoCreatePrivateExponentOneKey
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecMSCryptoKWAesFinalize
    - xmlSecTransformGetName
    - xmlSecTransformKWAesInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:190,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:190,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:191,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:191,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:193,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:194,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:197,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:200,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:203,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:204,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 205
    functionName: xmlSecMSCryptoKWAesFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 1
    functionsReached:
    - CryptDestroyKey
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - CryptReleaseContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:212,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:213,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:213,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:217,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:219,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:221,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 225
    functionName: xmlSecMSCryptoKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:232,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:232,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:233,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:233,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:236,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:238,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:240,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 227
    functionDepth: 4
    functionLinenumber: 227
    functionLinenumberEnd: 244
    functionName: xmlSecMSCryptoKWAesSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKey
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:252,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:252,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:253,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:253,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:254,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:257,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:259,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:261,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 246
    functionDepth: 3
    functionLinenumber: 246
    functionLinenumberEnd: 265
    functionName: xmlSecMSCryptoKWAesExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:284,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:285,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:290,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:292,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:293,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:294,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:296,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:297,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:298,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:300,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:305,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:316,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:321,1
    - Dst: CryptEncrypt
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:326,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:327,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:332,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:338,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 41
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 341
    functionName: xmlSecMSCryptoKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - CryptDestroyKey
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - CryptEncrypt
    - xmlSecMSCryptoImportPlainSessionBlob
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWAesBlockEncrypt(xmlSecTransformPtr transform,
      const xmlSecByte * in, xmlSecSize inSize,\n                                xmlSecByte
      * out, xmlSecSize outSize,\n                                xmlSecSize* outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:355,1
    - Dst: xmlSecMSCryptoKWAesCheckId
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:356,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:361,1
    - Dst: xmlSecMSCryptoKWAesGetCtx
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:365,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:367,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:369,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:371,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:387,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:392,1
    - Dst: CryptDecrypt
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:396,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:397,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:402,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_aes.c:408,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 411
    functionName: xmlSecMSCryptoKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached:
    - CryptDestroyKey
    - xmlSecInternalError
    - CryptDecrypt
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKWAesGetCtx
    - xmlSecAssert2
    - xmlSecMSCryptoKWAesCheckId
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - xmlSecMSCryptoImportPlainSessionBlob
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWAesBlockDecrypt(xmlSecTransformPtr transform,
      const xmlSecByte * in, xmlSecSize inSize,\n                                xmlSecByte
      * out, xmlSecSize outSize,\n                                xmlSecSize* outWritten)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 459
    functionName: xmlSecMSCryptoTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: xmlSecMSCryptoTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 544
    functionName: xmlSecMSCryptoTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformKWAes256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionName: xmlSecMSCryptoTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformKWDes3GetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:180,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:181,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:181,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:184,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kw_des.c:185,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:187,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:190,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:190,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/kw_des.c:200,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:202,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:203,1
    - Dst: xmlSecMSCryptoKWDes3Finalize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:204,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/kw_des.c:208,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:210,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:211,1
    - Dst: xmlSecMSCryptoKWDes3Finalize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:212,1
    - Dst: xmlSecMSCryptoCreatePrivateExponentOneKey
      Src: /src/xmlsec/src/mscrypto/kw_des.c:217,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:218,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:219,1
    - Dst: xmlSecMSCryptoKWDes3Finalize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:220,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 225
    functionName: xmlSecMSCryptoKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoCreatePrivateExponentOneKey
    - xmlSecMSCryptoKWDes3Finalize
    - xmlSecMSCryptoError
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - xmlSecMSCryptoKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_des.c:231,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:231,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_des.c:232,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:232,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:234,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kw_des.c:235,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_des.c:238,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/kw_des.c:241,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/kw_des.c:244,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:247,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kw_des.c:248,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 227
    functionDepth: 3
    functionLinenumber: 227
    functionLinenumberEnd: 249
    functionName: xmlSecMSCryptoKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 1
    functionsReached:
    - CryptDestroyKey
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - CryptReleaseContext
    - xmlSecMSCryptoKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:256,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:257,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:257,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:260,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/mscrypto/kw_des.c:262,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:264,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:264,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 268
    functionName: xmlSecMSCryptoKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecMSCryptoKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:275,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:276,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:276,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:279,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/mscrypto/kw_des.c:281,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:283,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:283,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 270
    functionDepth: 4
    functionLinenumber: 270
    functionLinenumberEnd: 287
    functionName: xmlSecMSCryptoKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3SetKey
    - xmlSecTransformGetName
    - xmlSecMSCryptoKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:295,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:295,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:296,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:296,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/kw_des.c:297,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:300,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/mscrypto/kw_des.c:302,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:304,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kw_des.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 289
    functionDepth: 3
    functionLinenumber: 289
    functionLinenumberEnd: 308
    functionName: xmlSecMSCryptoKWDes3Execute
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    - xmlSecMSCryptoKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int
      last,\n                            xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:326,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:327,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:332,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:337,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/kw_des.c:340,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:346,1
    - Dst: CryptHashData
      Src: /src/xmlsec/src/mscrypto/kw_des.c:352,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:354,1
    - Dst: CryptGetHashParam
      Src: /src/xmlsec/src/mscrypto/kw_des.c:360,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:362,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/kw_des.c:367,1
    - Dst: CryptDestroyHash
      Src: /src/xmlsec/src/mscrypto/kw_des.c:373,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 376
    functionName: xmlSecMSCryptoKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - CryptCreateHash
    - xmlSecAssert2
    - CryptHashData
    - CryptDestroyHash
    - CryptGetHashParam
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecMSCryptoError2
    - xmlSecMSCryptoKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWDes3Sha1(xmlSecTransformPtr transform,\n                       const
      xmlSecByte * in, xmlSecSize inSize,\n                       xmlSecByte * out,
      xmlSecSize outSize,\n                       xmlSecSize* outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:385,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:386,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:389,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:393,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kw_des.c:395,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kw_des.c:395,1
    - Dst: CryptGenRandom
      Src: /src/xmlsec/src/mscrypto/kw_des.c:396,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:397,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - transform
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 403
    functionName: xmlSecMSCryptoKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - return
    - CryptGenRandom
    - xmlSecMSCryptoError2
    - xmlSecMSCryptoKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWDes3GenerateRandom(xmlSecTransformPtr transform,
      xmlSecByte * out, xmlSecSize outSize,\n    xmlSecSize* outWritten)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:418,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:419,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:420,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:421,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:422,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:425,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:426,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:429,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kw_des.c:431,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:434,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/kw_des.c:439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:447,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:450,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/kw_des.c:454,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:455,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:462,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/kw_des.c:466,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:467,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/kw_des.c:474,1
    - Dst: CryptEncrypt
      Src: /src/xmlsec/src/mscrypto/kw_des.c:479,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:480,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/kw_des.c:485,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_des.c:491,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 58
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 494
    functionName: xmlSecMSCryptoKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - CryptDestroyKey
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - CryptSetKeyParam
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - CryptEncrypt
    - xmlSecMSCryptoImportPlainSessionBlob
    - xmlSecMSCryptoKWDes3GetCtx
    - CryptGetKeyParam
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWDes3BlockEncrypt(xmlSecTransformPtr transform,\n
      \                               const xmlSecByte * iv, xmlSecSize ivSize,\n
      \                               const xmlSecByte * in, xmlSecSize inSize,\n
      \                               xmlSecByte * out, xmlSecSize outSize,\n                                xmlSecSize*
      outWritten)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:509,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kw_des.c:509,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:510,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:511,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:512,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:514,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:516,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:517,1
    - Dst: xmlSecMSCryptoKWDes3GetCtx
      Src: /src/xmlsec/src/mscrypto/kw_des.c:519,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:520,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kw_des.c:522,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kw_des.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:525,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/kw_des.c:530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kw_des.c:540,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/kw_des.c:544,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:545,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:552,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/kw_des.c:555,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:556,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/kw_des.c:563,1
    - Dst: CryptDecrypt
      Src: /src/xmlsec/src/mscrypto/kw_des.c:567,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kw_des.c:568,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/kw_des.c:573,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/kw_des.c:579,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 496
    functionDepth: 2
    functionLinenumber: 496
    functionLinenumberEnd: 582
    functionName: xmlSecMSCryptoKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/mscrypto/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - CryptDestroyKey
    - xmlSecTransformCheckId
    - CryptDecrypt
    - xmlSecTransformCheckSize
    - CryptSetKeyParam
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - xmlSecMSCryptoImportPlainSessionBlob
    - xmlSecMSCryptoKWDes3GetCtx
    - CryptGetKeyParam
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKWDes3BlockDecrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize* outWritten)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/xmlsec/src/mscrypto/app.c:67,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/app.c:70,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:72,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscrypto/app.c:76,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:78,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:79,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 60
    functionDepth: 4
    functionLinenumber: 60
    functionLinenumberEnd: 85
    functionName: xmlSecMSCryptoAppInit
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOtherError2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppInit(const char* config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/app.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: xmlSecMSCryptoAppShutdown
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: xmlSecMSCryptoAppGetCertStoreName
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LPCTSTR
    signature: LPCTSTR xmlSecMSCryptoAppGetCertStoreName(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:144,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:145,1
    - Dst: xmlSecMSCryptoAppPkcs12Load
      Src: /src/xmlsec/src/mscrypto/app.c:149,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:151,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/app.c:156,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:158,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscrypto/app.c:162,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:164,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:165,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:166,1
    - Dst: xmlSecMSCryptoAppKeyLoadMemory
      Src: /src/xmlsec/src/mscrypto/app.c:170,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/app.c:170,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/app.c:171,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:174,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:175,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:178,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/app.c:182,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscrypto/app.c:183,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 6
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 135
    functionDepth: 4
    functionLinenumber: 135
    functionLinenumberEnd: 188
    functionName: xmlSecMSCryptoAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecMSCryptoAppPkcs12Load
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecMSCryptoAppKeyLoadMemory
    - xmlSecOtherError2
    - XMLSEC_ENUM_CAST
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCryptoAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataFormat format,\n    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:217,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:218,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:219,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:220,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:223,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:225,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/app.c:229,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:231,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:235,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:237,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:238,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscrypto/app.c:242,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:244,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:245,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:246,1
    - Dst: xmlSecMSCryptoCertAdopt
      Src: /src/xmlsec/src/mscrypto/app.c:251,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:253,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:254,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscrypto/app.c:259,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:261,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:262,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscrypto/app.c:266,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:268,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:269,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscrypto/app.c:274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:276,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:277,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:287,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:290,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:293,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:296,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:299,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 81
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 203
    functionDepth: 4
    functionLinenumber: 203
    functionLinenumberEnd: 302
    functionName: xmlSecMSCryptoAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlSecMSCryptoKeyDataX509AdoptKeyCert
    - xmlSecMSCryptoCertAdopt
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - CertCreateCertificateContext
    - xmlSecKeyCreate
    - xmlSecMSCryptoError
    - xmlSecKeyAdoptData
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCryptoAppKeyLoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize, xmlSecKeyDataFormat format,\n                               const
      char *pwd, void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:330,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/app.c:332,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:334,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscrypto/app.c:338,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:340,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:341,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:342,1
    - Dst: xmlSecMSCryptoAppKeyCertLoadMemory
      Src: /src/xmlsec/src/mscrypto/app.c:346,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/app.c:346,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/app.c:347,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:349,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:350,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:354,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 322
    functionDepth: 4
    functionLinenumber: 322
    functionLinenumberEnd: 356
    functionName: xmlSecMSCryptoAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecMSCryptoAppKeyCertLoadMemory
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,\n
      \                            xmlSecKeyDataFormat format)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:379,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/mscrypto/app.c:381,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:383,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/app.c:392,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/app.c:392,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:395,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:397,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:397,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscrypto/app.c:398,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:401,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:403,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:403,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:404,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/app.c:409,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:411,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:411,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:412,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:413,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscrypto/app.c:418,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:420,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:420,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:421,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/app.c:428,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:428,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscrypto/app.c:429,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 369
    functionDepth: 4
    functionLinenumber: 369
    functionLinenumberEnd: 434
    functionName: xmlSecMSCryptoAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInternalError
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlSecKeyEnsureData
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - CertFreeCertificateContext
    - xmlSecOtherError2
    - return
    - CertCreateCertificateContext
    - xmlSecMSCryptoError
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoKeyDataX509AdoptKeyCert
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize,\n                                   xmlSecKeyDataFormat
      format)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:457,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/app.c:459,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:461,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscrypto/app.c:465,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:467,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:468,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:469,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/app.c:472,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscrypto/app.c:473,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:474,1
    - Dst: xmlSecMSCryptoAppPkcs12LoadMemory
      Src: /src/xmlsec/src/mscrypto/app.c:478,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/app.c:478,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/app.c:479,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:482,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:483,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:487,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 447
    functionDepth: 4
    functionLinenumber: 447
    functionLinenumberEnd: 489
    functionName: xmlSecMSCryptoAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecMSCryptoAppPkcs12LoadMemory
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCryptoAppPkcs12Load(const char *filename,\n                            const
      char *pwd,\n                            void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n
      \                           void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:522,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:524,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:525,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/app.c:526,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/app.c:528,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/app.c:530,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/app.c:530,1
    - Dst: PFXIsPFXBlob
      Src: /src/xmlsec/src/mscrypto/app.c:532,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/app.c:533,1
    - Dst: xmlSecWin32ConvertLocaleToUnicode
      Src: /src/xmlsec/src/mscrypto/app.c:537,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:539,1
    - Dst: PFXVerifyPassword
      Src: /src/xmlsec/src/mscrypto/app.c:543,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:544,1
    - Dst: xmlSecImportGetPersistKey
      Src: /src/xmlsec/src/mscrypto/app.c:549,1
    - Dst: PFXImportCertStore
      Src: /src/xmlsec/src/mscrypto/app.c:552,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:554,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/app.c:558,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:560,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/app.c:565,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/app.c:573,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:574,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:576,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:577,1
    - Dst: xmlSecMSCryptoCertAdopt
      Src: /src/xmlsec/src/mscrypto/app.c:581,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:583,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:584,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:589,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:591,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:592,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscrypto/app.c:596,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:598,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:599,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:606,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:608,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:609,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/app.c:613,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:615,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:616,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:624,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:624,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscrypto/app.c:629,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:631,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:631,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscrypto/app.c:635,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:637,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:637,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:638,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscrypto/app.c:644,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:646,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/app.c:646,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:647,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/app.c:655,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/app.c:658,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:661,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:664,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:667,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:670,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 140
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 503
    functionDepth: 4
    functionLinenumber: 503
    functionLinenumberEnd: 673
    functionName: xmlSecMSCryptoAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecWin32ConvertLocaleToUnicode
    - xmlSecMSCryptoCertAdopt
    - xmlSecImportGetPersistKey
    - return
    - PFXVerifyPassword
    - xmlSecMSCryptoError
    - CertCloseStore
    - xmlFree
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCreate
    - PFXIsPFXBlob
    - xmlSecKeyDestroy
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - PFXImportCertStore
    - xmlSecInternalError2
    - CertEnumCertificatesInStore
    - xmlSecKeyAdoptData
    - xmlSecMSCryptoError2
    - memset
    - UNREFERENCED_PARAMETER
    - CertDuplicateCertificateContext
    - CertGetCertificateContextProperty
    - CertFreeCertificateContext
    - xmlSecKeyCreate
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoKeyDataX509AdoptKeyCert
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCryptoAppPkcs12LoadMemory(const xmlSecByte* data,\n
      \                                 xmlSecSize dataSize,\n                                  const
      char *pwd,\n                                  void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n
      \                                 void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:696,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:697,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/app.c:699,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:701,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/mscrypto/app.c:705,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:707,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:708,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:709,1
    - Dst: xmlSecMSCryptoAppKeysMngrCertLoadMemory
      Src: /src/xmlsec/src/mscrypto/app.c:713,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/app.c:713,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/app.c:714,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:716,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:717,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:718,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/app.c:722,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 688
    functionDepth: 4
    functionLinenumber: 688
    functionLinenumberEnd: 724
    functionName: xmlSecMSCryptoAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecMSCryptoAppKeysMngrCertLoadMemory
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const
      char *filename,\n                                xmlSecKeyDataFormat format,\n
      \                               xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:752,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/app.c:754,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:756,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/app.c:763,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/app.c:763,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:764,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/app.c:766,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/app.c:771,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/mscrypto/app.c:772,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:776,1
    - Dst: xmlSecMSCryptoX509StoreAdoptCert
      Src: /src/xmlsec/src/mscrypto/app.c:777,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:779,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/app.c:780,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 740
    functionDepth: 3
    functionLinenumber: 740
    functionLinenumberEnd: 785
    functionName: xmlSecMSCryptoAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInternalError
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - CertFreeCertificateContext
    - return
    - CertCreateCertificateContext
    - xmlSecMSCryptoX509StoreAdoptCert
    - xmlSecMSCryptoError
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,
      const xmlSecByte* data,\n                                        xmlSecSize
      dataSize, xmlSecKeyDataFormat format,\n                                        xmlSecKeyDataType
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:799,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:800,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:801,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 805
    functionName: xmlSecMSCryptoAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const
      char *filename, xmlSecKeyDataFormat format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:820,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:821,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:822,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:823,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 818
    functionDepth: 1
    functionLinenumber: 818
    functionLinenumberEnd: 827
    functionName: xmlSecMSCryptoAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr,
      const xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:844,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/app.c:846,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:848,1
    - Dst: xmlSecMSCryptoX509StoreAdoptKeyStore
      Src: /src/xmlsec/src/mscrypto/app.c:852,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:853,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/app.c:854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - mngr
    - keyStore
    argTypes:
    - xmlSecKeysMngrPtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 838
    functionDepth: 3
    functionLinenumber: 838
    functionLinenumberEnd: 859
    functionName: xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecMSCryptoX509StoreAdoptKeyStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore(xmlSecKeysMngrPtr
      mngr, HCERTSTORE keyStore)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:875,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:876,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/app.c:878,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:880,1
    - Dst: xmlSecMSCryptoX509StoreAdoptTrustedStore
      Src: /src/xmlsec/src/mscrypto/app.c:884,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:885,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/app.c:886,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - mngr
    - trustedStore
    argTypes:
    - xmlSecKeysMngrPtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 870
    functionDepth: 3
    functionLinenumber: 870
    functionLinenumberEnd: 891
    functionName: xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecMSCryptoX509StoreAdoptTrustedStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore(xmlSecKeysMngrPtr
      mngr, HCERTSTORE trustedStore)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:907,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:908,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/app.c:910,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:912,1
    - Dst: xmlSecMSCryptoX509StoreAdoptUntrustedStore
      Src: /src/xmlsec/src/mscrypto/app.c:916,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:917,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/app.c:918,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - mngr
    - untrustedStore
    argTypes:
    - xmlSecKeysMngrPtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 902
    functionDepth: 3
    functionLinenumber: 902
    functionLinenumberEnd: 923
    functionName: xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeysMngrGetDataStore
    - xmlSecMSCryptoX509StoreAdoptUntrustedStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore(xmlSecKeysMngrPtr
      mngr, HCERTSTORE untrustedStore)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:940,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscrypto/app.c:943,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/mscrypto/app.c:946,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:948,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/mscrypto/app.c:952,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:954,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/mscrypto/app.c:955,1
    - Dst: xmlSecMSCryptoKeysMngrInit
      Src: /src/xmlsec/src/mscrypto/app.c:960,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:962,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 936
    functionDepth: 2
    functionLinenumber: 936
    functionLinenumberEnd: 968
    functionName: xmlSecMSCryptoAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecMSCryptoKeysMngrInit
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:985,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:986,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscrypto/app.c:988,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:990,1
    - Dst: xmlSecMSCryptoKeysStoreAdoptKey
      Src: /src/xmlsec/src/mscrypto/app.c:994,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:996,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 980
    functionDepth: 2
    functionLinenumber: 980
    functionLinenumberEnd: 1001
    functionName: xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecInternalError
    - xmlSecMSCryptoKeysStoreAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1023,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1024,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1025,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:1027,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1029
    functionName: xmlSecMSCryptoAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1047,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1048,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscrypto/app.c:1050,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:1052,1
    - Dst: xmlSecMSCryptoKeysStoreLoad
      Src: /src/xmlsec/src/mscrypto/app.c:1056,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:1058,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:1059,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 1042
    functionDepth: 2
    functionLinenumber: 1042
    functionLinenumberEnd: 1064
    functionName: xmlSecMSCryptoAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeysStoreLoad
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1081,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1082,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/mscrypto/app.c:1084,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/app.c:1086,1
    - Dst: xmlSecMSCryptoKeysStoreSave
      Src: /src/xmlsec/src/mscrypto/app.c:1090,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/app.c:1092,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/app.c:1092,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1076
    functionDepth: 2
    functionLinenumber: 1076
    functionLinenumberEnd: 1097
    functionName: xmlSecMSCryptoAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecMSCryptoKeysStoreSave
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1111,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:1113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - mngr
    - hKey
    argTypes:
    - xmlSecKeysMngrPtr
    - HCRYPTKEY
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1108
    functionDepth: 1
    functionLinenumber: 1108
    functionLinenumberEnd: 1115
    functionName: xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad(xmlSecKeysMngrPtr
      mngr, HCRYPTKEY hKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1128,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1129,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:1131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - mngr
    - hKey
    argTypes:
    - xmlSecKeysMngrPtr
    - HCRYPTKEY
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1126
    functionDepth: 1
    functionLinenumber: 1126
    functionLinenumberEnd: 1133
    functionName: xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad(xmlSecKeysMngrPtr
      mngr, HCRYPTKEY hKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/app.c:1147,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/mscrypto/app.c:1149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - mngr
    - hKey
    argTypes:
    - xmlSecKeysMngrPtr
    - HCRYPTKEY
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1144
    functionDepth: 1
    functionLinenumber: 1144
    functionLinenumberEnd: 1151
    functionName: xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad(xmlSecKeysMngrPtr mngr,
      HCRYPTKEY hKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1160
    functionDepth: 0
    functionLinenumber: 1160
    functionLinenumberEnd: 1164
    functionName: xmlSecMSCryptoAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/mscrypto/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecMSCryptoAppGetDefaultPwdCallback(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: xmlSecMSCryptoKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataX509GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:196,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:196,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: xmlSecMSCryptoKeyDataX509GetKeyCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoKeyDataX509GetKeyCert(xmlSecKeyDataPtr
      data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:217,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:218,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:221,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 230
    functionName: xmlSecMSCryptoKeyDataX509AdoptKeyCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    - CertFreeCertificateContext
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:245,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:246,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:250,1
    - Dst: CertAddCertificateContextToStore
      Src: /src/xmlsec/src/mscrypto/x509.c:252,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:253,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:254,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 261
    functionName: xmlSecMSCryptoKeyDataX509AdoptCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 2
    functionsReached:
    - CertAddCertificateContextToStore
    - xmlSecAssert2
    - CertFreeCertificateContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoX509DataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataX509AdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:278,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:278,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:283,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/x509.c:285,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/x509.c:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 292
    functionName: xmlSecMSCryptoKeyDataX509GetCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    - CertEnumCertificatesInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoKeyDataX509GetCert(xmlSecKeyDataPtr data,
      xmlSecSize pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:306,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:306,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:308,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 312
    functionName: xmlSecMSCryptoKeyDataX509GetCertsSize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataX509GetCertsSize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:327,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:328,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:332,1
    - Dst: CertAddCRLContextToStore
      Src: /src/xmlsec/src/mscrypto/x509.c:334,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:335,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:336,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - data
    - crl
    argTypes:
    - xmlSecKeyDataPtr
    - PCCRL_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 343
    functionName: xmlSecMSCryptoKeyDataX509AdoptCrl
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertFreeCRLContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecKeyDataGetName
    - CertAddCRLContextToStore
    - xmlSecMSCryptoX509DataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, PCCRL_CONTEXT
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:360,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:360,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:364,1
    - Dst: CertEnumCRLsInStore
      Src: /src/xmlsec/src/mscrypto/x509.c:366,1
    - Dst: CertEnumCRLsInStore
      Src: /src/xmlsec/src/mscrypto/x509.c:368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 373
    functionName: xmlSecMSCryptoKeyDataX509GetCrl
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertEnumCRLsInStore
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: PCCRL_CONTEXT
    signature: PCCRL_CONTEXT xmlSecMSCryptoKeyDataX509GetCrl(xmlSecKeyDataPtr data,
      xmlSecSize pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:387,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:387,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 383
    functionDepth: 1
    functionLinenumber: 383
    functionLinenumberEnd: 393
    functionName: xmlSecMSCryptoKeyDataX509GetCrlsSize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataX509GetCrlsSize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:399,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:399,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:402,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509.c:404,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509.c:406,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:412,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:413,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 418
    functionName: xmlSecMSCryptoKeyDataX509Initialize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - CertOpenStore
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoX509DataGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataX509Initialize(xmlSecKeyDataPtr data)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:427,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:428,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:428,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:431,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCert
      Src: /src/xmlsec/src/mscrypto/x509.c:436,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:438,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:439,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:444,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:446,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:447,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:448,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/x509.c:452,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:454,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:455,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:456,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:457,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:460,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:464,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCrl
      Src: /src/xmlsec/src/mscrypto/x509.c:466,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:468,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:469,1
    - Dst: CertDuplicateCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:474,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:476,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:477,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:478,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/mscrypto/x509.c:482,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:484,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:485,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:486,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:487,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:490,1
    - Dst: xmlSecMSCryptoKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/mscrypto/x509.c:494,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:496,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:498,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:499,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscrypto/x509.c:502,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:504,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:505,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:506,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 62
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 511
    functionName: xmlSecMSCryptoKeyDataX509Duplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - xmlSecInternalError
    - xmlSecMSCryptoKeyDataX509AdoptCrl
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - CertDuplicateCRLContext
    - xmlSecInternalError2
    - xmlSecMSCryptoKeyDataX509GetKeyCert
    - CertFreeCRLContext
    - CertFreeCertificateContext
    - xmlSecMSCryptoKeyDataX509GetCert
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataX509GetCertsSize
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataX509GetCrl
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoKeyDataX509AdoptKeyCert
    - xmlSecMSCryptoKeyDataX509GetCrlsSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:517,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:517,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:519,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:520,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:523,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509.c:528,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:529,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509.c:534,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 535
    functionName: xmlSecMSCryptoKeyDataX509Finalize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - CertFreeCertificateContext
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    - CertCloseStore
    - xmlSecMSCryptoX509DataGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataX509Finalize(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:544,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/mscrypto/x509.c:546,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:548,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:548,1
    - Dst: xmlSecKeyDataX509XmlRead
      Src: /src/xmlsec/src/mscrypto/x509.c:552,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:554,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:554,1
    - Dst: xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
      Src: /src/xmlsec/src/mscrypto/x509.c:558,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:560,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:560,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 537
    functionDepth: 5
    functionLinenumber: 537
    functionLinenumberEnd: 564
    functionName: xmlSecMSCryptoKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyEnsureData
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
    - xmlSecKeyDataX509XmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:573,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:574,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/mscrypto/x509.c:577,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:585,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:586,1
    - Dst: xmlSecKeyDataX509XmlWrite
      Src: /src/xmlsec/src/mscrypto/x509.c:588,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscrypto/x509.c:589,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscrypto/x509.c:592,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 566
    functionDepth: 13
    functionLinenumber: 566
    functionLinenumberEnd: 601
    functionName: xmlSecMSCryptoKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecAssert2
    - xmlSecKeyGetData
    - xmlSecMSCryptoKeyDataX509GetCertsSize
    - xmlSecKeyDataX509XmlWrite
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoKeyDataX509GetCrlsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:608,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:608,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:609,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:611,1
    - Dst: xmlSecMSCryptoKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/mscrypto/x509.c:612,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:614,1
    - Dst: xmlSecMSCryptoX509CertDebugDump
      Src: /src/xmlsec/src/mscrypto/x509.c:615,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:618,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCert
      Src: /src/xmlsec/src/mscrypto/x509.c:620,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:622,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:623,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:627,1
    - Dst: xmlSecMSCryptoX509CertDebugDump
      Src: /src/xmlsec/src/mscrypto/x509.c:628,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:629,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 633
    functionName: xmlSecMSCryptoKeyDataX509DebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataX509GetKeyCert
    - xmlSecMSCryptoX509CertDebugDump
    - xmlSecInternalError2
    - CertFreeCertificateContext
    - xmlSecMSCryptoKeyDataX509GetCert
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataX509GetCertsSize
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:640,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:640,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:641,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:643,1
    - Dst: xmlSecMSCryptoKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/mscrypto/x509.c:644,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:646,1
    - Dst: xmlSecMSCryptoX509CertDebugXmlDump
      Src: /src/xmlsec/src/mscrypto/x509.c:647,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:648,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/mscrypto/x509.c:651,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCert
      Src: /src/xmlsec/src/mscrypto/x509.c:653,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:655,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:656,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:660,1
    - Dst: xmlSecMSCryptoX509CertDebugXmlDump
      Src: /src/xmlsec/src/mscrypto/x509.c:661,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:662,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:663,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:667,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 635
    functionDepth: 2
    functionLinenumber: 635
    functionLinenumberEnd: 668
    functionName: xmlSecMSCryptoKeyDataX509DebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataX509GetKeyCert
    - xmlSecInternalError2
    - xmlSecMSCryptoX509CertDebugXmlDump
    - CertFreeCertificateContext
    - xmlSecMSCryptoKeyDataX509GetCert
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataX509GetCertsSize
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:681,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:682,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:682,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:683,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:684,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/x509.c:686,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:688,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:688,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:697,1
    - Dst: xmlSecMSCryptoX509CertDerRead
      Src: /src/xmlsec/src/mscrypto/x509.c:698,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/x509.c:698,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:699,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:701,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:701,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:705,1
    - Dst: xmlSecMSCryptoX509CrlDerRead
      Src: /src/xmlsec/src/mscrypto/x509.c:706,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/x509.c:706,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:707,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:709,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:709,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:713,1
    - Dst: xmlSecMSCryptoX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscrypto/x509.c:714,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/x509.c:715,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:715,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/x509.c:718,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:718,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:719,1
    - Dst: xmlSecMSCryptoX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscrypto/x509.c:724,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/mscrypto/x509.c:727,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:727,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/x509.c:728,1
    - Dst: xmlSecMSCryptoX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscrypto/x509.c:733,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/mscrypto/x509.c:737,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:737,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/x509.c:739,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/x509.c:740,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/x509.c:747,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:749,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:749,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/mscrypto/x509.c:755,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:757,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:757,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:769,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:772,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 82
    argCount: 4
    argNames:
    - data
    - x509Value
    - keysMngr
    - flags
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeysMngrPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 671
    functionDepth: 3
    functionLinenumber: 671
    functionLinenumberEnd: 775
    functionName: xmlSecMSCryptoKeyDataX509Read
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - xmlSecInternalError
    - xmlSecMSCryptoX509CrlDerRead
    - xmlSecMSCryptoKeyDataX509AdoptCrl
    - xmlSecAssert2
    - xmlSecMSCryptoX509CertDerRead
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    - CertFreeCRLContext
    - CertFreeCertificateContext
    - xmlSecBufferGetData
    - xmlSecMSCryptoX509StoreFindCert_ex
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecOtherError3
    - xmlSecKeyDataGetName
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataX509Read(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n    xmlSecKeysMngrPtr keysMngr, unsigned int flags)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:786,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:787,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:787,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:788,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:789,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCert
      Src: /src/xmlsec/src/mscrypto/x509.c:794,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:796,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:797,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscrypto/x509.c:801,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:803,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/x509.c:805,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscrypto/x509.c:807,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:808,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:811,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscrypto/x509.c:815,1
    - Dst: xmlSecMSCryptoX509SKIWrite
      Src: /src/xmlsec/src/mscrypto/x509.c:816,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:818,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:819,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:821,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscrypto/x509.c:825,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:826,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:827,1
    - Dst: xmlSecMSCryptoX509NameWrite
      Src: /src/xmlsec/src/mscrypto/x509.c:829,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:831,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:832,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:834,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/mscrypto/x509.c:838,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:839,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:840,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:841,1
    - Dst: xmlSecMSCryptoX509NameWrite
      Src: /src/xmlsec/src/mscrypto/x509.c:843,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:845,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:846,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:848,1
    - Dst: xmlSecMSCryptoASN1IntegerWrite
      Src: /src/xmlsec/src/mscrypto/x509.c:851,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:853,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:854,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:856,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:859,1
    - Dst: xmlSecMSCryptoKeyDataX509GetCrl
      Src: /src/xmlsec/src/mscrypto/x509.c:865,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:867,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:868,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/x509.c:874,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/mscrypto/x509.c:876,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:877,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:880,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:884,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 78
    argCount: 4
    argNames:
    - data
    - x509Value
    - content
    - context
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 780
    functionDepth: 3
    functionLinenumber: 780
    functionLinenumberEnd: 894
    functionName: xmlSecMSCryptoKeyDataX509Write
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - XMLSEC_X509DATA_HAS_EMPTY_NODE
    - xmlSecAssert2
    - xmlSecMSCryptoX509NameWrite
    - xmlSecInternalError2
    - CertFreeCRLContext
    - CertFreeCertificateContext
    - xmlSecMSCryptoKeyDataX509GetCert
    - xmlSecBufferSetData
    - xmlSecMSCryptoX509SKIWrite
    - xmlSecMSCryptoASN1IntegerWrite
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataX509GetCrl
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataX509Write(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n    int content, void* context)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:903,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/x509.c:903,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:904,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:905,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:906,1
    - Dst: xmlSecMSCryptoX509DataGetCtx
      Src: /src/xmlsec/src/mscrypto/x509.c:908,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:909,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:910,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/x509.c:912,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:914,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:915,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/x509.c:919,1
    - Dst: xmlSecMSCryptoX509StoreVerify
      Src: /src/xmlsec/src/mscrypto/x509.c:922,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:927,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:929,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:930,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:931,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:934,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:937,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:939,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:940,1
    - Dst: xmlSecMSCryptoCertAdopt
      Src: /src/xmlsec/src/mscrypto/x509.c:945,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:947,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:948,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:949,1
    - Dst: xmlSecMSCryptoCertAdopt
      Src: /src/xmlsec/src/mscrypto/x509.c:954,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:956,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:957,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:958,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:963,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/mscrypto/x509.c:968,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:969,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:970,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/x509.c:971,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscrypto/x509.c:975,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:977,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:978,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/x509.c:979,1
    - Dst: xmlSecMSCryptoX509CertGetTime
      Src: /src/xmlsec/src/mscrypto/x509.c:983,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:985,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:986,1
    - Dst: xmlSecMSCryptoX509CertGetTime
      Src: /src/xmlsec/src/mscrypto/x509.c:990,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:992,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:993,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509.c:997,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:998,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 77
    argCount: 3
    argNames:
    - data
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 896
    functionDepth: 3
    functionLinenumber: 896
    functionLinenumberEnd: 1003
    functionName: xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecOtherError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlSecMSCryptoCertAdopt
    - CertFreeCertificateContext
    - xmlSecKeyDataDestroy
    - xmlSecKeyReqMatchKeyValue
    - xmlSecMSCryptoX509CertGetTime
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoX509DataGetCtx
    - xmlSecKeysMngrGetDataStore
    - xmlSecMSCryptoX509StoreVerify
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr
      data, xmlSecKeyPtr key,\n                                             xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - t
    - res
    argTypes:
    - FILETIME
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 1005
    functionDepth: 1
    functionLinenumber: 1005
    functionLinenumberEnd: 1024
    functionName: xmlSecMSCryptoX509CertGetTime
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509CertGetTime(FILETIME t, time_t* res)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1031,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1032,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/x509.c:1034,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/x509.c:1034,1
    - Dst: CertCreateCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:1035,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1026
    functionDepth: 1
    functionLinenumber: 1026
    functionLinenumberEnd: 1042
    functionName: xmlSecMSCryptoX509CertDerRead
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecAssert2
    - return
    - CertCreateCertificateContext
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoX509CertDerRead(const xmlSecByte* buf,
      xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1049,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1050,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/x509.c:1052,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/x509.c:1052,1
    - Dst: CertCreateCRLContext
      Src: /src/xmlsec/src/mscrypto/x509.c:1053,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1055,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1044
    functionDepth: 1
    functionLinenumber: 1044
    functionLinenumberEnd: 1060
    functionName: xmlSecMSCryptoX509CrlDerRead
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - CertCreateCRLContext
    - xmlSecAssert2
    - return
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: PCCRL_CONTEXT
    signature: PCCRL_CONTEXT xmlSecMSCryptoX509CrlDerRead(xmlSecByte* buf, xmlSecSize
      size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1069,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1070,1
    - Dst: CertNameToStr
      Src: /src/xmlsec/src/mscrypto/x509.c:1072,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1074,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/x509.c:1078,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/x509.c:1080,1
    - Dst: CertNameToStr
      Src: /src/xmlsec/src/mscrypto/x509.c:1084,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1086,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1087,1
    - Dst: xmlSecWin32ConvertTstrToUtf8
      Src: /src/xmlsec/src/mscrypto/x509.c:1091,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1093,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1094,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1098,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - nm
    argTypes:
    - PCERT_NAME_BLOB
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1100
      start: 1062
    functionDepth: 4
    functionLinenumber: 1062
    functionLinenumberEnd: 1100
    functionName: xmlSecMSCryptoX509NameWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - CertNameToStr
    - xmlSecWin32ConvertTstrToUtf8
    - xmlSecMSCryptoError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCryptoX509NameWrite(PCERT_NAME_BLOB nm)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1108,1
    - Dst: xmlSecBnInitialize
      Src: /src/xmlsec/src/mscrypto/x509.c:1110,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:1112,1
    - Dst: xmlSecBnSetData
      Src: /src/xmlsec/src/mscrypto/x509.c:1116,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1118,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509.c:1119,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/mscrypto/x509.c:1125,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1127,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509.c:1128,1
    - Dst: xmlSecBnToDecString
      Src: /src/xmlsec/src/mscrypto/x509.c:1132,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1134,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509.c:1135,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509.c:1140,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - num
    argTypes:
    - PCRYPT_INTEGER_BLOB
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1102
    functionDepth: 6
    functionLinenumber: 1102
    functionLinenumberEnd: 1142
    functionName: xmlSecMSCryptoASN1IntegerWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBnFinalize
    - xmlSecInternalError2
    - xmlSecBnSetData
    - xmlSecBnInitialize
    - xmlSecBnToDecString
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCryptoASN1IntegerWrite(PCRYPT_INTEGER_BLOB num)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1152,1
    - Dst: CertFindExtension
      Src: /src/xmlsec/src/mscrypto/x509.c:1155,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1157,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/x509.c:1161,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1163,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscrypto/x509.c:1167,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:1169,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/x509.c:1174,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/x509.c:1174,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509.c:1175,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/x509.c:1179,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509.c:1181,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - PCCERT_CONTEXT
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1144
    functionDepth: 2
    functionLinenumber: 1144
    functionLinenumberEnd: 1186
    functionName: xmlSecMSCryptoX509SKIWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - CertFindExtension
    - xmlSecAssert2
    - xmlSecInternalError2
    - CertGetCertificateContextProperty
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509SKIWrite(PCCERT_CONTEXT cert, xmlSecBufferPtr
      buf)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:1195,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:1196,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1198,1
    - Dst: xmlSecMSCryptoX509GetNameString
      Src: /src/xmlsec/src/mscrypto/x509.c:1201,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1203,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1206,1
    - Dst: xmlSecMSCryptoX509GetNameString
      Src: /src/xmlsec/src/mscrypto/x509.c:1209,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1211,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1214,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1220,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1222,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1225,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1228,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1229,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - PCCERT_CONTEXT
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1230
    functionName: xmlSecMSCryptoX509CertDebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert
    - xmlSecMSCryptoX509GetNameString
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoX509CertDebugDump(PCCERT_CONTEXT cert, FILE* output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:1240,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509.c:1241,1
    - Dst: xmlSecMSCryptoX509GetNameString
      Src: /src/xmlsec/src/mscrypto/x509.c:1244,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1246,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1249,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1251,1
    - Dst: xmlSecMSCryptoX509GetNameString
      Src: /src/xmlsec/src/mscrypto/x509.c:1254,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1256,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1259,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1261,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1264,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1268,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1270,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/x509.c:1273,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1276,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509.c:1277,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - PCCERT_CONTEXT
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1278
    functionName: xmlSecMSCryptoX509CertDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert
    - xmlSecMSCryptoX509GetNameString
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoX509CertDebugXmlDump(PCCERT_CONTEXT cert, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: xmlSecMSCryptoKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataRawX509CertGetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509.c:1355,1
    - Dst: xmlSecMSCryptoX509CertDerRead
      Src: /src/xmlsec/src/mscrypto/x509.c:1357,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1359,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/mscrypto/x509.c:1363,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1365,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:1366,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:1367,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/x509.c:1371,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1373,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:1374,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509.c:1375,1
    - Dst: xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
      Src: /src/xmlsec/src/mscrypto/x509.c:1379,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509.c:1381,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/x509.c:1382,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1343
    functionDepth: 4
    functionLinenumber: 1343
    functionLinenumberEnd: 1386
    functionName: xmlSecMSCryptoKeyDataRawX509CertBinRead
    functionSourceFile: /src/xmlsec/src/mscrypto/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoX509CertDerRead
    - xmlSecKeyEnsureData
    - CertFreeCertificateContext
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: xmlSecMSCryptoKeyDataCtxGetProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoKeyDataCtxGetProvider(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionName: xmlSecMSCryptoKeyDataCtxCreateProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxCreateProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:121,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 128
    functionName: xmlSecMSCryptoKeyDataCtxDestroyProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - CryptReleaseContext
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxDestroyProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:133,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - hProv
    - fCallerFreeProv
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - HCRYPTPROV
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 139
    functionName: xmlSecMSCryptoKeyDataCtxSetProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxSetProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx, HCRYPTPROV hProv, BOOL fCallerFreeProv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:144,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:146,1
    - Dst: CryptContextAddRef
      Src: /src/xmlsec/src/mscrypto/certkeys.c:149,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 158
    functionName: xmlSecMSCryptoKeyDataCtxDuplicateProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CryptContextAddRef
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxDuplicateProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctxDst, xmlSecMSCryptoKeyDataCtxPtr ctxSrc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: xmlSecMSCryptoKeyDataCtxGetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoKeyDataCtxGetKey(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 170
    functionName: xmlSecMSCryptoKeyDataCtxCreateKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxCreateKey(xmlSecMSCryptoKeyDataCtxPtr ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:174,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 180
    functionName: xmlSecMSCryptoKeyDataCtxDestroyKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - CryptDestroyKey
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxDestroyKey(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:184,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - hKey
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - HCRYPTKEY
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 189
    functionName: xmlSecMSCryptoKeyDataCtxSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxSetKey(xmlSecMSCryptoKeyDataCtxPtr ctx,
      HCRYPTKEY hKey)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:194,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:196,1
    - Dst: CryptDuplicateKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:198,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 191
    functionDepth: 2
    functionLinenumber: 191
    functionLinenumberEnd: 205
    functionName: xmlSecMSCryptoKeyDataCtxDuplicateKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    - CryptDuplicateKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxDuplicateKey(xmlSecMSCryptoKeyDataCtxPtr
      ctxDst, xmlSecMSCryptoKeyDataCtxPtr ctxSrc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 211
    functionName: xmlSecMSCryptoKeyDataCtxGetProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoKeyDataCtxGetProvider(ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:214,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/certkeys.c:216,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:218,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 223
    functionName: xmlSecMSCryptoKeyDataCtxCreateProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxCreateProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:227,1
    - Dst: InterlockedDecrement
      Src: /src/xmlsec/src/mscrypto/certkeys.c:230,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:232,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:234,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/certkeys.c:235,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 239
    functionName: xmlSecMSCryptoKeyDataCtxDestroyProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 2
    functionsReached:
    - xmlFree
    - InterlockedDecrement
    - xmlSecAssert
    - CryptReleaseContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxDestroyProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:246,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:248,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:252,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:254,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:256,1
    - Dst: xmlSecMSCryptoKeyDataCtxCreateProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:257,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:259,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - hProv
    - fCallerFreeProv
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - HCRYPTPROV
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 268
    functionName: xmlSecMSCryptoKeyDataCtxSetProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxCreateProvider
    - CryptReleaseContext
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxSetProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctx, HCRYPTPROV hProv, BOOL fCallerFreeProv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:273,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:275,1
    - Dst: InterlockedIncrement
      Src: /src/xmlsec/src/mscrypto/certkeys.c:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 283
    functionName: xmlSecMSCryptoKeyDataCtxDuplicateProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - InterlockedIncrement
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxDuplicateProvider(xmlSecMSCryptoKeyDataCtxPtr
      ctxDst, xmlSecMSCryptoKeyDataCtxPtr ctxSrc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: xmlSecMSCryptoKeyDataCtxGetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoKeyDataCtxGetKey(ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:290,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/certkeys.c:292,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:294,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 299
    functionName: xmlSecMSCryptoKeyDataCtxCreateKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxCreateKey(xmlSecMSCryptoKeyDataCtxPtr ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:303,1
    - Dst: InterlockedDecrement
      Src: /src/xmlsec/src/mscrypto/certkeys.c:306,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:308,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:310,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/certkeys.c:311,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 315
    functionName: xmlSecMSCryptoKeyDataCtxDestroyKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 2
    functionsReached:
    - CryptDestroyKey
    - xmlFree
    - InterlockedDecrement
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxDestroyKey(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:320,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:324,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:326,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:328,1
    - Dst: xmlSecMSCryptoKeyDataCtxCreateKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:329,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:331,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - hKey
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - HCRYPTKEY
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 317
    functionDepth: 2
    functionLinenumber: 317
    functionLinenumberEnd: 338
    functionName: xmlSecMSCryptoKeyDataCtxSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - CryptDestroyKey
    - xmlSecInternalError
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxCreateKey
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxSetKey(xmlSecMSCryptoKeyDataCtxPtr ctx,
      HCRYPTKEY hKey)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:343,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:345,1
    - Dst: InterlockedIncrement
      Src: /src/xmlsec/src/mscrypto/certkeys.c:348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 352
    functionName: xmlSecMSCryptoKeyDataCtxDuplicateKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - InterlockedIncrement
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxDuplicateKey(xmlSecMSCryptoKeyDataCtxPtr
      ctxDst, xmlSecMSCryptoKeyDataCtxPtr ctxSrc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ctx
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 358
    functionName: xmlSecMSCryptoKeyDataCtxGetCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoKeyDataCtxGetCert(ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 364
    functionName: xmlSecMSCryptoKeyDataCtxCreateCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxCreateCert(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:368,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 366
    functionDepth: 1
    functionLinenumber: 366
    functionLinenumberEnd: 374
    functionName: xmlSecMSCryptoKeyDataCtxDestroyCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - CertFreeCertificateContext
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataCtxDestroyCert(xmlSecMSCryptoKeyDataCtxPtr
      ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:378,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - pCert
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 376
    functionDepth: 2
    functionLinenumber: 376
    functionLinenumberEnd: 383
    functionName: xmlSecMSCryptoKeyDataCtxSetCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxDestroyCert
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxSetCert(xmlSecMSCryptoKeyDataCtxPtr ctx,
      PCCERT_CONTEXT pCert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:388,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:390,1
    - Dst: xmlSecMSCryptoCertDup
      Src: /src/xmlsec/src/mscrypto/certkeys.c:392,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:394,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecMSCryptoKeyDataCtxPtr
    - xmlSecMSCryptoKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 385
    functionDepth: 2
    functionLinenumber: 385
    functionLinenumberEnd: 399
    functionName: xmlSecMSCryptoKeyDataCtxDuplicateCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxDestroyCert
    - xmlSecInternalError
    - xmlSecMSCryptoCertDup
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataCtxDuplicateCert(xmlSecMSCryptoKeyDataCtxPtr
      ctxDst, xmlSecMSCryptoKeyDataCtxPtr ctxSrc)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:428,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:429,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:432,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:435,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:437,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:438,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:439,1
    - Dst: CryptAcquireCertificatePrivateKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:450,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:456,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:459,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:461,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:467,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:469,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:472,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:474,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:479,1
    - Dst: CryptImportPublicKeyInfo
      Src: /src/xmlsec/src/mscrypto/certkeys.c:490,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:490,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:494,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:498,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:500,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:503,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:505,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 54
    argCount: 3
    argNames:
    - data
    - pCert
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 422
    functionDepth: 3
    functionLinenumber: 422
    functionLinenumberEnd: 509
    functionName: xmlSecMSCryptoKeyDataAdoptCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataCtxSetProvider
    - xmlSecMSCryptoFindProvider
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecMSCryptoKeyDataCtxGetProvider
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    - CryptAcquireCertificatePrivateKey
    - xmlSecAssert2
    - CryptImportPublicKeyInfo
    - xmlSecMSCryptoKeyDataCtxSetKey
    - xmlSecMSCryptoKeyDataCtxSetCert
    - xmlSecKeyDataCheckSize
    - xmlSecUnsupportedEnumValueError
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxDestroyCert
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataAdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT
      pCert, xmlSecKeyDataType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:521,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:521,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:522,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:522,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:524,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:527,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:529,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:531,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:534,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:536,1
    - Dst: xmlSecMSCryptoKeyDataCtxSetCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:539,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:541,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 6
    argNames:
    - data
    - hProv
    - fCallerFreeProv
    - hKey
    - dwKeySpec
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - HCRYPTPROV
    - BOOL
    - HCRYPTKEY
    - DWORD
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 511
    functionDepth: 3
    functionLinenumber: 511
    functionLinenumberEnd: 549
    functionName: xmlSecMSCryptoKeyDataAdoptKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataCtxSetProvider
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecMSCryptoKeyDataCtxSetKey
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxSetCert
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataAdoptKey(xmlSecKeyDataPtr data,\n                              HCRYPTPROV
      hProv,\n                              BOOL fCallerFreeProv,\n                              HCRYPTKEY
      hKey,\n                              DWORD dwKeySpec,\n                              xmlSecKeyDataType
      type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:565,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:565,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:566,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:566,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:569,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/certkeys.c:570,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - data
    - type
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 561
    functionDepth: 1
    functionLinenumber: 561
    functionLinenumberEnd: 573
    functionName: xmlSecMSCryptoKeyDataGetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxGetKey
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: HCRYPTKEY
    signature: HCRYPTKEY xmlSecMSCryptoKeyDataGetKey(xmlSecKeyDataPtr data, xmlSecKeyDataType
      type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:589,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:590,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:590,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:593,1
    - Dst: CryptGetUserKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:595,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:595,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 584
    functionDepth: 1
    functionLinenumber: 584
    functionLinenumberEnd: 600
    functionName: xmlSecMSCryptoKeyDataGetDecryptKey
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCryptoKeyDataCtxGetProvider
    - xmlSecAssert2
    - CryptGetUserKey
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: HCRYPTKEY
    signature: HCRYPTKEY xmlSecMSCryptoKeyDataGetDecryptKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:615,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:615,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:616,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:616,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:618,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:619,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 622
    functionName: xmlSecMSCryptoKeyDataGetCert
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxGetCert
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoKeyDataGetCert(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:636,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:637,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:637,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:639,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:640,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 632
    functionDepth: 1
    functionLinenumber: 632
    functionLinenumberEnd: 643
    functionName: xmlSecMSCryptoKeyDataGetMSCryptoProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCryptoKeyDataCtxGetProvider
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: HCRYPTPROV
    signature: HCRYPTPROV xmlSecMSCryptoKeyDataGetMSCryptoProvider(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:657,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:657,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:658,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:658,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:660,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:661,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 664
    functionName: xmlSecMSCryptoKeyDataGetMSCryptoKeySpec
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: DWORD
    signature: DWORD xmlSecMSCryptoKeyDataGetMSCryptoKeySpec(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:680,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:682,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:683,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:684,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/certkeys.c:686,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:687,1
    - Dst: malloc
      Src: /src/xmlsec/src/mscrypto/certkeys.c:692,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/certkeys.c:694,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:695,1
    - Dst: free
      Src: /src/xmlsec/src/mscrypto/certkeys.c:696,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 702
    functionName: xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - free
    - xmlSecAssert2
    - CertGetCertificateContextProperty
    - malloc
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: PCRYPT_KEY_PROV_INFO
    signature: PCRYPT_KEY_PROV_INFO xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo(xmlSecKeyDataPtr
      data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:709,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:709,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:710,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:710,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:711,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:711,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:712,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:712,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:714,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:715,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:717,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:718,1
    - Dst: xmlSecMSCryptoKeyDataCtxDuplicateProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:720,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:721,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:722,1
    - Dst: xmlSecMSCryptoKeyDataCtxDuplicateKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:726,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:727,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:728,1
    - Dst: xmlSecMSCryptoKeyDataCtxDuplicateCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:732,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:733,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:734,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 704
    functionDepth: 3
    functionLinenumber: 704
    functionLinenumberEnd: 743
    functionName: xmlSecMSCryptoKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataCtxDuplicateKey
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxDuplicateProvider
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxDuplicateCert
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:750,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:751,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:751,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:753,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:754,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:756,1
    - Dst: xmlSecMSCryptoKeyDataCtxCreateProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:758,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:760,1
    - Dst: xmlSecMSCryptoKeyDataCtxCreateKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:763,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:765,1
    - Dst: xmlSecMSCryptoKeyDataCtxCreateCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:768,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 745
    functionDepth: 2
    functionLinenumber: 745
    functionLinenumberEnd: 770
    functionName: xmlSecMSCryptoKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxCreateProvider
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxCreateKey
    - xmlSecMSCryptoKeyDataCtxCreateCert
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:776,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:776,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:777,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:777,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:779,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:780,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:782,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:783,1
    - Dst: xmlSecMSCryptoKeyDataCtxDestroyProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:784,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 772
    functionDepth: 2
    functionLinenumber: 772
    functionLinenumberEnd: 787
    functionName: xmlSecMSCryptoKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecMSCryptoKeyDataCtxDestroyKey
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxDestroyCert
    - xmlSecMSCryptoKeyDataCtxDestroyProvider
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:795,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:795,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:796,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:796,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:798,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:799,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:801,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:804,1
    - Dst: CertGetPublicKeyLength
      Src: /src/xmlsec/src/mscrypto/certkeys.c:805,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:807,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:808,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/certkeys.c:811,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:812,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:815,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/certkeys.c:818,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/certkeys.c:818,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 820
    functionName: xmlSecMSCryptoKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxGetKey
    - CertGetPublicKeyLength
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - return
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoKeyDataCtxGetCert
    - CryptGetKeyParam
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:826,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:826,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:827,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:827,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:829,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:830,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 822
    functionDepth: 1
    functionLinenumber: 822
    functionLinenumberEnd: 838
    functionName: xmlSecMSCryptoKeyDataGetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:852,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:854,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - pCert
    argTypes:
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 849
    functionDepth: 1
    functionLinenumber: 849
    functionLinenumberEnd: 861
    functionName: xmlSecMSCryptoCertDup
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - CertDuplicateCertificateContext
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoCertDup(PCCERT_CONTEXT pCert)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:880,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:883,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:884,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:886,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:893,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:894,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:896,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:903,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:904,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:905,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:906,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:908,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:914,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:915,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:916,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:918,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:922,1
    - Dst: strcmp
      Src: /src/xmlsec/src/mscrypto/certkeys.c:923,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:924,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:926,1
    - Dst: xmlSecInvalidStringTypeError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:933,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:939,1
    - Dst: xmlSecMSCryptoKeyDataAdoptCert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:941,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:943,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:944,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 2
    argNames:
    - pCert
    - type
    argTypes:
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 873
    functionDepth: 4
    functionLinenumber: 873
    functionLinenumberEnd: 948
    functionName: xmlSecMSCryptoCertAdopt
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 3
    functionsReached:
    - xmlSecMSCryptoKeyDataAdoptCert
    - xmlSecInternalError
    - xmlSecInvalidStringTypeError
    - xmlSecAssert2
    - strcmp
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCryptoCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType
      type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1079
    functionDepth: 0
    functionLinenumber: 1079
    functionLinenumberEnd: 1082
    functionName: xmlSecMSCryptoKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataRsaGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1089,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1089,1
    - Dst: xmlSecMSCryptoKeyDataInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1091,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1093,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1097,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1098,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 1084
    functionDepth: 3
    functionLinenumber: 1084
    functionLinenumberEnd: 1102
    functionName: xmlSecMSCryptoKeyDataRsaInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataInitialize
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataRsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1106,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1107,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1107,1
    - Dst: xmlSecMSCryptoKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1110
      start: 1104
    functionDepth: 4
    functionLinenumber: 1104
    functionLinenumberEnd: 1110
    functionName: xmlSecMSCryptoKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1114,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1114,1
    - Dst: xmlSecMSCryptoKeyDataFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1112
    functionDepth: 3
    functionLinenumber: 1112
    functionLinenumberEnd: 1117
    functionName: xmlSecMSCryptoKeyDataRsaFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataRsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1122,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1119
    functionDepth: 3
    functionLinenumber: 1119
    functionLinenumberEnd: 1125
    functionName: xmlSecMSCryptoKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1130,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1131,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1127
    functionDepth: 3
    functionLinenumber: 1127
    functionLinenumberEnd: 1134
    functionName: xmlSecMSCryptoKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1147,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1148,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1148,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1149,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1150,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1151,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1154,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1157,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1160,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1160,1
    - Dst: CryptGenKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1167,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1168,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1168,1
    - Dst: xmlSecMSCryptoKeyDataAdoptKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1172,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1175,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1175,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1186,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1190,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1194
      start: 1136
    functionDepth: 4
    functionLinenumber: 1136
    functionLinenumberEnd: 1194
    functionName: xmlSecMSCryptoKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecKeyDataIsValid
    - CryptDestroyKey
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecAssert2
    - CryptGenKey
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataAdoptKey
    - CryptReleaseContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits,\n                                xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoKeyDataGetType
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1196
    functionDepth: 2
    functionLinenumber: 1196
    functionLinenumberEnd: 1199
    functionName: xmlSecMSCryptoKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataRsaGetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1203,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1203,1
    - Dst: xmlSecMSCryptoKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1201
    functionDepth: 2
    functionLinenumber: 1201
    functionLinenumberEnd: 1206
    functionName: xmlSecMSCryptoKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1210,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1210,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1211,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1213,1
    - Dst: xmlSecMSCryptoKeyDataRsaGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1208
    functionDepth: 3
    functionLinenumber: 1208
    functionLinenumberEnd: 1215
    functionName: xmlSecMSCryptoKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataRsaGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1218,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1218,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1219,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1221,1
    - Dst: xmlSecMSCryptoKeyDataRsaGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1223
      start: 1217
    functionDepth: 3
    functionLinenumber: 1217
    functionLinenumberEnd: 1223
    functionName: xmlSecMSCryptoKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataRsaGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1230,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1234,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1237,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1239,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1242,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1244,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - rsaValue
    argTypes:
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1248
      start: 1226
    functionDepth: 3
    functionLinenumber: 1226
    functionLinenumberEnd: 1248
    functionName: xmlSecMSCryptoKeyValueRsaReverse
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecBufferReverse
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyValueRsaReverse(xmlSecKeyValueRsaPtr rsaValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1266,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1268,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1269,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1269,1
    - Dst: xmlSecMSCryptoKeyValueRsaReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1272,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1274,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1277,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1280,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1284,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1286,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1286,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1292,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1294,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1298,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1298,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1301,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1308,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1313,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1316,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1317,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1317,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1320,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1322,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1325,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1325,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1331,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1333,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1333,1
    - Dst: CryptImportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1338,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1338,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1339,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1339,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1343,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1345,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1345,1
    - Dst: xmlSecMSCryptoKeyDataAdoptKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1349,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1351,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1351,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1363,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1366,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1369,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1372,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 92
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1250
    functionDepth: 4
    functionLinenumber: 1250
    functionLinenumberEnd: 1375
    functionName: xmlSecMSCryptoKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoError
    - xmlSecBufferFinalize
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecKeyDataDestroy
    - CryptReleaseContext
    - xmlSecKeyDataCreate
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - memset
    - xmlSecInvalidSizeLessThanError
    - CryptDestroyKey
    - CryptImportKey
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCryptoKeyDataAdoptKey
    - memcpy
    - xmlSecMSCryptoKeyValueRsaReverse
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCryptoKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1394,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1395,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1396,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1400,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1400,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1403,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1403,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1404,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1404,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1410,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1412,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1412,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1419,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1420,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1420,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1421,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1421,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1427,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1427,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1433,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1433,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1438,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1438,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1445,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1445,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1451,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1451,1
    - Dst: xmlSecMSCryptoError3
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1459,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1459,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1466,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1468,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1468,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1479,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1481,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1481,1
    - Dst: xmlSecMSCryptoKeyValueRsaReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1489,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1491,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1500,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 92
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1377
    functionDepth: 4
    functionLinenumber: 1377
    functionLinenumberEnd: 1503
    functionName: xmlSecMSCryptoKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - CryptExportKey
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxGetKey
    - xmlSecInternalError2
    - xmlSecMSCryptoError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecMSCryptoError3
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecMSCryptoKeyValueRsaReverse
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataRsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n    xmlSecKeyValueRsaPtr rsaValue, int writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1673
      start: 1670
    functionDepth: 0
    functionLinenumber: 1670
    functionLinenumberEnd: 1673
    functionName: xmlSecMSCryptoKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataDsaGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1681,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1681,1
    - Dst: xmlSecMSCryptoKeyDataInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1683,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1685,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1689,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1690,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1694
      start: 1676
    functionDepth: 3
    functionLinenumber: 1676
    functionLinenumberEnd: 1694
    functionName: xmlSecMSCryptoKeyDataDsaInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataInitialize
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataDsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1698,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1698,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1699,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1699,1
    - Dst: xmlSecMSCryptoKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1696
    functionDepth: 4
    functionLinenumber: 1696
    functionLinenumberEnd: 1702
    functionName: xmlSecMSCryptoKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1706,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1706,1
    - Dst: xmlSecMSCryptoKeyDataFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1704
    functionDepth: 3
    functionLinenumber: 1704
    functionLinenumberEnd: 1709
    functionName: xmlSecMSCryptoKeyDataDsaFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataDsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1714,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1711
    functionDepth: 3
    functionLinenumber: 1711
    functionLinenumberEnd: 1717
    functionName: xmlSecMSCryptoKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                           xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1722,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1723,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1719
    functionDepth: 3
    functionLinenumber: 1719
    functionLinenumberEnd: 1726
    functionName: xmlSecMSCryptoKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1738,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1738,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1739,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1739,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1740,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1740,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1741,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1742,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1744,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1746,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1748,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1748,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1753,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1753,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1753,1
    - Dst: CryptGenKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1755,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1756,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1756,1
    - Dst: xmlSecMSCryptoKeyDataAdoptKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1760,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1763,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1763,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1774,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1778,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1728
    functionDepth: 4
    functionLinenumber: 1728
    functionLinenumberEnd: 1782
    functionName: xmlSecMSCryptoKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecKeyDataIsValid
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - CryptDestroyKey
    - xmlSecAssert2
    - CryptGenKey
    - return
    - xmlSecKeyDataCheckSize
    - xmlSecMSCryptoKeyDataAdoptKey
    - CryptReleaseContext
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoError
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoKeyDataGetType
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1784
    functionDepth: 2
    functionLinenumber: 1784
    functionLinenumberEnd: 1787
    functionName: xmlSecMSCryptoKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataDsaGetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1791,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1791,1
    - Dst: xmlSecMSCryptoKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1794
      start: 1789
    functionDepth: 2
    functionLinenumber: 1789
    functionLinenumberEnd: 1794
    functionName: xmlSecMSCryptoKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1798,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1798,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1799,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1801,1
    - Dst: xmlSecMSCryptoKeyDataDsaGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1796
    functionDepth: 3
    functionLinenumber: 1796
    functionLinenumberEnd: 1803
    functionName: xmlSecMSCryptoKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataDsaGetSize
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1807,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1807,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1808,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1810,1
    - Dst: xmlSecMSCryptoKeyDataDsaGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1812
      start: 1805
    functionDepth: 3
    functionLinenumber: 1805
    functionLinenumberEnd: 1812
    functionName: xmlSecMSCryptoKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataDsaGetSize
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1818,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1820,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1822,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1825,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1827,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1830,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1832,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1835,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1837,1
    - Dst: xmlSecBufferReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1840,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1842,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - dsaValue
    argTypes:
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1814
    functionDepth: 3
    functionLinenumber: 1814
    functionLinenumberEnd: 1846
    functionName: xmlSecMSCryptoKeyValueDsaReverse
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecBufferReverse
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyValueDsaReverse(xmlSecKeyValueDsaPtr dsaValue)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1865,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1866,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1867,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1867,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1868,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1868,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1869,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1869,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1870,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1870,1
    - Dst: xmlSecMSCryptoKeyValueDsaReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1873,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1875,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1884,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1885,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1886,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1887,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1888,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1889,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1890,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1891,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1892,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1893,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1894,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1901,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1903,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1909,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1911,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1915,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1915,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1918,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1925,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1928,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1931,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1934,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1934,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1938,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1938,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1942,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1942,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1949,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1949,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1954,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1957,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1959,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1959,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1964,1
    - Dst: CryptImportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1966,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1966,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1967,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1967,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1971,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1973,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1973,1
    - Dst: xmlSecMSCryptoKeyDataAdoptKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1977,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1979,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1979,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1991,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1994,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/certkeys.c:1997,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2000,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 104
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2003
      start: 1848
    functionDepth: 4
    functionLinenumber: 1848
    functionLinenumberEnd: 2003
    functionName: xmlSecMSCryptoKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoError
    - xmlSecBufferFinalize
    - xmlSecKeyDataDestroy
    - CryptReleaseContext
    - xmlSecKeyDataCreate
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - memset
    - CryptDestroyKey
    - memcpy
    - xmlSecMSCryptoKeyValueDsaReverse
    - CryptImportKey
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecMSCryptoKeyDataAdoptKey
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecMSCryptoKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2021,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2022,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2023,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2023,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2024,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2025,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2027,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2028,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2029,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2029,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2032,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2033,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2040,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2040,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2046,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2048,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2048,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2054,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2055,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2057,1
    - Dst: xmlSecMSCryptoKeyDataCtxGetKey
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2058,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2065,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2065,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2072,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2072,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2078,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2078,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2083,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2083,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2090,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2090,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2096,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2096,1
    - Dst: xmlSecMSCryptoError3
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2105,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2105,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2113,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2115,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2115,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2123,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2125,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2125,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2133,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2135,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2135,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2146,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2148,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2148,1
    - Dst: xmlSecMSCryptoKeyValueDsaReverse
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2155,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2157,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2166,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 111
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2169
      start: 2005
    functionDepth: 4
    functionLinenumber: 2005
    functionLinenumberEnd: 2169
    functionName: xmlSecMSCryptoKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - CryptExportKey
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataCtxGetKey
    - xmlSecInternalError2
    - xmlSecMSCryptoKeyValueDsaReverse
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecMSCryptoError3
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecMSCryptoKeyDataGetCtx
    - xmlSecMSCryptoError2
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                              xmlSecKeyValueDsaPtr dsaValue,\n                              int
      writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2259
    functionDepth: 0
    functionLinenumber: 2259
    functionLinenumberEnd: 2262
    functionName: xmlSecMSCryptoKeyDataGost2001GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataGost2001GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2270,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2270,1
    - Dst: xmlSecMSCryptoKeyDataInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2272,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2274,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2283
      start: 2265
    functionDepth: 3
    functionLinenumber: 2265
    functionLinenumberEnd: 2283
    functionName: xmlSecMSCryptoKeyDataGost2001Initialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataInitialize
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2001Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2287,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2288,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2288,1
    - Dst: xmlSecMSCryptoKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2291
      start: 2285
    functionDepth: 4
    functionLinenumber: 2285
    functionLinenumberEnd: 2291
    functionName: xmlSecMSCryptoKeyDataGost2001Duplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2001Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2295,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2295,1
    - Dst: xmlSecMSCryptoKeyDataFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2293
    functionDepth: 3
    functionLinenumber: 2293
    functionLinenumberEnd: 2298
    functionName: xmlSecMSCryptoKeyDataGost2001Finalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2001Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoKeyDataGetType
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2303
      start: 2300
    functionDepth: 2
    functionLinenumber: 2300
    functionLinenumberEnd: 2303
    functionName: xmlSecMSCryptoKeyDataGost2001GetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataGost2001GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2307,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2307,1
    - Dst: xmlSecMSCryptoKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2310
      start: 2305
    functionDepth: 2
    functionLinenumber: 2305
    functionLinenumberEnd: 2310
    functionName: xmlSecMSCryptoKeyDataGost2001GetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataGost2001GetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2314,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2314,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2315,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2317,1
    - Dst: xmlSecMSCryptoKeyDataGost2001GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2319
      start: 2312
    functionDepth: 3
    functionLinenumber: 2312
    functionLinenumberEnd: 2319
    functionName: xmlSecMSCryptoKeyDataGost2001DebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGost2001GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2001DebugDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2323,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2323,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2324,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2326,1
    - Dst: xmlSecMSCryptoKeyDataGost2001GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2328
      start: 2321
    functionDepth: 3
    functionLinenumber: 2321
    functionLinenumberEnd: 2328
    functionName: xmlSecMSCryptoKeyDataGost2001DebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGost2001GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2001DebugXmlDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2418
    functionDepth: 0
    functionLinenumber: 2418
    functionLinenumberEnd: 2421
    functionName: xmlSecMSCryptoKeyDataGost2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataGost2012_256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2429,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2429,1
    - Dst: xmlSecMSCryptoKeyDataInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2431,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2433,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2437,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2438,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2442
      start: 2424
    functionDepth: 3
    functionLinenumber: 2424
    functionLinenumberEnd: 2442
    functionName: xmlSecMSCryptoKeyDataGost2012_256Initialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataInitialize
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2012_256Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2446,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2447,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2447,1
    - Dst: xmlSecMSCryptoKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2450
      start: 2444
    functionDepth: 4
    functionLinenumber: 2444
    functionLinenumberEnd: 2450
    functionName: xmlSecMSCryptoKeyDataGost2012_256Duplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2012_256Duplicate(xmlSecKeyDataPtr dst,
      xmlSecKeyDataPtr src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2454,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2454,1
    - Dst: xmlSecMSCryptoKeyDataFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2457
      start: 2452
    functionDepth: 3
    functionLinenumber: 2452
    functionLinenumberEnd: 2457
    functionName: xmlSecMSCryptoKeyDataGost2012_256Finalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_256Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoKeyDataGetType
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2459
    functionDepth: 2
    functionLinenumber: 2459
    functionLinenumberEnd: 2462
    functionName: xmlSecMSCryptoKeyDataGost2012_256GetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataGost2012_256GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2466,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2466,1
    - Dst: xmlSecMSCryptoKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2469
      start: 2464
    functionDepth: 2
    functionLinenumber: 2464
    functionLinenumberEnd: 2469
    functionName: xmlSecMSCryptoKeyDataGost2012_256GetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataGost2012_256GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2473,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2473,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2474,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2476,1
    - Dst: xmlSecMSCryptoKeyDataGost2012_256GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2478
      start: 2471
    functionDepth: 3
    functionLinenumber: 2471
    functionLinenumberEnd: 2478
    functionName: xmlSecMSCryptoKeyDataGost2012_256DebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecMSCryptoKeyDataGost2012_256GetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_256DebugDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2482,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2482,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2483,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2485,1
    - Dst: xmlSecMSCryptoKeyDataGost2012_256GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2480
    functionDepth: 3
    functionLinenumber: 2480
    functionLinenumberEnd: 2487
    functionName: xmlSecMSCryptoKeyDataGost2012_256DebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecMSCryptoKeyDataGost2012_256GetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_256DebugXmlDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2576
      start: 2573
    functionDepth: 0
    functionLinenumber: 2573
    functionLinenumberEnd: 2576
    functionName: xmlSecMSCryptoKeyDataGost2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataGost2012_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2584,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2584,1
    - Dst: xmlSecMSCryptoKeyDataInitialize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2586,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2588,1
    - Dst: xmlSecMSCryptoKeyDataGetCtx
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2597
      start: 2579
    functionDepth: 3
    functionLinenumber: 2579
    functionLinenumberEnd: 2597
    functionName: xmlSecMSCryptoKeyDataGost2012_512Initialize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataInitialize
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2012_512Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2601,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2601,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2602,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2602,1
    - Dst: xmlSecMSCryptoKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2605
      start: 2599
    functionDepth: 4
    functionLinenumber: 2599
    functionLinenumberEnd: 2605
    functionName: xmlSecMSCryptoKeyDataGost2012_512Duplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataGost2012_512Duplicate(xmlSecKeyDataPtr dst,
      xmlSecKeyDataPtr src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2609,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2609,1
    - Dst: xmlSecMSCryptoKeyDataFinalize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2612
      start: 2607
    functionDepth: 3
    functionLinenumber: 2607
    functionLinenumberEnd: 2612
    functionName: xmlSecMSCryptoKeyDataGost2012_512Finalize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_512Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoKeyDataGetType
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2614
    functionDepth: 2
    functionLinenumber: 2614
    functionLinenumberEnd: 2617
    functionName: xmlSecMSCryptoKeyDataGost2012_512GetType
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoKeyDataGost2012_512GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2621,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2621,1
    - Dst: xmlSecMSCryptoKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2624
      start: 2619
    functionDepth: 2
    functionLinenumber: 2619
    functionLinenumberEnd: 2624
    functionName: xmlSecMSCryptoKeyDataGost2012_512GetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoKeyDataGost2012_512GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2628,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2628,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2629,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2631,1
    - Dst: xmlSecMSCryptoKeyDataGost2012_512GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2633
      start: 2626
    functionDepth: 3
    functionLinenumber: 2626
    functionLinenumberEnd: 2633
    functionName: xmlSecMSCryptoKeyDataGost2012_512DebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGost2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_512DebugDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2637,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2637,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2638,1
    - Dst: fprintf
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2640,1
    - Dst: xmlSecMSCryptoKeyDataGost2012_512GetSize
      Src: /src/xmlsec/src/mscrypto/certkeys.c:2641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2642
      start: 2635
    functionDepth: 3
    functionLinenumber: 2635
    functionLinenumberEnd: 2642
    functionName: xmlSecMSCryptoKeyDataGost2012_512DebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/certkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecMSCryptoKeyDataGost2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeyDataGost2012_512DebugXmlDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:69,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:70,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:71,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:72,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:73,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:74,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/ciphers.c:78,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:79,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:84,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/ciphers.c:85,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:85,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:87,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:88,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:94,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:96,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:100,1
    - Dst: CryptGenRandom
      Src: /src/xmlsec/src/mscrypto/ciphers.c:103,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:104,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/ciphers.c:108,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:109,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:118,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:118,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/ciphers.c:121,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:121,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:122,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/ciphers.c:127,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:129,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCryptoBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 138
    functionName: xmlSecMSCryptoBlockCipherCtxInit
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - CryptSetKeyParam
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - CryptGenRandom
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecMSCryptoError2
    - CryptGetKeyParam
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoBlockCipherCtxInit(xmlSecMSCryptoBlockCipherCtxPtr
      ctx,\n                                 xmlSecBufferPtr in,\n                                 xmlSecBufferPtr
      out,\n                                 int encrypt,\n                                 const
      xmlChar* cipherName,\n                                 xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:155,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:156,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/ciphers.c:159,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:164,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/ciphers.c:165,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:165,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:167,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:168,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:184,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:186,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:190,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:192,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/ciphers.c:194,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:195,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:195,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:199,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:199,1
    - Dst: CryptEncrypt
      Src: /src/xmlsec/src/mscrypto/ciphers.c:200,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:201,1
    - Dst: CryptDecrypt
      Src: /src/xmlsec/src/mscrypto/ciphers.c:205,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:206,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:212,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:217,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:219,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/ciphers.c:225,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:227,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 62
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCryptoBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 232
    functionName: xmlSecMSCryptoBlockCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - CryptDecrypt
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - memcpy
    - CryptEncrypt
    - CryptGetKeyParam
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoBlockCipherCtxUpdate(xmlSecMSCryptoBlockCipherCtxPtr
      ctx,\n                                   xmlSecBufferPtr in, xmlSecBufferPtr
      out,\n                                   int encrypt,\n                                   const
      xmlChar* cipherName,\n                                   xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:251,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/ciphers.c:254,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:259,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/ciphers.c:260,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:260,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:262,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:266,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:269,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:271,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:275,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:279,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:279,1
    - Dst: CryptGenRandom
      Src: /src/xmlsec/src/mscrypto/ciphers.c:280,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:281,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
      Src: /src/xmlsec/src/mscrypto/ciphers.c:285,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:285,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:289,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:292,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:296,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:298,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:302,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/ciphers.c:303,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:305,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:305,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:311,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:311,1
    - Dst: CryptEncrypt
      Src: /src/xmlsec/src/mscrypto/ciphers.c:312,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:313,1
    - Dst: CryptDecrypt
      Src: /src/xmlsec/src/mscrypto/ciphers.c:317,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:318,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:325,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:332,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:342,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:344,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/ciphers.c:349,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:351,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 84
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecMSCryptoBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 356
    functionName: xmlSecMSCryptoBlockCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    - return
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecInvalidSizeError
    - xmlSecBufferSetMaxSize
    - CryptGenRandom
    - CryptEncrypt
    - CryptGetKeyParam
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidSizeLessThanError
    - CryptDecrypt
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr
      ctx,\n                                  xmlSecBufferPtr in,\n                                  xmlSecBufferPtr
      out,\n                                  int encrypt,\n                                  const
      xmlChar* cipherName,\n                                  xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:403,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:409,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:410,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:411,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 418
    functionName: xmlSecMSCryptoBlockCipherCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoBlockCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:424,1
    - Dst: xmlSecMSCryptoBlockCipherCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:425,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:425,1
    - Dst: xmlSecMSCryptoBlockCipherGetCtx
      Src: /src/xmlsec/src/mscrypto/ciphers.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:428,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/ciphers.c:430,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:461,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/ciphers.c:465,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:467,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:468,1
    - Dst: xmlSecMSCryptoCreatePrivateExponentOneKey
      Src: /src/xmlsec/src/mscrypto/ciphers.c:473,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:474,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:475,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 44
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 481
    functionName: xmlSecMSCryptoBlockCipherInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoCreatePrivateExponentOneKey
    - xmlSecMSCryptoBlockCipherCheckId
    - xmlSecMSCryptoError
    - xmlSecTransformGetName
    - xmlSecMSCryptoBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoBlockCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/ciphers.c:487,1
    - Dst: xmlSecMSCryptoBlockCipherCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:487,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/ciphers.c:488,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:488,1
    - Dst: xmlSecMSCryptoBlockCipherGetCtx
      Src: /src/xmlsec/src/mscrypto/ciphers.c:490,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/ciphers.c:491,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/ciphers.c:494,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/ciphers.c:497,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/ciphers.c:500,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/ciphers.c:503,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 483
    functionDepth: 2
    functionLinenumber: 483
    functionLinenumberEnd: 504
    functionName: xmlSecMSCryptoBlockCipherFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - CryptDestroyKey
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoBlockCipherCheckId
    - xmlSecAssert
    - CryptReleaseContext
    - xmlSecMSCryptoBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoBlockCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:510,1
    - Dst: xmlSecMSCryptoBlockCipherCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:511,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:512,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:512,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:513,1
    - Dst: xmlSecMSCryptoBlockCipherGetCtx
      Src: /src/xmlsec/src/mscrypto/ciphers.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:516,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:517,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 506
    functionDepth: 2
    functionLinenumber: 506
    functionLinenumberEnd: 529
    functionName: xmlSecMSCryptoBlockCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoBlockCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoBlockCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:538,1
    - Dst: xmlSecMSCryptoBlockCipherCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:538,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:539,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:540,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:541,1
    - Dst: xmlSecMSCryptoBlockCipherGetCtx
      Src: /src/xmlsec/src/mscrypto/ciphers.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:548,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:548,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:549,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/ciphers.c:551,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/ciphers.c:551,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:552,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:554,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:555,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:555,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:556,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/ciphers.c:560,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:561,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/ciphers.c:564,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/ciphers.c:564,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:564,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/ciphers.c:565,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:573,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:574,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 579
    functionName: xmlSecMSCryptoBlockCipherSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInvalidKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoBlockCipherCheckId
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - xmlSecMSCryptoBlockCipherGetCtx
    - xmlSecMSCryptoImportPlainSessionBlob
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:587,1
    - Dst: xmlSecMSCryptoBlockCipherCheckId
      Src: /src/xmlsec/src/mscrypto/ciphers.c:587,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:588,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:589,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:590,1
    - Dst: xmlSecMSCryptoBlockCipherGetCtx
      Src: /src/xmlsec/src/mscrypto/ciphers.c:595,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:596,1
    - Dst: xmlSecMSCryptoBlockCipherCtxInit
      Src: /src/xmlsec/src/mscrypto/ciphers.c:604,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:608,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:612,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:613,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:618,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:619,1
    - Dst: xmlSecMSCryptoBlockCipherCtxUpdate
      Src: /src/xmlsec/src/mscrypto/ciphers.c:623,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:625,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:627,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:628,1
    - Dst: xmlSecMSCryptoBlockCipherCtxFinal
      Src: /src/xmlsec/src/mscrypto/ciphers.c:634,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:636,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:639,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/ciphers.c:640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:647,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/ciphers.c:647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/ciphers.c:650,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscrypto/ciphers.c:652,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 581
    functionDepth: 3
    functionLinenumber: 581
    functionLinenumberEnd: 657
    functionName: xmlSecMSCryptoBlockCipherExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoBlockCipherCtxUpdate
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoBlockCipherCtxFinal
    - xmlSecAssert2
    - xmlSecMSCryptoBlockCipherCheckId
    - xmlSecInvalidTransfromStatusError
    - xmlSecMSCryptoBlockCipherCtxInit
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecMSCryptoBlockCipherGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoBlockCipherExecute(xmlSecTransformPtr transform,
      int last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionName: xmlSecMSCryptoTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 741
    functionName: xmlSecMSCryptoTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 780
    functionName: xmlSecMSCryptoTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 823
    functionName: xmlSecMSCryptoTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformDes3CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: xmlSecMSCryptoX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecMSCryptoX509StoreGetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:124,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:126,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:127,1
    - Dst: xmlSecMSCryptoX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:131,1
    - Dst: xmlSecMSCryptoX509StoreFindCert_ex
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 115
    functionDepth: 4
    functionLinenumber: 115
    functionLinenumberEnd: 139
    functionName: xmlSecMSCryptoX509StoreFindCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecBase64DecodeInPlace
    - xmlSecMSCryptoX509StoreFindCert_ex
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoX509StoreFindCert(xmlSecKeyDataStorePtr
      store, xmlChar *subjectName,\n                xmlChar *issuerName, xmlChar *issuerSerial,\n
      \               xmlChar *ski, xmlSecKeyInfoCtx* keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:164,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:164,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:165,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:168,1
    - Dst: xmlSecMSCryptoX509FindCert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:172,1
    - Dst: xmlSecMSCryptoX509FindCert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 7
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    - keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 183
    functionName: xmlSecMSCryptoX509StoreFindCert_ex
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecMSCryptoX509FindCert
    - xmlSecKeyDataStoreCheckId
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoX509StoreFindCert_ex(xmlSecKeyDataStorePtr
      store, xmlChar* subjectName,\n                                   xmlChar* issuerName,
      xmlChar* issuerSerial,\n                                   xmlSecByte* ski,
      xmlSecSize skiSize,\n                                   xmlSecKeyInfoCtx* keyInfoCtx
      XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:191,1
    - Dst: Int32x32To64
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:194,1
    - Dst: Int32x32To64
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - pft
    argTypes:
    - time_t
    - LPFILETIME
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 200
    functionName: xmlSecMSCryptoUnixTimeToFileTime
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - Int32x32To64
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoUnixTimeToFileTime(time_t t, LPFILETIME pft)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:206,1
    - Dst: CompareFileTime
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:208,1
    - Dst: CompareFileTime
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - pCert
    - pft
    argTypes:
    - PCCERT_CONTEXT
    - LPFILETIME
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 216
    functionName: xmlSecMSCryptoVerifyCertTime
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CompareFileTime
    linkageType: ''
    returnType: BOOL
    signature: BOOL xmlSecMSCryptoVerifyCertTime(PCCERT_CONTEXT pCert, LPFILETIME
      pft)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:224,1
    - Dst: CertEnumCRLsInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:226,1
    - Dst: CertFindCertificateInCRL
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:227,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:228,1
    - Dst: CertFreeCRLContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:230,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - hStore
    - pCert
    argTypes:
    - HCERTSTORE
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 236
    functionName: xmlSecMSCryptoCheckRevocation
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - CertFindCertificateInCRL
    - CertFreeCRLContext
    - CertEnumCRLsInStore
    - xmlSecOtherError
    linkageType: ''
    returnType: BOOL
    signature: BOOL xmlSecMSCryptoCheckRevocation(HCERTSTORE hStore, PCCERT_CONTEXT
      pCert)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:260,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:264,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:266,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:269,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:270,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:273,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:274,1
    - Dst: CertGetCertificateChain
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:280,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:288,1
    - Dst: CertFreeCertificateChain
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:292,1
    - Dst: CertGetCertificateChain
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:293,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:301,1
    - Dst: CertFreeCertificateChain
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:311,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:312,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 4
    argNames:
    - cert
    - pfTime
    - store_untrusted
    - store_doc
    argTypes:
    - PCCERT_CONTEXT
    - LPFILETIME
    - HCERTSTORE
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 314
    functionName: xmlSecBuildChainUsingWinapi
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - CertOpenStore
    - CertFreeCertificateChain
    - CertGetCertificateChain
    - xmlSecMSCryptoError
    - CertCloseStore
    - CertAddStoreToCollection
    - memset
    linkageType: ''
    returnType: BOOL
    signature: "BOOL xmlSecBuildChainUsingWinapi (PCCERT_CONTEXT cert, LPFILETIME
      pfTime,\n                HCERTSTORE store_untrusted, HCERTSTORE store_doc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:325,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:327,1
    - Dst: CertVerifySubjectCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:330,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:332,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:338,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:339,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:346,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:347,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - store
    - cert
    - issuerCert
    argTypes:
    - xmlSecKeyDataStorePtr
    - PCCERT_CONTEXT
    - PCCERT_CONTEXT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 320
    functionDepth: 1
    functionLinenumber: 320
    functionLinenumberEnd: 354
    functionName: xmlSecMSCryptoX509StoreVerifySubject
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCryptoError
    - CertVerifySubjectCertificateContext
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreVerifySubject(xmlSecKeyDataStorePtr store,
      PCCERT_CONTEXT cert, PCCERT_CONTEXT issuerCert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:366,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:369,1
    - Dst: xmlSecMSCryptoX509StoreVerifySubject
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:379,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:381,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:384,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:391,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - store
    - name
    - cert
    - keyDataStore
    argTypes:
    - HCERTSTORE
    - CERT_NAME_BLOB*
    - PCCERT_CONTEXT
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 397
    functionName: xmlSecMSCryptoX509StoreContainsCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoX509StoreVerifySubject
    - CertFreeCertificateContext
    - CertFindCertificateInStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoX509StoreContainsCert(HCERTSTORE store, CERT_NAME_BLOB*
      name,\n    PCCERT_CONTEXT cert, xmlSecKeyDataStorePtr keyDataStore)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecMSCryptoVerifyCertTime
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:421,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:422,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:423,1
    - Dst: xmlSecMSCryptoCheckRevocation
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:428,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:429,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:430,1
    - Dst: xmlSecMSCryptoX509StoreContainsCert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:436,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:439,1
    - Dst: xmlSecMSCryptoX509StoreContainsCert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:447,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:450,1
    - Dst: CertCompareCertificateName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:458,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:466,1
    - Dst: xmlSecMSCryptoX509StoreVerifySubject
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:473,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:475,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:476,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:480,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:483,1
    - Dst: xmlSecMSCryptoBuildCertChainManually
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:487,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:488,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:489,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:494,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:499,1
    - Dst: xmlSecMSCryptoX509StoreVerifySubject
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:506,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:508,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:509,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:513,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:516,1
    - Dst: xmlSecMSCryptoBuildCertChainManually
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:520,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:521,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:522,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:527,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 72
    argCount: 6
    argNames:
    - cert
    - pfTime
    - store_trusted
    - store_untrusted
    - certs
    - store
    argTypes:
    - PCCERT_CONTEXT
    - LPFILETIME
    - HCERTSTORE
    - HCERTSTORE
    - HCERTSTORE
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 413
    functionDepth: 3
    functionLinenumber: 413
    functionLinenumberEnd: 533
    functionName: xmlSecMSCryptoBuildCertChainManually
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoVerifyCertTime
    - xmlSecInternalError
    - xmlSecMSCryptoX509StoreVerifySubject
    - xmlSecKeyDataStoreGetName
    - xmlSecMSCryptoX509StoreContainsCert
    - CertFreeCertificateContext
    - xmlSecMSCryptoBuildCertChainManually
    - CertFindCertificateInStore
    - CertCompareCertificateName
    - xmlSecMSCryptoCheckRevocation
    - xmlSecOtherError
    linkageType: ''
    returnType: BOOL
    signature: "BOOL xmlSecMSCryptoBuildCertChainManually (PCCERT_CONTEXT cert, LPFILETIME
      pfTime,\n        HCERTSTORE store_trusted, HCERTSTORE store_untrusted, HCERTSTORE
      certs,\n        xmlSecKeyDataStorePtr store)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:543,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:547,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:551,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:552,1
    - Dst: xmlSecMSCryptoUnixTimeToFileTime
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:556,1
    - Dst: GetSystemTimeAsFileTime
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:559,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:564,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:566,1
    - Dst: xmlSecMSCryptoBuildCertChainManually
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:567,1
    - Dst: xmlSecBuildChainUsingWinapi
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:573,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 4
    argNames:
    - store
    - cert
    - certs
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - PCCERT_CONTEXT
    - HCERTSTORE
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 535
    functionDepth: 4
    functionLinenumber: 535
    functionLinenumberEnd: 578
    functionName: xmlSecMSCryptoX509StoreConstructCertsChain
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecMSCryptoUnixTimeToFileTime
    - CertFreeCertificateContext
    - xmlSecMSCryptoBuildCertChainManually
    - xmlSecKeyDataStoreCheckId
    - xmlSecBuildChainUsingWinapi
    - CertEnumCertificatesInStore
    - GetSystemTimeAsFileTime
    linkageType: ''
    returnType: BOOL
    signature: "BOOL xmlSecMSCryptoX509StoreConstructCertsChain(xmlSecKeyDataStorePtr
      store, PCCERT_CONTEXT cert, HCERTSTORE certs,\n                              xmlSecKeyInfoCtx*
      keyInfoCtx)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:595,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:595,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:596,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:597,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:603,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:608,1
    - Dst: CertCompareCertificateName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:614,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:620,1
    - Dst: xmlSecMSCryptoX509StoreConstructCertsChain
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:625,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - store
    - certs
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 590
    functionDepth: 5
    functionLinenumber: 590
    functionLinenumberEnd: 632
    functionName: xmlSecMSCryptoX509StoreVerify
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - CertFreeCertificateContext
    - xmlSecMSCryptoX509StoreConstructCertsChain
    - xmlSecKeyDataStoreCheckId
    - CertFindCertificateInStore
    - CertEnumCertificatesInStore
    - CertCompareCertificateName
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoX509StoreVerify(xmlSecKeyDataStorePtr
      store, HCERTSTORE certs,\n                  xmlSecKeyInfoCtx* keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:649,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:649,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:650,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:652,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:653,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:654,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:655,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:662,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:662,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:670,1
    - Dst: CertAddCertificateContextToStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:671,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:672,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:673,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:676,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - store
    - pCert
    - type
    argTypes:
    - xmlSecKeyDataStorePtr
    - PCCERT_CONTEXT
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 679
    functionName: xmlSecMSCryptoX509StoreAdoptCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - CertAddCertificateContextToStore
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - CertFreeCertificateContext
    - xmlSecKeyDataStoreCheckId
    - xmlSecUnsupportedEnumValueError
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreAdoptCert(xmlSecKeyDataStorePtr store, PCCERT_CONTEXT
      pCert, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:695,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:696,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:698,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:699,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:700,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:702,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:703,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - keyStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 691
    functionDepth: 1
    functionLinenumber: 691
    functionLinenumberEnd: 709
    functionName: xmlSecMSCryptoX509StoreAdoptKeyStore
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCryptoError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreAdoptKeyStore (xmlSecKeyDataStorePtr store,
      HCERTSTORE keyStore)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:724,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:724,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:725,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:727,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:728,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:729,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:731,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:732,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:733,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - trustedStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 738
    functionName: xmlSecMSCryptoX509StoreAdoptTrustedStore
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCryptoError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreAdoptTrustedStore (xmlSecKeyDataStorePtr
      store, HCERTSTORE trustedStore)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:753,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:753,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:754,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:756,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:757,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:758,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:760,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:761,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:762,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - untrustedStore
    argTypes:
    - xmlSecKeyDataStorePtr
    - HCERTSTORE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 749
    functionDepth: 1
    functionLinenumber: 749
    functionLinenumberEnd: 767
    functionName: xmlSecMSCryptoX509StoreAdoptUntrustedStore
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCryptoError
    - CertAddStoreToCollection
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreAdoptUntrustedStore (xmlSecKeyDataStorePtr
      store, HCERTSTORE untrustedStore)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:780,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:780,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:782,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:783,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - store
    - val
    argTypes:
    - xmlSecKeyDataStorePtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 788
    functionName: xmlSecMSCryptoX509StoreEnableSystemTrustedCerts
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecKeyDataStoreCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoX509StoreEnableSystemTrustedCerts (xmlSecKeyDataStorePtr
      store, int val)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:796,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:796,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:798,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:799,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:801,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:804,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:810,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:811,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:816,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:822,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:823,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:824,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:830,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:831,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:832,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:833,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:834,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:838,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:841,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:847,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:848,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:849,1
    - Dst: CertOpenStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:855,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:861,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:862,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:863,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:864,1
    - Dst: CertAddStoreToCollection
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:871,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:872,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:873,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:874,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:875,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:876,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:881,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 52
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 884
      start: 790
    functionDepth: 1
    functionLinenumber: 790
    functionLinenumberEnd: 884
    functionName: xmlSecMSCryptoX509StoreInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - CertOpenStore
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecMSCryptoError
    - CertCloseStore
    - CertAddStoreToCollection
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:889,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:889,1
    - Dst: xmlSecMSCryptoX509StoreGetCtx
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:891,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:892,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:895,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:898,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:901,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 886
    functionDepth: 1
    functionLinenumber: 886
    functionLinenumberEnd: 902
    functionName: xmlSecMSCryptoX509StoreFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoX509StoreGetCtx
    - xmlSecAssert
    - xmlSecKeyDataStoreCheckId
    - CertCloseStore
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoX509StoreFinalize(xmlSecKeyDataStorePtr store)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:926,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:927,1
    - Dst: CertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:929,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:935,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:937,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:940,1
    - Dst: CertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:942,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:944,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:945,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 4
    argNames:
    - dwCertEncodingType
    - pszX500
    - dwStrType
    - len
    argTypes:
    - DWORD
    - LPTSTR
    - DWORD
    - DWORD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 921
    functionDepth: 1
    functionLinenumber: 921
    functionLinenumberEnd: 950
    functionName: xmlSecMSCryptoCertStrToName
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - CertStrToName
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecMSCryptoError
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: BYTE
    signature: 'BYTE *

      xmlSecMSCryptoCertStrToName(DWORD dwCertEncodingType, LPTSTR pszX500, DWORD
      dwStrType, DWORD* len)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:970,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:971,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:975,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:983,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:989,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:995,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1003,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1009,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1015,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1023,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1029,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1035,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1043,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1049,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - store
    - wcSubject
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - LPTSTR
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1056
      start: 963
    functionDepth: 2
    functionLinenumber: 963
    functionLinenumberEnd: 1056
    functionName: xmlSecMSCryptoX509FindCertBySubject
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlFree
    - xmlSecMSCryptoCertStrToName
    - CertFindCertificateInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoX509FindCertBySubject(HCERTSTORE store,
      const LPTSTR wcSubject, DWORD dwCertEncodingType)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1080,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1081,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1082,1
    - Dst: xmlSecBnGetData
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1084,1
    - Dst: xmlSecBnGetSize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1086,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1087,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1087,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1091,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1099,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1105,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1111,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1119,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1125,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1131,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1139,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1145,1
    - Dst: xmlSecMSCryptoCertStrToName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1151,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1159,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1165,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 4
    argNames:
    - store
    - wcIssuer
    - issuerSerialBn
    - dwCertEncodingType
    argTypes:
    - HCERTSTORE
    - LPTSTR
    - xmlSecBnPtr
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1069
    functionDepth: 3
    functionLinenumber: 1069
    functionLinenumberEnd: 1172
    functionName: xmlSecMSCryptoX509FindCertByIssuer
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlFree
    - xmlSecAssert2
    - xmlSecBnGetSize
    - return
    - CertFindCertificateInStore
    - xmlSecBnGetData
    - xmlSecMSCryptoCertStrToName
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoX509FindCertByIssuer(HCERTSTORE store,
      const LPTSTR wcIssuer,\n                                   xmlSecBnPtr issuerSerialBn,
      DWORD dwCertEncodingType)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1180,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1187,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1189,1
    - Dst: xmlStrstr
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1192,1
    - Dst: memcpy
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1193,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1197,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1199,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1200,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1205,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1207
      start: 1174
    functionDepth: 4
    functionLinenumber: 1174
    functionLinenumberEnd: 1207
    functionName: xmlSecMSCryptoX509GetCertName
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlStrstr
    - xmlSecStrdupError
    - memcpy
    linkageType: ''
    returnType: LPTSTR
    signature: LPTSTR xmlSecMSCryptoX509GetCertName(const xmlChar * name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1216,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1219,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1219,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - store
    - ski
    - skiSize
    argTypes:
    - HCERTSTORE
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1210
    functionDepth: 1
    functionLinenumber: 1210
    functionLinenumberEnd: 1227
    functionName: xmlSecMSCryptoX509FindCertBySki
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - CertFindCertificateInStore
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: PCCERT_CONTEXT xmlSecMSCryptoX509FindCertBySki(HCERTSTORE store, const
      xmlSecByte* ski, xmlSecSize skiSize)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1236,1
    - Dst: xmlSecMSCryptoX509GetCertName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1242,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1244,1
    - Dst: xmlSecMSCryptoX509FindCertBySubject
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1249,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1255,1
    - Dst: xmlSecBnInitialize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1263,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1265,1
    - Dst: xmlSecBnFromDecString
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1269,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1271,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1272,1
    - Dst: xmlSecBnReverse
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1280,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1282,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1283,1
    - Dst: xmlSecMSCryptoX509GetCertName
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1288,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1290,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1291,1
    - Dst: xmlSecMSCryptoX509FindCertByIssuer
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1296,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1301,1
    - Dst: xmlSecBnFinalize
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1304,1
    - Dst: xmlSecMSCryptoX509FindCertBySki
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1308,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 6
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    argTypes:
    - HCERTSTORE
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1229
    functionDepth: 5
    functionLinenumber: 1229
    functionLinenumberEnd: 1312
    functionName: xmlSecMSCryptoX509FindCert
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecBnReverse
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecBnFromDecString
    - xmlSecBnFinalize
    - xmlSecMSCryptoX509FindCertByIssuer
    - xmlSecMSCryptoX509FindCertBySubject
    - xmlSecMSCryptoX509FindCertBySki
    - xmlSecMSCryptoX509GetCertName
    - xmlSecBnInitialize
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoX509FindCert(HCERTSTORE store, const
      xmlChar *subjectName,\n                const xmlChar *issuerName, const xmlChar
      *issuerSerial,\n                const xmlSecByte* ski, xmlSecSize skiSize)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1332,1
    - Dst: CertGetNameString
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1335,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1337,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1342,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1344,1
    - Dst: CertGetNameString
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1349,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1351,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1352,1
    - Dst: xmlSecWin32ConvertTstrToUtf8
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1356,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1358,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1359,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/x509vfy.c:1363,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 4
    argNames:
    - pCertContext
    - dwType
    - dwFlags
    - pvTypePara
    argTypes:
    - PCCERT_CONTEXT
    - DWORD
    - DWORD
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1326
    functionDepth: 4
    functionLinenumber: 1326
    functionLinenumberEnd: 1365
    functionName: xmlSecMSCryptoX509GetNameString
    functionSourceFile: /src/xmlsec/src/mscrypto/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - CertGetNameString
    - xmlSecWin32ConvertTstrToUtf8
    - xmlSecMSCryptoError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecMSCryptoX509GetNameString(PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD
      dwFlags, void *pvTypePara)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:118,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:124,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:130,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:136,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:142,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 151
    functionName: xmlSecMSCryptoHmacCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:157,1
    - Dst: xmlSecMSCryptoHmacCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:158,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:158,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:161,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/hmac.c:164,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:167,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:174,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:181,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:188,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:195,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/hmac.c:203,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/hmac.c:207,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/hmac.c:209,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:210,1
    - Dst: xmlSecMSCryptoCreatePrivateExponentOneKey
      Src: /src/xmlsec/src/mscrypto/hmac.c:215,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/hmac.c:216,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:217,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 223
    functionName: xmlSecMSCryptoHmacInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecTransformCheckId
    - xmlSecMSCryptoHmacCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecMSCryptoCreatePrivateExponentOneKey
    - xmlSecMSCryptoError
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/hmac.c:229,1
    - Dst: xmlSecMSCryptoHmacCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:229,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/hmac.c:230,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:230,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:232,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/hmac.c:233,1
    - Dst: CryptDestroyHash
      Src: /src/xmlsec/src/mscrypto/hmac.c:236,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/hmac.c:239,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/hmac.c:242,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/hmac.c:245,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/hmac.c:248,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 249
    functionName: xmlSecMSCryptoHmacFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - CryptDestroyKey
    - xmlSecMSCryptoHmacCheckId
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecAssert
    - CryptDestroyHash
    - CryptReleaseContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:257,1
    - Dst: xmlSecMSCryptoHmacCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:258,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:259,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/hmac.c:260,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:262,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:263,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:265,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/hmac.c:267,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 251
    functionDepth: 2
    functionLinenumber: 251
    functionLinenumberEnd: 273
    functionName: xmlSecMSCryptoHmacNodeRead
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoHmacCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecTransformGetName
    - xmlSecTransformHmacReadOutputBitsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                           xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:277,1
    - Dst: xmlSecMSCryptoHmacCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:279,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 291
    functionName: xmlSecMSCryptoHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoHmacCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:304,1
    - Dst: xmlSecMSCryptoHmacCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:306,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:307,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:315,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/hmac.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:318,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/hmac.c:318,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/hmac.c:320,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:321,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/hmac.c:323,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:324,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/mscrypto/hmac.c:326,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:326,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/hmac.c:329,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/hmac.c:329,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:329,1
    - Dst: xmlSecMSCryptoImportPlainSessionBlob
      Src: /src/xmlsec/src/mscrypto/hmac.c:337,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/hmac.c:346,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:347,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/hmac.c:352,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/hmac.c:358,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:359,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/hmac.c:364,1
    - Dst: CryptSetHashParam
      Src: /src/xmlsec/src/mscrypto/hmac.c:366,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/hmac.c:368,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:369,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 293
    functionDepth: 2
    functionLinenumber: 293
    functionLinenumberEnd: 376
    functionName: xmlSecMSCryptoHmacSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - return
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecMSCryptoError
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - CryptCreateHash
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecTransformGetName
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecMSCryptoImportPlainSessionBlob
    - memset
    - xmlSecMSCryptoHmacCheckId
    - xmlSecTransformCheckSize
    - CryptSetHashParam
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:385,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscrypto/hmac.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:386,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:389,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/hmac.c:390,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:394,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/mscrypto/hmac.c:397,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/hmac.c:399,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:399,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 409
    functionName: xmlSecMSCryptoHmacVerify
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecTransformHmacVerify
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoHmacVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:417,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/mscrypto/hmac.c:417,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:419,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:420,1
    - Dst: xmlSecMSCryptoHmacGetCtx
      Src: /src/xmlsec/src/mscrypto/hmac.c:425,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:427,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:437,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/hmac.c:441,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/hmac.c:441,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:441,1
    - Dst: CryptHashData
      Src: /src/xmlsec/src/mscrypto/hmac.c:442,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/hmac.c:443,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/hmac.c:448,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:448,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/hmac.c:453,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/hmac.c:455,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:455,1
    - Dst: CryptGetHashParam
      Src: /src/xmlsec/src/mscrypto/hmac.c:464,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/hmac.c:471,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:471,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:475,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/hmac.c:476,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/hmac.c:476,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:476,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/mscrypto/hmac.c:483,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/hmac.c:485,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/hmac.c:485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/hmac.c:493,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/hmac.c:493,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscrypto/hmac.c:495,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 56
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 411
    functionDepth: 2
    functionLinenumber: 411
    functionLinenumberEnd: 500
    functionName: xmlSecMSCryptoHmacExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - CryptHashData
    - xmlSecAssert2
    - xmlSecMSCryptoHmacGetCtx
    - xmlSecMSCryptoError2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecInvalidTransfromStatusError
    - xmlSecTransformHmacWriteOutput
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - CryptGetHashParam
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: xmlSecMSCryptoTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 593
    functionName: xmlSecMSCryptoTransformHmacRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 639
    functionName: xmlSecMSCryptoTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 686
    functionName: xmlSecMSCryptoTransformHmacSha224GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: xmlSecMSCryptoTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 780
    functionName: xmlSecMSCryptoTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: xmlSecMSCryptoTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: xmlSecMSCryptoSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecMSCryptoSymKeyDataCheckId(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:84,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:84,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/mscrypto/symkeys.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 82
    functionDepth: 3
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionName: xmlSecMSCryptoSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueInitialize
    - xmlSecMSCryptoSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:91,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:91,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:92,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:93,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/mscrypto/symkeys.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 89
    functionDepth: 3
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionName: xmlSecMSCryptoSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecMSCryptoSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/symkeys.c:100,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:100,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/mscrypto/symkeys.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 98
    functionDepth: 3
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionName: xmlSecMSCryptoSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:108,1
    - Dst: xmlSecMSCryptoSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscrypto/symkeys.c:108,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/mscrypto/symkeys.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 105
    functionDepth: 11
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionName: xmlSecMSCryptoSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecMSCryptoSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:116,1
    - Dst: xmlSecMSCryptoSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscrypto/symkeys.c:116,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/mscrypto/symkeys.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 113
    functionDepth: 9
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionName: xmlSecMSCryptoSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecMSCryptoSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlNodePtr node, xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:125,1
    - Dst: xmlSecMSCryptoSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscrypto/symkeys.c:125,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/mscrypto/symkeys.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - unsigned char*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 121
    functionDepth: 3
    functionLinenumber: 121
    functionLinenumberEnd: 128
    functionName: xmlSecMSCryptoSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoSymKeyDataKlassCheck
    - xmlSecKeyDataBinaryValueBinRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                const unsigned char* buf, xmlSecSize bufSize,\n
      \                               xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:134,1
    - Dst: xmlSecMSCryptoSymKeyDataKlassCheck
      Src: /src/xmlsec/src/mscrypto/symkeys.c:134,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/mscrypto/symkeys.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - unsigned char**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 130
    functionDepth: 3
    functionLinenumber: 130
    functionLinenumberEnd: 137
    functionName: xmlSecMSCryptoSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoSymKeyDataKlassCheck
    - xmlSecKeyDataBinaryValueBinWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                 unsigned char** buf, xmlSecSize* bufSize,\n
      \                                xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:143,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:144,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/symkeys.c:145,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/symkeys.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:148,1
    - Dst: xmlSecMSCryptoGenerateRandom
      Src: /src/xmlsec/src/mscrypto/symkeys.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 151
    functionName: xmlSecMSCryptoSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecMSCryptoGenerateRandom
    - xmlSecMSCryptoSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:157,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:157,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/symkeys.c:159,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:160,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/symkeys.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 163
    functionName: xmlSecMSCryptoSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecMSCryptoSymKeyDataCheckId
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecMSCryptoSymKeyDataGetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:167,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:167,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/mscrypto/symkeys.c:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 165
    functionDepth: 3
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionName: xmlSecMSCryptoSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueGetSize
    - xmlSecMSCryptoSymKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecMSCryptoSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/symkeys.c:174,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:174,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/mscrypto/symkeys.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 172
    functionDepth: 3
    functionLinenumber: 172
    functionLinenumberEnd: 177
    functionName: xmlSecMSCryptoSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueDebugDump
    - xmlSecMSCryptoSymKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/symkeys.c:181,1
    - Dst: xmlSecMSCryptoSymKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:181,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/mscrypto/symkeys.c:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 184
    functionName: xmlSecMSCryptoSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecMSCryptoSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 210
    functionName: xmlSecMSCryptoSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:236,1
    - Dst: CryptGenKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:242,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:243,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:248,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:249,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/symkeys.c:253,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:255,1
    - Dst: CryptExportKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:259,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:260,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:263,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:268,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:274,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:279,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:289,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:312,1
    - Dst: CryptImportKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:346,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:347,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/symkeys.c:356,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:359,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 95
    argCount: 2
    argNames:
    - hProv
    - hPrivateKey
    argTypes:
    - HCRYPTPROV
    - HCRYPTKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 363
    functionName: xmlSecMSCryptoCreatePrivateExponentOneKey
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 4
    functionsReached:
    - CryptDestroyKey
    - CryptExportKey
    - xmlFree
    - xmlSecAssert2
    - CryptGenKey
    - xmlMalloc
    - CryptImportKey
    - xmlSecMSCryptoError
    - xmlSecMSCryptoError2
    - xmlSecMallocError
    linkageType: ''
    returnType: BOOL
    signature: BOOL xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY
      *hPrivateKey)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:388,1
    - Dst: CryptGetProvParam
      Src: /src/xmlsec/src/mscrypto/symkeys.c:394,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:403,1
    - Dst: CryptGenKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:411,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:412,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/symkeys.c:417,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:418,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:421,1
    - Dst: xmlSecMSCryptoError3
      Src: /src/xmlsec/src/mscrypto/symkeys.c:426,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/symkeys.c:436,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:437,1
    - Dst: CryptGetKeyParam
      Src: /src/xmlsec/src/mscrypto/symkeys.c:443,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:444,1
    - Dst: xmlSecMSCryptoError3
      Src: /src/xmlsec/src/mscrypto/symkeys.c:450,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/symkeys.c:469,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/symkeys.c:471,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/symkeys.c:474,1
    - Dst: CryptGenRandom
      Src: /src/xmlsec/src/mscrypto/symkeys.c:498,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:499,1
    - Dst: CryptImportKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:510,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:511,1
    - Dst: CryptDestroyKey
      Src: /src/xmlsec/src/mscrypto/symkeys.c:520,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/symkeys.c:523,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 108
    argCount: 7
    argNames:
    - hProv
    - hPrivateKey
    - algId
    - pbKeyMaterial
    - dwKeyMaterial
    - bCheckKeyLength
    - hSessionKey
    argTypes:
    - HCRYPTPROV
    - HCRYPTKEY
    - ALG_ID
    - LPBYTE
    - DWORD
    - BOOL
    - HCRYPTKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 526
    functionName: xmlSecMSCryptoImportPlainSessionBlob
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 6
    functionsReached:
    - CryptDestroyKey
    - xmlFree
    - xmlSecAssert2
    - CryptGenKey
    - xmlMalloc
    - CryptImportKey
    - CryptGetProvParam
    - CryptGenRandom
    - xmlSecMSCryptoError3
    - xmlSecMSCryptoError2
    - memset
    - xmlSecMallocError
    - CryptGetKeyParam
    linkageType: ''
    returnType: BOOL
    signature: "BOOL xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY
      hPrivateKey,\n                                     ALG_ID algId, LPBYTE pbKeyMaterial,\n
      \                                    DWORD dwKeyMaterial, BOOL bCheckKeyLength,\n
      \                                    HCRYPTKEY *hSessionKey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: xmlSecMSCryptoKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:598,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:598,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:600,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/symkeys.c:602,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:603,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/symkeys.c:605,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 594
    functionDepth: 3
    functionLinenumber: 594
    functionLinenumberEnd: 606
    functionName: xmlSecMSCryptoKeyDataAesSet
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataAesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 663
    functionName: xmlSecMSCryptoKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 717
    functionDepth: 0
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionName: xmlSecMSCryptoKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecMSCryptoKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:736,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/symkeys.c:736,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:737,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:738,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/mscrypto/symkeys.c:740,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/symkeys.c:741,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/symkeys.c:743,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 732
    functionDepth: 3
    functionLinenumber: 732
    functionLinenumberEnd: 744
    functionName: xmlSecMSCryptoKeyDataHmacSet
    functionSourceFile: /src/xmlsec/src/mscrypto/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeyDataHmacSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:82,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:90,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:96,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:102,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:108,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:114,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:122,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:128,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:131,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 141
    functionName: xmlSecMSCryptoSignatureCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:146,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:147,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:147,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:150,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/signatures.c:152,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:156,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:165,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:172,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:179,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:186,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:193,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:202,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:209,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:213,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/signatures.c:221,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 226
    functionName: xmlSecMSCryptoSignatureInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecMSCryptoSignatureGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/signatures.c:231,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:231,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/signatures.c:232,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:232,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:234,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/signatures.c:235,1
    - Dst: CryptDestroyHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:238,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/signatures.c:242,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/signatures.c:246,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 247
    functionName: xmlSecMSCryptoSignatureFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecMSCryptoSignatureGetCtx
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - CryptDestroyHash
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:253,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:255,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:256,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:260,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:261,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:262,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:262,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/signatures.c:264,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:265,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/signatures.c:267,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/signatures.c:269,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:270,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 249
    functionDepth: 3
    functionLinenumber: 249
    functionLinenumberEnd: 275
    functionName: xmlSecMSCryptoSignatureSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecMSCryptoSignatureGetCtx
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:280,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:282,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:283,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 277
    functionDepth: 2
    functionLinenumber: 277
    functionLinenumberEnd: 298
    functionName: xmlSecMSCryptoSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecMSCryptoSignatureGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:314,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:316,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:319,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:320,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:323,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/signatures.c:325,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/signatures.c:327,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:327,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/signatures.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:334,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:341,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:342,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:347,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:348,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:353,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:354,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:359,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:360,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:365,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:366,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:373,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:374,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:375,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:380,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:381,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:386,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:387,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:388,1
    - Dst: xmlSecInvalidTypeError
      Src: /src/xmlsec/src/mscrypto/signatures.c:393,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:393,1
    - Dst: xmlSecMSCryptoKeyDataGetKey
      Src: /src/xmlsec/src/mscrypto/signatures.c:397,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/signatures.c:399,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:399,1
    - Dst: CryptVerifySignature
      Src: /src/xmlsec/src/mscrypto/signatures.c:404,1
    - Dst: GetLastError
      Src: /src/xmlsec/src/mscrypto/signatures.c:405,1
    - Dst: HRESULT_FROM_WIN32
      Src: /src/xmlsec/src/mscrypto/signatures.c:406,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/mscrypto/signatures.c:407,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:407,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:412,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:412,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/signatures.c:424,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 76
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 300
    functionDepth: 2
    functionLinenumber: 300
    functionLinenumberEnd: 427
    functionName: xmlSecMSCryptoSignatureVerify
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - GetLastError
    - xmlSecMSCryptoError
    - xmlSecBufferFinalize
    - xmlSecMSCryptoKeyDataGetKey
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecInvalidTypeError
    - ConvertEndian
    - xmlSecTransformGetName
    - HRESULT_FROM_WIN32
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecMSCryptoSignatureGetCtx
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - CryptVerifySignature
    - xmlSecOtherError
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoSignatureVerify(xmlSecTransformPtr transform,\n
      \                                        const xmlSecByte* data,\n                                         xmlSecSize
      dataSize,\n                                         xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:444,1
    - Dst: xmlSecMSCryptoSignatureCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:445,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:446,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:447,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:450,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:454,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:455,1
    - Dst: xmlSecMSCryptoSignatureGetCtx
      Src: /src/xmlsec/src/mscrypto/signatures.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:458,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:459,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:462,1
    - Dst: xmlSecMSCryptoKeyDataGetMSCryptoProvider
      Src: /src/xmlsec/src/mscrypto/signatures.c:464,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:465,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:466,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:471,1
    - Dst: xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo
      Src: /src/xmlsec/src/mscrypto/signatures.c:475,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/signatures.c:478,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/signatures.c:482,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:483,1
    - Dst: CryptAcquireContextW
      Src: /src/xmlsec/src/mscrypto/signatures.c:488,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:494,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:498,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/signatures.c:503,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:504,1
    - Dst: CryptAcquireContextW
      Src: /src/xmlsec/src/mscrypto/signatures.c:509,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:514,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:518,1
    - Dst: free
      Src: /src/xmlsec/src/mscrypto/signatures.c:522,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:536,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/signatures.c:538,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/signatures.c:538,1
    - Dst: CryptHashData
      Src: /src/xmlsec/src/mscrypto/signatures.c:539,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/signatures.c:539,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:540,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/signatures.c:544,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/signatures.c:546,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:554,1
    - Dst: xmlSecMSCryptoKeyDataGetMSCryptoKeySpec
      Src: /src/xmlsec/src/mscrypto/signatures.c:557,1
    - Dst: CryptSignHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:558,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:559,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/signatures.c:562,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/signatures.c:562,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/signatures.c:564,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/signatures.c:566,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:567,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/signatures.c:571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:572,1
    - Dst: CryptSignHash
      Src: /src/xmlsec/src/mscrypto/signatures.c:574,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/signatures.c:575,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/signatures.c:576,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/signatures.c:579,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/signatures.c:579,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:581,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/signatures.c:583,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:583,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/signatures.c:585,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/signatures.c:588,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:589,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:596,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:597,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:602,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:603,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:608,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:609,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:614,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:615,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:620,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:621,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:628,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:629,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:630,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:635,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:636,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:641,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/signatures.c:642,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/signatures.c:643,1
    - Dst: xmlSecInvalidTypeError
      Src: /src/xmlsec/src/mscrypto/signatures.c:649,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/signatures.c:649,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/signatures.c:650,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/signatures.c:653,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/signatures.c:660,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/signatures.c:660,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscrypto/signatures.c:662,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 142
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 667
    functionName: xmlSecMSCryptoSignatureExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - CryptHashData
    - return
    - xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecBufferFinalize
    - CryptSignHash
    - CryptCreateHash
    - xmlSecMSCryptoSignatureCheckId
    - xmlSecInvalidTypeError
    - CryptReleaseContext
    - ConvertEndian
    - xmlSecTransformGetName
    - free
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecMSCryptoKeyDataGetMSCryptoKeySpec
    - xmlSecMSCryptoSignatureGetCtx
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoKeyDataGetMSCryptoProvider
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecInvalidTransfromStatusError
    - CryptAcquireContextW
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 715
    functionName: xmlSecMSCryptoTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 758
    functionDepth: 0
    functionLinenumber: 758
    functionLinenumberEnd: 761
    functionName: xmlSecMSCryptoTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 804
    functionDepth: 0
    functionLinenumber: 804
    functionLinenumberEnd: 807
    functionName: xmlSecMSCryptoTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 850
    functionDepth: 0
    functionLinenumber: 850
    functionLinenumberEnd: 853
    functionName: xmlSecMSCryptoTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 899
      start: 896
    functionDepth: 0
    functionLinenumber: 896
    functionLinenumberEnd: 899
    functionName: xmlSecMSCryptoTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 948
    functionName: xmlSecMSCryptoTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformDsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 996
    functionName: xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1043
    functionDepth: 0
    functionLinenumber: 1043
    functionLinenumberEnd: 1046
    functionName: xmlSecMSCryptoTransformGost2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGost2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1091
    functionName: xmlSecMSCryptoTransformGost2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGost2012_512GetKlass(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:121,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:127,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:133,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:139,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:145,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:151,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:157,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:160,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 166
    functionName: xmlSecMSCryptoDigestCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:172,1
    - Dst: xmlSecMSCryptoDigestCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:173,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/digests.c:173,1
    - Dst: xmlSecMSCryptoDigestGetCtx
      Src: /src/xmlsec/src/mscrypto/digests.c:175,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:176,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/digests.c:179,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:182,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:189,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:196,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:203,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:210,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:217,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:224,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:228,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/digests.c:235,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/digests.c:239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/digests.c:241,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:242,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 47
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 247
    functionName: xmlSecMSCryptoDigestInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecTransformCheckId
    - xmlSecMSCryptoDigestGetCtx
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoDigestCheckId
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/digests.c:252,1
    - Dst: xmlSecMSCryptoDigestCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:252,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/digests.c:253,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/digests.c:253,1
    - Dst: xmlSecMSCryptoDigestGetCtx
      Src: /src/xmlsec/src/mscrypto/digests.c:255,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/digests.c:256,1
    - Dst: CryptDestroyHash
      Src: /src/xmlsec/src/mscrypto/digests.c:259,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/digests.c:262,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/digests.c:265,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 266
    functionName: xmlSecMSCryptoDigestFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoDigestGetCtx
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoDigestCheckId
    - xmlSecAssert
    - CryptDestroyHash
    - CryptReleaseContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:275,1
    - Dst: xmlSecMSCryptoDigestCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:276,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/digests.c:276,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:280,1
    - Dst: xmlSecMSCryptoDigestGetCtx
      Src: /src/xmlsec/src/mscrypto/digests.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:284,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscrypto/digests.c:287,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:288,1
    - Dst: memcmp
      Src: /src/xmlsec/src/mscrypto/digests.c:293,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/mscrypto/digests.c:294,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:295,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 268
    functionDepth: 2
    functionLinenumber: 268
    functionLinenumberEnd: 302
    functionName: xmlSecMSCryptoDigestVerify
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoDigestGetCtx
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoDigestCheckId
    - xmlSecAssert2
    - memcmp
    - xmlSecTransformGetName
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoDigestVerify(xmlSecTransformPtr transform,\n                           const
      xmlSecByte* data,\n                           xmlSecSize dataSize,\n                           xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:312,1
    - Dst: xmlSecMSCryptoDigestCheckId
      Src: /src/xmlsec/src/mscrypto/digests.c:312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:314,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/digests.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:321,1
    - Dst: xmlSecMSCryptoDigestGetCtx
      Src: /src/xmlsec/src/mscrypto/digests.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:324,1
    - Dst: CryptCreateHash
      Src: /src/xmlsec/src/mscrypto/digests.c:327,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/digests.c:334,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:334,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/digests.c:344,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/digests.c:348,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/digests.c:348,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:348,1
    - Dst: CryptHashData
      Src: /src/xmlsec/src/mscrypto/digests.c:349,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/digests.c:349,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/digests.c:351,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:351,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/digests.c:356,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/digests.c:358,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:358,1
    - Dst: CryptGetHashParam
      Src: /src/xmlsec/src/mscrypto/digests.c:365,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/digests.c:371,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:374,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/mscrypto/digests.c:375,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/digests.c:375,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:375,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/mscrypto/digests.c:379,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/digests.c:381,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/digests.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/digests.c:390,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/digests.c:390,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscrypto/digests.c:392,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 59
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 304
    functionDepth: 3
    functionLinenumber: 304
    functionLinenumberEnd: 397
    functionName: xmlSecMSCryptoDigestExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecMSCryptoDigestGetCtx
    - CryptHashData
    - xmlSecMSCryptoDigestCheckId
    - return
    - CryptGetHashParam
    - xmlSecMSCryptoError
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - CryptCreateHash
    - xmlSecTransformGetName
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - xmlSecMSCryptoError2
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,\n                            int
      last,\n                            xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 441
    functionName: xmlSecMSCryptoTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionName: xmlSecMSCryptoTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 529
    functionName: xmlSecMSCryptoTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 573
    functionName: xmlSecMSCryptoTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: xmlSecMSCryptoTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 658
    functionDepth: 0
    functionLinenumber: 658
    functionLinenumberEnd: 661
    functionName: xmlSecMSCryptoTransformGostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 703
    functionName: xmlSecMSCryptoTransformGostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGostR3411_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 743
    functionDepth: 0
    functionLinenumber: 743
    functionLinenumberEnd: 746
    functionName: xmlSecMSCryptoTransformGostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformGostR3411_2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: xmlSecMSCryptoKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecMSCryptoKeysStoreGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:110,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:111,1
    - Dst: xmlSecMSCryptoKeysStoreGetCtx
      Src: /src/xmlsec/src/mscrypto/keysstore.c:113,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:114,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:115,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/mscrypto/keysstore.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionName: xmlSecMSCryptoKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecKeyStoreCheckId
    - xmlSecMSCryptoKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/mscrypto/keysstore.c:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - store
    - uri
    - keysMngr
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 15
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: xmlSecMSCryptoKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecSimpleKeysStoreLoad_ex
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char
      *uri,\n                            xmlSecKeysMngrPtr keysMngr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:151,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:152,1
    - Dst: xmlSecMSCryptoKeysStoreGetCtx
      Src: /src/xmlsec/src/mscrypto/keysstore.c:154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:155,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:156,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/mscrypto/keysstore.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 147
    functionDepth: 12
    functionLinenumber: 147
    functionLinenumberEnd: 159
    functionName: xmlSecMSCryptoKeysStoreSave
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreSave
    - xmlSecKeyStoreCheckId
    - xmlSecMSCryptoKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeysStoreSave(xmlSecKeyStorePtr store, const char
      *filename, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:165,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:165,1
    - Dst: xmlSecMSCryptoKeysStoreGetCtx
      Src: /src/xmlsec/src/mscrypto/keysstore.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:168,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/mscrypto/keysstore.c:170,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:172,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 178
    functionName: xmlSecMSCryptoKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecMSCryptoKeysStoreGetCtx
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/keysstore.c:184,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:184,1
    - Dst: xmlSecMSCryptoKeysStoreGetCtx
      Src: /src/xmlsec/src/mscrypto/keysstore.c:186,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/keysstore.c:187,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/mscrypto/keysstore.c:189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: xmlSecMSCryptoKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCheckId
    - xmlSecMSCryptoKeysStoreGetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:200,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:201,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:202,1
    - Dst: xmlSecMSCryptoAppGetCertStoreName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:204,1
    - Dst: CertOpenSystemStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:209,1
    - Dst: xmlSecMSCryptoError2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:211,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:212,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/keysstore.c:214,1
    - Dst: xmlSecWin32ConvertUtf8ToTstr
      Src: /src/xmlsec/src/mscrypto/keysstore.c:219,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:221,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:222,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:223,1
    - Dst: xmlSecMSCryptoX509FindCertBySubject
      Src: /src/xmlsec/src/mscrypto/keysstore.c:229,1
    - Dst: CertEnumCertificatesInStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:245,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/keysstore.c:250,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/mscrypto/keysstore.c:257,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/keysstore.c:259,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:260,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:260,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/keysstore.c:261,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:262,1
    - Dst: CertGetCertificateContextProperty
      Src: /src/xmlsec/src/mscrypto/keysstore.c:266,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/keysstore.c:270,1
    - Dst: lstrcmp
      Src: /src/xmlsec/src/mscrypto/keysstore.c:275,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/keysstore.c:277,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/keysstore.c:280,1
    - Dst: CertFindCertificateInStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:287,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/mscrypto/keysstore.c:309,1
    - Dst: CertCloseStore
      Src: /src/xmlsec/src/mscrypto/keysstore.c:310,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 57
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 192
    functionDepth: 4
    functionLinenumber: 192
    functionLinenumberEnd: 312
    functionName: xmlSecMSCryptoKeysStoreFindCert
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoX509FindCertBySubject
    - CertCloseStore
    - lstrcmp
    - CertOpenSystemStore
    - xmlFree
    - xmlSecKeyStoreGetName
    - xmlSecErrorsSafeString
    - xmlMalloc
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecWin32ConvertUtf8ToTstr
    - xmlSecMSCryptoAppGetCertStoreName
    - CertEnumCertificatesInStore
    - CertFindCertificateInStore
    - xmlSecMSCryptoError2
    - xmlSecMallocError
    - xmlSecKeyStoreCheckId
    - CertGetCertificateContextProperty
    - CertFreeCertificateContext
    linkageType: ''
    returnType: PCCERT_CONTEXT
    signature: "PCCERT_CONTEXT xmlSecMSCryptoKeysStoreFindCert(xmlSecKeyStorePtr store,
      const xmlChar* name,\n                                xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:328,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/mscrypto/keysstore.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:329,1
    - Dst: xmlSecMSCryptoKeysStoreGetCtx
      Src: /src/xmlsec/src/mscrypto/keysstore.c:331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/keysstore.c:332,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/mscrypto/keysstore.c:335,1
    - Dst: xmlSecMSCryptoKeysStoreFindCert
      Src: /src/xmlsec/src/mscrypto/keysstore.c:354,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/mscrypto/keysstore.c:360,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:362,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:363,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/keysstore.c:367,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:369,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:370,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptCert
      Src: /src/xmlsec/src/mscrypto/keysstore.c:374,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:376,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:377,1
    - Dst: CertDuplicateCertificateContext
      Src: /src/xmlsec/src/mscrypto/keysstore.c:382,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:384,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:385,1
    - Dst: xmlSecMSCryptoKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/mscrypto/keysstore.c:389,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:391,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:392,1
    - Dst: xmlSecMSCryptoCertAdopt
      Src: /src/xmlsec/src/mscrypto/keysstore.c:398,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:400,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/mscrypto/keysstore.c:406,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:408,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/mscrypto/keysstore.c:412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:414,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:415,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/mscrypto/keysstore.c:420,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:422,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:423,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:429,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/keysstore.c:431,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/mscrypto/keysstore.c:432,1
    - Dst: xmlSecKeyIsValid
      Src: /src/xmlsec/src/mscrypto/keysstore.c:438,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/keysstore.c:446,1
    - Dst: CertFreeCertificateContext
      Src: /src/xmlsec/src/mscrypto/keysstore.c:449,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/keysstore.c:452,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/keysstore.c:455,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/mscrypto/keysstore.c:458,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 108
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 315
    functionDepth: 5
    functionLinenumber: 315
    functionLinenumberEnd: 462
    functionName: xmlSecMSCryptoKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/mscrypto/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoCertAdopt
    - xmlSecMSCryptoKeysStoreGetCtx
    - xmlSecMSCryptoError
    - xmlSecKeyStoreGetName
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCreate
    - xmlSecKeySetName
    - xmlSecKeyDestroy
    - xmlSecMSCryptoKeyDataX509AdoptCert
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyAdoptData
    - xmlSecKeyIsValid
    - xmlSecKeyStoreCheckId
    - xmlSecKeyStoreFindKey
    - CertDuplicateCertificateContext
    - xmlSecMSCryptoKeysStoreFindCert
    - CertFreeCertificateContext
    - xmlSecKeyCreate
    - xmlSecKeyDataGetName
    - xmlSecMSCryptoKeyDataX509AdoptKeyCert
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecMSCryptoKeysStoreFindKey(xmlSecKeyStorePtr store,
      const xmlChar* name,\n                               xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/crypto.c:64,1
    - Dst: xmlSecMSCryptoAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/mscrypto/crypto.c:269,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 272
    functionName: xmlSecCryptoGetFunctions_mscrypto
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecMSCryptoAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_mscrypto(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/mscrypto/crypto.c:284,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/crypto.c:285,1
    - Dst: xmlSecErrorsSetCallback
      Src: /src/xmlsec/src/mscrypto/crypto.c:290,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/mscrypto/crypto.c:293,1
    - Dst: xmlSecCryptoGetFunctions_mscrypto
      Src: /src/xmlsec/src/mscrypto/crypto.c:293,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/crypto.c:294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 298
    functionName: xmlSecMSCryptoInit
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecErrorsSetCallback
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecCheckVersionExact
    - xmlSecCryptoGetFunctions_mscrypto
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 311
    functionName: xmlSecMSCryptoShutdown
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:325,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/mscrypto/crypto.c:329,1
    - Dst: xmlSecKeyDataStoreCreate
      Src: /src/xmlsec/src/mscrypto/crypto.c:332,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/crypto.c:334,1
    - Dst: xmlSecKeysMngrAdoptDataStore
      Src: /src/xmlsec/src/mscrypto/crypto.c:338,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/crypto.c:340,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/mscrypto/crypto.c:341,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 321
    functionDepth: 3
    functionLinenumber: 321
    functionLinenumberEnd: 348
    functionName: xmlSecMSCryptoKeysMngrInit
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCreate
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeysMngrAdoptDataStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:373,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/crypto.c:375,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/crypto.c:377,1
    - Dst: xmlSecMSCryptoFindProvider
      Src: /src/xmlsec/src/mscrypto/crypto.c:380,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/crypto.c:382,1
    - Dst: CryptGenRandom
      Src: /src/xmlsec/src/mscrypto/crypto.c:387,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/crypto.c:387,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/crypto.c:388,1
    - Dst: CryptReleaseContext
      Src: /src/xmlsec/src/mscrypto/crypto.c:398,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 365
    functionDepth: 2
    functionLinenumber: 365
    functionLinenumberEnd: 401
    functionName: xmlSecMSCryptoGenerateRandom
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecMSCryptoFindProvider
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - CryptGenRandom
    - CryptReleaseContext
    - xmlSecMSCryptoError
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize
      size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/crypto.c:420,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/crypto.c:421,1
    - Dst: FormatMessage
      Src: /src/xmlsec/src/mscrypto/crypto.c:426,1
    - Dst: MAKELANGID
      Src: /src/xmlsec/src/mscrypto/crypto.c:431,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/mscrypto/crypto.c:440,1
    - Dst: MultiByteToWideChar
      Src: /src/xmlsec/src/mscrypto/crypto.c:445,1
    - Dst: WideCharToMultiByte
      Src: /src/xmlsec/src/mscrypto/crypto.c:449,1
    - Dst: LocalFree
      Src: /src/xmlsec/src/mscrypto/crypto.c:457,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 3
    argNames:
    - dwError
    - out
    - outLen
    argTypes:
    - DWORD
    - xmlChar*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 460
    functionName: xmlSecMSCryptoGetErrorMessage
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached:
    - WideCharToMultiByte
    - xmlSecAssert
    - LocalFree
    - MAKELANGID
    - FormatMessage
    - MultiByteToWideChar
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoGetErrorMessage(DWORD dwError, xmlChar * out, int
      outLen)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsDefaultCallback
      Src: /src/xmlsec/src/mscrypto/crypto.c:479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - file
    - line
    - func
    - errorObject
    - errorSubject
    - reason
    - msg
    argTypes:
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 475
    functionDepth: 2
    functionLinenumber: 475
    functionLinenumberEnd: 480
    functionName: xmlSecMSCryptoErrorsDefaultCallback
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsDefaultCallback
    linkageType: ''
    returnType: void
    signature: "void xmlSecMSCryptoErrorsDefaultCallback(const char* file, int line,
      const char* func,\n                                const char* errorObject,
      const char* errorSubject,\n                                int reason, const
      char* msg)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:509,1
    - Dst: CryptAcquireContext
      Src: /src/xmlsec/src/mscrypto/crypto.c:513,1
    - Dst: GetLastError
      Src: /src/xmlsec/src/mscrypto/crypto.c:523,1
    - Dst: HRESULT_FROM_WIN32
      Src: /src/xmlsec/src/mscrypto/crypto.c:524,1
    - Dst: CryptAcquireContext
      Src: /src/xmlsec/src/mscrypto/crypto.c:532,1
    - Dst: CryptAcquireContext
      Src: /src/xmlsec/src/mscrypto/crypto.c:545,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 4
    argNames:
    - providers
    - pszContainer
    - dwFlags
    - bUseXmlSecContainer
    argTypes:
    - xmlSecMSCryptoProviderInfo*
    - LPCTSTR
    - DWORD
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 498
    functionDepth: 1
    functionLinenumber: 498
    functionLinenumberEnd: 571
    functionName: xmlSecMSCryptoFindProvider
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 11
    functionsReached:
    - xmlSecAssert2
    - HRESULT_FROM_WIN32
    - CryptAcquireContext
    - GetLastError
    linkageType: ''
    returnType: HCRYPTPROV
    signature: "HCRYPTPROV xmlSecMSCryptoFindProvider(const xmlSecMSCryptoProviderInfo
      * providers,\n                           LPCTSTR pszContainer,\n                           DWORD
      dwFlags,\n                           BOOL bUseXmlSecContainer)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:583,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:584,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - src
    - dst
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 592
    functionName: ConvertEndian
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int ConvertEndian(const xmlSecByte * src, xmlSecByte * dst, xmlSecSize
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/crypto.c:600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 594
    functionDepth: 1
    functionLinenumber: 594
    functionLinenumberEnd: 608
    functionName: ConvertEndianInPlace
    functionSourceFile: /src/xmlsec/src/mscrypto/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int ConvertEndianInPlace(xmlSecByte * buf, xmlSecSize size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:77,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 92
    functionName: xmlSecMSCryptoRsaPkcs1OaepCheckId
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoRsaPkcs1OaepCheckId(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:99,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:100,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:100,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:103,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:106,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:108,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:110,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:111,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:116,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:122,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:129,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 135
    functionName: xmlSecMSCryptoRsaPkcs1OaepInitialize
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoRsaPkcs1OaepInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:141,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:141,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:142,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:142,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:144,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:145,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:148,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:152,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 137
    functionDepth: 2
    functionLinenumber: 137
    functionLinenumberEnd: 154
    functionName: xmlSecMSCryptoRsaPkcs1OaepFinalize
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecMSCryptoRsaPkcs1OaepFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:160,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:162,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:163,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:166,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 177
    functionName: xmlSecMSCryptoRsaPkcs1OaepSetKeyReq
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoRsaPkcs1OaepSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:183,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:185,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:187,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:187,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:187,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:191,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:193,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:193,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:195,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 201
    functionName: xmlSecMSCryptoRsaPkcs1OaepSetKey
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoRsaPkcs1OaepSetKey(xmlSecTransformPtr transform,
      xmlSecKeyPtr key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:209,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:211,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:211,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:212,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:215,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepProcess
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:224,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:226,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:233,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:233,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:235,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 239
    functionName: xmlSecMSCryptoRsaPkcs1OaepExecute
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecMSCryptoRsaPkcs1OaepProcess
    - xmlSecTransformGetName
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoRsaPkcs1OaepExecute(xmlSecTransformPtr transform,
      int last,\n                                  xmlSecTransformCtxPtr transformCtx
      XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:255,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:257,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:257,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:260,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:261,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:264,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:269,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:271,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:277,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:280,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:281,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:286,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:288,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:288,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:295,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:296,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:300,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:300,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:302,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:302,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:307,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:307,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:307,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:308,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:308,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:308,1
    - Dst: xmlSecMSCryptoKeyDataGetKey
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:309,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:310,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:310,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:315,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:324,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:324,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:328,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:329,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:331,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:332,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:332,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:332,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:333,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:334,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:334,1
    - Dst: CryptEncrypt
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:341,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:342,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:342,1
    - Dst: ConvertEndianInPlace
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:349,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:351,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:351,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:351,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:356,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:357,1
    - Dst: ConvertEndian
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:358,1
    - Dst: xmlSecMSCryptoKeyDataGetDecryptKey
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:360,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:362,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:362,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:372,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:372,1
    - Dst: memset
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:376,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:377,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:379,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:380,1
    - Dst: return
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:380,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:380,1
    - Dst: CryptSetKeyParam
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:381,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:382,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:382,1
    - Dst: CryptDecrypt
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:389,1
    - Dst: xmlSecMSCryptoError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:390,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:390,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:397,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:399,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:399,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:404,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:406,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:406,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 98
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 241
    functionDepth: 3
    functionLinenumber: 241
    functionLinenumberEnd: 412
    functionName: xmlSecMSCryptoRsaPkcs1OaepProcess
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 1
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecTransformCheckId
    - xmlSecKeyDataGetSize
    - return
    - xmlSecMSCryptoError
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    - xmlSecInvalidSizeError
    - xmlSecMSCryptoKeyDataGetKey
    - xmlSecBufferSetData
    - xmlSecBufferSetMaxSize
    - ConvertEndian
    - xmlSecTransformGetName
    - CryptEncrypt
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - CryptSetKeyParam
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecBufferGetData
    - ConvertEndianInPlace
    - xmlSecMSCryptoKeyDataGetDecryptKey
    - memset
    - xmlSecInvalidSizeLessThanError
    - CryptDecrypt
    - xmlSecTransformCheckSize
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 458
    functionName: xmlSecMSCryptoTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaPkcs1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: xmlSecMSCryptoTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecMSCryptoTransformRsaOaepGetKlass(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:520,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepCheckId
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:520,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:521,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:521,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:522,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:523,1
    - Dst: xmlSecMSCryptoRsaPkcs1OaepGetCtx
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:527,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:527,1
    - Dst: xmlSecTransformRsaOaepParamsInitialize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:529,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:531,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:532,1
    - Dst: xmlSecTransformRsaOaepParamsRead
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:536,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:538,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:539,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:540,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:545,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:546,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:548,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:549,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:554,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/mscrypto/kt_rsa.c:557,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 513
    functionDepth: 12
    functionLinenumber: 513
    functionLinenumberEnd: 559
    functionName: xmlSecMSCryptoRsaOaepNodeRead
    functionSourceFile: /src/xmlsec/src/mscrypto/kt_rsa.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecBufferSwap
    - xmlSecMSCryptoRsaPkcs1OaepGetCtx
    - xmlSecTransformRsaOaepParamsInitialize
    - xmlSecTransformRsaOaepParamsFinalize
    - xmlStrcmp
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecMSCryptoRsaPkcs1OaepCheckId
    - xmlSecTransformRsaOaepParamsRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecMSCryptoRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                              xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:81,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:82,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 89
    functionName: xmlSecGnuTLSGcmCipherCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:95,1
    - Dst: xmlSecGnuTLSGcmCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:96,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:96,1
    - Dst: xmlSecGnuTLSGcmCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:98,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:99,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:101,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:118,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 91
    functionDepth: 2
    functionLinenumber: 91
    functionLinenumberEnd: 124
    functionName: xmlSecGnuTLSGcmCipherInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromError
    - xmlSecAssert2
    - xmlSecGnuTLSGcmCipherCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:130,1
    - Dst: xmlSecGnuTLSGcmCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:130,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:131,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:131,1
    - Dst: xmlSecGnuTLSGcmCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:133,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:134,1
    - Dst: gnutls_aead_cipher_deinit
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:137,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 140
    functionName: xmlSecGnuTLSGcmCipherFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - gnutls_aead_cipher_deinit
    - xmlSecGnuTLSGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecGnuTLSGcmCipherCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSGcmCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:146,1
    - Dst: xmlSecGnuTLSGcmCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:148,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:148,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:149,1
    - Dst: xmlSecGnuTLSGcmCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 167
    functionName: xmlSecGnuTLSGcmCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSGcmCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:178,1
    - Dst: xmlSecGnuTLSGcmCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:180,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:181,1
    - Dst: xmlSecGnuTLSGcmCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:187,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:187,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:190,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:193,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:195,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:197,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:197,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:202,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:203,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:203,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:204,1
    - Dst: gnutls_aead_cipher_init
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:207,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:209,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:209,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 169
    functionDepth: 2
    functionLinenumber: 169
    functionLinenumberEnd: 215
    functionName: xmlSecGnuTLSGcmCipherSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecGnuTLSGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - gnutls_aead_cipher_init
    - xmlSecKeyCheckId
    - xmlSecGnuTLSGcmCipherCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:228,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:231,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:234,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:238,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:240,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:246,1
    - Dst: gnutls_rnd
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:247,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:249,1
    - Dst: gnutls_aead_cipher_encrypt
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:256,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:263,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:268,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:268,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:269,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 36
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGnuTLSGcmCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 277
    functionName: xmlSecGnuTLSGcmCipherEncrypt
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - gnutls_rnd
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - gnutls_aead_cipher_encrypt
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherEncrypt(xmlSecGnuTLSGcmCipherCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:290,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:293,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:294,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:297,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:302,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:304,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:308,1
    - Dst: gnutls_aead_cipher_decrypt
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:311,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:318,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:323,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:323,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:324,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGnuTLSGcmCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 332
    functionName: xmlSecGnuTLSGcmCipherDecrypt
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - gnutls_aead_cipher_decrypt
    - xmlSecInternalError2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherDecrypt(xmlSecGnuTLSGcmCipherCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:340,1
    - Dst: xmlSecGnuTLSGcmCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:342,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:343,1
    - Dst: xmlSecGnuTLSGcmCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:348,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:349,1
    - Dst: xmlSecGnuTLSGcmCipherEncrypt
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:361,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:363,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:363,1
    - Dst: xmlSecGnuTLSGcmCipherDecrypt
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:367,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:369,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:369,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:381,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:384,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gnutls/ciphers_gcm.c:386,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 391
    functionName: xmlSecGnuTLSGcmCipherExecute
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGnuTLSGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSGcmCipherDecrypt
    - xmlSecAssert2
    - xmlSecGnuTLSGcmCipherEncrypt
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecGnuTLSGcmCipherCheckId
    - xmlSecTransformGetName
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGcmCipherExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 437
    functionName: xmlSecGnuTLSTransformAes128GcmGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes128GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 476
    functionName: xmlSecGnuTLSTransformAes192GcmGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes192GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionName: xmlSecGnuTLSTransformAes256GcmGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes256GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - errCode
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 51
    functionName: xmlSecGnuTLSError
    functionSourceFile: /src/xmlsec/src/gnutls/globals.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGnuTLSError(errorFunction, errCode, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errCode
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 75
    functionName: xmlSecGnuTLSError2
    functionSourceFile: /src/xmlsec/src/gnutls/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGnuTLSError2(errorFunction, errCode, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionName: xmlSecGnuTLSKWAesCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGnuTLSKWAesCheckId(transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:107,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:107,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:108,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:108,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:111,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kw_aes.c:112,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:114,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:120,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:124,1
    - Dst: gnutls_cipher_get_block_size
      Src: /src/xmlsec/src/gnutls/kw_aes.c:129,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:131,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:134,1
    - Dst: gnutls_cipher_get_iv_size
      Src: /src/xmlsec/src/gnutls/kw_aes.c:136,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:141,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:143,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:147,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:147,1
    - Dst: xmlSecGnuTLSKWAesFinalize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:148,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 101
    functionDepth: 3
    functionLinenumber: 101
    functionLinenumberEnd: 154
    functionName: xmlSecGnuTLSKWAesInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - gnutls_cipher_get_iv_size
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSKWAesFinalize
    - gnutls_cipher_get_block_size
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    - xmlSecTransformKWAesInitialize
    - xmlSecGnuTLSError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_aes.c:160,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:160,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_aes.c:161,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:161,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:163,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_aes.c:164,1
    - Dst: gnutls_cipher_deinit
      Src: /src/xmlsec/src/gnutls/kw_aes.c:167,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:169,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kw_aes.c:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 171
    functionName: xmlSecGnuTLSKWAesFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - gnutls_cipher_deinit
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecGnuTLSKWAesGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:178,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:179,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:179,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:182,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/gnutls/kw_aes.c:184,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:186,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 190
    functionName: xmlSecGnuTLSKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:197,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:198,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:198,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:201,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/gnutls/kw_aes.c:203,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:205,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 192
    functionDepth: 4
    functionLinenumber: 192
    functionLinenumberEnd: 209
    functionName: xmlSecGnuTLSKWAesSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKey
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:217,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:218,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:218,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/kw_aes.c:219,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:222,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/gnutls/kw_aes.c:224,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:226,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 230
    functionName: xmlSecGnuTLSKWAesExecute
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                         xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionName: xmlSecGnuTLSTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionName: xmlSecGnuTLSTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 348
    functionName: xmlSecGnuTLSTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformKWAes256GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:367,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kw_aes.c:369,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:373,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/kw_aes.c:376,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/kw_aes.c:376,1
    - Dst: gnutls_cipher_init
      Src: /src/xmlsec/src/gnutls/kw_aes.c:378,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecGnuTLSKWAesCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 386
    functionName: xmlSecGnuTLSKWAesInitCipher
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - gnutls_cipher_init
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWAesInitCipher(xmlSecGnuTLSKWAesCtxPtr ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:396,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:397,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:397,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:401,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:403,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:409,1
    - Dst: xmlSecGnuTLSKWAesInitCipher
      Src: /src/xmlsec/src/gnutls/kw_aes.c:412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:414,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:418,1
    - Dst: gnutls_cipher_set_iv
      Src: /src/xmlsec/src/gnutls/kw_aes.c:421,1
    - Dst: gnutls_cipher_encrypt2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:423,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:425,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:425,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 388
    functionDepth: 3
    functionLinenumber: 388
    functionLinenumberEnd: 432
    functionName: xmlSecGnuTLSKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKWAesInitCipher
    - gnutls_cipher_set_iv
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - gnutls_cipher_encrypt2
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWAesBlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n    xmlSecByte * out, xmlSecSize outSize,
      xmlSecSize * outWritten)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:442,1
    - Dst: xmlSecGnuTLSKWAesCheckId
      Src: /src/xmlsec/src/gnutls/kw_aes.c:442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:443,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_aes.c:443,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:445,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:447,1
    - Dst: xmlSecGnuTLSKWAesGetCtx
      Src: /src/xmlsec/src/gnutls/kw_aes.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:455,1
    - Dst: xmlSecGnuTLSKWAesInitCipher
      Src: /src/xmlsec/src/gnutls/kw_aes.c:458,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:460,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:460,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:464,1
    - Dst: gnutls_cipher_set_iv
      Src: /src/xmlsec/src/gnutls/kw_aes.c:467,1
    - Dst: gnutls_cipher_decrypt2
      Src: /src/xmlsec/src/gnutls/kw_aes.c:469,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_aes.c:471,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_aes.c:471,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 434
    functionDepth: 3
    functionLinenumber: 434
    functionLinenumberEnd: 478
    functionName: xmlSecGnuTLSKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKWAesInitCipher
    - gnutls_cipher_decrypt2
    - gnutls_cipher_set_iv
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWAesGetCtx
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWAesBlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n    xmlSecByte * out, xmlSecSize outSize,
      xmlSecSize * outWritten)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:86,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:87,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:88,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:89,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:90,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:91,1
    - Dst: gnutls_rnd
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:95,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:97,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:97,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:102,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:104,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:104,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:116,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:116,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:117,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:117,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:120,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:122,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:122,1
    - Dst: gnutls_cipher_set_iv
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:129,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    argTypes:
    - xmlSecGnuTLSCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 79
    functionDepth: 3
    functionLinenumber: 79
    functionLinenumberEnd: 134
    functionName: xmlSecGnuTLSCbcCipherCtxInit
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - gnutls_rnd
    - gnutls_cipher_set_iv
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - xmlSecBufferGetSize
    - memcpy
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSCbcCipherCtxInit(xmlSecGnuTLSCbcCipherCtxPtr ctx,
      xmlSecBufferPtr in,\n    xmlSecBufferPtr out, int encrypt, const xmlChar* cipherName)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:145,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:146,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:148,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:153,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:154,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:157,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:159,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:159,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:163,1
    - Dst: gnutls_cipher_encrypt2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:167,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:169,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:169,1
    - Dst: gnutls_cipher_decrypt2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:173,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:175,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:175,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 6
    argNames:
    - ctx
    - in
    - inSize
    - out
    - encrypt
    - cipherName
    argTypes:
    - xmlSecGnuTLSCbcCipherCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 182
    functionName: xmlSecGnuTLSCbcCipherCtxUpdateBlock
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - gnutls_cipher_decrypt2
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - gnutls_cipher_encrypt2
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSCbcCipherCtxUpdateBlock(xmlSecGnuTLSCbcCipherCtxPtr
      ctx, const xmlSecByte * in, xmlSecSize inSize,\n    xmlSecBufferPtr out, int
      encrypt, const xmlChar* cipherName)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:197,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:211,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:216,1
    - Dst: xmlSecGnuTLSCbcCipherCtxUpdateBlock
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:218,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:220,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:220,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:225,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:227,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:227,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    argTypes:
    - xmlSecGnuTLSCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 234
    functionName: xmlSecGnuTLSCbcCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGnuTLSCbcCipherCtxUpdateBlock
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSCbcCipherCtxUpdate(xmlSecGnuTLSCbcCipherCtxPtr ctx,
      xmlSecBufferPtr in,\n    xmlSecBufferPtr out, int encrypt, const xmlChar* cipherName)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:251,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:255,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:275,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:279,1
    - Dst: gnutls_rnd
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:284,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:286,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:286,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:292,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:292,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:292,1
    - Dst: xmlSecGnuTLSCbcCipherCtxUpdateBlock
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:295,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:297,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:297,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:302,1
    - Dst: xmlSecGnuTLSCbcCipherCtxUpdateBlock
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:303,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:305,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:305,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:311,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:314,1
    - Dst: xmlSecInvalidSizeMoreThanError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:319,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:320,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:323,1
    - Dst: xmlSecBufferRemoveTail
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:326,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:328,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:328,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:335,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:337,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:337,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 64
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    argTypes:
    - xmlSecGnuTLSCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 236
    functionDepth: 3
    functionLinenumber: 236
    functionLinenumberEnd: 344
    functionName: xmlSecGnuTLSCbcCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - gnutls_rnd
    - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecGnuTLSCbcCipherCtxUpdateBlock
    - xmlSecBufferRemoveTail
    - memcpy
    - xmlSecGnuTLSError
    - xmlSecInvalidSizeMoreThanError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSCbcCipherCtxFinal(xmlSecGnuTLSCbcCipherCtxPtr ctx,
      xmlSecBufferPtr in,\n    xmlSecBufferPtr out, int encrypt, const xmlChar* cipherName)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:370,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:376,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:377,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:378,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 385
    functionName: xmlSecGnuTLSCbcCipherCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSCbcCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:391,1
    - Dst: xmlSecGnuTLSCbcCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:392,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:392,1
    - Dst: xmlSecGnuTLSCbcCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:395,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:397,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:424,1
    - Dst: gnutls_cipher_get_block_size
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:429,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:434,1
    - Dst: gnutls_cipher_get_iv_size
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:436,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:441,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 445
    functionName: xmlSecGnuTLSCbcCipherInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - gnutls_cipher_get_iv_size
    - xmlSecGnuTLSCbcCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromError
    - xmlSecAssert2
    - gnutls_cipher_get_block_size
    - xmlSecGnuTLSCbcCipherCheckId
    - xmlSecGnuTLSError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSCbcCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:451,1
    - Dst: xmlSecGnuTLSCbcCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:451,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:452,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:452,1
    - Dst: xmlSecGnuTLSCbcCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:454,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:455,1
    - Dst: gnutls_cipher_deinit
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:458,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 447
    functionDepth: 2
    functionLinenumber: 447
    functionLinenumberEnd: 461
    functionName: xmlSecGnuTLSCbcCipherFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSCbcCipherGetCtx
    - xmlSecTransformCheckSize
    - gnutls_cipher_deinit
    - xmlSecAssert
    - xmlSecGnuTLSCbcCipherCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSCbcCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:467,1
    - Dst: xmlSecGnuTLSCbcCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:467,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:468,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:469,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:469,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:470,1
    - Dst: xmlSecGnuTLSCbcCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:472,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:473,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:474,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:475,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 463
    functionDepth: 2
    functionLinenumber: 463
    functionLinenumberEnd: 488
    functionName: xmlSecGnuTLSCbcCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSCbcCipherCheckId
    - xmlSecGnuTLSCbcCipherGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSCbcCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:499,1
    - Dst: xmlSecGnuTLSCbcCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:499,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:500,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:501,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:501,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:502,1
    - Dst: xmlSecGnuTLSCbcCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:504,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:505,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:506,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:507,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:508,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:508,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:511,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:514,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:516,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:518,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:518,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:523,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:524,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:524,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:525,1
    - Dst: gnutls_cipher_init
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:528,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:530,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:530,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 490
    functionDepth: 2
    functionLinenumber: 490
    functionLinenumberEnd: 536
    functionName: xmlSecGnuTLSCbcCipherSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecGnuTLSCbcCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - gnutls_cipher_init
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecGnuTLSCbcCipherCheckId
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSCbcCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:545,1
    - Dst: xmlSecGnuTLSCbcCipherCheckId
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:547,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:548,1
    - Dst: xmlSecGnuTLSCbcCipherGetCtx
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:553,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:554,1
    - Dst: xmlSecGnuTLSCbcCipherCtxInit
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:567,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:567,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:569,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:569,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:574,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:574,1
    - Dst: xmlSecGnuTLSCbcCipherCtxUpdate
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:579,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:579,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:581,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:581,1
    - Dst: xmlSecGnuTLSCbcCipherCtxFinal
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:587,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:587,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:589,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:595,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:595,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:599,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:602,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gnutls/ciphers_cbc.c:604,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 56
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 538
    functionDepth: 4
    functionLinenumber: 538
    functionLinenumberEnd: 609
    functionName: xmlSecGnuTLSCbcCipherExecute
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGnuTLSCbcCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecGnuTLSCbcCipherCtxFinal
    - xmlSecGnuTLSCbcCipherCtxUpdate
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecGnuTLSCbcCipherCtxInit
    - xmlSecGnuTLSCbcCipherCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSCbcCipherExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 655
    functionName: xmlSecGnuTLSTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 691
    functionDepth: 0
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionName: xmlSecGnuTLSTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: xmlSecGnuTLSTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 775
    functionName: xmlSecGnuTLSTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformDes3CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionName: xmlSecGnuTLSPbkdf2CheckId
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2CheckId(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:93,1
    - Dst: xmlSecGnuTLSPbkdf2CheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:93,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:94,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:94,1
    - Dst: xmlSecGnuTLSPbkdf2GetCtx
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:97,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:100,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:102,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:104,1
    - Dst: xmlSecGnuTLSPbkdf2Finalize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:105,1
    - Dst: xmlSecTransformPbkdf2ParamsInitialize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:108,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:110,1
    - Dst: xmlSecGnuTLSPbkdf2Finalize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 117
    functionName: xmlSecGnuTLSPbkdf2Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSPbkdf2GetCtx
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformPbkdf2ParamsInitialize
    - xmlSecBufferInitialize
    - xmlSecGnuTLSPbkdf2Finalize
    - xmlSecGnuTLSPbkdf2CheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:123,1
    - Dst: xmlSecGnuTLSPbkdf2CheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:123,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:124,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:124,1
    - Dst: xmlSecGnuTLSPbkdf2GetCtx
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:126,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:127,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:129,1
    - Dst: xmlSecTransformPbkdf2ParamsFinalize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:130,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 133
    functionName: xmlSecGnuTLSPbkdf2Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 1
    functionsReached:
    - xmlSecGnuTLSPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecTransformPbkdf2ParamsFinalize
    - xmlSecAssert
    - xmlSecGnuTLSPbkdf2CheckId
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSPbkdf2Finalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:138,1
    - Dst: xmlSecGnuTLSPbkdf2CheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:139,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionName: xmlSecGnuTLSPbkdf2SetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSPbkdf2CheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:157,1
    - Dst: xmlSecGnuTLSPbkdf2CheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:158,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:159,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:159,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:160,1
    - Dst: xmlSecGnuTLSPbkdf2GetCtx
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:163,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:164,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:164,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:167,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:170,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:172,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:173,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:175,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:175,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:179,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:181,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 148
    functionDepth: 3
    functionLinenumber: 148
    functionLinenumberEnd: 187
    functionName: xmlSecGnuTLSPbkdf2SetKey
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSPbkdf2GetCtx
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - xmlSecGnuTLSPbkdf2CheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:195,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:197,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:199,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:201,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:203,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:206,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 210
    functionName: xmlSecGnuTLSPbkdf2GetMacFromHref
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsSafeString
    - xmlStrcmp
    - xmlSecOtherError2
    linkageType: ''
    returnType: gnutls_mac_algorithm_t
    signature: gnutls_mac_algorithm_t xmlSecGnuTLSPbkdf2GetMacFromHref(const xmlChar*
      href)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:220,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:221,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:222,1
    - Dst: xmlSecGnuTLSPbkdf2GetCtx
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:225,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:228,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:229,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:230,1
    - Dst: xmlSecTransformPbkdf2ParamsRead
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:233,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:235,1
    - Dst: xmlSecGnuTLSPbkdf2GetMacFromHref
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:240,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:242,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 212
    functionDepth: 12
    functionLinenumber: 212
    functionLinenumberEnd: 248
    functionName: xmlSecGnuTLSPbkdf2NodeRead
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSPbkdf2GetCtx
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecTransformCheckSize
    - xmlSecGetNextElementNode
    - xmlSecAssert2
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecTransformPbkdf2ParamsRead
    - xmlSecInvalidNodeError
    - xmlSecGnuTLSPbkdf2GetMacFromHref
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSPbkdf2NodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:260,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:261,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:262,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:263,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:265,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:267,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:272,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:275,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:276,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:276,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:279,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:281,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:282,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:282,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:285,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:287,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:288,1
    - Dst: gnutls_pbkdf2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:291,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:293,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 30
    argCount: 2
    argNames:
    - ctx
    - out
    argTypes:
    - xmlSecGnuTLSPbkdf2CtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 299
    functionName: xmlSecGnuTLSPbkdf2GenerateKey
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - gnutls_pbkdf2
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2GenerateKey(xmlSecGnuTLSPbkdf2CtxPtr ctx, xmlSecBufferPtr
      out)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:307,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:308,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:309,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:310,1
    - Dst: xmlSecGnuTLSPbkdf2GetCtx
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:316,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:328,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:332,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:333,1
    - Dst: xmlSecGnuTLSPbkdf2GenerateKey
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:339,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:341,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:350,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:350,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gnutls/pbkdf2.c:352,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 301
    functionDepth: 3
    functionLinenumber: 301
    functionLinenumberEnd: 357
    functionName: xmlSecGnuTLSPbkdf2Execute
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSPbkdf2GetCtx
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidSizeError
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecGnuTLSPbkdf2GenerateKey
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSPbkdf2Execute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 399
    functionDepth: 0
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionName: xmlSecGnuTLSTransformPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/pbkdf2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:75,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:75,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:76,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:76,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:78,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:79,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/asymkeys.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 84
    functionName: xmlSecGnuTLSAsymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAsymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:90,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:90,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:91,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:91,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:93,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:94,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:97,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:100,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/asymkeys.c:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: xmlSecGnuTLSAsymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - gnutls_pubkey_deinit
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - gnutls_privkey_deinit
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSAsymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:109,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:109,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:110,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:110,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:112,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:113,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:117,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 128
    functionName: xmlSecGnuTLSAsymKeyDataAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - xmlSecKeyDataCheckSize
    - gnutls_privkey_deinit
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAsymKeyDataAdoptKey(xmlSecKeyDataPtr data, gnutls_pubkey_t
      pubkey, gnutls_privkey_t privkey)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:138,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:139,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:140,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:143,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:145,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/asymkeys.c:145,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:147,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:149,1
    - Dst: gnutls_privkey_generate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:153,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:155,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:156,1
    - Dst: xmlSecGnuTLSAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:160,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:162,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:163,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 3
    argNames:
    - data
    - algo
    - key_size
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pk_algorithm_t
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 170
    functionName: xmlSecGnuTLSAsymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - gnutls_privkey_init
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - return
    - xmlSecKeyDataCheckSize
    - gnutls_privkey_generate
    - xmlSecGnuTLSAsymKeyDataAdoptKey
    - gnutls_privkey_deinit
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAsymKeyDataGenerate(xmlSecKeyDataPtr data, gnutls_pk_algorithm_t
      algo, xmlSecSize key_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:178,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:179,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:180,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:181,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:181,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:186,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:188,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:189,1
    - Dst: gnutls_pubkey_export2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:195,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:197,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:201,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:203,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:204,1
    - Dst: gnutls_pubkey_import
      Src: /src/xmlsec/src/gnutls/asymkeys.c:208,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:210,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:211,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:214,1
    - Dst: gnutls_privkey_export_x509
      Src: /src/xmlsec/src/gnutls/asymkeys.c:221,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:223,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:227,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:229,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:230,1
    - Dst: gnutls_privkey_import_x509
      Src: /src/xmlsec/src/gnutls/asymkeys.c:234,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:236,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:237,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 245
    functionName: xmlSecGnuTLSAsymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - gnutls_privkey_import_x509
    - gnutls_pubkey_import
    - xmlSecAssert2
    - gnutls_privkey_export_x509
    - gnutls_privkey_init
    - gnutls_x509_privkey_deinit
    - gnutls_pubkey_export2
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - gnutls_pubkey_init
    - xmlSecKeyDataCheckSize
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAsymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:251,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:252,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:252,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 258
    functionName: xmlSecGnuTLSAsymKeyDataGetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGnuTLSAsymKeyDataGetCtx
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSAsymKeyDataGetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:264,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:264,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:265,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:265,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 271
    functionName: xmlSecGnuTLSAsymKeyDataGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGnuTLSAsymKeyDataGetCtx
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSAsymKeyDataGetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:277,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:278,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:278,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:281,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 292
    functionName: xmlSecGnuTLSAsymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGnuTLSAsymKeyDataGetCtx
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSAsymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:301,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:302,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:302,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gnutls/asymkeys.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:305,1
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:308,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:310,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/gnutls/asymkeys.c:313,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/asymkeys.c:313,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:318,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:320,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/gnutls/asymkeys.c:323,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/asymkeys.c:323,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:327,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 329
    functionName: xmlSecGnuTLSAsymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - gnutls_privkey_get_pk_algorithm
    - xmlSecGnuTLSAsymKeyDataGetCtx
    - gnutls_pubkey_get_pk_algorithm
    - return
    - xmlSecKeyDataCheckSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSAsymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:351,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:353,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:355,1
    - Dst: xmlSecGnuTLSAsymKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:359,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:361,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:362,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gnutls/asymkeys.c:369,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:371,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:372,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - pubkey
    argTypes:
    - gnutls_pubkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 345
    functionDepth: 4
    functionLinenumber: 345
    functionLinenumberEnd: 379
    functionName: xmlSecGCryptAsymetricKeyCreatePub
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecGnuTLSAsymKeyDataCreate
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecGCryptAsymetricKeyCreatePub(gnutls_pubkey_t pubkey)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:396,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:398,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:400,1
    - Dst: xmlSecGnuTLSAsymKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:404,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:406,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:407,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gnutls/asymkeys.c:414,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:416,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:417,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:418,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - privkey
    argTypes:
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 390
    functionDepth: 4
    functionLinenumber: 390
    functionLinenumberEnd: 424
    functionName: xmlSecGCryptAsymetricKeyCreatePriv
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecGnuTLSAsymKeyDataCreate
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecGCryptAsymetricKeyCreatePriv(gnutls_privkey_t privkey)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:439,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/asymkeys.c:441,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:443,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 435
    functionDepth: 2
    functionLinenumber: 435
    functionLinenumberEnd: 448
    functionName: xmlSecGCryptAsymetricKeyGetPub
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGCryptAsymetricKeyGetPub(xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:462,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/asymkeys.c:464,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:466,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:470,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 458
    functionDepth: 2
    functionLinenumber: 458
    functionLinenumberEnd: 471
    functionName: xmlSecGCryptAsymetricKeyGetPriv
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGCryptAsymetricKeyGetPriv(xmlSecKeyPtr key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 551
    functionName: xmlSecGnuTLSKeyDataDEREncodedKeyValueGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataDEREncodedKeyValueGetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:566,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:567,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:569,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:571,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:573,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:575,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:575,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/gnutls/asymkeys.c:580,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:582,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:582,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/gnutls/asymkeys.c:587,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:589,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:589,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:592,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:593,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:601,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:603,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:603,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:608,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:608,1
    - Dst: gnutls_pubkey_import
      Src: /src/xmlsec/src/gnutls/asymkeys.c:610,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:612,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:612,1
    - Dst: xmlSecGnuTLSAsymKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:617,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:619,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:619,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gnutls/asymkeys.c:624,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:626,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:626,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:636,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:639,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:641,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 70
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 553
    functionDepth: 4
    functionLinenumber: 553
    functionLinenumberEnd: 643
    functionName: xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - xmlSecKeySetValue
    - xmlSecBufferFinalize
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - gnutls_pubkey_import
    - xmlSecAssert2
    - gnutls_pubkey_deinit
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - gnutls_pubkey_init
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - xmlSecGnuTLSAsymKeyDataCreate
    - xmlSecKeyDataKlassGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecUnexpectedNodeError
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlRead(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:653,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:654,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:655,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:656,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:657,1
    - Dst: xmlSecGCryptAsymetricKeyGetPub
      Src: /src/xmlsec/src/gnutls/asymkeys.c:660,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:662,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:662,1
    - Dst: gnutls_pubkey_export2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:667,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:669,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:669,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/gnutls/asymkeys.c:674,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:674,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:676,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:676,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/gnutls/asymkeys.c:679,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/asymkeys.c:686,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:689,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 645
    functionDepth: 10
    functionLinenumber: 645
    functionLinenumberEnd: 692
    functionName: xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymetricKeyGetPub
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - gnutls_pubkey_export2
    - xmlNodeAddContent
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataKlassGetName
    - xmlSecBase64Encode
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlWrite(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 784
    functionDepth: 0
    functionLinenumber: 784
    functionLinenumberEnd: 787
    functionName: xmlSecGnuTLSKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataDsaGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:803,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:803,1
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:807,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:809,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:814,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:816,1
    - Dst: xmlSecGnuTLSKeyDataDsaPubKeyFromPrivKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:823,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:825,1
    - Dst: xmlSecGnuTLSAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:831,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 799
    functionDepth: 2
    functionLinenumber: 799
    functionLinenumberEnd: 832
    functionName: xmlSecGnuTLSKeyDataDsaAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - gnutls_privkey_get_pk_algorithm
    - gnutls_pubkey_get_pk_algorithm
    - xmlSecGnuTLSAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataDsaPubKeyFromPrivKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDsaAdoptKey(xmlSecKeyDataPtr data, gnutls_pubkey_t
      pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:844,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:844,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 842
    functionDepth: 2
    functionLinenumber: 842
    functionLinenumberEnd: 846
    functionName: xmlSecGnuTLSKeyDataDsaGetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataDsaGetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:858,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:858,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 856
    functionDepth: 2
    functionLinenumber: 856
    functionLinenumberEnd: 860
    functionName: xmlSecGnuTLSKeyDataDsaGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataDsaGetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:864,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:864,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 862
    functionDepth: 2
    functionLinenumber: 862
    functionLinenumberEnd: 867
    functionName: xmlSecGnuTLSKeyDataDsaInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:871,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:871,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:873,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 869
    functionDepth: 2
    functionLinenumber: 869
    functionLinenumberEnd: 874
    functionName: xmlSecGnuTLSKeyDataDsaFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataDsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:878,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:879,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:879,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 876
    functionDepth: 2
    functionLinenumber: 876
    functionLinenumberEnd: 882
    functionName: xmlSecGnuTLSKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:886,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:886,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:887,1
    - Dst: xmlSecGnuTLSAsymKeyDataGenerate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 884
    functionDepth: 3
    functionLinenumber: 884
    functionLinenumberEnd: 890
    functionName: xmlSecGnuTLSKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGenerate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:894,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:894,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 892
    functionDepth: 2
    functionLinenumber: 892
    functionLinenumberEnd: 897
    functionName: xmlSecGnuTLSKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataDsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:901,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:901,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:903,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 899
    functionDepth: 2
    functionLinenumber: 899
    functionLinenumberEnd: 904
    functionName: xmlSecGnuTLSKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:908,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:908,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:909,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:911,1
    - Dst: xmlSecGnuTLSKeyDataDsaGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:912,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 906
    functionDepth: 3
    functionLinenumber: 906
    functionLinenumberEnd: 913
    functionName: xmlSecGnuTLSKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSKeyDataDsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:917,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:917,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:918,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:920,1
    - Dst: xmlSecGnuTLSKeyDataDsaGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:921,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 915
    functionDepth: 3
    functionLinenumber: 915
    functionLinenumberEnd: 922
    functionName: xmlSecGnuTLSKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSKeyDataDsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:930,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/gnutls/asymkeys.c:931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 924
    functionDepth: 3
    functionLinenumber: 924
    functionLinenumberEnd: 933
    functionName: xmlSecGnuTLSKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataDsaXmlRead(xmlSecKeyDataId id,\n                              xmlSecKeyPtr
      key,\n                              xmlNodePtr node,\n                              xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:938,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/gnutls/asymkeys.c:939,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 935
    functionDepth: 3
    functionLinenumber: 935
    functionLinenumberEnd: 942
    functionName: xmlSecGnuTLSKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:955,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:956,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:959,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:960,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:961,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:961,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:964,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:965,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:966,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:966,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:969,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:970,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:971,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:971,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:974,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:975,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:976,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:976,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:979,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:983,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:984,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:984,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:986,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:988,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:988,1
    - Dst: gnutls_privkey_import_dsa_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:992,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:994,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:994,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1000,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1002,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1002,1
    - Dst: gnutls_pubkey_import_dsa_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1006,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1008,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1008,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1013,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1015,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1015,1
    - Dst: xmlSecGnuTLSKeyDataDsaAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1019,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1021,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1021,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1034,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1038,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1041,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 72
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 944
    functionDepth: 3
    functionLinenumber: 944
    functionLinenumberEnd: 1044
    functionName: xmlSecGnuTLSKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - gnutls_pubkey_import_dsa_raw
    - gnutls_privkey_import_dsa_raw
    - xmlSecInternalError
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_privkey_init
    - xmlSecBufferGetData
    - gnutls_pubkey_init
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - xmlSecGnuTLSKeyDataDsaAdoptKey
    - xmlSecKeyDataKlassGetName
    - gnutls_privkey_deinit
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecKeyDataCreate
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGnuTLSKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1061,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1062,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1063,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1063,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1064,1
    - Dst: xmlSecGnuTLSKeyDataDsaGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1067,1
    - Dst: xmlSecGnuTLSKeyDataDsaGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1068,1
    - Dst: gnutls_privkey_export_dsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1070,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1074,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1074,1
    - Dst: gnutls_pubkey_export_dsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1078,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1082,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1082,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1086,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1086,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1092,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1092,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1095,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1097,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1097,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1103,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1103,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1106,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1108,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1108,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1114,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1114,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1117,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1119,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1119,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1125,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1125,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1128,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1130,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1130,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1137,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1137,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1140,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1142,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1142,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1152,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1155,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1158,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1161,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1164,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 103
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1046
    functionDepth: 3
    functionLinenumber: 1046
    functionLinenumberEnd: 1168
    functionName: xmlSecGnuTLSKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - gnutls_free
    - xmlSecAssert2
    - gnutls_privkey_export_dsa_raw2
    - gnutls_pubkey_export_dsa_raw2
    - xmlSecBufferAppend
    - xmlSecGnuTLSKeyDataDsaGetPrivateKey
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecGnuTLSError
    - xmlSecGnuTLSKeyDataDsaGetPublicKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n    xmlSecKeyValueDsaPtr dsaValue, int writePrivateKey)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1180,1
    - Dst: gnutls_privkey_export_dsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1182,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1186,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1190,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1192,1
    - Dst: gnutls_pubkey_import_dsa_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1196,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1198,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1199,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1205,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1208,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1211,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1214,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1217,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 1
    argNames:
    - privkey
    argTypes:
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1221
      start: 1170
    functionDepth: 1
    functionLinenumber: 1170
    functionLinenumberEnd: 1221
    functionName: xmlSecGnuTLSKeyDataDsaPubKeyFromPrivKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 1
    functionsReached:
    - gnutls_pubkey_import_dsa_raw
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_privkey_export_dsa_raw2
    - gnutls_pubkey_init
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataDsaPubKeyFromPrivKey(gnutls_privkey_t
      privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1311
      start: 1308
    functionDepth: 0
    functionLinenumber: 1308
    functionLinenumberEnd: 1311
    functionName: xmlSecGnuTLSKeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataEcGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1327,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1327,1
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1331,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1333,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1338,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1340,1
    - Dst: xmlSecGnuTLSKeyDataEcPubKeyFromPrivKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1347,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1349,1
    - Dst: xmlSecGnuTLSAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1355,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1323
    functionDepth: 2
    functionLinenumber: 1323
    functionLinenumberEnd: 1356
    functionName: xmlSecGnuTLSKeyDataEcAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - gnutls_privkey_get_pk_algorithm
    - gnutls_pubkey_get_pk_algorithm
    - xmlSecGnuTLSAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataEcPubKeyFromPrivKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataEcAdoptKey(xmlSecKeyDataPtr data, gnutls_pubkey_t
      pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1368,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1368,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1366
    functionDepth: 2
    functionLinenumber: 1366
    functionLinenumberEnd: 1370
    functionName: xmlSecGnuTLSKeyDataEcGetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataEcGetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1382,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1382,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1380
    functionDepth: 2
    functionLinenumber: 1380
    functionLinenumberEnd: 1384
    functionName: xmlSecGnuTLSKeyDataEcGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataEcGetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1388,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1388,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1386
    functionDepth: 2
    functionLinenumber: 1386
    functionLinenumberEnd: 1391
    functionName: xmlSecGnuTLSKeyDataEcInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataEcInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1395,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1395,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1396,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1396,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1393
    functionDepth: 2
    functionLinenumber: 1393
    functionLinenumberEnd: 1399
    functionName: xmlSecGnuTLSKeyDataEcDuplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataEcDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1403,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1403,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1405,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1401
    functionDepth: 2
    functionLinenumber: 1401
    functionLinenumberEnd: 1406
    functionName: xmlSecGnuTLSKeyDataEcFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataEcFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1410,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1410,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1408
    functionDepth: 2
    functionLinenumber: 1408
    functionLinenumberEnd: 1413
    functionName: xmlSecGnuTLSKeyDataEcGetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataEcGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1417,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1417,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1415
    functionDepth: 2
    functionLinenumber: 1415
    functionLinenumberEnd: 1420
    functionName: xmlSecGnuTLSKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1424,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1424,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1425,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1427,1
    - Dst: xmlSecGnuTLSKeyDataEcGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1422
    functionDepth: 3
    functionLinenumber: 1422
    functionLinenumberEnd: 1429
    functionName: xmlSecGnuTLSKeyDataEcDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataEcGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataEcDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1433,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1433,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1434,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1436,1
    - Dst: xmlSecGnuTLSKeyDataEcGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1431
    functionDepth: 3
    functionLinenumber: 1431
    functionLinenumberEnd: 1438
    functionName: xmlSecGnuTLSKeyDataEcDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataEcGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataEcDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1446,1
    - Dst: xmlSecKeyDataEcXmlRead
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1440
    functionDepth: 3
    functionLinenumber: 1440
    functionLinenumberEnd: 1449
    functionName: xmlSecGnuTLSKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataEcXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataEcXmlRead(xmlSecKeyDataId id,\n                              xmlSecKeyPtr
      key,\n                              xmlNodePtr node,\n                              xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1454,1
    - Dst: xmlSecKeyDataEcXmlWrite
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1455,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1451
    functionDepth: 3
    functionLinenumber: 1451
    functionLinenumberEnd: 1458
    functionName: xmlSecGnuTLSKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataEcXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1471,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1472,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1473,1
    - Dst: xmlSecKeyDataEcPublicKeySplitComponents
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1476,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1478,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1478,1
    - Dst: gnutls_oid_to_ecc_curve
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1482,1
    - Dst: xmlSecGnuTLSError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1484,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1484,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1485,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1490,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1491,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1492,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1492,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1495,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1496,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1497,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1497,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1500,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1502,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1502,1
    - Dst: gnutls_pubkey_import_ecc_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1506,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1508,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1508,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1513,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1515,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1515,1
    - Dst: xmlSecGnuTLSKeyDataEcAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1519,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1521,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1521,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1533,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1536,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 58
    argCount: 2
    argNames:
    - id
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1460
    functionDepth: 4
    functionLinenumber: 1460
    functionLinenumberEnd: 1539
    functionName: xmlSecGnuTLSKeyDataEcRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyDataEcAdoptKey
    - xmlSecInternalError
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - gnutls_pubkey_import_ecc_raw
    - xmlSecBufferGetData
    - gnutls_pubkey_init
    - xmlSecKeyDataDestroy
    - gnutls_oid_to_ecc_curve
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataEcPublicKeySplitComponents
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecKeyDataCreate
    - xmlSecGnuTLSError
    - xmlSecGnuTLSError2
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGnuTLSKeyDataEcRead(xmlSecKeyDataId id, xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1554,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1555,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1556,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1556,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1557,1
    - Dst: xmlSecGnuTLSKeyDataEcGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1560,1
    - Dst: xmlSecGnuTLSKeyDataEcGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1561,1
    - Dst: gnutls_privkey_export_ecc_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1563,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1567,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1567,1
    - Dst: gnutls_pubkey_export_ecc_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1571,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1575,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1575,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1579,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1579,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1585,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1585,1
    - Dst: gnutls_ecc_curve_get_oid
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1588,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1590,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1590,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1593,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1601,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1601,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1604,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1606,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1606,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1612,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1612,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1615,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1617,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1617,1
    - Dst: xmlSecKeyDataEcPublicKeyCombineComponents
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1621,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1623,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1623,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1632,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1635,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 82
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1541
    functionDepth: 3
    functionLinenumber: 1541
    functionLinenumberEnd: 1638
    functionName: xmlSecGnuTLSKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyDataEcGetPrivateKey
    - xmlStrdup
    - xmlSecInternalError
    - xmlSecKeyDataEcPublicKeyCombineComponents
    - gnutls_free
    - xmlSecAssert2
    - gnutls_privkey_export_ecc_raw2
    - gnutls_ecc_curve_get_oid
    - xmlSecBufferAppend
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - gnutls_pubkey_export_ecc_raw2
    - xmlSecGnuTLSError
    - xmlSecGnuTLSKeyDataEcGetPublicKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueEcPtr ecValue)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1649,1
    - Dst: gnutls_privkey_export_ecc_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1651,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1655,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1659,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1661,1
    - Dst: gnutls_pubkey_import_ecc_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1665,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1667,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1668,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1674,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1677,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1680,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 1
    argNames:
    - privkey
    argTypes:
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1640
    functionDepth: 1
    functionLinenumber: 1640
    functionLinenumberEnd: 1683
    functionName: xmlSecGnuTLSKeyDataEcPubKeyFromPrivKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 1
    functionsReached:
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_import_ecc_raw
    - gnutls_pubkey_init
    - gnutls_privkey_export_ecc_raw2
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataEcPubKeyFromPrivKey(gnutls_privkey_t
      privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1777
    functionDepth: 0
    functionLinenumber: 1777
    functionLinenumberEnd: 1780
    functionName: xmlSecGnuTLSKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataRsaGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1796,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1796,1
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1800,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1802,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1807,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1809,1
    - Dst: xmlSecGnuTLSKeyDataRsaPubKeyFromPrivKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1816,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1818,1
    - Dst: xmlSecGnuTLSAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1824,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1792
    functionDepth: 2
    functionLinenumber: 1792
    functionLinenumberEnd: 1825
    functionName: xmlSecGnuTLSKeyDataRsaAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataRsaPubKeyFromPrivKey
    - xmlSecInternalError2
    - gnutls_privkey_get_pk_algorithm
    - gnutls_pubkey_get_pk_algorithm
    - xmlSecGnuTLSAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataRsaAdoptKey(xmlSecKeyDataPtr data, gnutls_pubkey_t
      pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1837,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1837,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1839
      start: 1835
    functionDepth: 2
    functionLinenumber: 1835
    functionLinenumberEnd: 1839
    functionName: xmlSecGnuTLSKeyDataRsaGetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataRsaGetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1851,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1851,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1849
    functionDepth: 2
    functionLinenumber: 1849
    functionLinenumberEnd: 1853
    functionName: xmlSecGnuTLSKeyDataRsaGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataRsaGetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1857,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1857,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1860
      start: 1855
    functionDepth: 2
    functionLinenumber: 1855
    functionLinenumberEnd: 1860
    functionName: xmlSecGnuTLSKeyDataRsaInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataRsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1864,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1864,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1866,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1862
    functionDepth: 2
    functionLinenumber: 1862
    functionLinenumberEnd: 1867
    functionName: xmlSecGnuTLSKeyDataRsaFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataRsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1871,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1871,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1872,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1872,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1875
      start: 1869
    functionDepth: 2
    functionLinenumber: 1869
    functionLinenumberEnd: 1875
    functionName: xmlSecGnuTLSKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1879,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1880,1
    - Dst: xmlSecGnuTLSAsymKeyDataGenerate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1877
    functionDepth: 3
    functionLinenumber: 1877
    functionLinenumberEnd: 1883
    functionName: xmlSecGnuTLSKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGenerate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1887,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1887,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1885
    functionDepth: 2
    functionLinenumber: 1885
    functionLinenumberEnd: 1890
    functionName: xmlSecGnuTLSKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataRsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1894,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1894,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1892
    functionDepth: 2
    functionLinenumber: 1892
    functionLinenumberEnd: 1897
    functionName: xmlSecGnuTLSKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1901,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1901,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1902,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1904,1
    - Dst: xmlSecGnuTLSKeyDataRsaGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1905,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1906
      start: 1899
    functionDepth: 3
    functionLinenumber: 1899
    functionLinenumberEnd: 1906
    functionName: xmlSecGnuTLSKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1910,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1910,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1911,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1913,1
    - Dst: xmlSecGnuTLSKeyDataRsaGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1915
      start: 1908
    functionDepth: 3
    functionLinenumber: 1908
    functionLinenumberEnd: 1915
    functionName: xmlSecGnuTLSKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1923,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1917
    functionDepth: 3
    functionLinenumber: 1917
    functionLinenumberEnd: 1926
    functionName: xmlSecGnuTLSKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataRsaXmlRead(xmlSecKeyDataId id,\n                              xmlSecKeyPtr
      key,\n                              xmlNodePtr node,\n                              xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1931,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1932,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1935
      start: 1928
    functionDepth: 3
    functionLinenumber: 1928
    functionLinenumberEnd: 1935
    functionName: xmlSecGnuTLSKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1947,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1948,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1951,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1952,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1953,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1953,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1956,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1957,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1958,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1958,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1961,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1963,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1963,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1968,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1970,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1970,1
    - Dst: gnutls_pubkey_import_rsa_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1974,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1979,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1979,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1984,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1986,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1986,1
    - Dst: xmlSecGnuTLSKeyDataRsaAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1990,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1992,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:1992,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2004,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2007,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2010
      start: 1937
    functionDepth: 3
    functionLinenumber: 1937
    functionLinenumberEnd: 2010
    functionName: xmlSecGnuTLSKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - gnutls_pubkey_import_rsa_raw
    - xmlSecInternalError
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataRsaAdoptKey
    - xmlSecBufferGetData
    - gnutls_pubkey_init
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecKeyDataCreate
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGnuTLSKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2025,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2026,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2027,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2027,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2028,1
    - Dst: xmlSecGnuTLSKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2031,1
    - Dst: xmlSecGnuTLSKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2032,1
    - Dst: gnutls_privkey_export_rsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2034,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2045,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2045,1
    - Dst: gnutls_pubkey_export_rsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2049,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2054,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2054,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2058,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2058,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2064,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2064,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2067,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2069,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2069,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2075,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2075,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2078,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2080,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2080,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2094,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2097,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2100,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2012
    functionDepth: 3
    functionLinenumber: 2012
    functionLinenumberEnd: 2104
    functionName: xmlSecGnuTLSKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyDataRsaGetPublicKey
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferAppend
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - gnutls_privkey_export_rsa_raw2
    - xmlSecGnuTLSKeyDataRsaGetPrivateKey
    - xmlSecGnuTLSError
    - gnutls_free
    - gnutls_pubkey_export_rsa_raw2
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataRsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n    xmlSecKeyValueRsaPtr rsaValue, int writePrivateKey)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2116,1
    - Dst: gnutls_privkey_export_rsa_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2118,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2129,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2133,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2135,1
    - Dst: gnutls_pubkey_import_rsa_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2139,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2144,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2145,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2151,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2154,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2157,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2160,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2163,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 1
    argNames:
    - privkey
    argTypes:
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2166
    functionName: xmlSecGnuTLSKeyDataRsaPubKeyFromPrivKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 1
    functionsReached:
    - gnutls_pubkey_import_rsa_raw
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_init
    - gnutls_privkey_export_rsa_raw2
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataRsaPubKeyFromPrivKey(gnutls_privkey_t
      privkey)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2188,1
    - Dst: gnutls_privkey_export_gost_raw2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2190,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2195,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2199,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2201,1
    - Dst: gnutls_pubkey_import_gost_raw
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2205,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2209,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2210,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2216,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2219,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2222,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 1
    argNames:
    - privkey
    argTypes:
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2225
      start: 2177
    functionDepth: 1
    functionLinenumber: 2177
    functionLinenumberEnd: 2225
    functionName: xmlSecGnuTLSKeyDataGostPubKeyFromPrivKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - gnutls_pubkey_import_gost_raw
    - gnutls_free
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_init
    - xmlSecGnuTLSError
    - gnutls_privkey_export_gost_raw2
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataGostPubKeyFromPrivKey(gnutls_privkey_t
      privkey)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2233,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2235,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2240,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2242,1
    - Dst: xmlSecGnuTLSKeyDataGostPubKeyFromPrivKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2249,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2251,1
    - Dst: xmlSecGnuTLSAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2257,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 4
    argNames:
    - algo
    - data
    - pubkey
    - privkey
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2258
      start: 2227
    functionDepth: 2
    functionLinenumber: 2227
    functionLinenumberEnd: 2258
    functionName: xmlSecGnuTLSKeyDataGostAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInternalError2
    - gnutls_privkey_get_pk_algorithm
    - gnutls_pubkey_get_pk_algorithm
    - xmlSecGnuTLSKeyDataGostPubKeyFromPrivKey
    - xmlSecGnuTLSAsymKeyDataAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGostAdoptKey(int algo, xmlSecKeyDataPtr data,
      gnutls_pubkey_t pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2329
      start: 2326
    functionDepth: 0
    functionLinenumber: 2326
    functionLinenumberEnd: 2329
    functionName: xmlSecGnuTLSKeyDataGost2001GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataGost2001GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2343,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2343,1
    - Dst: xmlSecGnuTLSKeyDataGostAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2345
      start: 2341
    functionDepth: 3
    functionLinenumber: 2341
    functionLinenumberEnd: 2345
    functionName: xmlSecGnuTLSKeyDataGost2001AdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataGostAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2001AdoptKey(xmlSecKeyDataPtr data, gnutls_pubkey_t
      pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2357,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2357,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2355
    functionDepth: 2
    functionLinenumber: 2355
    functionLinenumberEnd: 2359
    functionName: xmlSecGnuTLSKeyDataGost2001GetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataGost2001GetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2371,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2371,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2373
      start: 2369
    functionDepth: 2
    functionLinenumber: 2369
    functionLinenumberEnd: 2373
    functionName: xmlSecGnuTLSKeyDataGost2001GetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataGost2001GetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2377,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2377,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2380
      start: 2375
    functionDepth: 2
    functionLinenumber: 2375
    functionLinenumberEnd: 2380
    functionName: xmlSecGnuTLSKeyDataGost2001Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2001Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2384,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2385,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2385,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2388
      start: 2382
    functionDepth: 2
    functionLinenumber: 2382
    functionLinenumberEnd: 2388
    functionName: xmlSecGnuTLSKeyDataGost2001Duplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2001Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2392,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2392,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2395
      start: 2390
    functionDepth: 2
    functionLinenumber: 2390
    functionLinenumberEnd: 2395
    functionName: xmlSecGnuTLSKeyDataGost2001Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2001Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2399,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2399,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2397
    functionDepth: 2
    functionLinenumber: 2397
    functionLinenumberEnd: 2402
    functionName: xmlSecGnuTLSKeyDataGost2001GetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataGost2001GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2406,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2406,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2409
      start: 2404
    functionDepth: 2
    functionLinenumber: 2404
    functionLinenumberEnd: 2409
    functionName: xmlSecGnuTLSKeyDataGost2001GetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataGost2001GetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2413,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2413,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2414,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2416,1
    - Dst: xmlSecGnuTLSKeyDataGost2001GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2418
      start: 2411
    functionDepth: 3
    functionLinenumber: 2411
    functionLinenumberEnd: 2418
    functionName: xmlSecGnuTLSKeyDataGost2001DebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2001GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2001DebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2422,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2422,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2423,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2425,1
    - Dst: xmlSecGnuTLSKeyDataGost2001GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2427
      start: 2420
    functionDepth: 3
    functionLinenumber: 2420
    functionLinenumberEnd: 2427
    functionName: xmlSecGnuTLSKeyDataGost2001DebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2001GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2001DebugXmlDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2497
    functionDepth: 0
    functionLinenumber: 2497
    functionLinenumberEnd: 2500
    functionName: xmlSecGnuTLSKeyDataGost2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataGost2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2514,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2514,1
    - Dst: xmlSecGnuTLSKeyDataGostAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2516
      start: 2512
    functionDepth: 3
    functionLinenumber: 2512
    functionLinenumberEnd: 2516
    functionName: xmlSecGnuTLSKeyDataGost2012_256AdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataGostAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_256AdoptKey(xmlSecKeyDataPtr data,
      gnutls_pubkey_t pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2528,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2528,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2530
      start: 2526
    functionDepth: 2
    functionLinenumber: 2526
    functionLinenumberEnd: 2530
    functionName: xmlSecGnuTLSKeyDataGost2012_256GetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataGost2012_256GetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2542,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2542,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2544
      start: 2540
    functionDepth: 2
    functionLinenumber: 2540
    functionLinenumberEnd: 2544
    functionName: xmlSecGnuTLSKeyDataGost2012_256GetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataGost2012_256GetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2548,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2548,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2551
      start: 2546
    functionDepth: 2
    functionLinenumber: 2546
    functionLinenumberEnd: 2551
    functionName: xmlSecGnuTLSKeyDataGost2012_256Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_256Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2555,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2555,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2556,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2556,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2559
      start: 2553
    functionDepth: 2
    functionLinenumber: 2553
    functionLinenumberEnd: 2559
    functionName: xmlSecGnuTLSKeyDataGost2012_256Duplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_256Duplicate(xmlSecKeyDataPtr dst,
      xmlSecKeyDataPtr src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2563,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2563,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2566
      start: 2561
    functionDepth: 2
    functionLinenumber: 2561
    functionLinenumberEnd: 2566
    functionName: xmlSecGnuTLSKeyDataGost2012_256Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_256Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2570,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2570,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2573
      start: 2568
    functionDepth: 2
    functionLinenumber: 2568
    functionLinenumberEnd: 2573
    functionName: xmlSecGnuTLSKeyDataGost2012_256GetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataGost2012_256GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2577,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2577,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2580
      start: 2575
    functionDepth: 2
    functionLinenumber: 2575
    functionLinenumberEnd: 2580
    functionName: xmlSecGnuTLSKeyDataGost2012_256GetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataGost2012_256GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2584,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2584,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2585,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2587,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_256GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2589
      start: 2582
    functionDepth: 3
    functionLinenumber: 2582
    functionLinenumberEnd: 2589
    functionName: xmlSecGnuTLSKeyDataGost2012_256DebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2012_256GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_256DebugDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2593,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2593,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2594,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2596,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_256GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2598
      start: 2591
    functionDepth: 3
    functionLinenumber: 2591
    functionLinenumberEnd: 2598
    functionName: xmlSecGnuTLSKeyDataGost2012_256DebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2012_256GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_256DebugXmlDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2663
    functionDepth: 0
    functionLinenumber: 2663
    functionLinenumberEnd: 2666
    functionName: xmlSecGnuTLSKeyDataGost2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataGost2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2680,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2680,1
    - Dst: xmlSecGnuTLSKeyDataGostAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2681,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - data
    - pubkey
    - privkey
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2678
    functionDepth: 3
    functionLinenumber: 2678
    functionLinenumberEnd: 2682
    functionName: xmlSecGnuTLSKeyDataGost2012_512AdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataGostAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_512AdoptKey(xmlSecKeyDataPtr data,
      gnutls_pubkey_t pubkey, gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2694,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2694,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2696
      start: 2692
    functionDepth: 2
    functionLinenumber: 2692
    functionLinenumberEnd: 2696
    functionName: xmlSecGnuTLSKeyDataGost2012_512GetPublicKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSKeyDataGost2012_512GetPublicKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2708,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2708,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2706
    functionDepth: 2
    functionLinenumber: 2706
    functionLinenumberEnd: 2710
    functionName: xmlSecGnuTLSKeyDataGost2012_512GetPrivateKey
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSKeyDataGost2012_512GetPrivateKey(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2714,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2714,1
    - Dst: xmlSecGnuTLSAsymKeyDataInitialize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2712
    functionDepth: 2
    functionLinenumber: 2712
    functionLinenumberEnd: 2717
    functionName: xmlSecGnuTLSKeyDataGost2012_512Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_512Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2721,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2721,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2722,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2722,1
    - Dst: xmlSecGnuTLSAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2724,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2725
      start: 2719
    functionDepth: 2
    functionLinenumber: 2719
    functionLinenumberEnd: 2725
    functionName: xmlSecGnuTLSKeyDataGost2012_512Duplicate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataGost2012_512Duplicate(xmlSecKeyDataPtr dst,
      xmlSecKeyDataPtr src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2729,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2729,1
    - Dst: xmlSecGnuTLSAsymKeyDataFinalize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2731,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2732
      start: 2727
    functionDepth: 2
    functionLinenumber: 2727
    functionLinenumberEnd: 2732
    functionName: xmlSecGnuTLSKeyDataGost2012_512Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAsymKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_512Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2736,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2736,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetType
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2734
    functionDepth: 2
    functionLinenumber: 2734
    functionLinenumberEnd: 2739
    functionName: xmlSecGnuTLSKeyDataGost2012_512GetType
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetType
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSKeyDataGost2012_512GetType(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2743,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2743,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2741
    functionDepth: 2
    functionLinenumber: 2741
    functionLinenumberEnd: 2746
    functionName: xmlSecGnuTLSKeyDataGost2012_512GetSize
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSAsymKeyDataGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataGost2012_512GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2750,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2750,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2751,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2753,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_512GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2755
      start: 2748
    functionDepth: 3
    functionLinenumber: 2748
    functionLinenumberEnd: 2755
    functionName: xmlSecGnuTLSKeyDataGost2012_512DebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_512DebugDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2759,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2759,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2760,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2762,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_512GetSize
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2757
    functionDepth: 3
    functionLinenumber: 2757
    functionLinenumberEnd: 2764
    functionName: xmlSecGnuTLSKeyDataGost2012_512DebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSKeyDataGost2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataGost2012_512DebugXmlDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_pubkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2785,1
    - Dst: gnutls_privkey_get_pk_algorithm
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2788,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2797,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2801,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2808,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2810,1
    - Dst: xmlSecGnuTLSKeyDataDsaAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2814,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2816,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2817,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2826,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2828,1
    - Dst: xmlSecGnuTLSKeyDataRsaAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2832,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2834,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2835,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2844,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2846,1
    - Dst: xmlSecGnuTLSKeyDataEcAdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2850,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2852,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2853,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2862,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2864,1
    - Dst: xmlSecGnuTLSKeyDataGost2001AdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2868,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2870,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2871,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2881,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2883,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_256AdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2887,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2889,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2890,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2897,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2899,1
    - Dst: xmlSecGnuTLSKeyDataGost2012_512AdoptKey
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2903,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2905,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2906,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/asymkeys.c:2914,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 107
    argCount: 2
    argNames:
    - pubkey
    - privkey
    argTypes:
    - gnutls_pubkey_t
    - gnutls_privkey_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2921
      start: 2775
    functionDepth: 4
    functionLinenumber: 2775
    functionLinenumberEnd: 2921
    functionName: xmlSecGnuTLSAsymKeyDataCreate
    functionSourceFile: /src/xmlsec/src/gnutls/asymkeys.c
    functionUses: 3
    functionsReached:
    - xmlSecGnuTLSKeyDataEcAdoptKey
    - xmlSecGnuTLSKeyDataGost2012_512AdoptKey
    - xmlSecInternalError
    - xmlSecGnuTLSKeyDataGost2001AdoptKey
    - xmlSecInternalError2
    - gnutls_privkey_get_pk_algorithm
    - xmlSecGnuTLSKeyDataRsaAdoptKey
    - xmlSecKeyDataDestroy
    - gnutls_pubkey_get_pk_algorithm
    - xmlSecGnuTLSKeyDataDsaAdoptKey
    - xmlSecGnuTLSKeyDataGost2012_256AdoptKey
    - xmlSecKeyDataCreate
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGnuTLSAsymKeyDataCreate(gnutls_pubkey_t pubkey,
      gnutls_privkey_t privkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: xmlSecGnuTLSTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformKWDes3GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:162,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:163,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:163,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:166,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kw_des.c:167,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/gnutls/kw_des.c:169,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:172,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 176
    functionName: xmlSecGnuTLSKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_des.c:182,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:182,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_des.c:183,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:183,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:185,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kw_des.c:186,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/gnutls/kw_des.c:188,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kw_des.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 190
    functionName: xmlSecGnuTLSKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - xmlSecGnuTLSKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:197,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:198,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:198,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:201,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/gnutls/kw_des.c:203,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:205,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 209
    functionName: xmlSecGnuTLSKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:216,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:217,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:217,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:220,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/gnutls/kw_des.c:222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:224,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 211
    functionDepth: 4
    functionLinenumber: 211
    functionLinenumberEnd: 228
    functionName: xmlSecGnuTLSKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3SetKey
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:236,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:237,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:237,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/kw_des.c:238,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:241,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/gnutls/kw_des.c:243,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:245,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: xmlSecGnuTLSKWDes3Execute
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3Execute(xmlSecTransformPtr transform, int last,\n
      \                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:265,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:266,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:269,1
    - Dst: gnutls_hash_fast
      Src: /src/xmlsec/src/gnutls/kw_des.c:271,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_des.c:273,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 280
    functionName: xmlSecGnuTLSKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecGnuTLSError
    - gnutls_hash_fast
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3Sha1(xmlSecTransformPtr transform,\n    const
      xmlSecByte * in, xmlSecSize inSize,\n    xmlSecByte * out, xmlSecSize outSize,\n
      \   xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:289,1
    - Dst: gnutls_rnd
      Src: /src/xmlsec/src/gnutls/kw_des.c:291,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_des.c:293,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - transform
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 300
    functionName: xmlSecGnuTLSKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - gnutls_rnd
    - xmlSecTransformGetName
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3GenerateRandom(xmlSecTransformPtr transform,\n
      \                                xmlSecByte * out, xmlSecSize outSize,\n                                 xmlSecSize
      * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:311,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:312,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:319,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:321,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:323,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kw_des.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:324,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:324,1
    - Dst: xmlSecGnuTLSKWDes3Encrypt
      Src: /src/xmlsec/src/gnutls/kw_des.c:326,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kw_des.c:327,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:333,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 338
    functionName: xmlSecGnuTLSKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    - xmlSecGnuTLSKWDes3Encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3BlockEncrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:349,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kw_des.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:350,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:357,1
    - Dst: xmlSecGnuTLSKWDes3GetCtx
      Src: /src/xmlsec/src/gnutls/kw_des.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:361,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kw_des.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:362,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kw_des.c:362,1
    - Dst: xmlSecGnuTLSKWDes3Encrypt
      Src: /src/xmlsec/src/gnutls/kw_des.c:364,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kw_des.c:365,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kw_des.c:371,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kw_des.c:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 376
    functionName: xmlSecGnuTLSKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGnuTLSKWDes3GetCtx
    - xmlSecGnuTLSKWDes3Encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3BlockDecrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:390,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:395,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kw_des.c:396,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/kw_des.c:399,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/kw_des.c:399,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/kw_des.c:401,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/kw_des.c:401,1
    - Dst: gnutls_cipher_init
      Src: /src/xmlsec/src/gnutls/kw_des.c:403,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_des.c:405,1
    - Dst: gnutls_cipher_encrypt2
      Src: /src/xmlsec/src/gnutls/kw_des.c:410,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_des.c:412,1
    - Dst: gnutls_cipher_deinit
      Src: /src/xmlsec/src/gnutls/kw_des.c:413,1
    - Dst: gnutls_cipher_decrypt2
      Src: /src/xmlsec/src/gnutls/kw_des.c:417,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kw_des.c:419,1
    - Dst: gnutls_cipher_deinit
      Src: /src/xmlsec/src/gnutls/kw_des.c:420,1
    - Dst: gnutls_cipher_deinit
      Src: /src/xmlsec/src/gnutls/kw_des.c:426,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 38
    argCount: 10
    argNames:
    - key
    - keySize
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - enc
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 429
    functionName: xmlSecGnuTLSKWDes3Encrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kw_des.c
    functionUses: 2
    functionsReached:
    - gnutls_cipher_decrypt2
    - gnutls_cipher_init
    - xmlSecAssert2
    - gnutls_cipher_deinit
    - gnutls_cipher_encrypt2
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKWDes3Encrypt(const xmlSecByte* key, xmlSecSize keySize,\n
      \   const xmlSecByte* iv, xmlSecSize ivSize, const xmlSecByte* in, xmlSecSize
      inSize,\n    xmlSecByte* out, xmlSecSize outSize, xmlSecSize* outWritten, int
      enc)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_global_init
      Src: /src/xmlsec/src/gnutls/app.c:72,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 79
    functionName: xmlSecGnuTLSAppInit
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSError
    - gnutls_global_init
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppInit(const char* config XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gnutls_global_deinit
      Src: /src/xmlsec/src/gnutls/app.c:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: xmlSecGnuTLSAppShutdown
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - gnutls_global_deinit
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppShutdown(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:120,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/app.c:121,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/app.c:124,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:126,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/gnutls/app.c:129,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:131,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:132,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:133,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:136,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:137,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:139,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:140,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:141,1
    - Dst: xmlSecGnuTLSAppKeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:146,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:148,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:149,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:150,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:155,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 6
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 109
    functionDepth: 4
    functionLinenumber: 109
    functionLinenumberEnd: 157
    functionName: xmlSecGnuTLSAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGnuTLSAppKeyLoadMemory
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataFormat format,\n    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:179,1
    - Dst: xmlSecGnuTLSAppPemDerKeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:184,1
    - Dst: xmlSecGnuTLSAppPemDerKeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:187,1
    - Dst: xmlSecGnuTLSAppPkcs8KeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:191,1
    - Dst: xmlSecGnuTLSAppPkcs8KeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:194,1
    - Dst: xmlSecGnuTLSAppPkcs12LoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:199,1
    - Dst: xmlSecGnuTLSAppKeyFromCertLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:203,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/app.c:207,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gnutls/app.c:208,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 214
    functionName: xmlSecGnuTLSAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSAppPkcs8KeyLoadMemory
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecGnuTLSAppKeyFromCertLoadMemory
    - xmlSecGnuTLSAppPkcs12LoadMemory
    - xmlSecGnuTLSAppPemDerKeyLoadMemory
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSAppKeyLoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,  xmlSecKeyDataFormat format,\n    const char *pwd, void*
      pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:235,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/app.c:237,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:239,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/gnutls/app.c:243,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:244,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:244,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:245,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:246,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:247,1
    - Dst: xmlSecGnuTLSAppKeyCertLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:251,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:252,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:253,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:256,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:257,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:258,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:263,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 228
    functionDepth: 4
    functionLinenumber: 228
    functionLinenumberEnd: 265
    functionName: xmlSecGnuTLSAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferReadFile
    - xmlSecBufferInitialize
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    - xmlSecGnuTLSAppKeyCertLoadMemory
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
      xmlSecKeyDataFormat format)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:280,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/app.c:283,1
    - Dst: xmlSecGnuTLSAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gnutls/app.c:288,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:290,1
    - Dst: gnutls_pubkey_export2
      Src: /src/xmlsec/src/gnutls/app.c:293,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:295,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/app.c:300,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:302,1
    - Dst: gnutls_pubkey_import_x509
      Src: /src/xmlsec/src/gnutls/app.c:306,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:308,1
    - Dst: gnutls_pubkey_export2
      Src: /src/xmlsec/src/gnutls/app.c:311,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:313,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gnutls/app.c:322,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:332,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/app.c:335,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/app.c:338,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 2
    argNames:
    - key
    - cert
    argTypes:
    - xmlSecKeyPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 269
    functionDepth: 2
    functionLinenumber: 269
    functionLinenumberEnd: 341
    functionName: xmlSecGnuTLSAppCheckCertMatchesKey
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecGnuTLSAsymKeyDataGetPublicKey
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_export2
    - gnutls_pubkey_init
    - memcmp
    - gnutls_pubkey_import_x509
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppCheckCertMatchesKey(xmlSecKeyPtr key,  gnutls_x509_crt_t
      cert)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:368,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/app.c:371,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:373,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/gnutls/app.c:378,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:380,1
    - Dst: xmlSecGnuTLSKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/gnutls/app.c:385,1
    - Dst: xmlSecGnuTLSAppCheckCertMatchesKey
      Src: /src/xmlsec/src/gnutls/app.c:386,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:388,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/gnutls/app.c:396,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:398,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptCert
      Src: /src/xmlsec/src/gnutls/app.c:402,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:404,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/app.c:415,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 355
    functionDepth: 4
    functionLinenumber: 355
    functionLinenumberEnd: 418
    functionName: xmlSecGnuTLSAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataX509GetKeyCert
    - xmlSecGnuTLSX509CertRead
    - xmlSecKeyEnsureData
    - xmlSecGnuTLSKeyDataX509AdoptCert
    - xmlSecGnuTLSKeyDataX509AdoptKeyCert
    - xmlSecGnuTLSAppCheckCertMatchesKey
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize,\n    xmlSecKeyDataFormat format\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecGnuTLSAppKeyLoadEx
      Src: /src/xmlsec/src/gnutls/app.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 433
    functionDepth: 5
    functionLinenumber: 433
    functionLinenumberEnd: 440
    functionName: xmlSecGnuTLSAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAppKeyLoadEx
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSAppPkcs12Load(const char *filename,\n                          const
      char *pwd,\n                          void* pwdCallback,\n                          void*
      pwdCallbackCtx)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:472,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:473,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/app.c:476,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:478,1
    - Dst: xmlSecGnuTLSPkcs12LoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:483,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:485,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/app.c:490,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:492,1
    - Dst: gnutls_privkey_import_x509
      Src: /src/xmlsec/src/gnutls/app.c:496,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:498,1
    - Dst: xmlSecGCryptAsymetricKeyCreatePriv
      Src: /src/xmlsec/src/gnutls/app.c:505,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:507,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/src/gnutls/app.c:514,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:516,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/app.c:522,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/app.c:526,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:528,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/gnutls/app.c:534,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:536,1
    - Dst: xmlSecPtrListRemoveAndReturn
      Src: /src/xmlsec/src/gnutls/app.c:544,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptCert
      Src: /src/xmlsec/src/gnutls/app.c:549,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:551,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/app.c:552,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/gnutls/app.c:558,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:560,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/app.c:561,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/app.c:573,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/app.c:576,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:579,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:582,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/app.c:585,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/app.c:588,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/app.c:590,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 103
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 456
    functionDepth: 5
    functionLinenumber: 456
    functionLinenumberEnd: 592
    functionName: xmlSecGnuTLSAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - gnutls_privkey_import_x509
    - xmlSecGnuTLSKeyDataX509AdoptCert
    - gnutls_x509_privkey_deinit
    - xmlSecGnuTLSError
    - xmlFree
    - xmlSecGCryptAsymetricKeyCreatePriv
    - xmlSecKeyDataDestroy
    - xmlSecGnuTLSKeyDataX509AdoptKeyCert
    - xmlSecPtrListInitialize
    - gnutls_privkey_deinit
    - xmlSecKeyDataCreate
    - xmlSecPtrListRemoveAndReturn
    - xmlSecKeySetName
    - xmlSecKeyDestroy
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyAdoptData
    - xmlSecPtrListFinalize
    - gnutls_privkey_init
    - xmlSecKeyDataGetName
    - xmlSecGnuTLSPkcs12LoadMemory
    - xmlSecPtrListGetSize
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n    const char *pwd, void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED,
      void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:602,1
    - Dst: gnutls_x509_privkey_init
      Src: /src/xmlsec/src/gnutls/app.c:604,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:606,1
    - Dst: gnutls_x509_privkey_import
      Src: /src/xmlsec/src/gnutls/app.c:610,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:614,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/app.c:618,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:620,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:621,1
    - Dst: gnutls_privkey_import_x509
      Src: /src/xmlsec/src/gnutls/app.c:625,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:627,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:628,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - datum
    - fmt
    argTypes:
    - gnutls_datum_t*
    - gnutls_x509_crt_fmt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 596
    functionDepth: 1
    functionLinenumber: 596
    functionLinenumberEnd: 636
    functionName: xmlSecGnuTLSAppPemDerPrivKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - gnutls_privkey_import_x509
    - gnutls_x509_privkey_init
    - xmlSecAssert2
    - gnutls_privkey_init
    - gnutls_x509_privkey_deinit
    - gnutls_x509_privkey_import
    - gnutls_privkey_deinit
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: gnutls_privkey_t
    signature: gnutls_privkey_t xmlSecGnuTLSAppPemDerPrivKeyLoadMemory(const gnutls_datum_t
      * datum, gnutls_x509_crt_fmt_t fmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:643,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/app.c:645,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:647,1
    - Dst: gnutls_pubkey_import
      Src: /src/xmlsec/src/gnutls/app.c:652,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:654,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:655,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - datum
    - fmt
    argTypes:
    - gnutls_datum_t*
    - gnutls_x509_crt_fmt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 638
    functionDepth: 1
    functionLinenumber: 638
    functionLinenumberEnd: 661
    functionName: xmlSecGnuTLSAppPemDerPubKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_import
    - gnutls_pubkey_init
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: gnutls_pubkey_t
    signature: gnutls_pubkey_t xmlSecGnuTLSAppPemDerPubKeyLoadMemory(const gnutls_datum_t
      * datum, gnutls_x509_crt_fmt_t fmt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:670,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:671,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/app.c:674,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/app.c:674,1
    - Dst: xmlSecGnuTLSAppPemDerPrivKeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:677,1
    - Dst: xmlSecGCryptAsymetricKeyCreatePriv
      Src: /src/xmlsec/src/gnutls/app.c:679,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:681,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:682,1
    - Dst: xmlSecGnuTLSAppPemDerPubKeyLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:689,1
    - Dst: xmlSecGCryptAsymetricKeyCreatePub
      Src: /src/xmlsec/src/gnutls/app.c:691,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:693,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:694,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gnutls/app.c:700,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - data
    - dataSize
    - fmt
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - gnutls_x509_crt_fmt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 663
    functionDepth: 5
    functionLinenumber: 663
    functionLinenumberEnd: 703
    functionName: xmlSecGnuTLSAppPemDerKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError3
    - xmlSecInternalError
    - xmlSecGCryptAsymetricKeyCreatePub
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - xmlSecGCryptAsymetricKeyCreatePriv
    - return
    - xmlSecGnuTLSAppPemDerPrivKeyLoadMemory
    - gnutls_privkey_deinit
    - xmlSecGnuTLSAppPemDerPubKeyLoadMemory
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecGnuTLSAppPemDerKeyLoadMemory(const xmlSecByte *
      data, xmlSecSize dataSize, gnutls_x509_crt_fmt_t fmt)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:715,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:716,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/app.c:719,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/app.c:719,1
    - Dst: gnutls_x509_privkey_init
      Src: /src/xmlsec/src/gnutls/app.c:722,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:724,1
    - Dst: gnutls_x509_privkey_import_pkcs8
      Src: /src/xmlsec/src/gnutls/app.c:727,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:729,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:730,1
    - Dst: gnutls_privkey_init
      Src: /src/xmlsec/src/gnutls/app.c:735,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:737,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:738,1
    - Dst: gnutls_privkey_import_x509
      Src: /src/xmlsec/src/gnutls/app.c:742,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/app.c:744,1
    - Dst: gnutls_x509_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:745,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:746,1
    - Dst: xmlSecGCryptAsymetricKeyCreatePriv
      Src: /src/xmlsec/src/gnutls/app.c:751,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:753,1
    - Dst: gnutls_privkey_deinit
      Src: /src/xmlsec/src/gnutls/app.c:754,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 6
    argNames:
    - data
    - dataSize
    - fmt
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - gnutls_x509_crt_fmt_t
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 705
    functionDepth: 5
    functionLinenumber: 705
    functionLinenumberEnd: 760
    functionName: xmlSecGnuTLSAppPkcs8KeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - gnutls_x509_privkey_import_pkcs8
    - xmlSecInternalError
    - gnutls_privkey_import_x509
    - gnutls_x509_privkey_init
    - xmlSecAssert2
    - gnutls_privkey_init
    - xmlSecGCryptAsymetricKeyCreatePriv
    - gnutls_x509_privkey_deinit
    - return
    - gnutls_privkey_deinit
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSAppPkcs8KeyLoadMemory(const xmlSecByte *
      data, xmlSecSize dataSize, gnutls_x509_crt_fmt_t fmt,\n    const char *pwd,
      void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED, void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:773,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:774,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:775,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/app.c:778,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:780,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/gnutls/app.c:785,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:787,1
    - Dst: xmlSecGnuTLSX509CertGetKey
      Src: /src/xmlsec/src/gnutls/app.c:792,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:794,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gnutls/app.c:797,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:799,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/gnutls/app.c:805,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:807,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/gnutls/app.c:810,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:812,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/app.c:823,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/app.c:826,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gnutls/app.c:829,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 3
    argNames:
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 763
    functionDepth: 4
    functionLinenumber: 763
    functionLinenumberEnd: 832
    functionName: xmlSecGnuTLSAppKeyFromCertLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertRead
    - xmlSecKeyEnsureData
    - gnutls_x509_crt_deinit
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecGnuTLSKeyDataX509AdoptKeyCert
    - xmlSecKeyDestroy
    - xmlSecGnuTLSX509CertGetKey
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecGnuTLSAppKeyFromCertLoadMemory(const xmlSecByte*
      data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:855,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:856,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:857,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/app.c:859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:861,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/gnutls/app.c:865,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:866,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:866,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:867,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:868,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:869,1
    - Dst: xmlSecGnuTLSAppKeysMngrCertLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:873,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:874,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:875,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:879,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:880,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:881,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:886,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 888
      start: 847
    functionDepth: 4
    functionLinenumber: 847
    functionLinenumberEnd: 888
    functionName: xmlSecGnuTLSAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferReadFile
    - xmlSecBufferInitialize
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    - xmlSecGnuTLSAppKeysMngrCertLoadMemory
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,\n                                const
      char *filename,\n                                xmlSecKeyDataFormat format,\n
      \                               xmlSecKeyDataType type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:913,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:914,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:915,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:916,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/app.c:918,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:920,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/app.c:924,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:926,1
    - Dst: xmlSecGnuTLSX509StoreAdoptCert
      Src: /src/xmlsec/src/gnutls/app.c:930,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:932,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/app.c:933,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 903
    functionDepth: 3
    functionLinenumber: 903
    functionLinenumberEnd: 938
    functionName: xmlSecGnuTLSAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertRead
    - xmlSecGnuTLSX509StoreAdoptCert
    - xmlSecKeysMngrGetDataStore
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,\n
      \                                     const xmlSecByte* data,\n                                      xmlSecSize
      dataSize,\n                                      xmlSecKeyDataFormat format,\n
      \                                     xmlSecKeyDataType type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:955,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:956,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:957,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/app.c:959,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:961,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/gnutls/app.c:965,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:966,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:966,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:967,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:968,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:969,1
    - Dst: xmlSecGnuTLSAppKeysMngrCrlLoadMemory
      Src: /src/xmlsec/src/gnutls/app.c:973,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/app.c:974,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/app.c:975,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:978,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:979,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:980,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/app.c:985,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 950
    functionDepth: 4
    functionLinenumber: 950
    functionLinenumberEnd: 987
    functionName: xmlSecGnuTLSAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferReadFile
    - xmlSecBufferInitialize
    - xmlSecBufferGetSize
    - xmlSecGnuTLSAppKeysMngrCrlLoadMemory
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1010,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1011,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1012,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1013,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/app.c:1015,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1017,1
    - Dst: xmlSecGnuTLSX509CrlRead
      Src: /src/xmlsec/src/gnutls/app.c:1021,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1023,1
    - Dst: xmlSecGnuTLSX509StoreAdoptCrl
      Src: /src/xmlsec/src/gnutls/app.c:1027,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1029,1
    - Dst: gnutls_x509_crl_deinit
      Src: /src/xmlsec/src/gnutls/app.c:1030,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 1002
    functionDepth: 3
    functionLinenumber: 1002
    functionLinenumberEnd: 1035
    functionName: xmlSecGnuTLSAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecGnuTLSX509StoreAdoptCrl
    - xmlSecAssert2
    - xmlSecGnuTLSX509CrlRead
    - gnutls_x509_crl_deinit
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr,\n
      \   const xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1053,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gnutls/app.c:1056,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/gnutls/app.c:1059,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1061,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/gnutls/app.c:1065,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1067,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/gnutls/app.c:1068,1
    - Dst: xmlSecGnuTLSKeysMngrInit
      Src: /src/xmlsec/src/gnutls/app.c:1073,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1075,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1049
    functionDepth: 2
    functionLinenumber: 1049
    functionLinenumberEnd: 1081
    functionName: xmlSecGnuTLSAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecGnuTLSKeysMngrInit
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1098,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1099,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gnutls/app.c:1101,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1103,1
    - Dst: xmlSecGnuTLSKeysStoreAdoptKey
      Src: /src/xmlsec/src/gnutls/app.c:1107,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1114
      start: 1093
    functionDepth: 2
    functionLinenumber: 1093
    functionLinenumberEnd: 1114
    functionName: xmlSecGnuTLSAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecInternalError
    - xmlSecGnuTLSKeysStoreAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1139,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/app.c:1141,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1143,1
    - Dst: xmlSecGnuTLSX509StoreVerifyKey
      Src: /src/xmlsec/src/gnutls/app.c:1147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1153,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gnutls/app.c:1155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1132
    functionDepth: 3
    functionLinenumber: 1132
    functionLinenumberEnd: 1159
    functionName: xmlSecGnuTLSAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSX509StoreVerifyKey
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1176,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1177,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gnutls/app.c:1179,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1181,1
    - Dst: xmlSecGnuTLSKeysStoreLoad
      Src: /src/xmlsec/src/gnutls/app.c:1185,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:1187,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:1188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1171
    functionDepth: 2
    functionLinenumber: 1171
    functionLinenumberEnd: 1193
    functionName: xmlSecGnuTLSAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecGnuTLSKeysStoreLoad
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/app.c:1211,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gnutls/app.c:1213,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/app.c:1215,1
    - Dst: xmlSecGnuTLSKeysStoreSave
      Src: /src/xmlsec/src/gnutls/app.c:1219,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/app.c:1221,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/app.c:1222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1205
    functionDepth: 2
    functionLinenumber: 1205
    functionLinenumberEnd: 1227
    functionName: xmlSecGnuTLSAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeysStoreSave
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1240
    functionName: xmlSecGnuTLSAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/gnutls/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecGnuTLSAppGetDefaultPwdCallback(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionName: xmlSecGnuTLSKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataX509GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:184,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:184,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: xmlSecGnuTLSKeyDataX509GetKeyCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSKeyDataX509GetKeyCert(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:196,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:196,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionName: xmlSecGnuTLSKeyDataX509GetCerts
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecGnuTLSKeyDataX509GetCerts(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:208,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:208,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: xmlSecGnuTLSKeyDataX509GetCrls
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecPtrListPtr
    signature: xmlSecPtrListPtr xmlSecGnuTLSKeyDataX509GetCrls(xmlSecKeyDataPtr data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:224,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:227,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509.c:229,1
    - Dst: gnutls_x509_crt_equals
      Src: /src/xmlsec/src/gnutls/x509.c:233,1
    - Dst: xmlSecPtrListRemove
      Src: /src/xmlsec/src/gnutls/x509.c:234,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:236,1
    - Dst: xmlSecPtrListInsert
      Src: /src/xmlsec/src/gnutls/x509.c:245,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:247,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509.c:251,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:253,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - ctx
    - cert
    - keyCert
    argTypes:
    - xmlSecGnuTLSX509DataCtxPtr
    - gnutls_x509_crt_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 260
    functionName: xmlSecGnuTLSKeyDataX509AddCertInternal
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListRemove
    - xmlSecPtrListInsert
    - xmlSecInternalError
    - gnutls_x509_crt_equals
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509AddCertInternal(xmlSecGnuTLSX509DataCtxPtr
      ctx, gnutls_x509_crt_t cert, int keyCert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:277,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:278,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:281,1
    - Dst: gnutls_x509_crt_equals
      Src: /src/xmlsec/src/gnutls/x509.c:284,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:288,1
    - Dst: xmlSecGnuTLSKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/gnutls/x509.c:290,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:292,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:292,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 299
    functionName: xmlSecGnuTLSKeyDataX509AdoptKeyCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - gnutls_x509_crt_equals
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecGnuTLSKeyDataX509AddCertInternal
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, gnutls_x509_crt_t
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:314,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:315,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:318,1
    - Dst: gnutls_x509_crt_equals
      Src: /src/xmlsec/src/gnutls/x509.c:321,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:322,1
    - Dst: xmlSecGnuTLSKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/gnutls/x509.c:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 310
    functionDepth: 3
    functionLinenumber: 310
    functionLinenumberEnd: 326
    functionName: xmlSecGnuTLSKeyDataX509AdoptCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 2
    functionsReached:
    - gnutls_x509_crt_equals
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecGnuTLSKeyDataX509AddCertInternal
    - xmlSecKeyDataCheckId
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509AdoptCert(xmlSecKeyDataPtr data, gnutls_x509_crt_t
      cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:342,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:342,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:344,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:345,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509.c:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 338
    functionDepth: 2
    functionLinenumber: 338
    functionLinenumberEnd: 350
    functionName: xmlSecGnuTLSKeyDataX509GetCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecPtrListGetItem
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSKeyDataX509GetCert(xmlSecKeyDataPtr data,
      xmlSecSize pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:364,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:364,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:367,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 370
    functionName: xmlSecGnuTLSKeyDataX509GetCertsSize
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataX509GetCertsSize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:386,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:387,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:390,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509.c:392,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:394,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:395,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - data
    - crl
    argTypes:
    - xmlSecKeyDataPtr
    - gnutls_x509_crl_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 381
    functionDepth: 2
    functionLinenumber: 381
    functionLinenumberEnd: 400
    functionName: xmlSecGnuTLSKeyDataX509AdoptCrl
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecPtrListAdd
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, gnutls_x509_crl_t
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:416,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:416,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:419,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509.c:421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 422
    functionName: xmlSecGnuTLSKeyDataX509GetCrl
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecPtrListGetItem
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gnutls_x509_crl_t
    signature: gnutls_x509_crl_t xmlSecGnuTLSKeyDataX509GetCrl(xmlSecKeyDataPtr data,
      xmlSecSize pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:436,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:436,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:439,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 442
    functionName: xmlSecGnuTLSKeyDataX509GetCrlsSize
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSKeyDataX509GetCrlsSize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:449,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:449,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:452,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509.c:454,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/x509.c:456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:458,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/x509.c:462,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:464,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 444
    functionDepth: 2
    functionLinenumber: 444
    functionLinenumberEnd: 469
    functionName: xmlSecGnuTLSKeyDataX509Initialize
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecPtrListInitialize
    - xmlSecKeyDataCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509Initialize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:477,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:477,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:478,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:478,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:480,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:481,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:482,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:483,1
    - Dst: xmlSecPtrListEmpty
      Src: /src/xmlsec/src/gnutls/x509.c:486,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/gnutls/x509.c:487,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:489,1
    - Dst: xmlSecPtrListEmpty
      Src: /src/xmlsec/src/gnutls/x509.c:494,1
    - Dst: xmlSecPtrListCopy
      Src: /src/xmlsec/src/gnutls/x509.c:495,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:497,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:505,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:506,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:506,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509.c:508,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:516,1
    - Dst: gnutls_x509_crt_equals
      Src: /src/xmlsec/src/gnutls/x509.c:516,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 521
    functionName: xmlSecGnuTLSKeyDataX509Duplicate
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - gnutls_x509_crt_equals
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecPtrListEmpty
    - xmlSecPtrListCopy
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:527,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:527,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:529,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:530,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/x509.c:532,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/x509.c:533,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509.c:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 523
    functionDepth: 2
    functionLinenumber: 523
    functionLinenumberEnd: 536
    functionName: xmlSecGnuTLSKeyDataX509Finalize
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataX509Finalize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:545,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/x509.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:549,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:549,1
    - Dst: xmlSecKeyDataX509XmlRead
      Src: /src/xmlsec/src/gnutls/x509.c:553,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:555,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:555,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:556,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/x509.c:561,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:562,1
    - Dst: xmlSecGnuTLSKVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/gnutls/x509.c:566,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:568,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:568,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:569,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:573,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 538
    functionDepth: 5
    functionLinenumber: 538
    functionLinenumberEnd: 580
    functionName: xmlSecGnuTLSKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecGnuTLSKVerifyAndAdoptX509KeyData
    - xmlSecKeyDataCreate
    - xmlSecKeyDataX509XmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:590,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/gnutls/x509.c:593,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/gnutls/x509.c:601,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/gnutls/x509.c:602,1
    - Dst: xmlSecKeyDataX509XmlWrite
      Src: /src/xmlsec/src/gnutls/x509.c:604,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gnutls/x509.c:605,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gnutls/x509.c:608,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:609,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 582
    functionDepth: 13
    functionLinenumber: 582
    functionLinenumberEnd: 617
    functionName: xmlSecGnuTLSKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecGnuTLSKeyDataX509GetCertsSize
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataX509GetCrlsSize
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataX509XmlWrite
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyGetData
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:623,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:623,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:624,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:626,1
    - Dst: xmlSecGnuTLSKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/gnutls/x509.c:632,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:634,1
    - Dst: xmlSecGnuTLSX509CertDebugDump
      Src: /src/xmlsec/src/gnutls/x509.c:635,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/gnutls/x509.c:640,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCert
      Src: /src/xmlsec/src/gnutls/x509.c:644,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:646,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:647,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:651,1
    - Dst: xmlSecGnuTLSX509CertDebugDump
      Src: /src/xmlsec/src/gnutls/x509.c:652,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/gnutls/x509.c:656,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrl
      Src: /src/xmlsec/src/gnutls/x509.c:660,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:662,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:663,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:667,1
    - Dst: xmlSecGnuTLSX509CrlDebugDump
      Src: /src/xmlsec/src/gnutls/x509.c:668,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 619
    functionDepth: 3
    functionLinenumber: 619
    functionLinenumberEnd: 670
    functionName: xmlSecGnuTLSKeyDataX509DebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSX509CertDebugDump
    - xmlSecGnuTLSKeyDataX509GetCertsSize
    - xmlSecGnuTLSKeyDataX509GetCrl
    - xmlSecGnuTLSKeyDataX509GetKeyCert
    - xmlSecInternalError2
    - xmlSecGnuTLSKeyDataX509GetCrlsSize
    - xmlSecGnuTLSX509CrlDebugDump
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecGnuTLSKeyDataX509GetCert
    - xmlSecKeyDataCheckId
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:676,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:676,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509.c:677,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:679,1
    - Dst: xmlSecGnuTLSKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/gnutls/x509.c:685,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:687,1
    - Dst: xmlSecGnuTLSX509CertDebugXmlDump
      Src: /src/xmlsec/src/gnutls/x509.c:688,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:689,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/gnutls/x509.c:694,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCert
      Src: /src/xmlsec/src/gnutls/x509.c:698,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:700,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:701,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:705,1
    - Dst: xmlSecGnuTLSX509CertDebugXmlDump
      Src: /src/xmlsec/src/gnutls/x509.c:706,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:707,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/gnutls/x509.c:711,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrl
      Src: /src/xmlsec/src/gnutls/x509.c:715,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:717,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:718,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:722,1
    - Dst: xmlSecGnuTLSX509CrlDebugXmlDump
      Src: /src/xmlsec/src/gnutls/x509.c:723,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:724,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509.c:728,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 672
    functionDepth: 3
    functionLinenumber: 672
    functionLinenumberEnd: 729
    functionName: xmlSecGnuTLSKeyDataX509DebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyDataX509GetCertsSize
    - xmlSecGnuTLSKeyDataX509GetCrl
    - xmlSecGnuTLSKeyDataX509GetKeyCert
    - xmlSecInternalError2
    - xmlSecGnuTLSKeyDataX509GetCrlsSize
    - xmlSecGnuTLSX509CertDebugXmlDump
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecGnuTLSKeyDataX509GetCert
    - xmlSecKeyDataCheckId
    - fprintf
    - xmlSecGnuTLSX509CrlDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:741,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:742,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:742,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:743,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:744,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/x509.c:746,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:748,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:748,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:752,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/x509.c:753,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509.c:753,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:754,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:756,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:756,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:761,1
    - Dst: xmlSecGnuTLSX509CrlRead
      Src: /src/xmlsec/src/gnutls/x509.c:762,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509.c:762,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:763,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:765,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:765,1
    - Dst: xmlSecGnuTLSX509StoreFindCertByValue
      Src: /src/xmlsec/src/gnutls/x509.c:779,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509.c:781,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:781,1
    - Dst: xmlSecGnuTLSX509CertDup
      Src: /src/xmlsec/src/gnutls/x509.c:786,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:788,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:788,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptCert
      Src: /src/xmlsec/src/gnutls/x509.c:796,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:798,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:798,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/gnutls/x509.c:804,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:806,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:806,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:818,1
    - Dst: gnutls_x509_crl_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:821,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 74
    argCount: 4
    argNames:
    - data
    - x509Value
    - keysMngr
    - flags
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeysMngrPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 824
      start: 732
    functionDepth: 4
    functionLinenumber: 732
    functionLinenumberEnd: 824
    functionName: xmlSecGnuTLSKeyDataX509Read
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertRead
    - xmlSecGnuTLSKeyDataX509AdoptCert
    - xmlSecBufferGetData
    - xmlSecGnuTLSX509StoreFindCertByValue
    - xmlSecGnuTLSX509CertDup
    - gnutls_x509_crt_deinit
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSX509CrlRead
    - xmlSecGnuTLSKeyDataX509AdoptCrl
    - xmlSecKeyDataGetName
    - gnutls_x509_crl_deinit
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataX509Read(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n                             xmlSecKeysMngrPtr keysMngr, unsigned
      int flags)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:835,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:836,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:836,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:837,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:838,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCert
      Src: /src/xmlsec/src/gnutls/x509.c:843,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:845,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:846,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/gnutls/x509.c:850,1
    - Dst: xmlSecGnuTLSX509CertDerWrite
      Src: /src/xmlsec/src/gnutls/x509.c:851,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:853,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:854,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/gnutls/x509.c:859,1
    - Dst: xmlSecGnuTLSX509CertSKIWrite
      Src: /src/xmlsec/src/gnutls/x509.c:860,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:862,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:863,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/gnutls/x509.c:868,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:869,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509.c:871,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:873,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:874,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/gnutls/x509.c:879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:880,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:881,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509.c:883,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:885,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:886,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerSerial
      Src: /src/xmlsec/src/gnutls/x509.c:890,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:892,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:893,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/gnutls/x509.c:898,1
    - Dst: xmlSecGnuTLSX509DigestWrite
      Src: /src/xmlsec/src/gnutls/x509.c:899,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:901,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:902,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrl
      Src: /src/xmlsec/src/gnutls/x509.c:910,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:912,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:913,1
    - Dst: xmlSecGnuTLSX509CrlDerWrite
      Src: /src/xmlsec/src/gnutls/x509.c:919,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:921,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:922,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 73
    argCount: 4
    argNames:
    - data
    - x509Value
    - content
    - context
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 829
    functionDepth: 3
    functionLinenumber: 829
    functionLinenumberEnd: 935
    functionName: xmlSecGnuTLSKeyDataX509Write
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - XMLSEC_X509DATA_HAS_EMPTY_NODE
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataX509GetCrl
    - xmlSecInternalError2
    - xmlSecGnuTLSX509CertDerWrite
    - xmlSecGnuTLSX509DigestWrite
    - xmlSecGnuTLSKeyDataX509GetCert
    - xmlSecKeyDataCheckId
    - xmlSecGnuTLSX509CrlDerWrite
    - xmlSecKeyDataGetName
    - xmlSecGnuTLSX509CertSKIWrite
    - xmlSecGnuTLSX509CertGetIssuerSerial
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataX509Write(xmlSecKeyDataPtr data,  xmlSecKeyX509DataValuePtr
      x509Value,\n                            int content, void* context)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:946,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:947,1
    - Dst: gnutls_x509_crt_get_subject_key_id
      Src: /src/xmlsec/src/gnutls/x509.c:950,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:952,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/x509.c:955,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509.c:955,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/x509.c:958,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509.c:960,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509.c:964,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:965,1
    - Dst: gnutls_x509_crt_get_subject_key_id
      Src: /src/xmlsec/src/gnutls/x509.c:968,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:970,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - gnutls_x509_crt_t
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 937
    functionDepth: 2
    functionLinenumber: 937
    functionLinenumberEnd: 976
    functionName: xmlSecGnuTLSX509CertSKIWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - gnutls_x509_crt_get_subject_key_id
    - return
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CertSKIWrite(gnutls_x509_crt_t cert, xmlSecBufferPtr
      buf)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:987,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/x509.c:987,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:988,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:989,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:990,1
    - Dst: xmlSecGnuTLSX509DataGetCtx
      Src: /src/xmlsec/src/gnutls/x509.c:992,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:993,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:994,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509.c:996,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/x509.c:996,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/x509.c:1002,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1004,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1004,1
    - Dst: xmlSecGnuTLSX509StoreVerify
      Src: /src/xmlsec/src/gnutls/x509.c:1007,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509.c:1011,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1011,1
    - Dst: xmlSecGnuTLSX509CertDup
      Src: /src/xmlsec/src/gnutls/x509.c:1020,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1022,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1022,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/gnutls/x509.c:1025,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1027,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1027,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:1028,1
    - Dst: xmlSecGnuTLSX509CertGetKey
      Src: /src/xmlsec/src/gnutls/x509.c:1034,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1036,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1036,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/gnutls/x509.c:1039,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1040,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1040,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:1041,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gnutls/x509.c:1044,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1046,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1046,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:1047,1
    - Dst: gnutls_x509_crt_get_activation_time
      Src: /src/xmlsec/src/gnutls/x509.c:1053,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:1055,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1055,1
    - Dst: gnutls_x509_crt_get_expiration_time
      Src: /src/xmlsec/src/gnutls/x509.c:1058,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:1060,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1060,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/gnutls/x509.c:1067,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1069,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1069,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 69
    argCount: 3
    argNames:
    - key
    - data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1075
      start: 978
    functionDepth: 4
    functionLinenumber: 978
    functionLinenumberEnd: 1075
    functionName: xmlSecGnuTLSKVerifyAndAdoptX509KeyData
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 1
    functionsReached:
    - gnutls_x509_crt_get_activation_time
    - xmlSecGnuTLSError
    - xmlSecGnuTLSX509CertGetKey
    - xmlSecKeyGetValue
    - xmlSecKeyDataDestroy
    - xmlSecGnuTLSKeyDataX509AdoptKeyCert
    - xmlSecGnuTLSX509StoreVerify
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509DataGetCtx
    - xmlSecGnuTLSX509CertDup
    - xmlSecKeyAdoptData
    - gnutls_x509_crt_get_expiration_time
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    - xmlSecKeyReqMatchKeyValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecPtrListGetSize
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKVerifyAndAdoptX509KeyData(xmlSecKeyPtr key, xmlSecKeyDataPtr
      data,  xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1091,1
    - Dst: gnutls_pubkey_init
      Src: /src/xmlsec/src/gnutls/x509.c:1093,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:1095,1
    - Dst: gnutls_pubkey_import_x509
      Src: /src/xmlsec/src/gnutls/x509.c:1099,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509.c:1101,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:1102,1
    - Dst: xmlSecGnuTLSAsymKeyDataCreate
      Src: /src/xmlsec/src/gnutls/x509.c:1106,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1108,1
    - Dst: gnutls_pubkey_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:1109,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - cert
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1085
    functionDepth: 5
    functionLinenumber: 1085
    functionLinenumberEnd: 1116
    functionName: xmlSecGnuTLSX509CertGetKey
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - gnutls_pubkey_deinit
    - xmlSecAssert2
    - gnutls_pubkey_init
    - xmlSecGnuTLSAsymKeyDataCreate
    - gnutls_pubkey_import_x509
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGnuTLSX509CertGetKey(gnutls_x509_crt_t cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1179
    functionName: xmlSecGnuTLSKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataRawX509CertGetKlass(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509.c:1193,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/x509.c:1195,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1197,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gnutls/x509.c:1201,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1203,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1203,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:1204,1
    - Dst: xmlSecGnuTLSKeyDataX509AdoptCert
      Src: /src/xmlsec/src/gnutls/x509.c:1208,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1210,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1210,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509.c:1211,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:1212,1
    - Dst: xmlSecGnuTLSKVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/gnutls/x509.c:1217,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509.c:1219,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gnutls/x509.c:1219,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:1220,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/x509.c:1224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1181
    functionDepth: 5
    functionLinenumber: 1181
    functionLinenumberEnd: 1231
    functionName: xmlSecGnuTLSKeyDataRawX509CertBinRead
    functionSourceFile: /src/xmlsec/src/gnutls/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertRead
    - xmlSecGnuTLSKeyDataX509AdoptCert
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecGnuTLSKVerifyAndAdoptX509KeyData
    - xmlSecKeyDataCreate
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: xmlSecGnuTLSX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecGnuTLSX509StoreGetKlass(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:106,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:106,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:108,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:109,1
    - Dst: xmlSecGnuTLSX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/gnutls/x509vfy.c:111,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:113,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:114,1
    - Dst: xmlSecGnuTLSX509FindCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:119,1
    - Dst: xmlSecGnuTLSX509FindCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:122,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - store
    - x509Value
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 128
    functionName: xmlSecGnuTLSX509StoreFindCertByValue
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCheckId
    - xmlSecGnuTLSX509FindCertCtxInitializeFromValue
    - xmlSecGnuTLSX509FindCert
    - xmlSecGnuTLSX509FindCertCtxFinalize
    - xmlSecGnuTLSX509StoreGetCtx
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509StoreFindCertByValue(xmlSecKeyDataStorePtr
      store, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:138,1
    - Dst: xmlSecGnuTLSX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/gnutls/x509vfy.c:140,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:142,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:143,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:147,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:154,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/gnutls/x509vfy.c:158,1
    - Dst: xmlSecGnuTLSKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:162,1
    - Dst: xmlSecGnuTLSX509FindCertCtxMatch
      Src: /src/xmlsec/src/gnutls/x509vfy.c:168,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:170,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:171,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:180,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - keysList
    - x509Value
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 130
    functionDepth: 3
    functionLinenumber: 130
    functionLinenumberEnd: 182
    functionName: xmlSecGnuTLSX509FindKeyByValue
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecGnuTLSKeyDataX509GetKeyCert
    - xmlSecGnuTLSX509FindCertCtxInitializeFromValue
    - xmlSecGnuTLSX509FindCertCtxFinalize
    - xmlSecGnuTLSX509FindCertCtxMatch
    - xmlSecKeyGetData
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecGnuTLSX509FindKeyByValue(xmlSecPtrListPtr keysList,
      xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:188,1
    - Dst: gnutls_x509_crt_get_activation_time
      Src: /src/xmlsec/src/gnutls/x509vfy.c:191,1
    - Dst: xmlSecGnuTLSError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:193,1
    - Dst: difftime
      Src: /src/xmlsec/src/gnutls/x509vfy.c:195,1
    - Dst: gnutls_x509_crt_get_expiration_time
      Src: /src/xmlsec/src/gnutls/x509vfy.c:198,1
    - Dst: xmlSecGnuTLSError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:200,1
    - Dst: difftime
      Src: /src/xmlsec/src/gnutls/x509vfy.c:202,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:209,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:214,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - cert
    - ts
    argTypes:
    - gnutls_x509_crt_t
    - time_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 220
    functionName: xmlSecGnuTLSX509CheckCrtTime
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - gnutls_x509_crt_get_activation_time
    - xmlSecAssert2
    - difftime
    - gnutls_x509_crt_get_expiration_time
    - xmlSecGnuTLSError2
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CheckCrtTime(const gnutls_x509_crt_t cert, time_t
      ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:228,1
    - Dst: xmlSecGnuTLSX509CheckCrtTime
      Src: /src/xmlsec/src/gnutls/x509vfy.c:236,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:238,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - cert_list
    - cert_list_size
    - ts
    argTypes:
    - gnutls_x509_crt_t*
    - xmlSecSize
    - time_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 248
    functionName: xmlSecGnuTLSX509CheckCrtsTime
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509CheckCrtTime
    - xmlSecInternalError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CheckCrtsTime(const gnutls_x509_crt_t * cert_list,
      xmlSecSize cert_list_size, time_t ts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:259,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:262,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509vfy.c:270,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:272,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:276,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:278,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:279,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - trusted
    - trusted_size
    argTypes:
    - xmlSecGnuTLSX509StoreCtxPtr
    - gnutls_x509_crt_t**
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 288
    functionName: xmlSecGnuTLSX509StoreGetTrustedCerts
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListGetSize
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSX509StoreGetTrustedCerts(xmlSecGnuTLSX509StoreCtxPtr
      ctx,\n    gnutls_x509_crt_t** trusted, xmlSecSize* trusted_size\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:302,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:305,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:306,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509vfy.c:315,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:317,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:321,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:323,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:324,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:329,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:331,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:332,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 4
    argNames:
    - ctx
    - extra_crls
    - crls
    - crls_size
    argTypes:
    - xmlSecGnuTLSX509StoreCtxPtr
    - xmlSecPtrListPtr
    - gnutls_x509_crl_t**
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 341
    functionName: xmlSecGnuTLSX509StoreGetCrls
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecPtrListGetSize
    - xmlMalloc
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSX509StoreGetCrls(xmlSecGnuTLSX509StoreCtxPtr ctx,
      xmlSecPtrListPtr extra_crls,\n    gnutls_x509_crl_t** crls, xmlSecSize* crls_size\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:355,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:358,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:360,1
    - Dst: xmlSecGnuTLSX509FindSignerCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:367,1
    - Dst: xmlSecGnuTLSX509FindSignerCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:369,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 6
    argNames:
    - ctx
    - cert_to_verify
    - extra_certs
    - certs_chain
    - certs_chain_max_size
    - certs_chain_cur_size
    argTypes:
    - xmlSecGnuTLSX509StoreCtxPtr
    - gnutls_x509_crt_t
    - xmlSecPtrListPtr
    - gnutls_x509_crt_t*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 376
    functionName: xmlSecGnuTLSX509StoreGetCertsChain
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509FindSignerCert
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSX509StoreGetCertsChain(xmlSecGnuTLSX509StoreCtxPtr
      ctx, gnutls_x509_crt_t cert_to_verify,\n    xmlSecPtrListPtr extra_certs,\n
      \   gnutls_x509_crt_t* certs_chain, xmlSecSize certs_chain_max_size, xmlSecSize*
      certs_chain_cur_size\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:395,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509vfy.c:423,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509vfy.c:423,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509vfy.c:424,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509vfy.c:424,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509vfy.c:425,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509vfy.c:425,1
    - Dst: gnutls_x509_crt_list_verify
      Src: /src/xmlsec/src/gnutls/x509vfy.c:426,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:433,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:440,1
    - Dst: xmlSecGnuTLSX509CheckCrtsTime
      Src: /src/xmlsec/src/gnutls/x509vfy.c:448,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:450,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 8
    argNames:
    - ctx
    - certs_chain
    - certs_chain_size
    - trusted
    - trusted_size
    - crls
    - crls_size
    - keyInfoCtx
    argTypes:
    - xmlSecGnuTLSX509StoreCtxPtr
    - gnutls_x509_crt_t*
    - xmlSecSize
    - gnutls_x509_crt_t*
    - xmlSecSize
    - gnutls_x509_crl_t*
    - xmlSecSize
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 379
    functionDepth: 3
    functionLinenumber: 379
    functionLinenumberEnd: 457
    functionName: xmlSecGnuTLSX509StoreVerifyCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - gnutls_x509_crt_list_verify
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOtherError2
    - return
    - xmlSecGnuTLSX509CheckCrtsTime
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSX509StoreVerifyCert(xmlSecGnuTLSX509StoreCtxPtr ctx,\n
      \   gnutls_x509_crt_t* certs_chain, xmlSecSize certs_chain_size,\n    gnutls_x509_crt_t*
      trusted,  xmlSecSize trusted_size,\n    gnutls_x509_crl_t* crls, xmlSecSize
      crls_size,\n    const xmlSecKeyInfoCtx* keyInfoCtx\n)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:492,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:492,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:494,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:497,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/gnutls/x509vfy.c:500,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:502,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:502,1
    - Dst: xmlSecGnuTLSKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:506,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:508,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:508,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCerts
      Src: /src/xmlsec/src/gnutls/x509vfy.c:512,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:514,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:514,1
    - Dst: xmlSecGnuTLSKeyDataX509GetCrls
      Src: /src/xmlsec/src/gnutls/x509vfy.c:517,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:519,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:519,1
    - Dst: xmlSecGnuTLSX509StoreGetTrustedCerts
      Src: /src/xmlsec/src/gnutls/x509vfy.c:524,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:526,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:526,1
    - Dst: xmlSecGnuTLSX509StoreGetCrls
      Src: /src/xmlsec/src/gnutls/x509vfy.c:530,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:532,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:532,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:537,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:537,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509vfy.c:539,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:541,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:541,1
    - Dst: xmlSecGnuTLSX509StoreGetCertsChain
      Src: /src/xmlsec/src/gnutls/x509vfy.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:549,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:549,1
    - Dst: xmlSecGnuTLSX509StoreVerifyCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:554,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:560,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:560,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:574,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:577,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:580,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 82
    argCount: 3
    argNames:
    - store
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 475
    functionDepth: 4
    functionLinenumber: 475
    functionLinenumberEnd: 583
    functionName: xmlSecGnuTLSX509StoreVerifyKey
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecMallocError
    - xmlFree
    - xmlSecGnuTLSX509StoreGetTrustedCerts
    - xmlSecAssert2
    - xmlSecGnuTLSKeyDataX509GetKeyCert
    - xmlSecGnuTLSX509StoreGetCrls
    - xmlSecKeyDataStoreGetName
    - xmlSecGnuTLSKeyDataX509GetCerts
    - xmlMalloc
    - xmlSecKeyDataStoreCheckId
    - xmlSecGnuTLSKeyDataX509GetCrls
    - xmlSecGnuTLSX509StoreGetCertsChain
    - xmlSecGnuTLSX509StoreVerifyCert
    - xmlSecGnuTLSX509StoreGetCtx
    - xmlSecKeyGetData
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509StoreVerifyKey(xmlSecKeyDataStorePtr store, xmlSecKeyPtr
      key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:614,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:614,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:615,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:616,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:617,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:619,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:625,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:626,1
    - Dst: xmlSecGnuTLSX509StoreGetTrustedCerts
      Src: /src/xmlsec/src/gnutls/x509vfy.c:629,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:631,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:631,1
    - Dst: xmlSecGnuTLSX509StoreGetCrls
      Src: /src/xmlsec/src/gnutls/x509vfy.c:634,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:636,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:636,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:641,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509vfy.c:643,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:645,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:645,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:655,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:657,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:657,1
    - Dst: xmlSecGnuTLSX509CertIsSelfSigned
      Src: /src/xmlsec/src/gnutls/x509vfy.c:661,1
    - Dst: xmlSecGnuTLSX509FindSignedCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:663,1
    - Dst: xmlSecGnuTLSX509StoreGetCertsChain
      Src: /src/xmlsec/src/gnutls/x509vfy.c:668,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:670,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:670,1
    - Dst: xmlSecGnuTLSX509StoreVerifyCert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:683,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:690,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:690,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:704,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:707,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:710,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 78
    argCount: 4
    argNames:
    - store
    - certs
    - crls
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecPtrListPtr
    - xmlSecPtrListPtr
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 597
    functionDepth: 4
    functionLinenumber: 597
    functionLinenumberEnd: 713
    functionName: xmlSecGnuTLSX509StoreVerify
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecGnuTLSX509FindSignedCert
    - xmlSecInternalError
    - xmlSecMallocError
    - xmlFree
    - xmlSecGnuTLSX509StoreGetTrustedCerts
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecGnuTLSX509StoreGetCrls
    - xmlSecKeyDataStoreGetName
    - xmlSecGnuTLSX509CertIsSelfSigned
    - xmlSecGnuTLSX509StoreVerifyCert
    - xmlMalloc
    - xmlSecKeyDataStoreCheckId
    - xmlSecGnuTLSX509StoreGetCertsChain
    - xmlSecGnuTLSX509StoreGetCtx
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: "gnutls_x509_crt_t xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr
      store,\n                            xmlSecPtrListPtr certs,\n                            xmlSecPtrListPtr
      crls,\n                            const xmlSecKeyInfoCtx* keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:730,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:730,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:731,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:733,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:734,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509vfy.c:737,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:739,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:740,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509vfy.c:744,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:746,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:747,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - store
    - cert
    - type
    argTypes:
    - xmlSecKeyDataStorePtr
    - gnutls_x509_crt_t
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 725
    functionDepth: 2
    functionLinenumber: 725
    functionLinenumberEnd: 754
    functionName: xmlSecGnuTLSX509StoreAdoptCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecPtrListAdd
    - xmlSecGnuTLSX509StoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509StoreAdoptCert(xmlSecKeyDataStorePtr store, gnutls_x509_crt_t
      cert, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:771,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:771,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:772,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:774,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:775,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509vfy.c:777,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:779,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - crl
    argTypes:
    - xmlSecKeyDataStorePtr
    - gnutls_x509_crl_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 766
    functionDepth: 2
    functionLinenumber: 766
    functionLinenumberEnd: 785
    functionName: xmlSecGnuTLSX509StoreAdoptCrl
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecPtrListAdd
    - xmlSecGnuTLSX509StoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509StoreAdoptCrl(xmlSecKeyDataStorePtr store, gnutls_x509_crl_t
      crl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:793,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:793,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:795,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:796,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509vfy.c:798,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:800,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:802,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:803,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:807,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:809,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:810,1
    - Dst: xmlSecPtrListInitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:814,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:816,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/gnutls/x509vfy.c:817,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 788
    functionDepth: 2
    functionLinenumber: 788
    functionLinenumberEnd: 822
    functionName: xmlSecGnuTLSX509StoreInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecPtrListInitialize
    - xmlSecGnuTLSX509StoreGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509StoreInitialize(xmlSecKeyDataStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:827,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/gnutls/x509vfy.c:827,1
    - Dst: xmlSecGnuTLSX509StoreGetCtx
      Src: /src/xmlsec/src/gnutls/x509vfy.c:829,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509vfy.c:830,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:832,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:833,1
    - Dst: xmlSecPtrListFinalize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:834,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509vfy.c:836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 824
    functionDepth: 2
    functionLinenumber: 824
    functionLinenumberEnd: 837
    functionName: xmlSecGnuTLSX509StoreFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecPtrListFinalize
    - xmlSecAssert
    - xmlSecKeyDataStoreCheckId
    - xmlSecGnuTLSX509StoreGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509StoreFinalize(xmlSecKeyDataStorePtr store)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:854,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:855,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/gnutls/x509vfy.c:858,1
    - Dst: xmlSecGnuTLSDnAttrsInitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:863,1
    - Dst: xmlSecGnuTLSDnAttrsInitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:864,1
    - Dst: xmlSecGnuTLSDnAttrsParse
      Src: /src/xmlsec/src/gnutls/x509vfy.c:867,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:869,1
    - Dst: xmlSecGnuTLSDnAttrsParse
      Src: /src/xmlsec/src/gnutls/x509vfy.c:873,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:875,1
    - Dst: xmlSecGnuTLSDnAttrsEqual
      Src: /src/xmlsec/src/gnutls/x509vfy.c:880,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:887,1
    - Dst: xmlSecGnuTLSDnAttrsDeinitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:892,1
    - Dst: xmlSecGnuTLSDnAttrsDeinitialize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:893,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - ll
    - rr
    argTypes:
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 847
    functionDepth: 1
    functionLinenumber: 847
    functionLinenumberEnd: 895
    functionName: xmlSecGnuTLSX509DnsEqual
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSDnAttrsParse
    - xmlStrEqual
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSDnAttrsDeinitialize
    - xmlSecGnuTLSDnAttrsInitialize
    - xmlSecGnuTLSDnAttrsEqual
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509DnsEqual(const xmlChar * ll, const xmlChar * rr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:912,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:913,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:914,1
    - Dst: gnutls_x509_crt_get_subject_key_id
      Src: /src/xmlsec/src/gnutls/x509vfy.c:917,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:919,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509vfy.c:931,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:933,1
    - Dst: gnutls_x509_crt_get_subject_key_id
      Src: /src/xmlsec/src/gnutls/x509vfy.c:938,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:940,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gnutls/x509vfy.c:945,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:957,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 3
    argNames:
    - cert
    - ski
    - skiSize
    argTypes:
    - gnutls_x509_crt_t
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 903
    functionDepth: 1
    functionLinenumber: 903
    functionLinenumberEnd: 960
    functionName: xmlSecGnuTLSX509CertCompareSKI
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - gnutls_x509_crt_get_subject_key_id
    - xmlMalloc
    - memcmp
    - xmlSecGnuTLSError
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CertCompareSKI(gnutls_x509_crt_t cert, const xmlSecByte
      * ski, xmlSecSize skiSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:967,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:968,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:971,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:973,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:975,1
    - Dst: xmlSecGnuTLSX509FindCertCtxMatch
      Src: /src/xmlsec/src/gnutls/x509vfy.c:981,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:983,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - certs
    - findCertCtx
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecGnuTLSX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 962
    functionDepth: 2
    functionLinenumber: 962
    functionLinenumberEnd: 991
    functionName: xmlSecGnuTLSX509FindCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecInternalError2
    - xmlSecGnuTLSX509FindCertCtxMatch
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509FindCert(xmlSecPtrListPtr certs,
      xmlSecGnuTLSX509FindCertCtxPtr findCertCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1000,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1001,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1004,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1006,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1011,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1016,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1018,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1023,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1025,1
    - Dst: xmlSecGnuTLSX509DnsEqual
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1031,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1034,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1039,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - certs
    - cert
    argTypes:
    - xmlSecPtrListPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 994
    functionDepth: 2
    functionLinenumber: 994
    functionLinenumberEnd: 1042
    functionName: xmlSecGnuTLSX509FindSignedCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecGnuTLSX509DnsEqual
    - xmlSecInternalError2
    - xmlSecPtrListGetSize
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509FindSignedCert(xmlSecPtrListPtr certs,
      gnutls_x509_crt_t cert)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1051,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1052,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1055,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1057,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1062,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1067,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1069,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1074,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1076,1
    - Dst: xmlSecGnuTLSX509DnsEqual
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1082,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1085,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509vfy.c:1090,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - certs
    - cert
    argTypes:
    - xmlSecPtrListPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1045
    functionDepth: 2
    functionLinenumber: 1045
    functionLinenumberEnd: 1093
    functionName: xmlSecGnuTLSX509FindSignerCert
    functionSourceFile: /src/xmlsec/src/gnutls/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - xmlSecInternalError
    - xmlFree
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecGnuTLSX509DnsEqual
    - xmlSecInternalError2
    - xmlSecPtrListGetSize
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509FindSignerCert(xmlSecPtrListPtr certs,
      gnutls_x509_crt_t cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: xmlSecGnuTLSX509CrtListGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecGnuTLSX509CrtListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:73,1
    - Dst: xmlSecGnuTLSX509CertDup
      Src: /src/xmlsec/src/gnutls/x509utils.c:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 76
    functionName: xmlSecGnuTLSX509CrtListDuplicateItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertDup
    linkageType: ''
    returnType: xmlSecPtr
    signature: xmlSecPtr xmlSecGnuTLSX509CrtListDuplicateItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:80,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: xmlSecGnuTLSX509CrtListDestroyItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrtListDestroyItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:87,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:88,1
    - Dst: xmlSecGnuTLSX509CertDebugDump
      Src: /src/xmlsec/src/gnutls/x509utils.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - output
    argTypes:
    - xmlSecPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionName: xmlSecGnuTLSX509CrtListDebugDumpItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSX509CertDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrtListDebugDumpItem(xmlSecPtr ptr, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:96,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:97,1
    - Dst: xmlSecGnuTLSX509CertDebugXmlDump
      Src: /src/xmlsec/src/gnutls/x509utils.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - output
    argTypes:
    - xmlSecPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionName: xmlSecGnuTLSX509CrtListDebugXmlDumpItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSX509CertDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrtListDebugXmlDumpItem(xmlSecPtr ptr, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: xmlSecGnuTLSX509CrlListGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecPtrListId
    signature: xmlSecPtrListId xmlSecGnuTLSX509CrlListGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:129,1
    - Dst: xmlSecGnuTLSX509CrlDup
      Src: /src/xmlsec/src/gnutls/x509utils.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 132
    functionName: xmlSecGnuTLSX509CrlListDuplicateItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509CrlDup
    linkageType: ''
    returnType: xmlSecPtr
    signature: xmlSecPtr xmlSecGnuTLSX509CrlListDuplicateItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:136,1
    - Dst: gnutls_x509_crl_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - xmlSecPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: xmlSecGnuTLSX509CrlListDestroyItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - gnutls_x509_crl_deinit
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrlListDestroyItem(xmlSecPtr ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:143,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:144,1
    - Dst: xmlSecGnuTLSX509CrlDebugDump
      Src: /src/xmlsec/src/gnutls/x509utils.c:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - output
    argTypes:
    - xmlSecPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionName: xmlSecGnuTLSX509CrlListDebugDumpItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSX509CrlDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrlListDebugDumpItem(xmlSecPtr ptr, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:152,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:153,1
    - Dst: xmlSecGnuTLSX509CrlDebugXmlDump
      Src: /src/xmlsec/src/gnutls/x509utils.c:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - output
    argTypes:
    - xmlSecPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionName: xmlSecGnuTLSX509CrlListDebugXmlDumpItem
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSX509CrlDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrlListDebugXmlDumpItem(xmlSecPtr ptr, FILE* output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:172,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/x509utils.c:174,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:176,1
    - Dst: xmlSecGnuTLSX509CertDerWrite
      Src: /src/xmlsec/src/gnutls/x509utils.c:180,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:182,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:183,1
    - Dst: xmlSecGnuTLSX509CertRead
      Src: /src/xmlsec/src/gnutls/x509utils.c:187,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:187,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:187,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:190,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:191,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - src
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 198
    functionName: xmlSecGnuTLSX509CertDup
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertRead
    - xmlSecGnuTLSX509CertDerWrite
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509CertDup(gnutls_x509_crt_t src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:206,1
    - Dst: gnutls_x509_crt_check_issuer
      Src: /src/xmlsec/src/gnutls/x509utils.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - cert
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 209
    functionName: xmlSecGnuTLSX509CertIsSelfSigned
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - gnutls_x509_crt_check_issuer
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CertIsSelfSigned(gnutls_x509_crt_t cert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:217,1
    - Dst: gnutls_x509_crt_get_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:220,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:222,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:227,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:229,1
    - Dst: gnutls_x509_crt_get_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:234,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:236,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:237,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - cert
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 243
    functionName: xmlSecGnuTLSX509CertGetSubjectDN
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 3
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - gnutls_x509_crt_get_dn
    - xmlMalloc
    - xmlSecGnuTLSError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGnuTLSX509CertGetSubjectDN(gnutls_x509_crt_t cert)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:251,1
    - Dst: gnutls_x509_crt_get_issuer_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:254,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:256,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:261,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:263,1
    - Dst: gnutls_x509_crt_get_issuer_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:268,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:270,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:271,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - cert
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 277
    functionName: xmlSecGnuTLSX509CertGetIssuerDN
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 3
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecGnuTLSError
    - xmlSecMallocError
    - gnutls_x509_crt_get_issuer_dn
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGnuTLSX509CertGetIssuerDN(gnutls_x509_crt_t cert)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:286,1
    - Dst: gnutls_x509_crt_get_serial
      Src: /src/xmlsec/src/gnutls/x509utils.c:289,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:291,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:296,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:298,1
    - Dst: gnutls_x509_crt_get_serial
      Src: /src/xmlsec/src/gnutls/x509utils.c:303,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:305,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:306,1
    - Dst: xmlSecGnuTLSASN1IntegerWrite
      Src: /src/xmlsec/src/gnutls/x509utils.c:311,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:313,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:314,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:319,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - cert
    argTypes:
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 321
    functionName: xmlSecGnuTLSX509CertGetIssuerSerial
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - gnutls_x509_crt_get_serial
    - xmlFree
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSASN1IntegerWrite
    - xmlMalloc
    - xmlSecGnuTLSError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGnuTLSX509CertGetIssuerSerial(gnutls_x509_crt_t cert)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:332,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:333,1
    - Dst: xmlSecGnuTLSX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/gnutls/x509utils.c:335,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:337,1
    - Dst: gnutls_x509_crt_get_fingerprint
      Src: /src/xmlsec/src/gnutls/x509utils.c:341,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:343,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/x509utils.c:346,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:346,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:348,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:350,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - cert
    - algorithm
    - buf
    argTypes:
    - gnutls_x509_crt_t
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 323
    functionDepth: 3
    functionLinenumber: 323
    functionLinenumberEnd: 356
    functionName: xmlSecGnuTLSX509DigestWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecBufferSetData
    - return
    - xmlSecGnuTLSX509GetDigestFromAlgorithm
    - gnutls_x509_crt_get_fingerprint
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509DigestWrite(gnutls_x509_crt_t cert, const xmlChar*
      algorithm, xmlSecBufferPtr buf)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:368,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:381,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gnutls/x509utils.c:382,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509utils.c:385,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:385,1
    - Dst: gnutls_x509_crt_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:388,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:390,1
    - Dst: gnutls_x509_crt_import
      Src: /src/xmlsec/src/gnutls/x509utils.c:397,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:399,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:400,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - buf
    - size
    - format
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 405
    functionName: xmlSecGnuTLSX509CertRead
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 6
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - gnutls_x509_crt_init
    - return
    - gnutls_x509_crt_import
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: gnutls_x509_crt_t
    signature: gnutls_x509_crt_t xmlSecGnuTLSX509CertRead(const xmlSecByte* buf, xmlSecSize
      size, xmlSecKeyDataFormat format)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:416,1
    - Dst: gnutls_x509_crt_export
      Src: /src/xmlsec/src/gnutls/x509utils.c:419,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:421,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/x509utils.c:424,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:424,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:427,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:429,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:434,1
    - Dst: gnutls_x509_crt_export
      Src: /src/xmlsec/src/gnutls/x509utils.c:437,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:439,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - gnutls_x509_crt_t
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 407
    functionDepth: 2
    functionLinenumber: 407
    functionLinenumberEnd: 445
    functionName: xmlSecGnuTLSX509CertDerWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - gnutls_x509_crt_export
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CertDerWrite(gnutls_x509_crt_t cert, xmlSecBufferPtr
      buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:451,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:452,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:454,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:456,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:457,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:459,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:462,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:464,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:465,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:467,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerSerial
      Src: /src/xmlsec/src/gnutls/x509utils.c:470,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:472,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:473,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:475,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - gnutls_x509_crt_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 447
    functionDepth: 2
    functionLinenumber: 447
    functionLinenumberEnd: 477
    functionName: xmlSecGnuTLSX509CertDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - xmlFree
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSX509CertGetIssuerSerial
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CertDebugDump(gnutls_x509_crt_t cert, FILE* output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:483,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:484,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:486,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:488,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:489,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:491,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:494,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:496,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:497,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:499,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerSerial
      Src: /src/xmlsec/src/gnutls/x509utils.c:502,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:504,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:505,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:507,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - gnutls_x509_crt_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 509
    functionName: xmlSecGnuTLSX509CertDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - xmlFree
    - xmlSecAssert
    - fprintf
    - xmlSecGnuTLSX509CertGetIssuerSerial
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CertDebugXmlDump(gnutls_x509_crt_t cert, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:522,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509utils.c:524,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 6
    argNames:
    - ctx
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    argTypes:
    - xmlSecGnuTLSX509FindCertCtxPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 517
    functionDepth: 1
    functionLinenumber: 517
    functionLinenumberEnd: 541
    functionName: xmlSecGnuTLSX509FindCertCtxInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSX509FindCertCtxInitialize(xmlSecGnuTLSX509FindCertCtxPtr
      ctx,\n    const xmlChar *subjectName,\n    const xmlChar *issuerName, const
      xmlChar *issuerSerial,\n    const xmlSecByte * ski, xmlSecSize skiSize\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:548,1
    - Dst: xmlSecGnuTLSX509FindCertCtxInitialize
      Src: /src/xmlsec/src/gnutls/x509utils.c:550,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:553,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:553,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:556,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:557,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/gnutls/x509utils.c:561,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:562,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:563,1
    - Dst: xmlSecGnuTLSX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/gnutls/x509utils.c:565,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:567,1
    - Dst: xmlSecGnuTLSX509FindCertCtxFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:568,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - x509Value
    argTypes:
    - xmlSecGnuTLSX509FindCertCtxPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 543
    functionDepth: 2
    functionLinenumber: 543
    functionLinenumberEnd: 574
    functionName: xmlSecGnuTLSX509FindCertCtxInitializeFromValue
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferIsEmpty
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGnuTLSX509FindCertCtxInitialize
    - xmlSecGnuTLSX509GetDigestFromAlgorithm
    - xmlSecGnuTLSX509FindCertCtxFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509FindCertCtxInitializeFromValue(xmlSecGnuTLSX509FindCertCtxPtr
      ctx, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:577,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509utils.c:579,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecGnuTLSX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 580
    functionName: xmlSecGnuTLSX509FindCertCtxFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509FindCertCtxFinalize(xmlSecGnuTLSX509FindCertCtxPtr
      ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:587,1
    - Dst: xmlSecGnuTLSX509CertGetSubjectDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:593,1
    - Dst: xmlSecGnuTLSX509DnsEqual
      Src: /src/xmlsec/src/gnutls/x509utils.c:599,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:600,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:605,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - cert
    - subjectName
    argTypes:
    - gnutls_x509_crt_t
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 583
    functionDepth: 2
    functionLinenumber: 583
    functionLinenumberEnd: 607
    functionName: xmlSecGnuTLSX509MatchBySubjectName
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509DnsEqual
    - xmlFree
    - xmlSecGnuTLSX509CertGetSubjectDN
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509MatchBySubjectName(gnutls_x509_crt_t cert, const
      xmlChar* subjectName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:614,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:620,1
    - Dst: xmlSecGnuTLSX509DnsEqual
      Src: /src/xmlsec/src/gnutls/x509utils.c:621,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:622,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:625,1
    - Dst: xmlSecGnuTLSX509CertGetIssuerSerial
      Src: /src/xmlsec/src/gnutls/x509utils.c:627,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/gnutls/x509utils.c:628,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:629,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:632,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - cert
    - issuerName
    - issuerSerial
    argTypes:
    - gnutls_x509_crt_t
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 609
    functionDepth: 2
    functionLinenumber: 609
    functionLinenumberEnd: 636
    functionName: xmlSecGnuTLSX509MatchByIssuer
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSX509CertGetIssuerDN
    - xmlStrEqual
    - xmlFree
    - xmlSecAssert2
    - xmlSecGnuTLSX509DnsEqual
    - xmlSecGnuTLSX509CertGetIssuerSerial
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509MatchByIssuer(gnutls_x509_crt_t cert,  const xmlChar*
      issuerName, const xmlChar* issuerSerial)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:642,1
    - Dst: xmlSecGnuTLSX509CertCompareSKI
      Src: /src/xmlsec/src/gnutls/x509utils.c:650,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:652,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - cert
    - ski
    - skiSize
    argTypes:
    - gnutls_x509_crt_t
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 661
    functionName: xmlSecGnuTLSX509MatchBySki
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSX509CertCompareSKI
    - xmlSecInternalError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509MatchBySki(gnutls_x509_crt_t cert, const xmlSecByte*
      ski, xmlSecSize skiSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:669,1
    - Dst: gnutls_x509_crt_get_fingerprint
      Src: /src/xmlsec/src/gnutls/x509utils.c:675,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:677,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:680,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 4
    argNames:
    - cert
    - digestValue
    - digestLen
    - digestAlgo
    argTypes:
    - gnutls_x509_crt_t
    - xmlSecByte*
    - size_t
    - gnutls_digest_algorithm_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 686
    functionName: xmlSecGnuTLSX509MatchByDigest
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSError
    - memcmp
    - gnutls_x509_crt_get_fingerprint
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509MatchByDigest(gnutls_x509_crt_t cert, const xmlSecByte
      * digestValue, size_t digestLen, gnutls_digest_algorithm_t digestAlgo)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:694,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:695,1
    - Dst: xmlSecGnuTLSX509MatchBySubjectName
      Src: /src/xmlsec/src/gnutls/x509utils.c:697,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:699,1
    - Dst: xmlSecGnuTLSX509MatchByIssuer
      Src: /src/xmlsec/src/gnutls/x509utils.c:706,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:708,1
    - Dst: xmlSecGnuTLSX509MatchBySki
      Src: /src/xmlsec/src/gnutls/x509utils.c:715,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:717,1
    - Dst: xmlSecGnuTLSX509MatchByDigest
      Src: /src/xmlsec/src/gnutls/x509utils.c:724,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:726,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - cert
    argTypes:
    - xmlSecGnuTLSX509FindCertCtxPtr
    - gnutls_x509_crt_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 690
    functionDepth: 3
    functionLinenumber: 690
    functionLinenumberEnd: 735
    functionName: xmlSecGnuTLSX509FindCertCtxMatch
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecGnuTLSX509MatchByIssuer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSX509MatchByDigest
    - xmlSecGnuTLSX509MatchBySki
    - xmlSecGnuTLSX509MatchBySubjectName
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509FindCertCtxMatch(xmlSecGnuTLSX509FindCertCtxPtr
      ctx, gnutls_x509_crt_t cert)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:744,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/x509utils.c:745,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:751,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:757,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:763,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:769,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:775,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:781,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:783,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:785,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:787,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:793,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gnutls/x509utils.c:794,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 737
    functionDepth: 1
    functionLinenumber: 737
    functionLinenumberEnd: 797
    functionName: xmlSecGnuTLSX509GetDigestFromAlgorithm
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlStrcmp
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    linkageType: ''
    returnType: gnutls_digest_algorithm_t
    signature: gnutls_digest_algorithm_t xmlSecGnuTLSX509GetDigestFromAlgorithm(const
      xmlChar* href)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:813,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gnutls/x509utils.c:815,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:817,1
    - Dst: xmlSecGnuTLSX509CrlDerWrite
      Src: /src/xmlsec/src/gnutls/x509utils.c:821,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:823,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:824,1
    - Dst: xmlSecGnuTLSX509CrlRead
      Src: /src/xmlsec/src/gnutls/x509utils.c:828,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:828,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:828,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:831,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:832,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gnutls/x509utils.c:837,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - src
    argTypes:
    - gnutls_x509_crl_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 807
    functionDepth: 2
    functionLinenumber: 807
    functionLinenumberEnd: 839
    functionName: xmlSecGnuTLSX509CrlDup
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGnuTLSX509CrlDerWrite
    - xmlSecGnuTLSX509CrlRead
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: gnutls_x509_crl_t
    signature: gnutls_x509_crl_t xmlSecGnuTLSX509CrlDup(gnutls_x509_crl_t src)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:847,1
    - Dst: gnutls_x509_crl_get_issuer_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:850,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:852,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:857,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:859,1
    - Dst: gnutls_x509_crl_get_issuer_dn
      Src: /src/xmlsec/src/gnutls/x509utils.c:864,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:866,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:867,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - crl
    argTypes:
    - gnutls_x509_crl_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 841
    functionDepth: 1
    functionLinenumber: 841
    functionLinenumberEnd: 873
    functionName: xmlSecGnuTLSX509CrlGetIssuerDN
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - gnutls_x509_crl_get_issuer_dn
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - xmlSecGnuTLSError
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGnuTLSX509CrlGetIssuerDN(gnutls_x509_crl_t crl)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:883,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:884,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:897,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gnutls/x509utils.c:898,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509utils.c:901,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:901,1
    - Dst: gnutls_x509_crl_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:904,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:906,1
    - Dst: gnutls_x509_crl_import
      Src: /src/xmlsec/src/gnutls/x509utils.c:912,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:914,1
    - Dst: gnutls_x509_crl_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:915,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - buf
    - size
    - format
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 875
    functionDepth: 1
    functionLinenumber: 875
    functionLinenumberEnd: 920
    functionName: xmlSecGnuTLSX509CrlRead
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 3
    functionsReached:
    - gnutls_x509_crl_init
    - xmlSecAssert2
    - gnutls_x509_crl_import
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - gnutls_x509_crl_deinit
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: gnutls_x509_crl_t
    signature: gnutls_x509_crl_t xmlSecGnuTLSX509CrlRead(const xmlSecByte* buf, xmlSecSize
      size, xmlSecKeyDataFormat format)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:930,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:931,1
    - Dst: gnutls_x509_crl_export
      Src: /src/xmlsec/src/gnutls/x509utils.c:934,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:936,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gnutls/x509utils.c:939,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:939,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:942,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/x509utils.c:944,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/x509utils.c:948,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:949,1
    - Dst: gnutls_x509_crl_export
      Src: /src/xmlsec/src/gnutls/x509utils.c:952,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:954,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - crl
    - buf
    argTypes:
    - gnutls_x509_crl_t
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 922
    functionDepth: 2
    functionLinenumber: 922
    functionLinenumberEnd: 960
    functionName: xmlSecGnuTLSX509CrlDerWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - gnutls_x509_crl_export
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSX509CrlDerWrite(gnutls_x509_crl_t crl, xmlSecBufferPtr
      buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:966,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:967,1
    - Dst: xmlSecGnuTLSX509CrlGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:969,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:971,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:972,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:974,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - crl
    - output
    argTypes:
    - gnutls_x509_crl_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 962
    functionDepth: 2
    functionLinenumber: 962
    functionLinenumberEnd: 976
    functionName: xmlSecGnuTLSX509CrlDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlFree
    - xmlSecGnuTLSX509CrlGetIssuerDN
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrlDebugDump(gnutls_x509_crl_t crl, FILE* output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:982,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:983,1
    - Dst: xmlSecGnuTLSX509CrlGetIssuerDN
      Src: /src/xmlsec/src/gnutls/x509utils.c:985,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:987,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:988,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:990,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - crl
    - output
    argTypes:
    - gnutls_x509_crl_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 978
    functionDepth: 2
    functionLinenumber: 978
    functionLinenumberEnd: 992
    functionName: xmlSecGnuTLSX509CrlDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlFree
    - xmlSecGnuTLSX509CrlGetIssuerDN
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSX509CrlDebugXmlDump(gnutls_x509_crl_t crl, FILE* output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1008,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1009,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:1016,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1018,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/gnutls/x509utils.c:1022,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1024,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:1025,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - unsigned char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1000
    functionDepth: 1
    functionLinenumber: 1000
    functionLinenumberEnd: 1030
    functionName: xmlSecGnuTLSASN1IntegerWrite
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlFree
    - xmlSecAssert2
    - xmlSecXmlError
    - xmlMalloc
    - xmlStrPrintf
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGnuTLSASN1IntegerWrite(const unsigned char * data, size_t len)'
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1053,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1054,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1055,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1056,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1057,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1058,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1059,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1060,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1061,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/x509utils.c:1063,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/x509utils.c:1063,1
    - Dst: gnutls_pkcs12_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:1066,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1068,1
    - Dst: gnutls_pkcs12_import
      Src: /src/xmlsec/src/gnutls/x509utils.c:1074,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1076,1
    - Dst: gnutls_pkcs12_verify_mac
      Src: /src/xmlsec/src/gnutls/x509utils.c:1081,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1083,1
    - Dst: gnutls_pkcs12_bag_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:1093,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1095,1
    - Dst: gnutls_pkcs12_get_bag
      Src: /src/xmlsec/src/gnutls/x509utils.c:1099,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1104,1
    - Dst: gnutls_pkcs12_bag_get_type
      Src: /src/xmlsec/src/gnutls/x509utils.c:1109,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1111,1
    - Dst: gnutls_pkcs12_bag_decrypt
      Src: /src/xmlsec/src/gnutls/x509utils.c:1115,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1117,1
    - Dst: gnutls_pkcs12_bag_get_count
      Src: /src/xmlsec/src/gnutls/x509utils.c:1123,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1125,1
    - Dst: gnutls_pkcs12_bag_get_type
      Src: /src/xmlsec/src/gnutls/x509utils.c:1130,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1132,1
    - Dst: gnutls_pkcs12_bag_get_data
      Src: /src/xmlsec/src/gnutls/x509utils.c:1136,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1138,1
    - Dst: gnutls_x509_privkey_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:1147,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1149,1
    - Dst: gnutls_x509_privkey_import_pkcs8
      Src: /src/xmlsec/src/gnutls/x509utils.c:1153,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1158,1
    - Dst: gnutls_pkcs12_bag_get_friendly_name
      Src: /src/xmlsec/src/gnutls/x509utils.c:1164,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1166,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gnutls/x509utils.c:1170,1
    - Dst: gnutls_x509_crt_init
      Src: /src/xmlsec/src/gnutls/x509utils.c:1180,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1182,1
    - Dst: gnutls_x509_crt_import
      Src: /src/xmlsec/src/gnutls/x509utils.c:1186,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1188,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/src/gnutls/x509utils.c:1192,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1194,1
    - Dst: gnutls_pkcs12_bag_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:1206,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1212,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/gnutls/x509utils.c:1218,1
    - Dst: gnutls_x509_privkey_get_key_id
      Src: /src/xmlsec/src/gnutls/x509utils.c:1227,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1229,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/gnutls/x509utils.c:1235,1
    - Dst: gnutls_x509_crt_get_key_id
      Src: /src/xmlsec/src/gnutls/x509utils.c:1241,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1243,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1248,1
    - Dst: xmlSecGnuTLSX509CertDup
      Src: /src/xmlsec/src/gnutls/x509utils.c:1249,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1251,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1261,1
    - Dst: gnutls_x509_crt_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:1273,1
    - Dst: gnutls_pkcs12_bag_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:1276,1
    - Dst: gnutls_pkcs12_deinit
      Src: /src/xmlsec/src/gnutls/x509utils.c:1279,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 198
    argCount: 7
    argNames:
    - data
    - dataSize
    - pwd
    - priv_key
    - key_cert
    - certsList
    - keyName
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - gnutls_x509_privkey_t*
    - gnutls_x509_crt_t*
    - xmlSecPtrListPtr
    - xmlChar**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1037
    functionDepth: 3
    functionLinenumber: 1037
    functionLinenumberEnd: 1282
    functionName: xmlSecGnuTLSPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - gnutls_x509_privkey_import_pkcs8
    - gnutls_x509_crt_init
    - return
    - gnutls_pkcs12_bag_get_type
    - gnutls_pkcs12_deinit
    - xmlSecGnuTLSError
    - gnutls_x509_crt_get_key_id
    - gnutls_pkcs12_bag_get_data
    - gnutls_pkcs12_import
    - xmlSecPtrListGetItem
    - memcmp
    - gnutls_pkcs12_bag_deinit
    - gnutls_pkcs12_bag_init
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - gnutls_pkcs12_bag_get_friendly_name
    - gnutls_pkcs12_verify_mac
    - xmlSecInternalError
    - xmlSecAssert2
    - gnutls_x509_privkey_get_key_id
    - xmlSecGnuTLSX509CertDup
    - gnutls_x509_crt_import
    - xmlSecOtherError
    - gnutls_pkcs12_bag_decrypt
    - gnutls_pkcs12_bag_get_count
    - gnutls_pkcs12_get_bag
    - gnutls_x509_privkey_init
    - gnutls_pkcs12_init
    - xmlSecPtrListAdd
    - xmlSecPtrListGetSize
    - gnutls_x509_crt_deinit
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize
      dataSize, const char *pwd,\n    gnutls_x509_privkey_t * priv_key, gnutls_x509_crt_t
      * key_cert, xmlSecPtrListPtr certsList,\n    xmlChar ** keyName\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:1291,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:1292,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509utils.c:1294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - attrs
    - attrsSize
    argTypes:
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1289
    functionDepth: 1
    functionLinenumber: 1289
    functionLinenumberEnd: 1295
    functionName: xmlSecGnuTLSDnAttrsInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSDnAttrsInitialize(xmlSecGnuTLSDnAttr * attrs, xmlSecSize
      attrsSize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:1301,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/x509utils.c:1302,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:1306,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:1309,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/x509utils.c:1312,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - attrs
    - attrsSize
    argTypes:
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 1297
    functionDepth: 1
    functionLinenumber: 1297
    functionLinenumberEnd: 1313
    functionName: xmlSecGnuTLSDnAttrsDeinitialize
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - xmlFree
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSDnAttrsDeinitialize(xmlSecGnuTLSDnAttr * attrs, xmlSecSize
      attrsSize)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1324,1
    - Dst: xmlStrcasecmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1328,1
    - Dst: xmlStrcasecmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1333,1
    - Dst: xmlStrcasecmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1334,1
    - Dst: xmlStrcasecmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1338,1
    - Dst: xmlStrcasecmp
      Src: /src/xmlsec/src/gnutls/x509utils.c:1339,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - attrs
    - attrsSize
    - key
    argTypes:
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1315
    functionDepth: 1
    functionLinenumber: 1315
    functionLinenumberEnd: 1347
    functionName: xmlSecGnuTLSDnAttrrsFind
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcasecmp
    linkageType: ''
    returnType: xmlSecGnuTLSDnAttr
    signature: "xmlSecGnuTLSDnAttr *\nxmlSecGnuTLSDnAttrrsFind(const xmlSecGnuTLSDnAttr
      * attrs,\n                         xmlSecSize attrsSize,\n                         const
      xmlChar * key)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1361,1
    - Dst: xmlSecGnuTLSDnAttrrsFind
      Src: /src/xmlsec/src/gnutls/x509utils.c:1384,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/src/gnutls/x509utils.c:1389,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 4
    argNames:
    - ll
    - llSize
    - rr
    - rrSize
    argTypes:
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1349
    functionDepth: 2
    functionLinenumber: 1349
    functionLinenumberEnd: 1396
    functionName: xmlSecGnuTLSDnAttrsEqual
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSDnAttrrsFind
    - xmlStrEqual
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSDnAttrsEqual(const xmlSecGnuTLSDnAttr * ll, xmlSecSize
      llSize,\n                         const xmlSecGnuTLSDnAttr * rr, xmlSecSize
      rrSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1463
    functionDepth: 0
    functionLinenumber: 1463
    functionLinenumberEnd: 1465
    functionName: XMLSEC_GNUTLS_IS_SPACE
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_GNUTLS_IS_SPACE(ch)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1478,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1479,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/x509utils.c:1480,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/src/gnutls/x509utils.c:1483,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gnutls/x509utils.c:1484,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1486,1
    - Dst: XMLSEC_GNUTLS_IS_SPACE
      Src: /src/xmlsec/src/gnutls/x509utils.c:1498,1
    - Dst: XMLSEC_GNUTLS_IS_SPACE
      Src: /src/xmlsec/src/gnutls/x509utils.c:1515,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1521,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gnutls/x509utils.c:1525,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1527,1
    - Dst: XMLSEC_GNUTLS_IS_SPACE
      Src: /src/xmlsec/src/gnutls/x509utils.c:1536,1
    - Dst: XMLSEC_GNUTLS_IS_SPACE
      Src: /src/xmlsec/src/gnutls/x509utils.c:1559,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gnutls/x509utils.c:1563,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1565,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gnutls/x509utils.c:1585,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1587,1
    - Dst: XMLSEC_GNUTLS_IS_SPACE
      Src: /src/xmlsec/src/gnutls/x509utils.c:1598,1
    - Dst: xmlSecInvalidIntegerDataError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1602,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/gnutls/x509utils.c:1619,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gnutls/x509utils.c:1628,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 138
    argCount: 3
    argNames:
    - dn
    - attrs
    - attrsSize
    argTypes:
    - xmlChar*
    - xmlSecGnuTLSDnAttr*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1631
      start: 1466
    functionDepth: 2
    functionLinenumber: 1466
    functionLinenumberEnd: 1631
    functionName: xmlSecGnuTLSDnAttrsParse
    functionSourceFile: /src/xmlsec/src/gnutls/x509utils.c
    functionUses: 1
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - xmlStrdup
    - XMLSEC_GNUTLS_IS_SPACE
    - xmlFree
    - xmlSecAssert2
    - xmlSecInvalidIntegerDataError
    - xmlMalloc
    - xmlSecUnsupportedEnumValueError
    - xmlSecStrlen
    - xmlSecStrdupError
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,\n                         xmlSecGnuTLSDnAttr
      * attrs, xmlSecSize attrsSize)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:84,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:90,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:96,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:102,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 109
    functionName: xmlSecGnuTLSHmacCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:116,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:116,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:117,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:117,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:120,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/hmac.c:121,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:124,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:130,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:136,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:142,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/hmac.c:149,1
    - Dst: gnutls_hmac_get_len
      Src: /src/xmlsec/src/gnutls/hmac.c:154,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/hmac.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:159,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 164
    functionName: xmlSecGnuTLSHmacInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSHmacCheckId
    - gnutls_hmac_get_len
    - xmlSecGnuTLSHmacGetCtx
    - xmlSecGnuTLSError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/hmac.c:170,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:170,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/hmac.c:171,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:171,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:173,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/hmac.c:174,1
    - Dst: gnutls_hmac_deinit
      Src: /src/xmlsec/src/gnutls/hmac.c:177,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/hmac.c:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 166
    functionDepth: 2
    functionLinenumber: 166
    functionLinenumberEnd: 180
    functionName: xmlSecGnuTLSHmacFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSHmacCheckId
    - gnutls_hmac_deinit
    - xmlSecAssert
    - xmlSecGnuTLSHmacGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:188,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:188,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:189,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:190,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/hmac.c:191,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:194,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/gnutls/hmac.c:196,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/hmac.c:198,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:199,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:202,1
    - Dst: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
      Src: /src/xmlsec/src/gnutls/hmac.c:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 205
    functionName: xmlSecGnuTLSHmacNodeRead
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSHmacCheckId
    - xmlSecGnuTLSHmacGetCtx
    - xmlSecTransformGetName
    - XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
    - xmlSecTransformHmacReadOutputBitsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                      xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:212,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:213,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:215,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:215,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:218,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 229
    functionName: xmlSecGnuTLSHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSHmacCheckId
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSHmacGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:239,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:239,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:241,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:242,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:247,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/hmac.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:250,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:250,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/hmac.c:252,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:253,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/hmac.c:255,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/gnutls/hmac.c:257,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:257,1
    - Dst: gnutls_hmac_init
      Src: /src/xmlsec/src/gnutls/hmac.c:261,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/hmac.c:261,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/hmac.c:263,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 231
    functionDepth: 2
    functionLinenumber: 231
    functionLinenumberEnd: 269
    functionName: xmlSecGnuTLSHmacSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - gnutls_hmac_init
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSHmacCheckId
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecGnuTLSHmacGetCtx
    - xmlSecTransformGetName
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:278,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/gnutls/hmac.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:280,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:282,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/hmac.c:283,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:287,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/gnutls/hmac.c:290,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/hmac.c:292,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:292,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 303
    functionName: xmlSecGnuTLSHmacVerify
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformHmacVerify
    - xmlSecTransformIsValid
    - xmlSecGnuTLSHmacGetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSHmacVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:313,1
    - Dst: xmlSecGnuTLSHmacCheckId
      Src: /src/xmlsec/src/gnutls/hmac.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:315,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/hmac.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:316,1
    - Dst: xmlSecGnuTLSHmacGetCtx
      Src: /src/xmlsec/src/gnutls/hmac.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:319,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:320,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/hmac.c:324,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/hmac.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:333,1
    - Dst: gnutls_hmac
      Src: /src/xmlsec/src/gnutls/hmac.c:336,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/hmac.c:336,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/hmac.c:338,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:338,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/hmac.c:342,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/hmac.c:344,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:344,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:351,1
    - Dst: gnutls_hmac_output
      Src: /src/xmlsec/src/gnutls/hmac.c:354,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/gnutls/hmac.c:358,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/hmac.c:360,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/hmac.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/hmac.c:369,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/hmac.c:369,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 305
    functionDepth: 2
    functionLinenumber: 305
    functionLinenumberEnd: 373
    functionName: xmlSecGnuTLSHmacExecute
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSHmacCheckId
    - xmlSecInternalError2
    - gnutls_hmac_output
    - xmlSecBufferGetData
    - xmlSecTransformHmacWriteOutput
    - xmlSecBufferGetSize
    - xmlSecGnuTLSHmacGetCtx
    - xmlSecTransformGetName
    - gnutls_hmac
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSHmacExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 419
    functionName: xmlSecGnuTLSTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionName: xmlSecGnuTLSTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: xmlSecGnuTLSTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 557
    functionName: xmlSecGnuTLSTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: xmlSecGnuTLSSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGnuTLSSymKeyDataCheckId(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:78,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:78,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/gnutls/symkeys.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 3
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: xmlSecGnuTLSSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueInitialize
    - xmlSecGnuTLSSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:85,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:85,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:86,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:86,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:87,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/gnutls/symkeys.c:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 83
    functionDepth: 3
    functionLinenumber: 83
    functionLinenumberEnd: 90
    functionName: xmlSecGnuTLSSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecGnuTLSSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/symkeys.c:94,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:94,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/gnutls/symkeys.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 3
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: xmlSecGnuTLSSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:102,1
    - Dst: xmlSecGnuTLSSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gnutls/symkeys.c:102,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/gnutls/symkeys.c:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 99
    functionDepth: 11
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionName: xmlSecGnuTLSSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecGnuTLSSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:110,1
    - Dst: xmlSecGnuTLSSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gnutls/symkeys.c:110,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/gnutls/symkeys.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 107
    functionDepth: 9
    functionLinenumber: 107
    functionLinenumberEnd: 113
    functionName: xmlSecGnuTLSSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecGnuTLSSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlNodePtr node, xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:119,1
    - Dst: xmlSecGnuTLSSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gnutls/symkeys.c:119,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/gnutls/symkeys.c:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 115
    functionDepth: 3
    functionLinenumber: 115
    functionLinenumberEnd: 122
    functionName: xmlSecGnuTLSSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinRead
    - xmlSecGnuTLSSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:128,1
    - Dst: xmlSecGnuTLSSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gnutls/symkeys.c:128,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/gnutls/symkeys.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 124
    functionDepth: 3
    functionLinenumber: 124
    functionLinenumberEnd: 131
    functionName: xmlSecGnuTLSSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinWrite
    - xmlSecGnuTLSSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlSecByte** buf, xmlSecSize* bufSize,\n
      \                                   xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:137,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:138,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gnutls/symkeys.c:139,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:141,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:142,1
    - Dst: xmlSecGnuTLSGenerateRandom
      Src: /src/xmlsec/src/gnutls/symkeys.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 145
    functionName: xmlSecGnuTLSSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecGnuTLSGenerateRandom
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecGnuTLSSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:151,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:151,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:154,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/symkeys.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 157
    functionName: xmlSecGnuTLSSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecGnuTLSSymKeyDataCheckId
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGnuTLSSymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:161,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:161,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/gnutls/symkeys.c:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 164
    functionName: xmlSecGnuTLSSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueGetSize
    - xmlSecGnuTLSSymKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGnuTLSSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/symkeys.c:168,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:168,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/gnutls/symkeys.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 166
    functionDepth: 3
    functionLinenumber: 166
    functionLinenumberEnd: 171
    functionName: xmlSecGnuTLSSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueDebugDump
    - xmlSecGnuTLSSymKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/symkeys.c:175,1
    - Dst: xmlSecGnuTLSSymKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:175,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/gnutls/symkeys.c:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 173
    functionDepth: 3
    functionLinenumber: 173
    functionLinenumberEnd: 178
    functionName: xmlSecGnuTLSSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGnuTLSSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 207
    functionName: xmlSecGnuTLSSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: xmlSecGnuTLSKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:279,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:281,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:284,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/symkeys.c:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 275
    functionDepth: 3
    functionLinenumber: 275
    functionLinenumberEnd: 287
    functionName: xmlSecGnuTLSKeyDataAesSet
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataAesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 344
    functionName: xmlSecGnuTLSKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:360,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:362,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:365,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/symkeys.c:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 356
    functionDepth: 3
    functionLinenumber: 356
    functionLinenumberEnd: 368
    functionName: xmlSecGnuTLSKeyDataDesSet
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataDesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 426
    functionName: xmlSecGnuTLSKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:442,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:443,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:444,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:447,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/symkeys.c:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 438
    functionDepth: 3
    functionLinenumber: 438
    functionLinenumberEnd: 450
    functionName: xmlSecGnuTLSKeyDataHmacSet
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataHmacSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 508
    functionName: xmlSecGnuTLSKeyDataPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGnuTLSKeyDataPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:524,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gnutls/symkeys.c:524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:526,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gnutls/symkeys.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/symkeys.c:529,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gnutls/symkeys.c:531,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 520
    functionDepth: 3
    functionLinenumber: 520
    functionLinenumberEnd: 532
    functionName: xmlSecGnuTLSKeyDataPbkdf2Set
    functionSourceFile: /src/xmlsec/src/gnutls/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyDataPbkdf2Set(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:100,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:106,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:123,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:129,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:135,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:141,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:144,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:147,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:156,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:162,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:166,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:175,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:181,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:187,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:193,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:199,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:205,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:211,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 59
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 219
    functionName: xmlSecGnuTLSSignatureCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:226,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:227,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:227,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:228,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:229,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/signatures.c:231,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:237,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:247,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:260,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:270,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:280,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:290,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:301,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:308,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:315,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:326,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:338,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:346,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:359,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:369,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:379,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:389,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:399,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:409,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:419,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/signatures.c:431,1
    - Dst: gnutls_hash_get_len
      Src: /src/xmlsec/src/gnutls/signatures.c:436,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:441,1
    - Dst: gnutls_hash_init
      Src: /src/xmlsec/src/gnutls/signatures.c:444,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:446,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 156
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 452
    functionName: xmlSecGnuTLSSignatureInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - gnutls_hash_init
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetCtx
    - gnutls_hash_get_len
    - xmlSecGnuTLSSignatureCheckId
    - xmlSecGnuTLSError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/signatures.c:458,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:458,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/signatures.c:459,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:459,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/signatures.c:460,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:462,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/signatures.c:463,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/signatures.c:466,1
    - Dst: gnutls_hash_deinit
      Src: /src/xmlsec/src/gnutls/signatures.c:469,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/signatures.c:471,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 454
    functionDepth: 2
    functionLinenumber: 454
    functionLinenumberEnd: 472
    functionName: xmlSecGnuTLSSignatureFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSSignatureGetCtx
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecGnuTLSSignatureCheckId
    - gnutls_hash_deinit
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:479,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:479,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:480,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:481,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:481,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:482,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:484,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:487,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:487,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/signatures.c:489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:490,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/signatures.c:492,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:494,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:494,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 474
    functionDepth: 3
    functionLinenumber: 474
    functionLinenumberEnd: 499
    functionName: xmlSecGnuTLSSignatureSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetCtx
    - xmlSecKeyCheckId
    - xmlSecGnuTLSSignatureCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:505,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:505,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:506,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:507,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:507,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:508,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:511,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 501
    functionDepth: 2
    functionLinenumber: 501
    functionLinenumberEnd: 523
    functionName: xmlSecGnuTLSSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetCtx
    - xmlSecTransformCheckSize
    - xmlSecGnuTLSSignatureCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - size
    - ','
    - sizeOfSize
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 551
    functionDepth: 0
    functionLinenumber: 551
    functionLinenumberEnd: 562
    functionName: XMLSEC_GNUTLS_GET_SIZE_OF_SIZE
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_GNUTLS_GET_SIZE_OF_SIZE(size, sizeOfSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - pp
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 578
    functionName: XMLSEC_GNUTLS_PUT_LENGTH
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_GNUTLS_PUT_LENGTH(pp, size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:586,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:587,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:588,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:589,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:590,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gnutls/signatures.c:606,1
    - Dst: XMLSEC_GNUTLS_GET_SIZE_OF_SIZE
      Src: /src/xmlsec/src/gnutls/signatures.c:611,1
    - Dst: XMLSEC_GNUTLS_GET_SIZE_OF_SIZE
      Src: /src/xmlsec/src/gnutls/signatures.c:614,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/signatures.c:618,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/signatures.c:618,1
    - Dst: gnutls_malloc
      Src: /src/xmlsec/src/gnutls/signatures.c:619,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:621,1
    - Dst: XMLSEC_GNUTLS_PUT_LENGTH
      Src: /src/xmlsec/src/gnutls/signatures.c:628,1
    - Dst: XMLSEC_GNUTLS_PUT_LENGTH
      Src: /src/xmlsec/src/gnutls/signatures.c:632,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gnutls/signatures.c:633,1
    - Dst: XMLSEC_GNUTLS_PUT_LENGTH
      Src: /src/xmlsec/src/gnutls/signatures.c:638,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gnutls/signatures.c:639,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 3
    argNames:
    - src
    - dst
    - size
    argTypes:
    - gnutls_datum_t*
    - gnutls_datum_t*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 644
    functionName: xmlSecGnuTLSToDer
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecAssert2
    - memcpy
    - return
    - gnutls_malloc
    - XMLSEC_GNUTLS_GET_SIZE_OF_SIZE
    - XMLSEC_GNUTLS_PUT_LENGTH
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSToDer(const gnutls_datum_t* src, gnutls_datum_t* dst,
      xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - data
    - ','
    - dataSize
    - ','
    - ii
    - ','
    - cc
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 646
    functionDepth: 0
    functionLinenumber: 646
    functionLinenumberEnd: 652
    functionName: XMLSEC_GNUTLS_GET_BYTE
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_GNUTLS_GET_BYTE(data, dataSize, ii, cc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:657,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:658,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:659,1
    - Dst: XMLSEC_GNUTLS_GET_BYTE
      Src: /src/xmlsec/src/gnutls/signatures.c:661,1
    - Dst: XMLSEC_GNUTLS_GET_BYTE
      Src: /src/xmlsec/src/gnutls/signatures.c:673,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 4
    argNames:
    - data
    - dataSize
    - ii
    - res
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 682
    functionName: xmlSecGnuTLSReadDerLength
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - XMLSEC_GNUTLS_GET_BYTE
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSReadDerLength(const xmlSecByte * data, xmlSecSize dataSize,
      xmlSecSize * ii, xmlSecSize * res)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:690,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:691,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:692,1
    - Dst: XMLSEC_GNUTLS_GET_BYTE
      Src: /src/xmlsec/src/gnutls/signatures.c:695,1
    - Dst: xmlSecGnuTLSReadDerLength
      Src: /src/xmlsec/src/gnutls/signatures.c:701,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gnutls/signatures.c:719,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 5
    argNames:
    - data
    - dataSize
    - ii
    - res
    - resSize
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 684
    functionDepth: 2
    functionLinenumber: 684
    functionLinenumberEnd: 724
    functionName: xmlSecGnuTLSReadDerInteger
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memcpy
    - XMLSEC_GNUTLS_GET_BYTE
    - xmlSecGnuTLSReadDerLength
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSReadDerInteger(const xmlSecByte * data, xmlSecSize
      dataSize, xmlSecSize * ii, xmlSecByte * res, xmlSecSize resSize)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:732,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:733,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:734,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:735,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:736,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/signatures.c:740,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/signatures.c:740,1
    - Dst: gnutls_malloc
      Src: /src/xmlsec/src/gnutls/signatures.c:741,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:743,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/signatures.c:746,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/gnutls/signatures.c:748,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/signatures.c:748,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/gnutls/signatures.c:752,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:757,1
    - Dst: xmlSecGnuTLSReadDerLength
      Src: /src/xmlsec/src/gnutls/signatures.c:763,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:765,1
    - Dst: xmlSecGnuTLSReadDerInteger
      Src: /src/xmlsec/src/gnutls/signatures.c:770,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:772,1
    - Dst: xmlSecGnuTLSReadDerInteger
      Src: /src/xmlsec/src/gnutls/signatures.c:777,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:779,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:785,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 3
    argNames:
    - src
    - dst
    - size
    argTypes:
    - gnutls_datum_t*
    - gnutls_datum_t*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 726
    functionDepth: 3
    functionLinenumber: 726
    functionLinenumberEnd: 791
    functionName: xmlSecGnuTLSFromDer
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecGnuTLSReadDerLength
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - return
    - gnutls_malloc
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    - xmlSecGnuTLSReadDerInteger
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSFromDer(const gnutls_datum_t* src, gnutls_datum_t*
      dst, xmlSecSize size)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:798,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/gnutls/signatures.c:821,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 3
    argNames:
    - algo
    - keySize
    - res
    argTypes:
    - gnutls_sign_algorithm_t
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 796
    functionDepth: 1
    functionLinenumber: 796
    functionLinenumberEnd: 836
    functionName: xmlSecGnuTLSSignatureGetDerHalfSize
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInvalidSizeDataError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureGetDerHalfSize(gnutls_sign_algorithm_t algo,
      xmlSecSize keySize, xmlSecSize * res)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:849,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:849,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:850,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:851,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:852,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:853,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:854,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:856,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:857,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:858,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:859,1
    - Dst: xmlSecGnuTLSSignatureCtxPtr::getPubKey
      Src: /src/xmlsec/src/gnutls/signatures.c:862,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:864,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:864,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/signatures.c:869,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:871,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:871,1
    - Dst: xmlSecGnuTLSSignatureGetDerHalfSize
      Src: /src/xmlsec/src/gnutls/signatures.c:874,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:876,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:876,1
    - Dst: gnutls_hash_output
      Src: /src/xmlsec/src/gnutls/signatures.c:881,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/signatures.c:887,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/signatures.c:887,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:887,1
    - Dst: xmlSecGnuTLSToDer
      Src: /src/xmlsec/src/gnutls/signatures.c:893,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:895,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:895,1
    - Dst: gnutls_pubkey_verify_hash2
      Src: /src/xmlsec/src/gnutls/signatures.c:899,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/signatures.c:900,1
    - Dst: gnutls_pubkey_verify_hash2
      Src: /src/xmlsec/src/gnutls/signatures.c:902,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gnutls/signatures.c:912,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:912,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:917,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:917,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 53
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 838
    functionDepth: 2
    functionLinenumber: 838
    functionLinenumberEnd: 923
    functionName: xmlSecGnuTLSSignatureVerify
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecKeyDataGetSize
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetCtx
    - xmlSecGnuTLSToDer
    - gnutls_pubkey_verify_hash2
    - xmlSecGnuTLSSignatureGetDerHalfSize
    - return
    - gnutls_hash_output
    - xmlSecGnuTLSSignatureCheckId
    - xmlSecTransformGetName
    - xmlSecGnuTLSSignatureCtxPtr::getPubKey
    - xmlSecGnuTLSError
    - gnutls_free
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSSignatureVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:933,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:934,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:935,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:936,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:937,1
    - Dst: xmlSecGnuTLSSignatureCtxPtr::getPrivKey
      Src: /src/xmlsec/src/gnutls/signatures.c:940,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:942,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:942,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/gnutls/signatures.c:947,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:949,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:949,1
    - Dst: xmlSecGnuTLSSignatureGetDerHalfSize
      Src: /src/xmlsec/src/gnutls/signatures.c:952,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:954,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:954,1
    - Dst: gnutls_hash_output
      Src: /src/xmlsec/src/gnutls/signatures.c:959,1
    - Dst: gnutls_privkey_sign_hash2
      Src: /src/xmlsec/src/gnutls/signatures.c:963,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:965,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:965,1
    - Dst: xmlSecGnuTLSFromDer
      Src: /src/xmlsec/src/gnutls/signatures.c:973,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:975,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:975,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/signatures.c:976,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/signatures.c:981,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/signatures.c:987,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:989,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:989,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/signatures.c:990,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/signatures.c:993,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 48
    argCount: 3
    argNames:
    - transform
    - ctx
    - out
    argTypes:
    - xmlSecTransformPtr
    - xmlSecGnuTLSSignatureCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 925
    functionDepth: 4
    functionLinenumber: 925
    functionLinenumberEnd: 997
    functionName: xmlSecGnuTLSSignatureSign
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSFromDer
    - xmlSecInternalError
    - gnutls_privkey_sign_hash2
    - xmlSecKeyDataGetSize
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetDerHalfSize
    - gnutls_hash_output
    - xmlSecBufferAppend
    - xmlSecGnuTLSSignatureCtxPtr::getPrivKey
    - xmlSecTransformGetName
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureSign(xmlSecTransformPtr transform, xmlSecGnuTLSSignatureCtxPtr
      ctx, xmlSecBufferPtr out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1007,1
    - Dst: xmlSecGnuTLSSignatureCheckId
      Src: /src/xmlsec/src/gnutls/signatures.c:1007,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1008,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1009,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/signatures.c:1009,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1010,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:1012,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1013,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/signatures.c:1017,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/signatures.c:1018,1
    - Dst: xmlSecGnuTLSSignatureGetCtx
      Src: /src/xmlsec/src/gnutls/signatures.c:1020,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1021,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1022,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1025,1
    - Dst: gnutls_hash
      Src: /src/xmlsec/src/gnutls/signatures.c:1031,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/signatures.c:1031,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/signatures.c:1033,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:1033,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/signatures.c:1037,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/signatures.c:1039,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:1039,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1047,1
    - Dst: xmlSecGnuTLSSignatureSign
      Src: /src/xmlsec/src/gnutls/signatures.c:1049,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/signatures.c:1051,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/signatures.c:1051,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/signatures.c:1060,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/signatures.c:1060,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gnutls/signatures.c:1062,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 999
    functionDepth: 5
    functionLinenumber: 999
    functionLinenumberEnd: 1067
    functionName: xmlSecGnuTLSSignatureExecute
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSSignatureGetCtx
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecGnuTLSSignatureCheckId
    - xmlSecTransformGetName
    - gnutls_hash
    - xmlSecGnuTLSError
    - xmlSecGnuTLSSignatureSign
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSSignatureExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1117
    functionName: xmlSecGnuTLSTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformDsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1162
    functionDepth: 0
    functionLinenumber: 1162
    functionLinenumberEnd: 1165
    functionName: xmlSecGnuTLSTransformDsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformDsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1225
      start: 1222
    functionDepth: 0
    functionLinenumber: 1222
    functionLinenumberEnd: 1225
    functionName: xmlSecGnuTLSTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1270
    functionDepth: 0
    functionLinenumber: 1270
    functionLinenumberEnd: 1273
    functionName: xmlSecGnuTLSTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1317
    functionDepth: 0
    functionLinenumber: 1317
    functionLinenumberEnd: 1320
    functionName: xmlSecGnuTLSTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1364
    functionDepth: 0
    functionLinenumber: 1364
    functionLinenumberEnd: 1367
    functionName: xmlSecGnuTLSTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1416
      start: 1413
    functionDepth: 0
    functionLinenumber: 1413
    functionLinenumberEnd: 1416
    functionName: xmlSecGnuTLSTransformEcdsaSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1457
    functionDepth: 0
    functionLinenumber: 1457
    functionLinenumberEnd: 1460
    functionName: xmlSecGnuTLSTransformEcdsaSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1501
    functionDepth: 0
    functionLinenumber: 1501
    functionLinenumberEnd: 1504
    functionName: xmlSecGnuTLSTransformEcdsaSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformEcdsaSha3_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1554
    functionDepth: 0
    functionLinenumber: 1554
    functionLinenumberEnd: 1557
    functionName: xmlSecGnuTLSTransformGost2001GostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGost2001GostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1607
      start: 1604
    functionDepth: 0
    functionLinenumber: 1604
    functionLinenumberEnd: 1607
    functionName: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1648
    functionDepth: 0
    functionLinenumber: 1648
    functionLinenumberEnd: 1651
    functionName: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1705
      start: 1702
    functionDepth: 0
    functionLinenumber: 1702
    functionLinenumberEnd: 1705
    functionName: xmlSecGnuTLSTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1749
    functionDepth: 0
    functionLinenumber: 1749
    functionLinenumberEnd: 1752
    functionName: xmlSecGnuTLSTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1797
    functionDepth: 0
    functionLinenumber: 1797
    functionLinenumberEnd: 1800
    functionName: xmlSecGnuTLSTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1845
    functionDepth: 0
    functionLinenumber: 1845
    functionLinenumberEnd: 1848
    functionName: xmlSecGnuTLSTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1894
    functionDepth: 0
    functionLinenumber: 1894
    functionLinenumberEnd: 1897
    functionName: xmlSecGnuTLSTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaPssSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1942
    functionDepth: 0
    functionLinenumber: 1942
    functionLinenumberEnd: 1945
    functionName: xmlSecGnuTLSTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaPssSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1993
      start: 1990
    functionDepth: 0
    functionLinenumber: 1990
    functionLinenumberEnd: 1993
    functionName: xmlSecGnuTLSTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaPssSha512GetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:73,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:79,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:85,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:91,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:97,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:100,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:103,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:109,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:116,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:120,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 126
    functionName: xmlSecGnuTLSDigestCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:133,1
    - Dst: xmlSecGnuTLSDigestCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:134,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/digests.c:134,1
    - Dst: xmlSecGnuTLSDigestGetCtx
      Src: /src/xmlsec/src/gnutls/digests.c:136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:137,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/digests.c:140,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:143,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:149,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:155,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:161,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:167,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:170,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:173,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:179,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:185,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:189,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/digests.c:195,1
    - Dst: gnutls_hash_get_len
      Src: /src/xmlsec/src/gnutls/digests.c:200,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/digests.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:205,1
    - Dst: gnutls_hash_init
      Src: /src/xmlsec/src/gnutls/digests.c:208,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/digests.c:210,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 216
    functionName: xmlSecGnuTLSDigestInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached:
    - gnutls_hash_init
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - gnutls_hash_get_len
    - xmlSecGnuTLSDigestGetCtx
    - xmlSecGnuTLSDigestCheckId
    - xmlSecGnuTLSError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/digests.c:222,1
    - Dst: xmlSecGnuTLSDigestCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:222,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/digests.c:223,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/digests.c:223,1
    - Dst: xmlSecGnuTLSDigestGetCtx
      Src: /src/xmlsec/src/gnutls/digests.c:225,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/digests.c:226,1
    - Dst: gnutls_hash_deinit
      Src: /src/xmlsec/src/gnutls/digests.c:229,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/digests.c:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 232
    functionName: xmlSecGnuTLSDigestFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecGnuTLSDigestGetCtx
    - gnutls_hash_deinit
    - xmlSecGnuTLSDigestCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:240,1
    - Dst: xmlSecGnuTLSDigestCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:242,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/digests.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:245,1
    - Dst: xmlSecGnuTLSDigestGetCtx
      Src: /src/xmlsec/src/gnutls/digests.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:249,1
    - Dst: xmlSecInvalidSizeDataError2
      Src: /src/xmlsec/src/gnutls/digests.c:252,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/digests.c:254,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gnutls/digests.c:259,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gnutls/digests.c:260,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/digests.c:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 268
    functionName: xmlSecGnuTLSDigestVerify
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSDigestGetCtx
    - memcmp
    - xmlSecGnuTLSDigestCheckId
    - xmlSecTransformGetName
    - xmlSecInvalidSizeDataError2
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSDigestVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:278,1
    - Dst: xmlSecGnuTLSDigestCheckId
      Src: /src/xmlsec/src/gnutls/digests.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:281,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/digests.c:281,1
    - Dst: xmlSecGnuTLSDigestGetCtx
      Src: /src/xmlsec/src/gnutls/digests.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:285,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/digests.c:289,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/digests.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:293,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:298,1
    - Dst: gnutls_hash
      Src: /src/xmlsec/src/gnutls/digests.c:301,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/digests.c:301,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/digests.c:303,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/digests.c:303,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/digests.c:307,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/digests.c:309,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/digests.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:317,1
    - Dst: gnutls_hash_output
      Src: /src/xmlsec/src/gnutls/digests.c:320,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/digests.c:322,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/digests.c:324,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/digests.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/digests.c:333,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/digests.c:333,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 270
    functionDepth: 3
    functionLinenumber: 270
    functionLinenumberEnd: 337
    functionName: xmlSecGnuTLSDigestExecute
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - gnutls_hash_output
    - xmlSecGnuTLSDigestGetCtx
    - xmlSecBufferGetSize
    - xmlSecBufferAppend
    - xmlSecGnuTLSDigestCheckId
    - xmlSecTransformGetName
    - gnutls_hash
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSDigestExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionName: xmlSecGnuTLSTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionName: xmlSecGnuTLSTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 482
    functionName: xmlSecGnuTLSTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: xmlSecGnuTLSTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 576
    functionDepth: 0
    functionLinenumber: 576
    functionLinenumberEnd: 579
    functionName: xmlSecGnuTLSTransformSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 622
    functionDepth: 0
    functionLinenumber: 622
    functionLinenumberEnd: 625
    functionName: xmlSecGnuTLSTransformSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 668
    functionDepth: 0
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionName: xmlSecGnuTLSTransformSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformSha3_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 716
    functionDepth: 0
    functionLinenumber: 716
    functionLinenumberEnd: 719
    functionName: xmlSecGnuTLSTransformGostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: xmlSecGnuTLSTransformGostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGostR3411_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 814
    functionName: xmlSecGnuTLSTransformGostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformGostR3411_2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: xmlSecGnuTLSKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecGnuTLSKeysStoreGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:90,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:90,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:93,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/gnutls/keysstore.c:95,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/keysstore.c:97,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/gnutls/keysstore.c:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: xmlSecGnuTLSKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecGnuTLSKeysStoreGetCtx
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/keysstore.c:109,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:109,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:111,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/keysstore.c:112,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/gnutls/keysstore.c:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 115
    functionName: xmlSecGnuTLSKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeysStoreGetCtx
    - xmlSecAssert
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:122,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:123,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:125,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:126,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/gnutls/keysstore.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 129
    functionName: xmlSecGnuTLSKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyStoreFindKey
    - xmlSecKeyStoreCheckId
    - xmlSecGnuTLSKeysStoreGetCtx
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGnuTLSKeysStoreFindKey(xmlSecKeyStorePtr store,
      const xmlChar* name,\n                          xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:139,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:141,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:144,1
    - Dst: xmlSecSimpleKeysStoreGetKeys
      Src: /src/xmlsec/src/gnutls/keysstore.c:146,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/keysstore.c:148,1
    - Dst: xmlSecGnuTLSX509FindKeyByValue
      Src: /src/xmlsec/src/gnutls/keysstore.c:152,1
    - Dst: xmlSecKeyDuplicate
      Src: /src/xmlsec/src/gnutls/keysstore.c:159,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/keysstore.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:167,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:169,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gnutls/keysstore.c:171,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - store
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 131
    functionDepth: 5
    functionLinenumber: 131
    functionLinenumberEnd: 174
    functionName: xmlSecGnuTLSKeysStoreFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecGnuTLSX509FindKeyByValue
    - xmlSecGnuTLSKeysStoreGetCtx
    - xmlSecKeyDuplicate
    - xmlSecSimpleKeysStoreGetKeys
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: 'xmlSecKeyPtr xmlSecGnuTLSKeysStoreFindKeyFromX509Data(xmlSecKeyStorePtr
      store, xmlSecKeyX509DataValuePtr x509Data, xmlSecKeyInfoCtxPtr keyInfoCtx

      )'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:189,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:190,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:193,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:194,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/gnutls/keysstore.c:196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 185
    functionDepth: 3
    functionLinenumber: 185
    functionLinenumberEnd: 197
    functionName: xmlSecGnuTLSKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecKeyStoreCheckId
    - xmlSecGnuTLSKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/gnutls/keysstore.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - store
    - uri
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 15
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: xmlSecGnuTLSKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecSimpleKeysStoreLoad_ex
    linkageType: ''
    returnType: int
    signature: "int xmlSecGnuTLSKeysStoreLoad(xmlSecKeyStorePtr store, const char
      *uri,\n                            xmlSecKeysMngrPtr keysMngr XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:230,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:231,1
    - Dst: xmlSecGnuTLSKeysStoreGetCtx
      Src: /src/xmlsec/src/gnutls/keysstore.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/keysstore.c:234,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/gnutls/keysstore.c:235,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/gnutls/keysstore.c:237,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 226
    functionDepth: 12
    functionLinenumber: 226
    functionLinenumberEnd: 238
    functionName: xmlSecGnuTLSKeysStoreSave
    functionSourceFile: /src/xmlsec/src/gnutls/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreSave
    - xmlSecKeyStoreCheckId
    - xmlSecGnuTLSKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeysStoreSave(xmlSecKeyStorePtr store, const char *filename,
      xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/crypto.c:54,1
    - Dst: xmlSecGnuTLSAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/gnutls/crypto.c:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 85
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 314
    functionName: xmlSecCryptoGetFunctions_gnutls
    functionSourceFile: /src/xmlsec/src/gnutls/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_gnutls(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/gnutls/crypto.c:327,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/crypto.c:328,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/gnutls/crypto.c:333,1
    - Dst: xmlSecCryptoGetFunctions_gnutls
      Src: /src/xmlsec/src/gnutls/crypto.c:333,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/crypto.c:334,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 324
    functionDepth: 2
    functionLinenumber: 324
    functionLinenumberEnd: 339
    functionName: xmlSecGnuTLSInit
    functionSourceFile: /src/xmlsec/src/gnutls/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecInternalError
    - xmlSecCheckVersionExact
    - xmlSecCryptoGetFunctions_gnutls
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionName: xmlSecGnuTLSShutdown
    functionSourceFile: /src/xmlsec/src/gnutls/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/crypto.c:366,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/gnutls/crypto.c:369,1
    - Dst: xmlSecKeyDataStoreCreate
      Src: /src/xmlsec/src/gnutls/crypto.c:372,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/crypto.c:374,1
    - Dst: xmlSecKeysMngrAdoptDataStore
      Src: /src/xmlsec/src/gnutls/crypto.c:378,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/crypto.c:380,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/gnutls/crypto.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/crypto.c:387,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 361
    functionDepth: 3
    functionLinenumber: 361
    functionLinenumberEnd: 392
    functionName: xmlSecGnuTLSKeysMngrInit
    functionSourceFile: /src/xmlsec/src/gnutls/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCreate
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeysMngrAdoptDataStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/crypto.c:409,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/crypto.c:410,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gnutls/crypto.c:412,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/crypto.c:414,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/crypto.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/crypto.c:420,1
    - Dst: gnutls_rnd
      Src: /src/xmlsec/src/gnutls/crypto.c:423,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/crypto.c:425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 403
    functionDepth: 2
    functionLinenumber: 403
    functionLinenumberEnd: 430
    functionName: xmlSecGnuTLSGenerateRandom
    functionSourceFile: /src/xmlsec/src/gnutls/crypto.c
    functionUses: 1
    functionsReached:
    - gnutls_rnd
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecGnuTLSError
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 86
    functionName: xmlSecGnuTLSKeyTransportCheckId
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportCheckId(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:92,1
    - Dst: xmlSecGnuTLSKeyTransportCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:93,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:93,1
    - Dst: xmlSecGnuTLSKeyTransportGetCtx
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:96,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:99,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 117
    functionName: xmlSecGnuTLSKeyTransportInitialize
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyTransportGetCtx
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGnuTLSKeyTransportCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:123,1
    - Dst: xmlSecGnuTLSKeyTransportCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:123,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:124,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:124,1
    - Dst: xmlSecGnuTLSKeyTransportGetCtx
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:126,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:127,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:130,1
    - Dst: memset
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 133
    functionName: xmlSecGnuTLSKeyTransportFinalize
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyTransportGetCtx
    - xmlSecTransformCheckSize
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecGnuTLSKeyTransportCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGnuTLSKeyTransportFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:139,1
    - Dst: xmlSecGnuTLSKeyTransportCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:140,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:141,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:142,1
    - Dst: xmlSecGnuTLSKeyTransportGetCtx
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:144,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 157
    functionName: xmlSecGnuTLSKeyTransportSetKeyReq
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGnuTLSKeyTransportGetCtx
    - xmlSecGnuTLSKeyTransportCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:164,1
    - Dst: xmlSecGnuTLSKeyTransportCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:164,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:165,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:167,1
    - Dst: xmlSecGnuTLSKeyTransportGetCtx
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:170,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:173,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:175,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:177,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 182
    functionName: xmlSecGnuTLSKeyTransportSetKey
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyTransportGetCtx
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    - xmlSecGnuTLSKeyTransportCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:196,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:199,1
    - Dst: xmlSecGnuTLSKeyTransportCtxPtr::getPubKey
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:202,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:204,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:209,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:210,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:210,1
    - Dst: gnutls_pubkey_encrypt_data
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:211,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:216,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:221,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:223,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:224,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:227,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - inBuf
    - outBuf
    argTypes:
    - xmlSecGnuTLSKeyTransportCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 231
    functionName: xmlSecGnuTLSKeyTransportEncrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - gnutls_pubkey_encrypt_data
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGnuTLSKeyTransportCtxPtr::getPubKey
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecBufferAppend
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportEncrypt(xmlSecGnuTLSKeyTransportCtxPtr
      ctx, xmlSecBufferPtr inBuf, xmlSecBufferPtr outBuf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:245,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:248,1
    - Dst: xmlSecGnuTLSKeyTransportCtxPtr::getPrivKey
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:251,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:253,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:258,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:259,1
    - Dst: return
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:259,1
    - Dst: gnutls_privkey_decrypt_data
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:260,1
    - Dst: xmlSecGnuTLSError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:265,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:270,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:272,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:273,1
    - Dst: gnutls_free
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:276,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - inBuf
    - outBuf
    argTypes:
    - xmlSecGnuTLSKeyTransportCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 280
    functionName: xmlSecGnuTLSKeyTransportDecrypt
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - gnutls_privkey_decrypt_data
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecGnuTLSKeyTransportCtxPtr::getPrivKey
    - xmlSecBufferAppend
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecGnuTLSError
    - gnutls_free
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportDecrypt(xmlSecGnuTLSKeyTransportCtxPtr
      ctx, xmlSecBufferPtr inBuf, xmlSecBufferPtr outBuf)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:289,1
    - Dst: xmlSecGnuTLSKeyTransportCheckId
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:290,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:291,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:292,1
    - Dst: xmlSecGnuTLSKeyTransportGetCtx
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:294,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:296,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:296,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:302,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:311,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:314,1
    - Dst: xmlSecGnuTLSKeyTransportEncrypt
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:319,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:321,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:321,1
    - Dst: xmlSecGnuTLSKeyTransportDecrypt
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:325,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:327,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:327,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:333,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:335,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:335,1
    - Dst: xmlSecInvalidTransfromStatusError2
      Src: /src/xmlsec/src/gnutls/kt_rsa.c:345,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 282
    functionDepth: 4
    functionLinenumber: 282
    functionLinenumberEnd: 352
    functionName: xmlSecGnuTLSKeyTransportExecute
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGnuTLSKeyTransportGetCtx
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromStatusError2
    - xmlSecInternalError2
    - xmlSecGnuTLSKeyTransportEncrypt
    - xmlSecInvalidTransfromStatusError
    - xmlSecGnuTLSKeyTransportDecrypt
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGnuTLSKeyTransportCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGnuTLSKeyTransportExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: xmlSecGnuTLSTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/gnutls/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGnuTLSTransformRsaPkcs1GetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:104,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:107,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 69
    argCount: 3
    argNames:
    - buffer
    - buflen
    - ti
    argTypes:
    - xmlSecByte**
    - unsigned long*
    - struct tag_info*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 186
    functionName: xmlSecGCryptAsn1ParseTag
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsn1ParseTag (xmlSecByte const **buffer, unsigned long
      *buflen, struct tag_info *ti)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcmp
      Src: /src/xmlsec/src/gcrypt/asn1.c:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - objectid
    argTypes:
    - xmlSecGCryptAsn1ObjectId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: xmlSecGCryptAsn1GetCurveFromObjectId
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 0
    functionsReached:
    - memcmp
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecGCryptAsn1GetCurveFromObjectId(xmlSecGCryptAsn1ObjectId objectid)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:219,1
    - Dst: xmlSecGCryptAsn1GetCurveFromObjectId
      Src: /src/xmlsec/src/gcrypt/asn1.c:223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - objectids
    - objectids_num
    argTypes:
    - xmlSecGCryptAsn1ObjectId*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 226
    functionName: xmlSecGCryptAsn1IsECKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsn1GetCurveFromObjectId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsn1IsECKey(xmlSecGCryptAsn1ObjectId * objectids, xmlSecSize
      objectids_num)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:249,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/gcrypt/asn1.c:253,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/asn1.c:253,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asn1.c:256,1
    - Dst: xmlSecGCryptAsn1ParseTag
      Src: /src/xmlsec/src/gcrypt/asn1.c:259,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asn1.c:261,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asn1.c:269,1
    - Dst: xmlSecGCryptAsn1ParseTag
      Src: /src/xmlsec/src/gcrypt/asn1.c:270,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asn1.c:272,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/asn1.c:280,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/asn1.c:280,1
    - Dst: xmlSecGCryptAsn1ParseIntegerSequence
      Src: /src/xmlsec/src/gcrypt/asn1.c:281,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gcrypt/asn1.c:286,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asn1.c:295,1
    - Dst: xmlSecGCryptAsn1IsECKey
      Src: /src/xmlsec/src/gcrypt/asn1.c:302,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asn1.c:307,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:309,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asn1.c:317,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asn1.c:321,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gcrypt/asn1.c:324,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gcrypt/asn1.c:333,1
    - Dst: XMLSEC_SAFE_CAST_ULONG_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/asn1.c:345,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/asn1.c:345,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 80
    argCount: 9
    argNames:
    - level
    - buffer
    - buflen
    - integers
    - integers_size
    - integers_out_size
    - objectids
    - objectids_size
    - objectids_out_size
    argTypes:
    - int
    - xmlSecByte**
    - xmlSecSize*
    - gcry_mpi_t*
    - xmlSecSize
    - xmlSecSize*
    - xmlSecGCryptAsn1ObjectId*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 347
    functionName: xmlSecGCryptAsn1ParseIntegerSequence
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 1
    functionsReached:
    - gcry_mpi_scan
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecInternalError3
    - xmlSecGCryptAsn1IsECKey
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecInternalError2
    - memcpy
    - return
    - xmlSecGCryptAsn1ParseIntegerSequence
    - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
    - xmlSecGCryptAsn1ParseTag
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptAsn1ParseIntegerSequence(int level, xmlSecByte const
      **buffer, xmlSecSize* buflen,\n    gcry_mpi_t * integers, xmlSecSize integers_size,
      xmlSecSize * integers_out_size,\n    xmlSecGCryptAsn1ObjectId * objectids, xmlSecSize
      objectids_size, xmlSecSize * objectids_out_size)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:362,1
    - Dst: xmlSecGCryptAsn1IsECKey
      Src: /src/xmlsec/src/gcrypt/asn1.c:365,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 4
    argNames:
    - integers
    - integers_num
    - objectids
    - objectids_num
    argTypes:
    - gcry_mpi_t*
    - xmlSecSize
    - xmlSecGCryptAsn1ObjectId*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 359
    functionDepth: 2
    functionLinenumber: 359
    functionLinenumberEnd: 389
    functionName: xmlSecGCryptAsn1GuessKeyType
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsn1IsECKey
    linkageType: ''
    returnType: enum xmlSecGCryptDerKeyType
    signature: enum xmlSecGCryptDerKeyType xmlSecGCryptAsn1GuessKeyType(gcry_mpi_t
      * integers, xmlSecSize integers_num, xmlSecGCryptAsn1ObjectId * objectids, xmlSecSize
      objectids_num)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asn1.c:407,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asn1.c:410,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asn1.c:411,1
    - Dst: xmlSecGCryptAsn1ParseIntegerSequence
      Src: /src/xmlsec/src/gcrypt/asn1.c:412,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:418,1
    - Dst: xmlSecGCryptAsn1GuessKeyType
      Src: /src/xmlsec/src/gcrypt/asn1.c:424,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/gcrypt/asn1.c:427,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:438,1
    - Dst: gcry_mpi_cmp
      Src: /src/xmlsec/src/gcrypt/asn1.c:447,1
    - Dst: gcry_mpi_swap
      Src: /src/xmlsec/src/gcrypt/asn1.c:448,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:453,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:458,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:462,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:467,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:472,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:474,1
    - Dst: xmlSecGCryptKeyDataDsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:478,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:480,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:481,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:492,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:499,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:504,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:509,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:511,1
    - Dst: xmlSecGCryptKeyDataDsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:515,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:517,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:518,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:530,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:538,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:543,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:547,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:552,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:557,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:559,1
    - Dst: xmlSecGCryptKeyDataRsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:563,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:565,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:566,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:577,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:583,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:588,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:593,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:595,1
    - Dst: xmlSecGCryptKeyDataRsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:599,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:601,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:602,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:614,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:619,1
    - Dst: xmlSecGCryptAsn1GetCurveFromObjectId
      Src: /src/xmlsec/src/gcrypt/asn1.c:628,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gcrypt/asn1.c:631,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:636,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:645,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:649,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:657,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:662,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:664,1
    - Dst: xmlSecGCryptKeyDataEcAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:668,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:670,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:671,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:682,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/asn1.c:687,1
    - Dst: xmlSecGCryptAsn1GetCurveFromObjectId
      Src: /src/xmlsec/src/gcrypt/asn1.c:694,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gcrypt/asn1.c:697,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asn1.c:703,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asn1.c:712,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asn1.c:717,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:719,1
    - Dst: xmlSecGCryptKeyDataEcAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asn1.c:723,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asn1.c:725,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asn1.c:726,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/gcrypt/asn1.c:735,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asn1.c:742,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asn1.c:745,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asn1.c:749,1
    CyclomaticComplexity: 94
    EdgeCount: 94
    ICount: 258
    argCount: 3
    argNames:
    - der
    - derlen
    - type
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - enum xmlSecGCryptDerKeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 391
    functionDepth: 3
    functionLinenumber: 391
    functionLinenumberEnd: 754
    functionName: xmlSecGCryptParseDer
    functionSourceFile: /src/xmlsec/src/gcrypt/asn1.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidSizeError
    - gcry_sexp_build
    - xmlSecGCryptAsn1GuessKeyType
    - xmlSecKeyDataDestroy
    - gcry_mpi_release
    - xmlSecGCryptAsn1ParseIntegerSequence
    - xmlSecKeyDataCreate
    - xmlSecInternalError
    - xmlSecGCryptAsn1GetCurveFromObjectId
    - gcry_mpi_cmp
    - xmlSecAssert2
    - gcry_mpi_swap
    - xmlSecInvalidSizeDataError
    - xmlSecGCryptKeyDataEcAdoptKeyPair
    - memset
    - xmlSecGCryptError
    - xmlSecInvalidDataError
    - gcry_sexp_release
    - xmlSecGCryptKeyDataDsaAdoptKeyPair
    - xmlSecUnsupportedEnumValueError
    - xmlSecGCryptKeyDataRsaAdoptKeyPair
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: "xmlSecKeyDataPtr xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize
      derlen,\n                     enum xmlSecGCryptDerKeyType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - errorFunction
    - ','
    - errCode
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 52
    functionName: xmlSecGCryptError
    functionSourceFile: /src/xmlsec/src/gcrypt/globals.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGCryptError(errorFunction, errCode, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errCode
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 78
    functionName: xmlSecGCryptError2
    functionSourceFile: /src/xmlsec/src/gcrypt/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGCryptError2(errorFunction, errCode, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: xmlSecGCryptKWAesCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGCryptKWAesCheckId(transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:110,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:110,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:111,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:111,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:113,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:114,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:115,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:120,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:123,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:127,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:131,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:135,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:135,1
    - Dst: xmlSecGCryptKWAesFinalize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:136,1
    - Dst: gcry_cipher_get_algo_blklen
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:140,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:142,1
    - Dst: xmlSecGCryptKWAesFinalize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:143,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:149,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:149,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 103
    functionDepth: 3
    functionLinenumber: 103
    functionLinenumberEnd: 152
    functionName: xmlSecGCryptKWAesInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptKWAesFinalize
    - gcry_cipher_get_algo_blklen
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - return
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecTransformGetName
    - xmlSecTransformKWAesInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:158,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:158,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:159,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:159,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:161,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:162,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:164,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 154
    functionDepth: 3
    functionLinenumber: 154
    functionLinenumberEnd: 166
    functionName: xmlSecGCryptKWAesFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - xmlSecGCryptKWAesGetCtx
    - xmlSecGCryptKWAesCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:173,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:173,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:174,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:174,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:176,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:177,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:179,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:181,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 168
    functionDepth: 2
    functionLinenumber: 168
    functionLinenumberEnd: 185
    functionName: xmlSecGCryptKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:192,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:193,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:193,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:196,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:197,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:199,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 187
    functionDepth: 4
    functionLinenumber: 187
    functionLinenumberEnd: 203
    functionName: xmlSecGCryptKWAesSetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKey
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:211,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:212,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:212,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:213,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:215,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:216,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:217,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:219,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 205
    functionDepth: 3
    functionLinenumber: 205
    functionLinenumberEnd: 224
    functionName: xmlSecGCryptKWAesExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecTransformGetName
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                        xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: xmlSecGCryptTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 304
    functionName: xmlSecGCryptTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionName: xmlSecGCryptTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformKWAes256GetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:362,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:363,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:366,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:369,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:372,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:374,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:378,1
    - Dst: gcry_cipher_open
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:380,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:382,1
    - Dst: gcry_cipher_setkey
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:386,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:388,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:389,1
    - Dst: gcry_cipher_setiv
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:394,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:396,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:397,1
    - Dst: gcry_cipher_encrypt
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:401,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:403,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:404,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:407,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 412
    functionName: xmlSecGCryptKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_setiv
    - xmlSecGCryptError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - gcry_cipher_open
    - gcry_cipher_encrypt
    - xmlSecBufferGetData
    - gcry_cipher_close
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecBufferGetSize
    - gcry_cipher_setkey
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWAesBlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:424,1
    - Dst: xmlSecGCryptKWAesCheckId
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:425,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:425,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:428,1
    - Dst: xmlSecGCryptKWAesGetCtx
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:434,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:436,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:437,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:439,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:440,1
    - Dst: gcry_cipher_open
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:442,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:444,1
    - Dst: gcry_cipher_setkey
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:448,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:450,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:451,1
    - Dst: gcry_cipher_setiv
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:456,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:458,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:459,1
    - Dst: gcry_cipher_decrypt
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:463,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:465,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:466,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_aes.c:469,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 414
    functionDepth: 2
    functionLinenumber: 414
    functionLinenumberEnd: 474
    functionName: xmlSecGCryptKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_aes.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_decrypt
    - gcry_cipher_setiv
    - xmlSecGCryptError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - gcry_cipher_open
    - xmlSecBufferGetData
    - gcry_cipher_close
    - xmlSecGCryptKWAesCheckId
    - xmlSecGCryptKWAesGetCtx
    - xmlSecBufferGetSize
    - gcry_cipher_setkey
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWAesBlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:85,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:85,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:86,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:86,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:88,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:89,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 94
    functionName: xmlSecGCryptAsymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:101,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:101,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:102,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:103,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:104,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:104,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:107,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:108,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:109,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:112,1
    - Dst: xmlSecGCryptAsymSExpDup
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:115,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:117,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:118,1
    - Dst: xmlSecGCryptAsymSExpDup
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:124,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:126,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:127,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 133
    functionName: xmlSecGCryptAsymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGCryptAsymSExpDup
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:139,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:139,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:140,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:140,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:142,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:143,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:146,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:149,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 152
    functionName: xmlSecGCryptAsymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - gcry_sexp_release
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptAsymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:161,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:162,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:163,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:166,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:170,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:172,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:175,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:178,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:179,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:186,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:193,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:197,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - data
    - key_pair
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 202
    functionName: xmlSecGCryptAsymKeyDataAdoptKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKeyPair
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecKeyDataCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsymKeyDataAdoptKey(xmlSecKeyDataPtr data, gcry_sexp_t
      key_pair)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:208,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:209,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:210,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:219,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:223,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:226,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - data
    - pub_key
    - priv_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 234
    functionName: xmlSecGCryptAsymKeyDataAdoptKeyPair
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - gcry_sexp_release
    - xmlSecKeyDataCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsymKeyDataAdoptKeyPair(xmlSecKeyDataPtr data, gcry_sexp_t
      pub_key, gcry_sexp_t priv_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:240,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:241,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:241,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 247
    functionName: xmlSecGCryptAsymKeyDataGetPublicKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGCryptAsymKeyDataGetCtx
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptAsymKeyDataGetPublicKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:253,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:254,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:254,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 260
    functionName: xmlSecGCryptAsymKeyDataGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGCryptAsymKeyDataGetCtx
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptAsymKeyDataGetPrivateKey(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:272,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:273,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:275,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:278,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:282,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:286,1
    - Dst: gcry_pk_genkey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:290,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:292,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:296,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:298,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:308,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:311,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 3
    argNames:
    - data
    - alg
    - key_size
    argTypes:
    - xmlSecKeyDataPtr
    - char*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 315
    functionName: xmlSecGCryptAsymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_sexp_release
    - gcry_pk_genkey
    - xmlSecKeyDataCheckSize
    - xmlSecGCryptAsymKeyDataAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAsymKeyDataGenerate(xmlSecKeyDataPtr data, const char
      * alg, xmlSecSize key_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:321,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:321,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:322,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:322,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 334
    functionName: xmlSecGCryptAsymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecGCryptAsymKeyDataGetCtx
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGCryptAsymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:340,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:341,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:341,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:344,1
    - Dst: gcry_pk_get_nbits
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:347,1
    - Dst: gcry_pk_get_nbits
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 336
    functionDepth: 1
    functionLinenumber: 336
    functionLinenumberEnd: 352
    functionName: xmlSecGCryptAsymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - gcry_pk_get_nbits
    - xmlSecGCryptAsymKeyDataGetCtx
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGCryptAsymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:366,1
    - Dst: gcry_sexp_sprint
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:368,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:370,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:374,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:376,1
    - Dst: gcry_sexp_sprint
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:380,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:382,1
    - Dst: gcry_sexp_new
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:387,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:389,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:395,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 398
    functionName: xmlSecGCryptAsymSExpDup
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecGCryptError2
    - xmlSecGCryptError
    - xmlFree
    - xmlSecAssert2
    - xmlMalloc
    - gcry_sexp_sprint
    - gcry_sexp_new
    - xmlSecMallocError
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptAsymSExpDup(gcry_sexp_t pKey)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:428,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:430,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:432,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:433,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:437,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:439,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:440,1
    - Dst: gcry_mpi_print
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:446,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:448,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:449,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:455,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:457,1
    - Dst: gcry_mpi_print
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:464,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:465,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:466,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:469,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:470,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:475,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:477,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:487,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:490,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 54
    argCount: 3
    argNames:
    - sexp
    - tok
    - buf
    argTypes:
    - gcry_sexp_t
    - char*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 414
    functionDepth: 2
    functionLinenumber: 414
    functionLinenumberEnd: 494
    functionName: xmlSecGCryptSetSExpTokValue
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - xmlSecAssert2
    - gcry_mpi_print
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - gcry_mpi_release
    - gcry_sexp_nth_mpi
    - xmlSecBufferGetMaxSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptSetSExpTokValue(const gcry_sexp_t sexp, const char
      * tok,\n                            xmlSecBufferPtr buf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 646
    functionDepth: 0
    functionLinenumber: 646
    functionLinenumberEnd: 649
    functionName: xmlSecGCryptKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptKeyDataDsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:662,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:662,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:663,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - dsa_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 660
    functionDepth: 2
    functionLinenumber: 660
    functionLinenumberEnd: 666
    functionName: xmlSecGCryptKeyDataDsaAdoptKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDsaAdoptKey(xmlSecKeyDataPtr data, gcry_sexp_t
      dsa_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:681,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:681,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:682,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - pub_key
    - priv_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 679
    functionDepth: 2
    functionLinenumber: 679
    functionLinenumberEnd: 685
    functionName: xmlSecGCryptKeyDataDsaAdoptKeyPair
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKeyPair
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDsaAdoptKeyPair(xmlSecKeyDataPtr data, gcry_sexp_t
      pub_key, gcry_sexp_t priv_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:697,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:697,1
    - Dst: xmlSecGCryptAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 699
    functionName: xmlSecGCryptKeyDataDsaGetPublicKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataDsaGetPublicKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:711,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:711,1
    - Dst: xmlSecGCryptAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 709
    functionDepth: 2
    functionLinenumber: 709
    functionLinenumberEnd: 713
    functionName: xmlSecGCryptKeyDataDsaGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataDsaGetPrivateKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:717,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:717,1
    - Dst: xmlSecGCryptAsymKeyDataInitialize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 715
    functionDepth: 2
    functionLinenumber: 715
    functionLinenumberEnd: 720
    functionName: xmlSecGCryptKeyDataDsaInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:724,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:724,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:725,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:725,1
    - Dst: xmlSecGCryptAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 722
    functionDepth: 2
    functionLinenumber: 722
    functionLinenumberEnd: 728
    functionName: xmlSecGCryptKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:732,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:732,1
    - Dst: xmlSecGCryptAsymKeyDataFinalize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 730
    functionDepth: 2
    functionLinenumber: 730
    functionLinenumberEnd: 735
    functionName: xmlSecGCryptKeyDataDsaFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptAsymKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataDsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:739,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:739,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:740,1
    - Dst: xmlSecGCryptAsymKeyDataGenerate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:742,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 737
    functionDepth: 3
    functionLinenumber: 737
    functionLinenumberEnd: 743
    functionName: xmlSecGCryptKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGenerate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:747,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:747,1
    - Dst: xmlSecGCryptAsymKeyDataGetType
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 745
    functionDepth: 2
    functionLinenumber: 745
    functionLinenumberEnd: 750
    functionName: xmlSecGCryptKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetType
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGCryptKeyDataDsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:754,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:754,1
    - Dst: xmlSecGCryptAsymKeyDataGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 752
    functionDepth: 2
    functionLinenumber: 752
    functionLinenumberEnd: 757
    functionName: xmlSecGCryptKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGCryptKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:761,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:761,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:762,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:764,1
    - Dst: xmlSecGCryptKeyDataDsaGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 759
    functionDepth: 3
    functionLinenumber: 759
    functionLinenumberEnd: 766
    functionName: xmlSecGCryptKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGCryptKeyDataDsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:770,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:770,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:771,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:773,1
    - Dst: xmlSecGCryptKeyDataDsaGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 768
    functionDepth: 3
    functionLinenumber: 768
    functionLinenumberEnd: 775
    functionName: xmlSecGCryptKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGCryptKeyDataDsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:783,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 786
    functionName: xmlSecGCryptKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,\n                              xmlSecKeyPtr
      key,\n                              xmlNodePtr node,\n                              xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:791,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:792,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 788
    functionDepth: 3
    functionLinenumber: 788
    functionLinenumberEnd: 795
    functionName: xmlSecGCryptKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:811,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:812,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:815,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:816,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:816,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:819,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:820,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:825,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:826,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:826,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:829,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:830,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:835,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:836,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:836,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:839,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:840,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:845,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:846,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:847,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:847,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:850,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:851,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:857,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:858,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:858,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:861,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:862,1
    - Dst: gcry_mpi_cmp
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:868,1
    - Dst: gcry_mpi_swap
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:869,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:873,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:877,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:878,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:882,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:886,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:887,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:893,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:895,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:896,1
    - Dst: xmlSecGCryptKeyDataDsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:900,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:902,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:903,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:916,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:920,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:924,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:928,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:932,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:936,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:940,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:944,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 95
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 797
    functionDepth: 3
    functionLinenumber: 797
    functionLinenumberEnd: 947
    functionName: xmlSecGCryptKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - gcry_mpi_scan
    - xmlSecInternalError
    - xmlSecGCryptError
    - gcry_mpi_cmp
    - xmlSecAssert2
    - gcry_mpi_swap
    - gcry_sexp_build
    - gcry_sexp_release
    - xmlSecBufferGetData
    - xmlSecGCryptKeyDataDsaAdoptKeyPair
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - gcry_mpi_release
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGCryptKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:958,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:959,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:960,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:960,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:961,1
    - Dst: xmlSecGCryptKeyDataDsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:964,1
    - Dst: xmlSecGCryptKeyDataDsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:966,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:968,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:969,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:976,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:978,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:979,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:984,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:986,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:987,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:992,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:994,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:995,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1000,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1002,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1003,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1009,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1011,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1012,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1018,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1020,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1021,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1030,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 949
    functionDepth: 3
    functionLinenumber: 949
    functionLinenumberEnd: 1033
    functionName: xmlSecGCryptKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptSetSExpTokValue
    - xmlSecGCryptKeyDataDsaGetPublicKey
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecGCryptKeyDataDsaGetPrivateKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                            xmlSecKeyValueDsaPtr dsaValue, int writePrivateKey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1158
    functionDepth: 0
    functionLinenumber: 1158
    functionLinenumberEnd: 1161
    functionName: xmlSecGCryptKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptKeyDataRsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1174,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1175,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - rsa_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1172
    functionDepth: 2
    functionLinenumber: 1172
    functionLinenumberEnd: 1178
    functionName: xmlSecGCryptKeyDataRsaAdoptKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataRsaAdoptKey(xmlSecKeyDataPtr data, gcry_sexp_t
      rsa_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1193,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1194,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - pub_key
    - priv_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1191
    functionDepth: 2
    functionLinenumber: 1191
    functionLinenumberEnd: 1197
    functionName: xmlSecGCryptKeyDataRsaAdoptKeyPair
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKeyPair
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataRsaAdoptKeyPair(xmlSecKeyDataPtr data, gcry_sexp_t
      pub_key, gcry_sexp_t priv_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1209,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1209,1
    - Dst: xmlSecGCryptAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1207
    functionDepth: 2
    functionLinenumber: 1207
    functionLinenumberEnd: 1211
    functionName: xmlSecGCryptKeyDataRsaGetPublicKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataRsaGetPublicKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1223,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1223,1
    - Dst: xmlSecGCryptAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1225
      start: 1221
    functionDepth: 2
    functionLinenumber: 1221
    functionLinenumberEnd: 1225
    functionName: xmlSecGCryptKeyDataRsaGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataRsaGetPrivateKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1229,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1229,1
    - Dst: xmlSecGCryptAsymKeyDataInitialize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1227
    functionDepth: 2
    functionLinenumber: 1227
    functionLinenumberEnd: 1232
    functionName: xmlSecGCryptKeyDataRsaInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataRsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1236,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1237,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1237,1
    - Dst: xmlSecGCryptAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1234
    functionDepth: 2
    functionLinenumber: 1234
    functionLinenumberEnd: 1240
    functionName: xmlSecGCryptKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1244,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1244,1
    - Dst: xmlSecGCryptAsymKeyDataFinalize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1247
      start: 1242
    functionDepth: 2
    functionLinenumber: 1242
    functionLinenumberEnd: 1247
    functionName: xmlSecGCryptKeyDataRsaFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptAsymKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataRsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1251,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1252,1
    - Dst: xmlSecGCryptAsymKeyDataGenerate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1255
      start: 1249
    functionDepth: 3
    functionLinenumber: 1249
    functionLinenumberEnd: 1255
    functionName: xmlSecGCryptKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGenerate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1259,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1259,1
    - Dst: xmlSecGCryptAsymKeyDataGetType
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1257
    functionDepth: 2
    functionLinenumber: 1257
    functionLinenumberEnd: 1262
    functionName: xmlSecGCryptKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetType
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGCryptKeyDataRsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1266,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1266,1
    - Dst: xmlSecGCryptAsymKeyDataGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1264
    functionDepth: 2
    functionLinenumber: 1264
    functionLinenumberEnd: 1269
    functionName: xmlSecGCryptKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGCryptKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1273,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1273,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1274,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1276,1
    - Dst: xmlSecGCryptKeyDataRsaGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1271
    functionDepth: 3
    functionLinenumber: 1271
    functionLinenumberEnd: 1278
    functionName: xmlSecGCryptKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGCryptKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1282,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1282,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1283,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1285,1
    - Dst: xmlSecGCryptKeyDataRsaGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1280
    functionDepth: 3
    functionLinenumber: 1280
    functionLinenumberEnd: 1287
    functionName: xmlSecGCryptKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecGCryptKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1292,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1289
    functionDepth: 3
    functionLinenumber: 1289
    functionLinenumberEnd: 1294
    functionName: xmlSecGCryptKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                              xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1299,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1300,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1296
    functionDepth: 3
    functionLinenumber: 1296
    functionLinenumberEnd: 1303
    functionName: xmlSecGCryptKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                            xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1318,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1321,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1322,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1323,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1326,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1327,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1332,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1333,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1334,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1337,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1338,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1343,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1344,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1345,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1346,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1349,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1350,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1356,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1360,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1361,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1365,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1369,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1370,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1376,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1378,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1379,1
    - Dst: xmlSecGCryptKeyDataRsaAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1383,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1385,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1386,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1399,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1403,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1407,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1411,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1415,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1419,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 74
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1305
    functionDepth: 3
    functionLinenumber: 1305
    functionLinenumberEnd: 1422
    functionName: xmlSecGCryptKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - gcry_mpi_scan
    - xmlSecInternalError
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - gcry_mpi_release
    - xmlSecKeyDataKlassGetName
    - xmlSecGCryptKeyDataRsaAdoptKeyPair
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGCryptKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1435,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1435,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1436,1
    - Dst: xmlSecGCryptKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1439,1
    - Dst: xmlSecGCryptKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1441,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1443,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1444,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1451,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1453,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1454,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1459,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1461,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1462,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1467,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1469,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1470,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1476,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1478,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1479,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1489,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1424
    functionDepth: 3
    functionLinenumber: 1424
    functionLinenumberEnd: 1493
    functionName: xmlSecGCryptKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptKeyDataRsaGetPublicKey
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecGCryptKeyDataRsaGetPrivateKey
    - xmlSecAssert2
    - xmlSecGCryptSetSExpTokValue
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataRsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                            xmlSecKeyValueRsaPtr rsaValue, int writePrivateKey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1577
    functionDepth: 0
    functionLinenumber: 1577
    functionLinenumberEnd: 1580
    functionName: xmlSecGCryptkeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptkeyDataEcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1593,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1593,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1594,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - ec_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1591
    functionDepth: 2
    functionLinenumber: 1591
    functionLinenumberEnd: 1596
    functionName: xmlSecGCryptKeyDataEcAdoptKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataEcAdoptKey(xmlSecKeyDataPtr data, gcry_sexp_t
      ec_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1610,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1610,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1611,1
    - Dst: xmlSecGCryptAsymKeyDataAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - data
    - pub_key
    - priv_key
    argTypes:
    - xmlSecKeyDataPtr
    - gcry_sexp_t
    - gcry_sexp_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1608
    functionDepth: 2
    functionLinenumber: 1608
    functionLinenumberEnd: 1613
    functionName: xmlSecGCryptKeyDataEcAdoptKeyPair
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataAdoptKeyPair
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataEcAdoptKeyPair(xmlSecKeyDataPtr data, gcry_sexp_t
      pub_key, gcry_sexp_t priv_key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1625,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1625,1
    - Dst: xmlSecGCryptAsymKeyDataGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1627
      start: 1623
    functionDepth: 2
    functionLinenumber: 1623
    functionLinenumberEnd: 1627
    functionName: xmlSecGCryptKeyDataEcGetPublicKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataGetPublicKey
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataEcGetPublicKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1639,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1639,1
    - Dst: xmlSecGCryptAsymKeyDataGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1637
    functionDepth: 2
    functionLinenumber: 1637
    functionLinenumberEnd: 1641
    functionName: xmlSecGCryptKeyDataEcGetPrivateKey
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetPrivateKey
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: gcry_sexp_t
    signature: gcry_sexp_t xmlSecGCryptKeyDataEcGetPrivateKey(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1645,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1645,1
    - Dst: xmlSecGCryptAsymKeyDataInitialize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1647,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1643
    functionDepth: 2
    functionLinenumber: 1643
    functionLinenumberEnd: 1648
    functionName: xmlSecGCryptKeyDataEcInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecGCryptAsymKeyDataInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataEcInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1652,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1652,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1653,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1653,1
    - Dst: xmlSecGCryptAsymKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1656
      start: 1650
    functionDepth: 2
    functionLinenumber: 1650
    functionLinenumberEnd: 1656
    functionName: xmlSecGCryptKeyDataEcDuplicate
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataEcDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1660,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1660,1
    - Dst: xmlSecGCryptAsymKeyDataFinalize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1662,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1663
      start: 1658
    functionDepth: 2
    functionLinenumber: 1658
    functionLinenumberEnd: 1663
    functionName: xmlSecGCryptKeyDataEcFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptAsymKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataEcFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1667,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1667,1
    - Dst: xmlSecGCryptAsymKeyDataGetType
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1665
    functionDepth: 2
    functionLinenumber: 1665
    functionLinenumberEnd: 1670
    functionName: xmlSecGCryptKeyDataEcGetType
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptAsymKeyDataGetType
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGCryptKeyDataEcGetType(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1679,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1679,1
    - Dst: xmlSecGCryptAsymKeyDataGetCtx
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1681,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1682,1
    - Dst: gcry_pk_get_curve
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1692,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1693,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1672
    functionDepth: 1
    functionLinenumber: 1672
    functionLinenumberEnd: 1695
    functionName: xmlSecGCryptKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAsymKeyDataGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - gcry_pk_get_curve
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGCryptKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1699,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1699,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1700,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1702,1
    - Dst: xmlSecGCryptKeyDataEcGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1697
    functionDepth: 2
    functionLinenumber: 1697
    functionLinenumberEnd: 1704
    functionName: xmlSecGCryptKeyDataEcDebugDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptKeyDataEcGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataEcDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1708,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1708,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1709,1
    - Dst: fprintf
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1711,1
    - Dst: xmlSecGCryptKeyDataEcGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1706
    functionDepth: 2
    functionLinenumber: 1706
    functionLinenumberEnd: 1713
    functionName: xmlSecGCryptKeyDataEcDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptKeyDataEcGetSize
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKeyDataEcDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1721,1
    - Dst: xmlSecKeyDataEcXmlRead
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1724
      start: 1715
    functionDepth: 3
    functionLinenumber: 1715
    functionLinenumberEnd: 1724
    functionName: xmlSecGCryptKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataEcXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataEcXmlRead(xmlSecKeyDataId id,\n                              xmlSecKeyPtr
      key,\n                              xmlNodePtr node,\n                              xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1729,1
    - Dst: xmlSecKeyDataEcXmlWrite
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1730,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1731,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1726
    functionDepth: 3
    functionLinenumber: 1726
    functionLinenumberEnd: 1733
    functionName: xmlSecGCryptKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataEcXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1753,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1755,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - curveOid
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1760
      start: 1749
    functionDepth: 1
    functionLinenumber: 1749
    functionLinenumberEnd: 1760
    functionName: xmlSecGCryptKeyDataEcCurveGetNameFromOid
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecGCryptKeyDataEcCurveGetNameFromOid(const xmlChar * curveOid)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1766,1
    - Dst: strcmp
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1768,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - curveName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1762
    functionDepth: 1
    functionLinenumber: 1762
    functionLinenumberEnd: 1773
    functionName: xmlSecGCryptKeyDataEcCurveGetOidFromName
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - strcmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecGCryptKeyDataEcCurveGetOidFromName(const char * curveName)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1785,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1786,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1787,1
    - Dst: xmlSecGCryptKeyDataEcCurveGetNameFromOid
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1790,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1792,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1792,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1793,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1798,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1799,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1799,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1802,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1802,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1807,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1816,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1816,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1821,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1823,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1823,1
    - Dst: xmlSecGCryptKeyDataEcAdoptKeyPair
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1827,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1829,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1829,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1841,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1844,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1847,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - id
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1850
      start: 1775
    functionDepth: 3
    functionLinenumber: 1775
    functionLinenumberEnd: 1850
    functionName: xmlSecGCryptKeyDataEcRead
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - gcry_mpi_scan
    - xmlSecInternalError
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - xmlSecGCryptKeyDataEcCurveGetNameFromOid
    - xmlSecKeyDataKlassGetName
    - gcry_mpi_release
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    - xmlSecGCryptKeyDataEcAdoptKeyPair
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecGCryptKeyDataEcRead(xmlSecKeyDataId id, xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1859,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1860,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1862,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1864,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1865,1
    - Dst: gcry_sexp_nth_string
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1869,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1871,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1872,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - sexp
    - tok
    argTypes:
    - gcry_sexp_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1878
      start: 1853
    functionDepth: 1
    functionLinenumber: 1853
    functionLinenumberEnd: 1878
    functionName: xmlSecGCryptGetStringFromSExp
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - gcry_sexp_nth_string
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - gcry_sexp_find_token
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecGCryptGetStringFromSExp(const gcry_sexp_t sexp, const char * tok)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1890,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1891,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1892,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1892,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1893,1
    - Dst: xmlSecGCryptKeyDataEcGetPublicKey
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1896,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1898,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1898,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1902,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1904,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1905,1
    - Dst: xmlSecGCryptGetStringFromSExp
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1910,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1912,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1912,1
    - Dst: xmlSecGCryptKeyDataEcCurveGetOidFromName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1915,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1917,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1917,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1918,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1921,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1923,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1923,1
    - Dst: xmlSecGCryptSetSExpTokValue
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1928,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1930,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1930,1
    - Dst: gcry_free
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1939,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/asymkeys.c:1942,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1946
      start: 1881
    functionDepth: 3
    functionLinenumber: 1881
    functionLinenumberEnd: 1946
    functionName: xmlSecGCryptKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/asymkeys.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecStrdupError
    - xmlSecAssert2
    - xmlSecGCryptSetSExpTokValue
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecGCryptKeyDataEcGetPublicKey
    - xmlSecGCryptGetStringFromSExp
    - gcry_free
    - xmlSecGCryptKeyDataEcCurveGetOidFromName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueEcPtr ecValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: xmlSecGCryptTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformKWDes3GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:162,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:163,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:163,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:166,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kw_des.c:167,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:169,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:172,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_des.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 176
    functionName: xmlSecGCryptKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_des.c:182,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:182,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_des.c:183,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:183,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:185,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kw_des.c:186,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:188,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kw_des.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 190
    functionName: xmlSecGCryptKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:197,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:197,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:198,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:198,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:201,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/gcrypt/kw_des.c:203,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:205,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_des.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 209
    functionName: xmlSecGCryptKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:216,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:217,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:217,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:220,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/gcrypt/kw_des.c:222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:224,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_des.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 211
    functionDepth: 4
    functionLinenumber: 211
    functionLinenumberEnd: 228
    functionName: xmlSecGCryptKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecTransformKWDes3SetKey
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:236,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:237,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:237,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kw_des.c:238,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:241,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/gcrypt/kw_des.c:243,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:245,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kw_des.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: xmlSecGCryptKWDes3Execute
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last,\n
      \                         xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:267,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:268,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:273,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:276,1
    - Dst: gcry_md_get_algo_dlen
      Src: /src/xmlsec/src/gcrypt/kw_des.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:279,1
    - Dst: gcry_md_open
      Src: /src/xmlsec/src/gcrypt/kw_des.c:281,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:283,1
    - Dst: gcry_md_write
      Src: /src/xmlsec/src/gcrypt/kw_des.c:287,1
    - Dst: gcry_md_final
      Src: /src/xmlsec/src/gcrypt/kw_des.c:289,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:291,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:292,1
    - Dst: gcry_md_read
      Src: /src/xmlsec/src/gcrypt/kw_des.c:296,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:298,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:299,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gcrypt/kw_des.c:304,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:305,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 34
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 309
    functionName: xmlSecGCryptKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - gcry_md_write
    - xmlSecGCryptError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - gcry_md_close
    - xmlSecGCryptKWDes3GetCtx
    - gcry_md_get_algo_dlen
    - gcry_md_open
    - gcry_md_read
    - memcpy
    - gcry_md_final
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3Sha1(xmlSecTransformPtr transform,\n                       const
      xmlSecByte * in, xmlSecSize inSize,\n                       xmlSecByte * out,
      xmlSecSize outSize,\n                       xmlSecSize * outWritten)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kw_des.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:316,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:318,1
    - Dst: gcry_randomize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 323
    functionName: xmlSecGCryptKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - UNREFERENCED_PARAMETER
    - gcry_randomize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3GenerateRandom(xmlSecTransformPtr transform
      XMLSEC_ATTRIBUTE_UNUSED,\n                                 xmlSecByte * out,
      xmlSecSize outSize,\n                                 xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:334,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:335,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:340,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:342,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:344,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:345,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:346,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_des.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:347,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:347,1
    - Dst: xmlSecGCryptKWDes3Encrypt
      Src: /src/xmlsec/src/gcrypt/kw_des.c:349,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_des.c:349,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 360
    functionName: xmlSecGCryptKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGCryptKWDes3Encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3BlockEncrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:371,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kw_des.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:372,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:373,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:379,1
    - Dst: xmlSecGCryptKWDes3GetCtx
      Src: /src/xmlsec/src/gcrypt/kw_des.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:383,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_des.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:384,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kw_des.c:384,1
    - Dst: xmlSecGCryptKWDes3Encrypt
      Src: /src/xmlsec/src/gcrypt/kw_des.c:386,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kw_des.c:386,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 397
    functionName: xmlSecGCryptKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptKWDes3GetCtx
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecGCryptKWDes3Encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3BlockDecrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gcry_cipher_get_algo_keylen
      Src: /src/xmlsec/src/gcrypt/kw_des.c:406,1
    - Dst: gcry_cipher_get_algo_blklen
      Src: /src/xmlsec/src/gcrypt/kw_des.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:413,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:417,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kw_des.c:419,1
    - Dst: gcry_cipher_open
      Src: /src/xmlsec/src/gcrypt/kw_des.c:421,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:423,1
    - Dst: gcry_cipher_setkey
      Src: /src/xmlsec/src/gcrypt/kw_des.c:427,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:429,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:430,1
    - Dst: gcry_cipher_setiv
      Src: /src/xmlsec/src/gcrypt/kw_des.c:434,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:436,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:437,1
    - Dst: gcry_cipher_encrypt
      Src: /src/xmlsec/src/gcrypt/kw_des.c:442,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:444,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:445,1
    - Dst: gcry_cipher_decrypt
      Src: /src/xmlsec/src/gcrypt/kw_des.c:449,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kw_des.c:451,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:452,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/kw_des.c:458,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 45
    argCount: 10
    argNames:
    - key
    - keySize
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - enc
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 463
    functionName: xmlSecGCryptKWDes3Encrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kw_des.c
    functionUses: 2
    functionsReached:
    - gcry_cipher_decrypt
    - gcry_cipher_setiv
    - xmlSecGCryptError
    - gcry_cipher_get_algo_blklen
    - xmlSecAssert2
    - gcry_cipher_open
    - gcry_cipher_encrypt
    - gcry_cipher_close
    - gcry_cipher_setkey
    - gcry_cipher_get_algo_keylen
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,\n
      \                          const xmlSecByte *iv, xmlSecSize ivSize,\n                           const
      xmlSecByte *in, xmlSecSize inSize,\n                           xmlSecByte *out,
      xmlSecSize outSize,\n                           xmlSecSize * outWritten,\n                           int
      enc)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gcry_check_version
      Src: /src/xmlsec/src/gcrypt/app.c:78,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/app.c:79,1
    - Dst: gcry_control
      Src: /src/xmlsec/src/gcrypt/app.c:87,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/app.c:89,1
    - Dst: gcry_control
      Src: /src/xmlsec/src/gcrypt/app.c:99,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/app.c:101,1
    - Dst: gcry_control
      Src: /src/xmlsec/src/gcrypt/app.c:108,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/app.c:110,1
    - Dst: gcry_control
      Src: /src/xmlsec/src/gcrypt/app.c:117,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/app.c:119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 125
    functionName: xmlSecGCryptAppInit
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - gcry_control
    - xmlSecGCryptError
    - gcry_check_version
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppInit(const char* config XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gcry_control
      Src: /src/xmlsec/src/gcrypt/app.c:140,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/app.c:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 148
    functionName: xmlSecGCryptAppShutdown
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - gcry_control
    - xmlSecGCryptError
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:172,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/app.c:173,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gcrypt/app.c:175,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:177,1
    - Dst: xmlSecBufferReadFile
      Src: /src/xmlsec/src/gcrypt/app.c:181,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/app.c:182,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/app.c:182,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/app.c:183,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/app.c:184,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gcrypt/app.c:185,1
    - Dst: xmlSecGCryptAppKeyLoadMemory
      Src: /src/xmlsec/src/gcrypt/app.c:189,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/app.c:189,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/app.c:190,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/app.c:193,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/app.c:194,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gcrypt/app.c:195,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gcrypt/app.c:200,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 6
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 163
    functionDepth: 4
    functionLinenumber: 163
    functionLinenumberEnd: 202
    functionName: xmlSecGCryptAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecGCryptAppKeyLoadMemory
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecBufferInitialize
    - xmlSecBufferReadFile
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGCryptAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataFormat format,\n    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:228,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:230,1
    - Dst: xmlSecGCryptParseDer
      Src: /src/xmlsec/src/gcrypt/app.c:234,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:236,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:241,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:245,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gcrypt/app.c:249,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gcrypt/app.c:250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:255,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/gcrypt/app.c:256,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:258,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/app.c:259,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/gcrypt/app.c:263,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:265,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/gcrypt/app.c:266,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/gcrypt/app.c:267,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/app.c:268,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 217
    functionDepth: 4
    functionLinenumber: 217
    functionLinenumberEnd: 275
    functionName: xmlSecGCryptAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecKeyDataDestroy
    - xmlSecGCryptParseDer
    - xmlSecKeyCreate
    - xmlSecKeyDataGetName
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGCryptAppKeyLoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n                        xmlSecKeyDataFormat format,\n
      \                       const char *pwd XMLSEC_ATTRIBUTE_UNUSED,\n                        void*
      pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n                        void* pwdCallbackCtx
      XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:292,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:293,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:294,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 298
    functionName: xmlSecGCryptAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,\n
      \                         xmlSecKeyDataFormat format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:319,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:320,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 324
    functionName: xmlSecGCryptAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptAppKeyCertLoadMemory(xmlSecKeyPtr key,\n                                 const
      xmlSecByte* data,\n                                 xmlSecSize dataSize,\n                                 xmlSecKeyDataFormat
      format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:346,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 350
    functionName: xmlSecGCryptAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGCryptAppPkcs12Load(const char *filename,\n                          const
      char *pwd XMLSEC_ATTRIBUTE_UNUSED,\n                          void* pwdCallback
      XMLSEC_ATTRIBUTE_UNUSED,\n                          void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:373,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:374,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 5
    argNames:
    - data
    - dataSize
    - XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 378
    functionName: xmlSecGCryptAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecGCryptAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n                           const char *pwd XMLSEC_ATTRIBUTE_UNUSED,\n
      \                          void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n                           void*
      pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:402,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 406
    functionName: xmlSecGCryptAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,\n                                const
      char *filename,\n                                xmlSecKeyDataFormat format,\n
      \                               xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:422,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:424,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 420
    functionDepth: 1
    functionLinenumber: 420
    functionLinenumberEnd: 428
    functionName: xmlSecGCryptAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:454,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 458
    functionName: xmlSecGCryptAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,\n
      \                                     const xmlSecByte* data,\n                                      xmlSecSize
      dataSize,\n                                      xmlSecKeyDataFormat format,\n
      \                                     xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:475,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gcrypt/app.c:478,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/gcrypt/app.c:481,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:483,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/gcrypt/app.c:487,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:489,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/gcrypt/app.c:490,1
    - Dst: xmlSecGCryptKeysMngrInit
      Src: /src/xmlsec/src/gcrypt/app.c:495,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:497,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 471
    functionDepth: 2
    functionLinenumber: 471
    functionLinenumberEnd: 503
    functionName: xmlSecGCryptAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGCryptKeysMngrInit
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:520,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:521,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gcrypt/app.c:523,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:525,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/gcrypt/app.c:529,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 515
    functionDepth: 3
    functionLinenumber: 515
    functionLinenumberEnd: 536
    functionName: xmlSecGCryptAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecInternalError
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:557,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:559,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/gcrypt/app.c:561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 554
    functionDepth: 1
    functionLinenumber: 554
    functionLinenumberEnd: 563
    functionName: xmlSecGCryptAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:580,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:581,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gcrypt/app.c:583,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:585,1
    - Dst: xmlSecSimpleKeysStoreLoad
      Src: /src/xmlsec/src/gcrypt/app.c:589,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/app.c:591,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/app.c:592,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 575
    functionDepth: 2
    functionLinenumber: 575
    functionLinenumberEnd: 597
    functionName: xmlSecGCryptAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecSimpleKeysStoreLoad
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:614,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/app.c:615,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/gcrypt/app.c:617,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/app.c:619,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/gcrypt/app.c:623,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/app.c:625,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/app.c:626,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 609
    functionDepth: 12
    functionLinenumber: 609
    functionLinenumberEnd: 631
    functionName: xmlSecGCryptAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecSimpleKeysStoreSave
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 644
    functionName: xmlSecGCryptAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/gcrypt/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecGCryptAppGetDefaultPwdCallback(void)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:76,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:77,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:78,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:79,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:80,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:81,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:82,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:83,1
    - Dst: gcry_cipher_get_algo_blklen
      Src: /src/xmlsec/src/gcrypt/ciphers.c:86,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:87,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:88,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:88,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:95,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:96,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:98,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:102,1
    - Dst: gcry_randomize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:105,1
    - Dst: gcry_cipher_setiv
      Src: /src/xmlsec/src/gcrypt/ciphers.c:106,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:108,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:114,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:117,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:117,1
    - Dst: gcry_cipher_setiv
      Src: /src/xmlsec/src/gcrypt/ciphers.c:120,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:120,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:122,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/ciphers.c:127,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:129,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 44
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecGCryptBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 137
    functionName: xmlSecGCryptBlockCipherCtxInit
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_setiv
    - gcry_randomize
    - xmlSecGCryptError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - gcry_cipher_get_algo_blklen
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptBlockCipherCtxInit(xmlSecGCryptBlockCipherCtxPtr ctx,\n
      \                               xmlSecBufferPtr in, xmlSecBufferPtr out,\n                                int
      encrypt,\n                                const xmlChar* cipherName,\n                                xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:155,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:158,1
    - Dst: gcry_cipher_get_algo_blklen
      Src: /src/xmlsec/src/gcrypt/ciphers.c:160,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:161,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:162,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:162,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:164,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:165,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:181,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:183,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:187,1
    - Dst: gcry_cipher_encrypt
      Src: /src/xmlsec/src/gcrypt/ciphers.c:190,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:191,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:193,1
    - Dst: gcry_cipher_decrypt
      Src: /src/xmlsec/src/gcrypt/ciphers.c:197,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:198,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:200,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:206,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:208,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/ciphers.c:214,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:216,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 52
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecGCryptBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 139
    functionDepth: 2
    functionLinenumber: 139
    functionLinenumberEnd: 221
    functionName: xmlSecGCryptBlockCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_decrypt
    - xmlSecBufferRemoveHead
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_cipher_get_algo_blklen
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - gcry_cipher_encrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptBlockCipherCtxUpdate(xmlSecGCryptBlockCipherCtxPtr
      ctx,\n                                  xmlSecBufferPtr in, xmlSecBufferPtr
      out,\n                                  int encrypt,\n                                  const
      xmlChar* cipherName,\n                                  xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:239,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:243,1
    - Dst: gcry_cipher_get_algo_blklen
      Src: /src/xmlsec/src/gcrypt/ciphers.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:246,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:247,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:247,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:249,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:253,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:256,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:258,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:262,1
    - Dst: gcry_randomize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:266,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:268,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:268,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:272,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:278,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:280,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:284,1
    - Dst: gcry_cipher_encrypt
      Src: /src/xmlsec/src/gcrypt/ciphers.c:287,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:288,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:290,1
    - Dst: gcry_cipher_decrypt
      Src: /src/xmlsec/src/gcrypt/ciphers.c:294,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:295,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:297,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:308,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:318,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:320,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/ciphers.c:326,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:328,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 72
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecGCryptBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 335
    functionName: xmlSecGCryptBlockCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - gcry_cipher_decrypt
    - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    - xmlSecInvalidSizeLessThanError
    - gcry_randomize
    - xmlSecGCryptError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - gcry_cipher_get_algo_blklen
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - gcry_cipher_encrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr
      ctx,\n                                 xmlSecBufferPtr in,\n                                 xmlSecBufferPtr
      out,\n                                 int encrypt,\n                                 const
      xmlChar* cipherName,\n                                 xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:364,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:370,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:371,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:372,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 379
    functionName: xmlSecGCryptBlockCipherCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptBlockCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:386,1
    - Dst: xmlSecGCryptBlockCipherCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:387,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:387,1
    - Dst: xmlSecGCryptBlockCipherGetCtx
      Src: /src/xmlsec/src/gcrypt/ciphers.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:390,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/ciphers.c:392,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:419,1
    - Dst: gcry_cipher_open
      Src: /src/xmlsec/src/gcrypt/ciphers.c:423,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:425,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:426,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 381
    functionDepth: 2
    functionLinenumber: 381
    functionLinenumberEnd: 430
    functionName: xmlSecGCryptBlockCipherInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_cipher_open
    - xmlSecTransformGetName
    - xmlSecGCryptBlockCipherCheckId
    - xmlSecGCryptBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptBlockCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/ciphers.c:436,1
    - Dst: xmlSecGCryptBlockCipherCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:436,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/ciphers.c:437,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:437,1
    - Dst: xmlSecGCryptBlockCipherGetCtx
      Src: /src/xmlsec/src/gcrypt/ciphers.c:439,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/ciphers.c:440,1
    - Dst: gcry_cipher_close
      Src: /src/xmlsec/src/gcrypt/ciphers.c:443,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/ciphers.c:446,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 447
    functionName: xmlSecGCryptBlockCipherFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - gcry_cipher_close
    - xmlSecAssert
    - xmlSecGCryptBlockCipherCheckId
    - xmlSecGCryptBlockCipherGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptBlockCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:454,1
    - Dst: xmlSecGCryptBlockCipherCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:455,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:456,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:457,1
    - Dst: xmlSecGCryptBlockCipherGetCtx
      Src: /src/xmlsec/src/gcrypt/ciphers.c:459,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:460,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:461,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:462,1
    - Dst: gcry_cipher_get_algo_keylen
      Src: /src/xmlsec/src/gcrypt/ciphers.c:472,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:473,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:475,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:475,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:475,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 477
    functionName: xmlSecGCryptBlockCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - return
    - gcry_cipher_get_algo_keylen
    - xmlSecTransformGetName
    - xmlSecGCryptBlockCipherCheckId
    - xmlSecGCryptBlockCipherGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptBlockCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:487,1
    - Dst: xmlSecGCryptBlockCipherCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:487,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:488,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:489,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:490,1
    - Dst: xmlSecGCryptBlockCipherGetCtx
      Src: /src/xmlsec/src/gcrypt/ciphers.c:492,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:497,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:498,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:498,1
    - Dst: gcry_cipher_get_algo_keylen
      Src: /src/xmlsec/src/gcrypt/ciphers.c:500,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:501,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/ciphers.c:502,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/ciphers.c:502,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:502,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/ciphers.c:504,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/ciphers.c:504,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:505,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:507,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:508,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:508,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:509,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:513,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:513,1
    - Dst: gcry_cipher_setkey
      Src: /src/xmlsec/src/gcrypt/ciphers.c:514,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/ciphers.c:514,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:516,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:517,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 479
    functionDepth: 2
    functionLinenumber: 479
    functionLinenumberEnd: 523
    functionName: xmlSecGCryptBlockCipherSetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - gcry_cipher_get_algo_keylen
    - xmlSecTransformGetName
    - gcry_cipher_setkey
    - xmlSecGCryptBlockCipherCheckId
    - xmlSecGCryptBlockCipherGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:531,1
    - Dst: xmlSecGCryptBlockCipherCheckId
      Src: /src/xmlsec/src/gcrypt/ciphers.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:532,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:533,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:533,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:534,1
    - Dst: xmlSecGCryptBlockCipherGetCtx
      Src: /src/xmlsec/src/gcrypt/ciphers.c:539,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:540,1
    - Dst: xmlSecGCryptBlockCipherCtxInit
      Src: /src/xmlsec/src/gcrypt/ciphers.c:548,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:550,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:552,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:553,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:558,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:559,1
    - Dst: xmlSecGCryptBlockCipherCtxUpdate
      Src: /src/xmlsec/src/gcrypt/ciphers.c:563,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:565,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:567,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:568,1
    - Dst: xmlSecGCryptBlockCipherCtxFinal
      Src: /src/xmlsec/src/gcrypt/ciphers.c:574,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:576,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:578,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/ciphers.c:579,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:586,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/ciphers.c:586,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/ciphers.c:589,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/ciphers.c:591,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 525
    functionDepth: 3
    functionLinenumber: 525
    functionLinenumberEnd: 596
    functionName: xmlSecGCryptBlockCipherExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecGCryptBlockCipherCtxUpdate
    - xmlSecAssert2
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecGCryptBlockCipherCtxInit
    - xmlSecGCryptBlockCipherCtxFinal
    - xmlSecTransformGetName
    - xmlSecGCryptBlockCipherCheckId
    - xmlSecGCryptBlockCipherGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptBlockCipherExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: xmlSecGCryptTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 681
    functionName: xmlSecGCryptTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 717
    functionDepth: 0
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionName: xmlSecGCryptTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 759
    functionDepth: 0
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionName: xmlSecGCryptTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformDes3CbcGetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:79,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:85,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:91,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:97,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:103,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 121
    functionName: xmlSecGCryptHmacCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:130,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:130,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:131,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:131,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:134,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/hmac.c:136,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:139,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:145,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:151,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:157,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:163,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:169,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gcrypt/hmac.c:176,1
    - Dst: gcry_md_get_algo_dlen
      Src: /src/xmlsec/src/gcrypt/hmac.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:182,1
    - Dst: gcry_md_open
      Src: /src/xmlsec/src/gcrypt/hmac.c:186,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/hmac.c:188,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:189,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 194
    functionName: xmlSecGCryptHmacInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - gcry_md_get_algo_dlen
    - xmlSecGCryptHmacCheckId
    - gcry_md_open
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/hmac.c:200,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:200,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/hmac.c:201,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:201,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:203,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/hmac.c:204,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/hmac.c:207,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/hmac.c:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 210
    functionName: xmlSecGCryptHmacFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecGCryptHmacGetCtx
    - gcry_md_close
    - xmlSecGCryptHmacCheckId
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:218,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:219,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:220,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/hmac.c:221,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:224,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:226,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/hmac.c:228,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:232,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:233,1
    - Dst: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
      Src: /src/xmlsec/src/gcrypt/hmac.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 212
    functionDepth: 2
    functionLinenumber: 212
    functionLinenumberEnd: 236
    functionName: xmlSecGCryptHmacNodeRead
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - xmlSecGCryptHmacCheckId
    - xmlSecTransformGetName
    - XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
    - xmlSecTransformHmacReadOutputBitsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                         xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:243,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:246,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:246,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 260
    functionName: xmlSecGCryptHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - xmlSecTransformCheckSize
    - xmlSecGCryptHmacCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:269,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:271,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:272,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:276,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/hmac.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:279,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:279,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/hmac.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:282,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:284,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/gcrypt/hmac.c:285,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:285,1
    - Dst: gcry_md_setkey
      Src: /src/xmlsec/src/gcrypt/hmac.c:289,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/hmac.c:289,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:290,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/hmac.c:292,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:293,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 297
    functionName: xmlSecGCryptHmacSetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - xmlSecGCryptHmacCheckId
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - gcry_md_setkey
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:306,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/gcrypt/hmac.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:307,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:308,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:310,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/hmac.c:311,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:316,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/gcrypt/hmac.c:319,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/hmac.c:321,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 332
    functionName: xmlSecGCryptHmacVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - xmlSecTransformHmacVerify
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptHmacVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:341,1
    - Dst: xmlSecGCryptHmacCheckId
      Src: /src/xmlsec/src/gcrypt/hmac.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:343,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:344,1
    - Dst: xmlSecGCryptHmacGetCtx
      Src: /src/xmlsec/src/gcrypt/hmac.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:348,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:360,1
    - Dst: gcry_md_write
      Src: /src/xmlsec/src/gcrypt/hmac.c:362,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/hmac.c:362,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/hmac.c:364,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/hmac.c:366,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:367,1
    - Dst: gcry_md_final
      Src: /src/xmlsec/src/gcrypt/hmac.c:374,1
    - Dst: gcry_md_read
      Src: /src/xmlsec/src/gcrypt/hmac.c:375,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/hmac.c:377,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:378,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gcrypt/hmac.c:381,1
    - Dst: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
      Src: /src/xmlsec/src/gcrypt/hmac.c:381,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/gcrypt/hmac.c:385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/hmac.c:387,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/hmac.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/hmac.c:395,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/hmac.c:395,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/hmac.c:397,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 334
    functionDepth: 2
    functionLinenumber: 334
    functionLinenumberEnd: 402
    functionName: xmlSecGCryptHmacExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached:
    - gcry_md_write
    - xmlSecBufferRemoveHead
    - xmlSecGCryptError
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGCryptHmacGetCtx
    - xmlSecInternalError2
    - xmlSecGCryptHmacCheckId
    - xmlSecBufferGetData
    - gcry_md_read
    - xmlSecTransformHmacWriteOutput
    - xmlSecBufferGetSize
    - xmlSecInvalidTransfromStatusError
    - xmlSecTransformGetName
    - memcpy
    - XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
    - gcry_md_final
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptHmacExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 444
    functionDepth: 0
    functionLinenumber: 444
    functionLinenumberEnd: 447
    functionName: xmlSecGCryptTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionName: xmlSecGCryptTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 539
    functionName: xmlSecGCryptTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 585
    functionName: xmlSecGCryptTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: xmlSecGCryptTransformHmacRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 678
    functionName: xmlSecGCryptTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformHmacMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: xmlSecGCryptSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGCryptSymKeyDataCheckId(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:76,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:76,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/gcrypt/symkeys.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: xmlSecGCryptSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:83,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:83,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:84,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:84,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:85,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/gcrypt/symkeys.c:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 81
    functionDepth: 3
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionName: xmlSecGCryptSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecGCryptSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/symkeys.c:92,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:92,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/gcrypt/symkeys.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 3
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: xmlSecGCryptSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:100,1
    - Dst: xmlSecGCryptSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gcrypt/symkeys.c:100,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/gcrypt/symkeys.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 11
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: xmlSecGCryptSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecGCryptSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:108,1
    - Dst: xmlSecGCryptSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gcrypt/symkeys.c:108,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/gcrypt/symkeys.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 105
    functionDepth: 9
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionName: xmlSecGCryptSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecGCryptSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlNodePtr node, xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:117,1
    - Dst: xmlSecGCryptSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gcrypt/symkeys.c:117,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/gcrypt/symkeys.c:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 3
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: xmlSecGCryptSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinRead
    - xmlSecGCryptSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:126,1
    - Dst: xmlSecGCryptSymKeyDataKlassCheck
      Src: /src/xmlsec/src/gcrypt/symkeys.c:126,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/gcrypt/symkeys.c:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 122
    functionDepth: 3
    functionLinenumber: 122
    functionLinenumberEnd: 129
    functionName: xmlSecGCryptSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinWrite
    - xmlSecGCryptSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlSecByte** buf, xmlSecSize* bufSize,\n
      \                                   xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:135,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:135,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:136,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/symkeys.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:139,1
    - Dst: xmlSecGCryptGenerateRandom
      Src: /src/xmlsec/src/gcrypt/symkeys.c:141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 142
    functionName: xmlSecGCryptSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecGCryptGenerateRandom
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:148,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:148,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/symkeys.c:150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:151,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/symkeys.c:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: xmlSecGCryptSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecGCryptSymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:158,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:158,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/gcrypt/symkeys.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 161
    functionName: xmlSecGCryptSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecGCryptSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/symkeys.c:165,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:165,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/gcrypt/symkeys.c:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 163
    functionDepth: 3
    functionLinenumber: 163
    functionLinenumberEnd: 168
    functionName: xmlSecGCryptSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/symkeys.c:172,1
    - Dst: xmlSecGCryptSymKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:172,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/gcrypt/symkeys.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 170
    functionDepth: 3
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionName: xmlSecGCryptSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecGCryptSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 198
    functionName: xmlSecGCryptSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: xmlSecGCryptKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:270,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:272,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/symkeys.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:275,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gcrypt/symkeys.c:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 266
    functionDepth: 3
    functionLinenumber: 266
    functionLinenumberEnd: 278
    functionName: xmlSecGCryptKeyDataAesSet
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataAesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 335
    functionName: xmlSecGCryptKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:351,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:353,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/symkeys.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:356,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gcrypt/symkeys.c:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 347
    functionDepth: 3
    functionLinenumber: 347
    functionLinenumberEnd: 359
    functionName: xmlSecGCryptKeyDataDesSet
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataDesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 414
    functionDepth: 0
    functionLinenumber: 414
    functionLinenumberEnd: 417
    functionName: xmlSecGCryptKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecGCryptKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:433,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/symkeys.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:435,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/gcrypt/symkeys.c:437,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/symkeys.c:438,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gcrypt/symkeys.c:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 429
    functionDepth: 3
    functionLinenumber: 429
    functionLinenumberEnd: 441
    functionName: xmlSecGCryptKeyDataHmacSet
    functionSourceFile: /src/xmlsec/src/gcrypt/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeyDataHmacSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:160,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:170,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:176,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:182,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:188,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:194,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:200,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:207,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:213,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:225,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:232,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:235,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:238,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:249,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:255,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:261,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:267,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:273,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:276,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:279,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 291
    functionName: xmlSecGCryptPkSignatureCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptPkSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:298,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:298,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:299,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:299,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:302,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/signatures.c:304,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:309,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:322,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:331,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:341,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:350,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:359,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:368,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:377,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:386,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:395,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:404,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:414,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:420,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:426,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:439,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:448,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:457,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:466,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:476,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:482,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:488,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gcrypt/signatures.c:499,1
    - Dst: gcry_md_open
      Src: /src/xmlsec/src/gcrypt/signatures.c:504,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:506,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:506,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 142
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 293
    functionDepth: 2
    functionLinenumber: 293
    functionLinenumberEnd: 512
    functionName: xmlSecGCryptPkSignatureInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecGCryptPkSignatureGetCtx
    - gcry_md_open
    - xmlSecGCryptPkSignatureCheckId
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptPkSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/signatures.c:518,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:518,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/signatures.c:519,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:519,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:521,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/signatures.c:522,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/signatures.c:525,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/signatures.c:528,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/signatures.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 514
    functionDepth: 2
    functionLinenumber: 514
    functionLinenumberEnd: 532
    functionName: xmlSecGCryptPkSignatureFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecGCryptPkSignatureGetCtx
    - gcry_md_close
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecGCryptPkSignatureCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptPkSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:539,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:539,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:541,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:541,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:542,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:544,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:547,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:547,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/signatures.c:549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:550,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/signatures.c:553,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/signatures.c:556,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/signatures.c:558,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:559,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 534
    functionDepth: 3
    functionLinenumber: 534
    functionLinenumberEnd: 564
    functionName: xmlSecGCryptPkSignatureSetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptPkSignatureGetCtx
    - xmlSecKeyDataDestroy
    - xmlSecKeyCheckId
    - xmlSecGCryptPkSignatureCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptPkSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:570,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:572,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:572,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:573,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:575,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:576,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:577,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 588
    functionName: xmlSecGCryptPkSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptPkSignatureGetCtx
    - xmlSecTransformCheckSize
    - xmlSecGCryptPkSignatureCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptPkSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:598,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:598,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:600,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:600,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:601,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:602,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:603,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:605,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:606,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:607,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:608,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:609,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:610,1
    - Dst: xmlSecGCryptPkSignatureCtxPtr::verify
      Src: /src/xmlsec/src/gcrypt/signatures.c:612,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/signatures.c:614,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:614,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gcrypt/signatures.c:620,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 630
    functionName: xmlSecGCryptPkSignatureVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptPkSignatureGetCtx
    - xmlSecGCryptPkSignatureCtxPtr::verify
    - xmlSecGCryptPkSignatureCheckId
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptPkSignatureVerify(xmlSecTransformPtr transform,\n
      \                       const xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:640,1
    - Dst: xmlSecGCryptPkSignatureCheckId
      Src: /src/xmlsec/src/gcrypt/signatures.c:640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:641,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:642,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:642,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:643,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:645,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:646,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:648,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:652,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:653,1
    - Dst: xmlSecGCryptPkSignatureGetCtx
      Src: /src/xmlsec/src/gcrypt/signatures.c:655,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:656,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:657,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:665,1
    - Dst: gcry_md_write
      Src: /src/xmlsec/src/gcrypt/signatures.c:669,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/signatures.c:669,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/signatures.c:671,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:673,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:674,1
    - Dst: gcry_md_final
      Src: /src/xmlsec/src/gcrypt/signatures.c:685,1
    - Dst: gcry_md_read
      Src: /src/xmlsec/src/gcrypt/signatures.c:686,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:688,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:688,1
    - Dst: gcry_md_get_algo_dlen
      Src: /src/xmlsec/src/gcrypt/signatures.c:693,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:696,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gcrypt/signatures.c:697,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:699,1
    - Dst: xmlSecGCryptPkSignatureCtxPtr::sign
      Src: /src/xmlsec/src/gcrypt/signatures.c:701,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/signatures.c:703,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/signatures.c:703,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:715,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:715,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/signatures.c:717,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 58
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 632
    functionDepth: 2
    functionLinenumber: 632
    functionLinenumberEnd: 722
    functionName: xmlSecGCryptPkSignatureExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - gcry_md_write
    - xmlSecBufferRemoveHead
    - xmlSecGCryptError
    - xmlSecTransformCheckSize
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecGCryptPkSignatureGetCtx
    - xmlSecInternalError2
    - gcry_md_get_algo_dlen
    - xmlSecBufferGetData
    - gcry_md_read
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecGCryptPkSignatureCheckId
    - xmlSecTransformGetName
    - memcpy
    - xmlSecGCryptPkSignatureCtxPtr::sign
    - gcry_md_final
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:737,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:738,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:741,1
    - Dst: gcry_mpi_print
      Src: /src/xmlsec/src/gcrypt/signatures.c:745,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:747,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/signatures.c:750,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:750,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:758,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:760,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:764,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:764,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/signatures.c:769,1
    - Dst: gcry_mpi_print
      Src: /src/xmlsec/src/gcrypt/signatures.c:778,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/signatures.c:779,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:780,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:783,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/gcrypt/signatures.c:786,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:786,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:789,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:791,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 3
    argNames:
    - a
    - out
    - min_size
    argTypes:
    - gcry_mpi_t
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 729
    functionDepth: 2
    functionLinenumber: 729
    functionLinenumberEnd: 798
    functionName: xmlSecGCryptAppendMpi
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_mpi_print
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferGetMaxSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptAppendMpi(gcry_mpi_t a, xmlSecBufferPtr out, xmlSecSize
      min_size)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:846,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:847,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:848,1
    - Dst: xmlSecGCryptKeyDataDsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:850,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:851,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:854,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:856,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:860,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:865,1
    - Dst: gcry_pk_sign
      Src: /src/xmlsec/src/gcrypt/signatures.c:870,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:872,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:877,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:879,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:882,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:885,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:887,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:890,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:894,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:896,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:900,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:902,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:907,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:909,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:913,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:915,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:920,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:921,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:922,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:923,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:927,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:928,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:929,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:930,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:939,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:942,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:945,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:949,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:952,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:955,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:958,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 102
    argCount: 5
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - key_data
    - dgst
    - dgstSize
    - out
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 828
    functionDepth: 3
    functionLinenumber: 828
    functionLinenumberEnd: 962
    functionName: xmlSecGCryptDsaSign
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - gcry_mpi_scan
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_pk_sign
    - gcry_sexp_release
    - xmlSecInternalError2
    - gcry_sexp_find_token
    - xmlSecBufferGetSize
    - gcry_mpi_release
    - gcry_sexp_nth_mpi
    - xmlSecGCryptKeyDataDsaGetPrivateKey
    - xmlSecGCryptAppendMpi
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptDsaSign(int digest XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataPtr
      key_data,\n                      const xmlSecByte* dgst, xmlSecSize dgstSize,\n
      \                     xmlSecBufferPtr out)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:977,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:978,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:979,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:980,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:981,1
    - Dst: xmlSecGCryptKeyDataDsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:983,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:984,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:987,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:989,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:993,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:998,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:1003,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1005,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:1008,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1010,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1014,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1018,1
    - Dst: gcry_pk_verify
      Src: /src/xmlsec/src/gcrypt/signatures.c:1023,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1029,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1036,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1039,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1042,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1046,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1049,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 67
    argCount: 6
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - key_data
    - dgst
    - dgstSize
    - data
    - dataSize
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 964
    functionDepth: 3
    functionLinenumber: 964
    functionLinenumberEnd: 1053
    functionName: xmlSecGCryptDsaVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - gcry_mpi_scan
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecGCryptKeyDataDsaGetPublicKey
    - gcry_sexp_release
    - gcry_mpi_release
    - gcry_pk_verify
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptDsaVerify(int digest XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataPtr
      key_data,\n                        const xmlSecByte* dgst, xmlSecSize dgstSize,\n
      \                       const xmlSecByte* data, xmlSecSize dataSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 1090
    functionDepth: 0
    functionLinenumber: 1090
    functionLinenumberEnd: 1093
    functionName: xmlSecGCryptTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformDsaSha1GetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1150,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1153,1
    - Dst: xmlSecGCryptKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:1155,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1156,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/signatures.c:1159,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:1159,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1160,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:1162,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1165,1
    - Dst: gcry_pk_sign
      Src: /src/xmlsec/src/gcrypt/signatures.c:1170,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1172,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1177,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1179,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1182,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1185,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1187,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1190,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1193,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1195,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1198,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:1201,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1203,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:1208,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1210,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1219,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1223,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1226,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 69
    argCount: 5
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - out
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1136
    functionDepth: 3
    functionLinenumber: 1136
    functionLinenumberEnd: 1230
    functionName: xmlSecGCryptRsaPkcs1Sign
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecGCryptKeyDataRsaGetPrivateKey
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_pk_sign
    - gcry_sexp_release
    - gcry_sexp_find_token
    - return
    - gcry_mpi_release
    - gcry_sexp_nth_mpi
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecGCryptAppendMpi
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaPkcs1Sign(int digest, xmlSecKeyDataPtr key_data,\n
      \                          const xmlSecByte* dgst, xmlSecSize dgstSize,\n                           xmlSecBufferPtr
      out)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1248,1
    - Dst: xmlSecGCryptKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:1250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1251,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/signatures.c:1254,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:1254,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1255,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:1257,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1260,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:1265,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1267,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1271,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1275,1
    - Dst: gcry_pk_verify
      Src: /src/xmlsec/src/gcrypt/signatures.c:1280,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1286,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1293,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1297,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1300,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 6
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - data
    - dataSize
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1232
    functionDepth: 3
    functionLinenumber: 1232
    functionLinenumberEnd: 1304
    functionName: xmlSecGCryptRsaPkcs1Verify
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptKeyDataRsaGetPublicKey
    - gcry_mpi_scan
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_sexp_release
    - return
    - gcry_mpi_release
    - gcry_pk_verify
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaPkcs1Verify(int digest, xmlSecKeyDataPtr key_data,\n
      \                            const xmlSecByte* dgst, xmlSecSize dgstSize,\n
      \                            const xmlSecByte* data, xmlSecSize dataSize)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1329,1
    - Dst: xmlSecGCryptKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:1331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1332,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/signatures.c:1335,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:1335,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1336,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:1341,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1344,1
    - Dst: gcry_pk_sign
      Src: /src/xmlsec/src/gcrypt/signatures.c:1349,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1351,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1356,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1358,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1361,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1364,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1366,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1369,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:1372,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1374,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1377,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:1380,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1382,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:1387,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1389,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1398,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1402,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1405,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 69
    argCount: 5
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - out
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1409
      start: 1311
    functionDepth: 3
    functionLinenumber: 1311
    functionLinenumberEnd: 1409
    functionName: xmlSecGCryptRsaPssSign
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecGCryptKeyDataRsaGetPrivateKey
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_pk_sign
    - gcry_sexp_release
    - gcry_sexp_find_token
    - return
    - gcry_mpi_release
    - gcry_sexp_nth_mpi
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecGCryptAppendMpi
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaPssSign(int digest, xmlSecKeyDataPtr key_data,\n
      \                      const xmlSecByte* dgst, xmlSecSize dgstSize,\n                       xmlSecBufferPtr
      out)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1425,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1427,1
    - Dst: xmlSecGCryptKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:1429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:1430,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/signatures.c:1433,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/signatures.c:1433,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1434,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:1439,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1442,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:1447,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1449,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:1453,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1457,1
    - Dst: gcry_pk_verify
      Src: /src/xmlsec/src/gcrypt/signatures.c:1462,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:1468,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1475,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1479,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:1482,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 50
    argCount: 6
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - data
    - dataSize
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1486
      start: 1411
    functionDepth: 3
    functionLinenumber: 1411
    functionLinenumberEnd: 1486
    functionName: xmlSecGCryptRsaPssVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptKeyDataRsaGetPublicKey
    - gcry_mpi_scan
    - xmlSecGCryptError
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_sexp_release
    - return
    - gcry_mpi_release
    - gcry_pk_verify
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaPssVerify(int digest, xmlSecKeyDataPtr key_data,\n
      \                            const xmlSecByte* dgst, xmlSecSize dgstSize,\n
      \                            const xmlSecByte* data, xmlSecSize dataSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1529
    functionDepth: 0
    functionLinenumber: 1529
    functionLinenumberEnd: 1532
    functionName: xmlSecGCryptTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1579
    functionName: xmlSecGCryptTransformRsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1626
      start: 1623
    functionDepth: 0
    functionLinenumber: 1623
    functionLinenumberEnd: 1626
    functionName: xmlSecGCryptTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1674
      start: 1671
    functionDepth: 0
    functionLinenumber: 1671
    functionLinenumberEnd: 1674
    functionName: xmlSecGCryptTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1721
      start: 1718
    functionDepth: 0
    functionLinenumber: 1718
    functionLinenumberEnd: 1721
    functionName: xmlSecGCryptTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1765
    functionDepth: 0
    functionLinenumber: 1765
    functionLinenumberEnd: 1768
    functionName: xmlSecGCryptTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1813
    functionDepth: 0
    functionLinenumber: 1813
    functionLinenumberEnd: 1816
    functionName: xmlSecGCryptTransformRsaPssSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1861
    functionDepth: 0
    functionLinenumber: 1861
    functionLinenumberEnd: 1864
    functionName: xmlSecGCryptTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1908
    functionDepth: 0
    functionLinenumber: 1908
    functionLinenumberEnd: 1911
    functionName: xmlSecGCryptTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1958
      start: 1955
    functionDepth: 0
    functionLinenumber: 1955
    functionLinenumberEnd: 1958
    functionName: xmlSecGCryptTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2007
      start: 2004
    functionDepth: 0
    functionLinenumber: 2004
    functionLinenumberEnd: 2007
    functionName: xmlSecGCryptTransformRsaPssSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2051
      start: 2048
    functionDepth: 0
    functionLinenumber: 2048
    functionLinenumberEnd: 2051
    functionName: xmlSecGCryptTransformRsaPssSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 2092
    functionDepth: 0
    functionLinenumber: 2092
    functionLinenumberEnd: 2095
    functionName: xmlSecGCryptTransformRsaPssSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPssSha3_512GetKlass(void)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2132,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2134,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2135,1
    - Dst: xmlSecGCryptKeyDataEcGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:2137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2138,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2142,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:2144,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2146,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:2152,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2154,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:2158,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2163,1
    - Dst: gcry_pk_sign
      Src: /src/xmlsec/src/gcrypt/signatures.c:2168,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2170,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:2175,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2177,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2180,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:2183,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2185,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2188,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:2192,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2194,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:2198,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2200,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/signatures.c:2205,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2207,1
    - Dst: gcry_sexp_nth_mpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:2211,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2213,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:2218,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2219,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2220,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2221,1
    - Dst: xmlSecGCryptAppendMpi
      Src: /src/xmlsec/src/gcrypt/signatures.c:2225,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2226,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2227,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2228,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2237,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2240,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2243,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2247,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2250,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2253,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2256,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 111
    argCount: 5
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - out
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2260
      start: 2112
    functionDepth: 3
    functionLinenumber: 2112
    functionLinenumberEnd: 2260
    functionName: xmlSecGCryptEcdsaSign
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - gcry_mpi_scan
    - xmlSecGCryptError
    - xmlSecKeyDataGetSize
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_pk_sign
    - gcry_sexp_release
    - xmlSecInternalError2
    - gcry_sexp_find_token
    - xmlSecBufferGetSize
    - gcry_mpi_release
    - gcry_sexp_nth_mpi
    - xmlSecGCryptKeyDataEcGetPrivateKey
    - xmlSecGCryptAppendMpi
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptEcdsaSign(int digest, xmlSecKeyDataPtr key_data,\n
      \   const xmlSecByte* dgst, xmlSecSize dgstSize,\n    xmlSecBufferPtr out)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2281,1
    - Dst: xmlSecGCryptKeyDataEcGetPublicKey
      Src: /src/xmlsec/src/gcrypt/signatures.c:2283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2284,1
    - Dst: xmlSecKeyDataGetSize
      Src: /src/xmlsec/src/gcrypt/signatures.c:2286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2288,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/gcrypt/signatures.c:2292,1
    - Dst: gcry_md_algo_name
      Src: /src/xmlsec/src/gcrypt/signatures.c:2297,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/signatures.c:2299,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:2305,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2307,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:2311,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2316,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:2321,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2323,1
    - Dst: gcry_mpi_scan
      Src: /src/xmlsec/src/gcrypt/signatures.c:2326,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2328,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/signatures.c:2332,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2336,1
    - Dst: gcry_pk_verify
      Src: /src/xmlsec/src/gcrypt/signatures.c:2341,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/signatures.c:2347,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2354,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2357,1
    - Dst: gcry_mpi_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2360,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2364,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/signatures.c:2367,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 80
    argCount: 6
    argNames:
    - digest
    - key_data
    - dgst
    - dgstSize
    - data
    - dataSize
    argTypes:
    - int
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2371
      start: 2262
    functionDepth: 3
    functionLinenumber: 2262
    functionLinenumberEnd: 2371
    functionName: xmlSecGCryptEcdsaVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - gcry_mpi_scan
    - xmlSecInternalError3
    - xmlSecGCryptError
    - xmlSecKeyDataGetSize
    - gcry_sexp_build
    - xmlSecAssert2
    - gcry_md_algo_name
    - gcry_sexp_release
    - gcry_mpi_release
    - xmlSecGCryptKeyDataEcGetPublicKey
    - gcry_pk_verify
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptEcdsaVerify(int digest, xmlSecKeyDataPtr key_data,\n
      \   const xmlSecByte* dgst, xmlSecSize dgstSize,\n    const xmlSecByte* data,
      xmlSecSize dataSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2416
      start: 2413
    functionDepth: 0
    functionLinenumber: 2413
    functionLinenumberEnd: 2416
    functionName: xmlSecGCryptTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2464
      start: 2461
    functionDepth: 0
    functionLinenumber: 2461
    functionLinenumberEnd: 2464
    functionName: xmlSecGCryptTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2511
      start: 2508
    functionDepth: 0
    functionLinenumber: 2508
    functionLinenumberEnd: 2511
    functionName: xmlSecGCryptTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2555
    functionDepth: 0
    functionLinenumber: 2555
    functionLinenumberEnd: 2558
    functionName: xmlSecGCryptTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2608
      start: 2605
    functionDepth: 0
    functionLinenumber: 2605
    functionLinenumberEnd: 2608
    functionName: xmlSecGCryptTransformEcdsaSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2652
      start: 2649
    functionDepth: 0
    functionLinenumber: 2649
    functionLinenumberEnd: 2652
    functionName: xmlSecGCryptTransformEcdsaSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2696
      start: 2693
    functionDepth: 0
    functionLinenumber: 2693
    functionLinenumberEnd: 2696
    functionName: xmlSecGCryptTransformEcdsaSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformEcdsaSha3_512GetKlass(void)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:69,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:75,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:81,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:87,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:93,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:99,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:106,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:109,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:112,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 124
    functionName: xmlSecGCryptDigestCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:131,1
    - Dst: xmlSecGCryptDigestCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:131,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:132,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/digests.c:132,1
    - Dst: xmlSecGCryptDigestGetCtx
      Src: /src/xmlsec/src/gcrypt/digests.c:134,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:135,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/digests.c:138,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:141,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:147,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:153,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:159,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:165,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:171,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:178,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:181,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:184,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/gcrypt/digests.c:190,1
    - Dst: gcry_md_open
      Src: /src/xmlsec/src/gcrypt/digests.c:195,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/digests.c:197,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:198,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 202
    functionName: xmlSecGCryptDigestInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecGCryptDigestCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_md_open
    - xmlSecGCryptDigestGetCtx
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/digests.c:208,1
    - Dst: xmlSecGCryptDigestCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:208,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/digests.c:209,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/digests.c:209,1
    - Dst: xmlSecGCryptDigestGetCtx
      Src: /src/xmlsec/src/gcrypt/digests.c:211,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/digests.c:212,1
    - Dst: gcry_md_close
      Src: /src/xmlsec/src/gcrypt/digests.c:215,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/digests.c:217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 218
    functionName: xmlSecGCryptDigestFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptDigestCheckId
    - xmlSecTransformCheckSize
    - gcry_md_close
    - xmlSecGCryptDigestGetCtx
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:226,1
    - Dst: xmlSecGCryptDigestCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:226,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:228,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/digests.c:228,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:231,1
    - Dst: xmlSecGCryptDigestGetCtx
      Src: /src/xmlsec/src/gcrypt/digests.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:235,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/gcrypt/digests.c:238,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:239,1
    - Dst: memcmp
      Src: /src/xmlsec/src/gcrypt/digests.c:244,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/gcrypt/digests.c:245,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:246,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 253
    functionName: xmlSecGCryptDigestVerify
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptDigestCheckId
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptDigestGetCtx
    - memcmp
    - xmlSecTransformGetName
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptDigestVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:261,1
    - Dst: xmlSecGCryptDigestCheckId
      Src: /src/xmlsec/src/gcrypt/digests.c:261,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:262,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:264,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/digests.c:264,1
    - Dst: xmlSecGCryptDigestGetCtx
      Src: /src/xmlsec/src/gcrypt/digests.c:266,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:269,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/digests.c:281,1
    - Dst: gcry_md_write
      Src: /src/xmlsec/src/gcrypt/digests.c:283,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/digests.c:283,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/digests.c:285,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/digests.c:287,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:288,1
    - Dst: gcry_md_final
      Src: /src/xmlsec/src/gcrypt/digests.c:297,1
    - Dst: gcry_md_read
      Src: /src/xmlsec/src/gcrypt/digests.c:298,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/digests.c:300,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:301,1
    - Dst: gcry_md_get_algo_dlen
      Src: /src/xmlsec/src/gcrypt/digests.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:308,1
    - Dst: memcpy
      Src: /src/xmlsec/src/gcrypt/digests.c:309,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/gcrypt/digests.c:313,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/digests.c:315,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/digests.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/digests.c:324,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/digests.c:324,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/digests.c:326,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 255
    functionDepth: 3
    functionLinenumber: 255
    functionLinenumberEnd: 331
    functionName: xmlSecGCryptDigestExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached:
    - gcry_md_write
    - xmlSecGCryptDigestCheckId
    - xmlSecBufferRemoveHead
    - xmlSecTransformCheckSize
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecInternalError2
    - gcry_md_get_algo_dlen
    - xmlSecGCryptDigestGetCtx
    - xmlSecBufferGetData
    - gcry_md_read
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecBufferAppend
    - xmlSecTransformGetName
    - memcpy
    - gcry_md_final
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptDigestExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionName: xmlSecGCryptTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 427
    functionName: xmlSecGCryptTransformRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 476
    functionName: xmlSecGCryptTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionName: xmlSecGCryptTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 573
    functionName: xmlSecGCryptTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 618
    functionDepth: 0
    functionLinenumber: 618
    functionLinenumberEnd: 621
    functionName: xmlSecGCryptTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 670
    functionName: xmlSecGCryptTransformSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: xmlSecGCryptTransformSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 759
    functionDepth: 0
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionName: xmlSecGCryptTransformSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformSha3_512GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/crypto.c:52,1
    - Dst: xmlSecGCryptAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/gcrypt/crypto.c:302,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 76
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 305
    functionName: xmlSecCryptoGetFunctions_gcrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_gcrypt(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/gcrypt/crypto.c:318,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/crypto.c:319,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/gcrypt/crypto.c:324,1
    - Dst: xmlSecCryptoGetFunctions_gcrypt
      Src: /src/xmlsec/src/gcrypt/crypto.c:324,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/crypto.c:325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 330
    functionName: xmlSecGCryptInit
    functionSourceFile: /src/xmlsec/src/gcrypt/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecCryptoGetFunctions_gcrypt
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecInternalError
    - xmlSecCheckVersionExact
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionName: xmlSecGCryptShutdown
    functionSourceFile: /src/xmlsec/src/gcrypt/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/crypto.c:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 356
    functionName: xmlSecGCryptKeysMngrInit
    functionSourceFile: /src/xmlsec/src/gcrypt/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/crypto.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/crypto.c:372,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/gcrypt/crypto.c:374,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/crypto.c:376,1
    - Dst: gcry_randomize
      Src: /src/xmlsec/src/gcrypt/crypto.c:382,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/crypto.c:382,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 367
    functionDepth: 2
    functionLinenumber: 367
    functionLinenumberEnd: 384
    functionName: xmlSecGCryptGenerateRandom
    functionSourceFile: /src/xmlsec/src/gcrypt/crypto.c
    functionUses: 1
    functionsReached:
    - gcry_randomize
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:50,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:51,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:52,1
    - Dst: gcry_sexp_find_token
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:54,1
    - Dst: xmlSecGCryptError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:56,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:57,1
    - Dst: gcry_sexp_nth_data
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:61,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:63,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:68,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:70,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:80,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - s_data
    - name
    - out
    argTypes:
    - gcry_sexp_t
    - char*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 85
    functionName: xmlSecGCryptRsaExtractData
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptError2
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - gcry_sexp_release
    - gcry_sexp_find_token
    - xmlSecBufferSetData
    - gcry_sexp_nth_data
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaExtractData(gcry_sexp_t s_data, const char* name,
      xmlSecBufferPtr out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:96,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:97,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:100,1
    - Dst: gcry_pk_encrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:103,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:105,1
    - Dst: xmlSecGCryptRsaExtractData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:110,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:112,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - s_plaintext_data
    - s_pub_key
    - out
    argTypes:
    - gcry_sexp_t
    - gcry_sexp_t
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 87
    functionDepth: 4
    functionLinenumber: 87
    functionLinenumberEnd: 127
    functionName: xmlSecGCryptRsaKtEncrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_sexp_release
    - xmlSecBufferGetSize
    - gcry_pk_encrypt
    - xmlSecGCryptRsaExtractData
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaKtEncrypt(gcry_sexp_t s_plaintext_data, gcry_sexp_t
      s_pub_key, xmlSecBufferPtr out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:139,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:141,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:142,1
    - Dst: gcry_pk_decrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:145,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:147,1
    - Dst: xmlSecGCryptRsaExtractData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:152,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:154,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - s_encrypted_data
    - s_priv_key
    - out
    argTypes:
    - gcry_sexp_t
    - gcry_sexp_t
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 129
    functionDepth: 4
    functionLinenumber: 129
    functionLinenumberEnd: 169
    functionName: xmlSecGCryptRsaKtDecrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecAssert2
    - gcry_sexp_release
    - xmlSecBufferGetSize
    - gcry_pk_decrypt
    - xmlSecGCryptRsaExtractData
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaKtDecrypt(gcry_sexp_t s_encrypted_data, gcry_sexp_t
      s_priv_key, xmlSecBufferPtr out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionName: xmlSecGCryptTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaPkcs1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:246,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:247,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:247,1
    - Dst: xmlSecGCryptRsaPkcs1GetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:250,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 254
    functionName: xmlSecGCryptRsaPkcs1Initialize
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecGCryptRsaPkcs1GetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaPkcs1Initialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:260,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:260,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:261,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:261,1
    - Dst: xmlSecGCryptRsaPkcs1GetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:263,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:264,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:267,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:270,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 271
    functionName: xmlSecGCryptRsaPkcs1Finalize
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecGCryptRsaPkcs1GetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptRsaPkcs1Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:277,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:279,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:280,1
    - Dst: xmlSecGCryptRsaPkcs1GetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:283,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 294
    functionName: xmlSecGCryptRsaPkcs1SetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptRsaPkcs1GetCtx
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaPkcs1SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:301,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:302,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:303,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:305,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:305,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:305,1
    - Dst: xmlSecGCryptRsaPkcs1GetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:308,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:311,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:314,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:317,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:319,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 296
    functionDepth: 3
    functionLinenumber: 296
    functionLinenumberEnd: 325
    functionName: xmlSecGCryptRsaPkcs1SetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecGCryptRsaPkcs1GetCtx
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaPkcs1SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:339,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:342,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:343,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:343,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:345,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:348,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:350,1
    - Dst: xmlSecGCryptRsaKtEncrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:355,1
    - Dst: xmlSecGCryptKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:357,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:360,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:365,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:367,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:378,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGCryptRsaPkcs1CtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 327
    functionDepth: 5
    functionLinenumber: 327
    functionLinenumberEnd: 383
    functionName: xmlSecGCryptRsaPkcs1Encrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptKeyDataRsaGetPublicKey
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecBufferRemoveHead
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecInternalError2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - return
    - xmlSecGCryptRsaKtEncrypt
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaPkcs1Encrypt(xmlSecGCryptRsaPkcs1CtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:395,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:397,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:400,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:401,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:401,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:403,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:406,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:408,1
    - Dst: xmlSecGCryptRsaKtDecrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:413,1
    - Dst: xmlSecGCryptKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:415,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:418,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:423,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:425,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:436,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGCryptRsaPkcs1CtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 385
    functionDepth: 5
    functionLinenumber: 385
    functionLinenumberEnd: 441
    functionName: xmlSecGCryptRsaPkcs1Decrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecGCryptKeyDataRsaGetPrivateKey
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecBufferRemoveHead
    - xmlSecInternalError2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecGCryptRsaKtDecrypt
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaPkcs1Decrypt(xmlSecGCryptRsaPkcs1CtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:449,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:451,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:451,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:452,1
    - Dst: xmlSecGCryptRsaPkcs1GetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:455,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:456,1
    - Dst: xmlSecGCryptRsaPkcs1Encrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:466,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:468,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:468,1
    - Dst: xmlSecGCryptRsaPkcs1Decrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:472,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:474,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:474,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:478,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:479,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:481,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:487,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:487,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:489,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 443
    functionDepth: 6
    functionLinenumber: 443
    functionLinenumberEnd: 493
    functionName: xmlSecGCryptRsaPkcs1Execute
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecGCryptRsaPkcs1Decrypt
    - xmlSecAssert2
    - xmlSecGCryptRsaPkcs1Encrypt
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGCryptRsaPkcs1GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaPkcs1Execute(xmlSecTransformPtr transform, int
      last,\n                             xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 575
    functionName: xmlSecGCryptTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaOaepGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 614
    functionName: xmlSecGCryptTransformRsaOaepEnc11GetKlass
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecGCryptTransformRsaOaepEnc11GetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:618,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:620,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 626
    functionName: xmlSecGCryptRsaOaepCheckId
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepCheckId(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:633,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:634,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:634,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:637,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:639,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:641,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:643,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:643,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 648
    functionName: xmlSecGCryptRsaOaepInitialize
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptRsaOaepGetCtx
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - xmlSecGCryptRsaOaepCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:654,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:654,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:655,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:655,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:657,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:658,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:660,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:663,1
    - Dst: memset
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:666,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 650
    functionDepth: 2
    functionLinenumber: 650
    functionLinenumberEnd: 667
    functionName: xmlSecGCryptRsaOaepFinalize
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptRsaOaepGetCtx
    - xmlSecTransformCheckSize
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - xmlSecBufferFinalize
    - xmlSecGCryptRsaOaepCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecGCryptRsaOaepFinalize(xmlSecTransformPtr transform)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:677,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:677,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:678,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:678,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:679,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:680,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:682,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:683,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:684,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:684,1
    - Dst: xmlSecTransformRsaOaepParamsInitialize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:686,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:688,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:689,1
    - Dst: xmlSecTransformRsaOaepParamsRead
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:693,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:695,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:696,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:697,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:706,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:707,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:713,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:719,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:725,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:731,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:737,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:742,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:744,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:745,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:754,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:755,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:760,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:766,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:772,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:778,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:784,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:789,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:791,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:792,1
    - Dst: strcmp
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:797,1
    - Dst: xmlSecInvalidTransfromError3
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:798,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:800,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:801,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:802,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:807,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:810,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 77
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 669
    functionDepth: 12
    functionLinenumber: 669
    functionLinenumberEnd: 812
    functionName: xmlSecGCryptRsaOaepNodeRead
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidTransfromError3
    - xmlSecGCryptRsaOaepGetCtx
    - xmlSecOtherError
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecBufferSwap
    - xmlSecTransformRsaOaepParamsFinalize
    - xmlSecTransformRsaOaepParamsInitialize
    - strcmp
    - xmlStrcmp
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGCryptRsaOaepCheckId
    - xmlSecTransformRsaOaepParamsRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                            xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:818,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:818,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:819,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:820,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:820,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:821,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:823,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:824,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 814
    functionDepth: 2
    functionLinenumber: 814
    functionLinenumberEnd: 835
    functionName: xmlSecGCryptRsaOaepSetKeyReq
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecGCryptRsaOaepCheckId
    - xmlSecGCryptRsaOaepGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:842,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:842,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:844,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:844,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:846,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:846,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:846,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:848,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:849,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:852,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:855,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:858,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:860,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:860,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 837
    functionDepth: 3
    functionLinenumber: 837
    functionLinenumberEnd: 866
    functionName: xmlSecGCryptRsaOaepSetKey
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptRsaOaepGetCtx
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecGCryptRsaOaepCheckId
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:877,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:880,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:883,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:884,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:884,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:886,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:887,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:887,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:890,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:895,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:896,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:898,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:902,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:905,1
    - Dst: xmlSecGCryptRsaKtEncrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:910,1
    - Dst: xmlSecGCryptKeyDataRsaGetPublicKey
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:912,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:915,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:920,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:922,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:933,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGCryptRsaOaepCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 868
    functionDepth: 5
    functionLinenumber: 868
    functionLinenumberEnd: 938
    functionName: xmlSecGCryptRsaOaepEncrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptKeyDataRsaGetPublicKey
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecBufferRemoveHead
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecInternalError2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - return
    - xmlSecGCryptRsaKtEncrypt
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepEncrypt(xmlSecGCryptRsaOaepCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:949,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:950,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:951,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:952,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:955,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:956,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:956,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:958,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:959,1
    - Dst: return
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:959,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:962,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:967,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:968,1
    - Dst: gcry_sexp_build
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:970,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:974,1
    - Dst: xmlSecGCryptError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:977,1
    - Dst: xmlSecGCryptRsaKtDecrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:982,1
    - Dst: xmlSecGCryptKeyDataRsaGetPrivateKey
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:984,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:987,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:992,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:994,1
    - Dst: gcry_sexp_release
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1005,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecGCryptRsaOaepCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 940
    functionDepth: 5
    functionLinenumber: 940
    functionLinenumberEnd: 1010
    functionName: xmlSecGCryptRsaOaepDecrypt
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecGCryptError
    - xmlSecGCryptKeyDataRsaGetPrivateKey
    - gcry_sexp_build
    - xmlSecAssert2
    - xmlSecBufferRemoveHead
    - xmlSecInternalError2
    - gcry_sexp_release
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecGCryptRsaKtDecrypt
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: int xmlSecGCryptRsaOaepDecrypt(xmlSecGCryptRsaOaepCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1018,1
    - Dst: xmlSecGCryptRsaOaepCheckId
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1018,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1019,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1020,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1020,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1021,1
    - Dst: xmlSecGCryptRsaOaepGetCtx
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1023,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1024,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1025,1
    - Dst: xmlSecGCryptRsaOaepEncrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1035,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1037,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1037,1
    - Dst: xmlSecGCryptRsaOaepDecrypt
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1041,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1043,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1043,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1047,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1048,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1050,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1056,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1056,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/gcrypt/kt_rsa.c:1058,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1012
    functionDepth: 6
    functionLinenumber: 1012
    functionLinenumberEnd: 1062
    functionName: xmlSecGCryptRsaOaepExecute
    functionSourceFile: /src/xmlsec/src/gcrypt/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecGCryptRsaOaepGetCtx
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecGCryptRsaOaepDecrypt
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecInvalidTransfromStatusError
    - xmlSecGCryptRsaOaepEncrypt
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecGCryptRsaOaepCheckId
    linkageType: ''
    returnType: int
    signature: "int xmlSecGCryptRsaOaepExecute(xmlSecTransformPtr transform, int last,\n
      \                            xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionName: xmlSecOpenSSLError
    functionSourceFile: /src/xmlsec/src/openssl/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOpenSSLError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 87
    functionName: xmlSecOpenSSLError2
    functionSourceFile: /src/xmlsec/src/openssl/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOpenSSLError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 111
    functionName: xmlSecOpenSSLError3
    functionSourceFile: /src/xmlsec/src/openssl/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOpenSSLError3(errorFunction, errorObject, msg, param1, param2)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:93,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 106
    functionName: xmlSecOpenSSLKdfCheckId
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKdfCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:115,1
    - Dst: xmlSecOpenSSLKdfCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:115,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:116,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:116,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:118,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:119,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kdf.c:122,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:125,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:133,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/kdf.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:147,1
    - Dst: EVP_KDF_fetch
      Src: /src/xmlsec/src/openssl/kdf.c:148,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kdf.c:150,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kdf.c:150,1
    - Dst: xmlSecOpenSSLKdfFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:151,1
    - Dst: EVP_KDF_CTX_new
      Src: /src/xmlsec/src/openssl/kdf.c:155,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kdf.c:157,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kdf.c:157,1
    - Dst: xmlSecOpenSSLKdfFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:158,1
    - Dst: EVP_KDF_free
      Src: /src/xmlsec/src/openssl/kdf.c:159,1
    - Dst: EVP_KDF_free
      Src: /src/xmlsec/src/openssl/kdf.c:162,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/kdf.c:165,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:167,1
    - Dst: xmlSecOpenSSLKdfFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:168,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 174
    functionName: xmlSecOpenSSLKdfInitialize
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKdfGetCtx
    - EVP_KDF_free
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecOpenSSLKdfFinalize
    - xmlSecOpenSSLKdfCheckId
    - xmlSecErrorsSafeString
    - EVP_KDF_CTX_new
    - xmlSecBufferInitialize
    - EVP_KDF_fetch
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKdfInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kdf.c:180,1
    - Dst: xmlSecOpenSSLKdfCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:180,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kdf.c:181,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:181,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:183,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kdf.c:184,1
    - Dst: EVP_KDF_CTX_free
      Src: /src/xmlsec/src/openssl/kdf.c:187,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/kdf.c:191,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/kdf.c:195,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:198,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kdf.c:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 201
    functionName: xmlSecOpenSSLKdfFinalize
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLKdfGetCtx
    - xmlFree
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLKdfCheckId
    - xmlSecAssert
    - EVP_KDF_CTX_free
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKdfFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:208,1
    - Dst: xmlSecOpenSSLKdfCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:209,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:210,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 219
    functionName: xmlSecOpenSSLKdfSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLKdfCheckId
    - xmlSecOpenSSLKdfGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKdfSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:229,1
    - Dst: xmlSecOpenSSLKdfCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:229,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:231,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:231,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:232,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:238,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:239,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/kdf.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:242,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/kdf.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:245,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kdf.c:247,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kdf.c:248,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/openssl/kdf.c:250,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:250,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:256,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:256,1
    - Dst: OSSL_PARAM_construct_octet_string
      Src: /src/xmlsec/src/openssl/kdf.c:259,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:263,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:263,1
    - Dst: OSSL_PARAM_construct_end
      Src: /src/xmlsec/src/openssl/kdf.c:266,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 271
    functionName: xmlSecOpenSSLKdfSetKey
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKdfGetCtx
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKdfCheckId
    - OSSL_PARAM_construct_octet_string
    - xmlSecBufferGetData
    - xmlSecInvalidSizeDataError
    - OSSL_PARAM_construct_end
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKdfSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:279,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/openssl/kdf.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:281,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:282,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:290,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/kdf.c:303,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/openssl/kdf.c:307,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:308,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/kdf.c:312,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kdf.c:314,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kdf.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:319,1
    - Dst: EVP_KDF_derive
      Src: /src/xmlsec/src/openssl/kdf.c:321,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kdf.c:323,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:331,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kdf.c:331,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/kdf.c:333,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 338
    functionName: xmlSecOpenSSLKdfExecute
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKdfGetCtx
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecInvalidSizeError
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferSetSize
    - EVP_KDF_derive
    - xmlSecTransformIsValid
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKdfExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:361,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kdf.c:368,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kdf.c:369,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:375,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:381,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:387,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:393,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:399,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:405,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:407,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:409,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:411,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kdf.c:417,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kdf.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:423,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/kdf.c:424,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:431,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/xmlsec/src/openssl/kdf.c:434,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/kdf.c:434,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - href
    argTypes:
    - xmlSecOpenSSLKdfCtxPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 356
    functionDepth: 2
    functionLinenumber: 356
    functionLinenumberEnd: 438
    functionName: xmlSecOpenSSLConcatKdfSetDigestNameFromHref
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - strlen
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    - xmlSecInvalidSizeDataError
    - xmlStrcmp
    - OSSL_PARAM_construct_utf8_string
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLConcatKdfSetDigestNameFromHref(xmlSecOpenSSLKdfCtxPtr
      ctx, const xmlChar* href)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:452,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:453,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:454,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kdf.c:455,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:457,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:458,1
    - Dst: xmlSecTransformConcatKdfParamsInitialize
      Src: /src/xmlsec/src/openssl/kdf.c:461,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:463,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:463,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/openssl/kdf.c:469,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/openssl/kdf.c:470,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/openssl/kdf.c:471,1
    - Dst: xmlSecTransformConcatKdfParamsRead
      Src: /src/xmlsec/src/openssl/kdf.c:475,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:477,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:477,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/openssl/kdf.c:483,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/openssl/kdf.c:485,1
    - Dst: xmlSecTransformConcatKdfParamsGetFixedInfo
      Src: /src/xmlsec/src/openssl/kdf.c:490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:492,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:492,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kdf.c:495,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kdf.c:496,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:498,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:498,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:502,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:502,1
    - Dst: OSSL_PARAM_construct_octet_string
      Src: /src/xmlsec/src/openssl/kdf.c:505,1
    - Dst: xmlSecOpenSSLConcatKdfSetDigestNameFromHref
      Src: /src/xmlsec/src/openssl/kdf.c:508,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:510,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:510,1
    - Dst: xmlSecTransformConcatKdfParamsFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:519,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 440
    functionDepth: 13
    functionLinenumber: 440
    functionLinenumberEnd: 522
    functionName: xmlSecOpenSSLConcatKdfNodeRead
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformConcatKdfParamsRead
    - xmlSecTransformConcatKdfParamsFinalize
    - xmlSecOpenSSLConcatKdfSetDigestNameFromHref
    - xmlSecGetNextElementNode
    - xmlSecTransformGetName
    - xmlSecTransformConcatKdfParamsGetFixedInfo
    - xmlSecTransformConcatKdfParamsInitialize
    - xmlSecInternalError
    - xmlSecAssert2
    - OSSL_PARAM_construct_octet_string
    - xmlSecBufferGetData
    - xmlSecInvalidSizeDataError
    - xmlSecUnexpectedNodeError
    - xmlSecOpenSSLKdfGetCtx
    - xmlSecCheckNodeName
    - UNREFERENCED_PARAMETER
    - xmlSecTransformCheckSize
    - xmlSecInvalidNodeError
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLConcatKdfNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: xmlSecOpenSSLTransformConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformConcatKdfGetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:592,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:593,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:594,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:599,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:601,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:603,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:605,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kdf.c:607,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kdf.c:610,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kdf.c:611,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:616,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/kdf.c:617,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/kdf.c:622,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:630,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/xmlsec/src/openssl/kdf.c:633,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/kdf.c:633,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:636,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/xmlsec/src/openssl/kdf.c:639,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/kdf.c:639,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 2
    argNames:
    - ctx
    - href
    argTypes:
    - xmlSecOpenSSLKdfCtxPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 588
    functionDepth: 2
    functionLinenumber: 588
    functionLinenumberEnd: 643
    functionName: xmlSecOpenSSLPbkdf2SetDigestNameFromHref
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - strlen
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    - xmlSecInvalidSizeDataError
    - xmlStrcmp
    - OSSL_PARAM_construct_utf8_string
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLPbkdf2SetDigestNameFromHref(xmlSecOpenSSLKdfCtxPtr
      ctx, const xmlChar* href)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:657,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kdf.c:657,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:658,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kdf.c:658,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:659,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kdf.c:660,1
    - Dst: xmlSecOpenSSLKdfGetCtx
      Src: /src/xmlsec/src/openssl/kdf.c:662,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kdf.c:663,1
    - Dst: xmlSecTransformPbkdf2ParamsInitialize
      Src: /src/xmlsec/src/openssl/kdf.c:665,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:667,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/openssl/kdf.c:673,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/openssl/kdf.c:674,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/openssl/kdf.c:675,1
    - Dst: xmlSecTransformPbkdf2ParamsRead
      Src: /src/xmlsec/src/openssl/kdf.c:678,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:680,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/openssl/kdf.c:685,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/openssl/kdf.c:687,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:693,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:693,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:700,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:700,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/kdf.c:703,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:703,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:705,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:705,1
    - Dst: OSSL_PARAM_construct_uint
      Src: /src/xmlsec/src/openssl/kdf.c:708,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/openssl/kdf.c:711,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kdf.c:712,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kdf.c:713,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:715,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:715,1
    - Dst: xmlSecInvalidSizeDataError
      Src: /src/xmlsec/src/openssl/kdf.c:719,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:719,1
    - Dst: OSSL_PARAM_construct_octet_string
      Src: /src/xmlsec/src/openssl/kdf.c:722,1
    - Dst: xmlSecOpenSSLPbkdf2SetDigestNameFromHref
      Src: /src/xmlsec/src/openssl/kdf.c:725,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kdf.c:727,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kdf.c:727,1
    - Dst: xmlSecTransformPbkdf2ParamsFinalize
      Src: /src/xmlsec/src/openssl/kdf.c:736,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 77
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 645
    functionDepth: 12
    functionLinenumber: 645
    functionLinenumberEnd: 739
    functionName: xmlSecOpenSSLPbkdf2NodeRead
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecGetNextElementNode
    - xmlSecTransformPbkdf2ParamsRead
    - OSSL_PARAM_construct_uint
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecInternalError
    - xmlSecOpenSSLPbkdf2SetDigestNameFromHref
    - xmlSecAssert2
    - xmlSecTransformPbkdf2ParamsInitialize
    - xmlSecBufferGetData
    - OSSL_PARAM_construct_octet_string
    - xmlSecInvalidSizeDataError
    - xmlSecUnexpectedNodeError
    - xmlSecOpenSSLKdfGetCtx
    - xmlSecCheckNodeName
    - UNREFERENCED_PARAMETER
    - xmlSecTransformCheckSize
    - xmlSecTransformPbkdf2ParamsFinalize
    - xmlSecInvalidNodeError
    - xmlSecBufferGetSize
    - xmlSecBufferSwap
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLPbkdf2NodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: xmlSecOpenSSLTransformPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kdf.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: xmlSecOpenSSLKWAesCheckId
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOpenSSLKWAesCheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - cipherNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: XMLSEC_OPENSSL_KW_AES_SET_CIPHER
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_KW_AES_SET_CIPHER(ctx, cipherNameVal)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:119,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:120,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:120,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:123,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kw_aes.c:124,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:126,1
    - Dst: XMLSEC_OPENSSL_KW_AES_SET_CIPHER
      Src: /src/xmlsec/src/openssl/kw_aes.c:127,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:129,1
    - Dst: XMLSEC_OPENSSL_KW_AES_SET_CIPHER
      Src: /src/xmlsec/src/openssl/kw_aes.c:130,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:132,1
    - Dst: XMLSEC_OPENSSL_KW_AES_SET_CIPHER
      Src: /src/xmlsec/src/openssl/kw_aes.c:133,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/kw_aes.c:136,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/openssl/kw_aes.c:140,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:144,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:144,1
    - Dst: xmlSecOpenSSLKWAesFinalize
      Src: /src/xmlsec/src/openssl/kw_aes.c:145,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:151,1
    - Dst: EVP_CIPHER_fetch
      Src: /src/xmlsec/src/openssl/kw_aes.c:152,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:152,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kw_aes.c:154,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:154,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kw_aes.c:155,1
    - Dst: xmlSecOpenSSLKWAesFinalize
      Src: /src/xmlsec/src/openssl/kw_aes.c:156,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 113
    functionDepth: 3
    functionLinenumber: 113
    functionLinenumberEnd: 162
    functionName: xmlSecOpenSSLKWAesInitialize
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_fetch
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecOpenSSLKWAesFinalize
    - xmlSecErrorsSafeString
    - xmlSecTransformGetName
    - xmlSecTransformKWAesInitialize
    - XMLSEC_OPENSSL_KW_AES_SET_CIPHER
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_aes.c:168,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:168,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_aes.c:169,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:169,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:171,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_aes.c:172,1
    - Dst: EVP_CIPHER_free
      Src: /src/xmlsec/src/openssl/kw_aes.c:176,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/openssl/kw_aes.c:180,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kw_aes.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 164
    functionDepth: 3
    functionLinenumber: 164
    functionLinenumberEnd: 182
    functionName: xmlSecOpenSSLKWAesFinalize
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 1
    functionsReached:
    - EVP_CIPHER_free
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:189,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:190,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:190,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:193,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/openssl/kw_aes.c:195,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:197,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 201
    functionName: xmlSecOpenSSLKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:208,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:209,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:209,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:212,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/openssl/kw_aes.c:214,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:216,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 203
    functionDepth: 4
    functionLinenumber: 203
    functionLinenumberEnd: 220
    functionName: xmlSecOpenSSLKWAesSetKey
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecTransformKWAesSetKey
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:228,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:228,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:229,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:229,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kw_aes.c:230,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:232,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:233,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/openssl/kw_aes.c:235,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:237,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 222
    functionDepth: 3
    functionLinenumber: 222
    functionLinenumberEnd: 241
    functionName: xmlSecOpenSSLKWAesExecute
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                         xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionName: xmlSecOpenSSLTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: xmlSecOpenSSLTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: xmlSecOpenSSLTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformKWAes256GetKlass(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:377,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:379,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:380,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:382,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_aes.c:384,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:388,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/kw_aes.c:391,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kw_aes.c:391,1
    - Dst: AES_set_encrypt_key
      Src: /src/xmlsec/src/openssl/kw_aes.c:393,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:395,1
    - Dst: AES_encrypt
      Src: /src/xmlsec/src/openssl/kw_aes.c:398,1
    - Dst: AES_set_decrypt_key
      Src: /src/xmlsec/src/openssl/kw_aes.c:400,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:402,1
    - Dst: AES_decrypt
      Src: /src/xmlsec/src/openssl/kw_aes.c:405,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 7
    argNames:
    - ctx
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - encrypt
    argTypes:
    - xmlSecOpenSSLKWAesCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 367
    functionDepth: 2
    functionLinenumber: 367
    functionLinenumberEnd: 411
    functionName: xmlSecOpenSSLKWAesEncryptDecrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - AES_set_encrypt_key
    - AES_encrypt
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
    - AES_set_decrypt_key
    - xmlSecBufferGetData
    - return
    - AES_decrypt
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWAesEncryptDecrypt(xmlSecOpenSSLKWAesCtxPtr ctx,
      const xmlSecByte * in, xmlSecSize inSize,\n                                xmlSecByte
      * out, xmlSecSize outSize, xmlSecSize * outWritten,\n                                int
      encrypt)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:432,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_aes.c:434,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:435,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:436,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:437,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:438,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/xmlsec/src/openssl/kw_aes.c:440,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:442,1
    - Dst: EVP_CipherInit_ex2
      Src: /src/xmlsec/src/openssl/kw_aes.c:446,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:449,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/xmlsec/src/openssl/kw_aes.c:453,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:455,1
    - Dst: EVP_CipherUpdate
      Src: /src/xmlsec/src/openssl/kw_aes.c:460,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:462,1
    - Dst: EVP_CipherFinal_ex
      Src: /src/xmlsec/src/openssl/kw_aes.c:467,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_aes.c:469,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kw_aes.c:475,1
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/xmlsec/src/openssl/kw_aes.c:480,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 7
    argNames:
    - ctx
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - encrypt
    argTypes:
    - xmlSecOpenSSLKWAesCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 415
    functionDepth: 2
    functionLinenumber: 415
    functionLinenumberEnd: 483
    functionName: xmlSecOpenSSLKWAesEncryptDecrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - EVP_CipherUpdate
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_CIPHER_CTX_new
    - EVP_CipherFinal_ex
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - EVP_CIPHER_CTX_free
    - xmlSecBufferGetData
    - EVP_CIPHER_CTX_set_padding
    - xmlSecBufferGetSize
    - EVP_CipherInit_ex2
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWAesEncryptDecrypt(xmlSecOpenSSLKWAesCtxPtr ctx,
      const xmlSecByte * in, xmlSecSize inSize,\n                                xmlSecByte
      * out, xmlSecSize outSize, xmlSecSize * outWritten,\n                                int
      encrypt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:494,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:495,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:497,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:498,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:499,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:500,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:502,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:503,1
    - Dst: xmlSecOpenSSLKWAesEncryptDecrypt
      Src: /src/xmlsec/src/openssl/kw_aes.c:505,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:507,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 486
    functionDepth: 3
    functionLinenumber: 486
    functionLinenumberEnd: 514
    functionName: xmlSecOpenSSLKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWAesEncryptDecrypt
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWAesBlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:523,1
    - Dst: xmlSecOpenSSLKWAesCheckId
      Src: /src/xmlsec/src/openssl/kw_aes.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:524,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_aes.c:524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:529,1
    - Dst: xmlSecOpenSSLKWAesGetCtx
      Src: /src/xmlsec/src/openssl/kw_aes.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_aes.c:532,1
    - Dst: xmlSecOpenSSLKWAesEncryptDecrypt
      Src: /src/xmlsec/src/openssl/kw_aes.c:534,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_aes.c:536,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_aes.c:537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 516
    functionDepth: 3
    functionLinenumber: 516
    functionLinenumberEnd: 543
    functionName: xmlSecOpenSSLKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWAesEncryptDecrypt
    - xmlSecOpenSSLKWAesGetCtx
    - xmlSecOpenSSLKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWAesBlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:116,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:122,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:128,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:134,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:140,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:146,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:153,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:156,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:159,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:162,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 170
    functionName: xmlSecOpenSSLSignatureLegacyCheckId
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacyCheckId(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionName: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST(ctx, digestVal)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:181,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:182,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:182,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:185,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:187,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:191,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:192,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:192,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:200,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:201,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:201,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:209,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:210,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:210,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:218,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:219,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:227,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:228,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:228,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:236,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:237,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:237,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:246,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:247,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:247,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:252,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:253,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:253,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:258,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:259,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:259,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:264,1
    - Dst: XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:265,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:265,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:274,1
    - Dst: EVP_MD_CTX_new
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:279,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:281,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:281,1
    - Dst: xmlSecOpenSSLSignatureLegacyFinalize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:282,1
    - Dst: EVP_DigestInit
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:286,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:288,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:288,1
    - Dst: xmlSecOpenSSLSignatureLegacyFinalize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:289,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 83
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 295
    functionName: xmlSecOpenSSLSignatureLegacyInitialize
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - EVP_sha3_512
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - EVP_MD_CTX_new
    - xmlSecOpenSSLError
    - EVP_sha3_224
    - xmlSecOpenSSLSignatureLegacyCheckId
    - EVP_ripemd160
    - xmlSecTransformGetName
    - xmlSecOpenSSLSignatureLegacyFinalize
    - EVP_DigestInit
    - EVP_sha512
    - xmlSecInvalidTransfromError
    - xmlSecAssert2
    - EVP_sha384
    - EVP_sha224
    - XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
    - memset
    - xmlSecTransformCheckSize
    - EVP_sha1
    - EVP_sha3_384
    - EVP_sha256
    - EVP_sha3_256
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacyInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:301,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:301,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:302,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:302,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:304,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:305,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:308,1
    - Dst: EVP_MD_CTX_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:312,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 297
    functionDepth: 2
    functionLinenumber: 297
    functionLinenumberEnd: 316
    functionName: xmlSecOpenSSLSignatureLegacyFinalize
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 1
    functionsReached:
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - EVP_MD_CTX_free
    - xmlSecOpenSSLSignatureLegacyCheckId
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLSignatureLegacyFinalize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:323,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:325,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:326,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:331,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:332,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:332,1
    - Dst: xmlSecOpenSSLKeyGetEvp
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:334,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:336,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:336,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:341,1
    - Dst: xmlSecOpenSSLEvpKeyDup
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:344,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:346,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:346,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 351
    functionName: xmlSecOpenSSLSignatureLegacySetKey
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLSignatureLegacyCheckId
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - xmlSecOpenSSLEvpKeyDup
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecOpenSSLKeyGetEvp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacySetKey(xmlSecTransformPtr transform,
      xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:357,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:359,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:360,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 353
    functionDepth: 2
    functionLinenumber: 353
    functionLinenumberEnd: 375
    functionName: xmlSecOpenSSLSignatureLegacySetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLSignatureLegacyCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacySetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:385,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:387,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:390,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:394,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:395,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:399,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:400,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:408,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 378
    functionDepth: 2
    functionLinenumber: 378
    functionLinenumberEnd: 416
    functionName: xmlSecOpenSSLSignatureLegacyVerify
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLSignatureLegacyCheckId
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSignatureLegacyVerify(xmlSecTransformPtr transform,\n
      \                       const xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:426,1
    - Dst: xmlSecOpenSSLSignatureLegacyCheckId
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:428,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:429,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:434,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:438,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:439,1
    - Dst: xmlSecOpenSSLSignatureLegacyGetCtx
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:443,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:445,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:448,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:453,1
    - Dst: EVP_DigestUpdate
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:455,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:455,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:457,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:458,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:462,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:464,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:465,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:471,1
    - Dst: EVP_DigestFinal
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:473,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:475,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:476,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:479,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:485,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:497,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:497,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:499,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 59
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 418
    functionDepth: 2
    functionLinenumber: 418
    functionLinenumberEnd: 504
    functionName: xmlSecOpenSSLSignatureLegacyExecute
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecOpenSSLSignatureLegacyCheckId
    - xmlSecBufferGetData
    - xmlSecOpenSSLSignatureLegacyGetCtx
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - EVP_DigestFinal
    - EVP_DigestUpdate
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacyExecute(xmlSecTransformPtr transform,
      int last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:534,1
    - Dst: EVP_PKEY_get1_EC_KEY
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:537,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:539,1
    - Dst: EC_KEY_get0_group
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:543,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:545,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:548,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:550,1
    - Dst: EC_GROUP_get_order
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:553,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:554,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:557,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:559,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:569,1
    - Dst: EC_KEY_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:572,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 526
    functionDepth: 1
    functionLinenumber: 526
    functionLinenumberEnd: 575
    functionName: xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - EC_GROUP_get_order
    - EVP_PKEY_get1_EC_KEY
    - EC_KEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_num_bytes
    - EC_KEY_get0_group
    - BN_clear_free
    - BN_new
    linkageType: ''
    returnType: xmlSecOpenSSLSizeT
    signature: xmlSecOpenSSLSizeT xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen(EVP_PKEY*
      pKey)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:584,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:585,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:586,1
    - Dst: EVP_PKEY_get1_EC_KEY
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:589,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:591,1
    - Dst: ECDSA_do_sign
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:597,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:599,1
    - Dst: ECDSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:609,1
    - Dst: EC_KEY_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:612,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - pKey
    - buf
    - bufSize
    argTypes:
    - EVP_PKEY*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 615
    functionName: xmlSecOpenSSLSignatureLegacyEcdsaSignImpl
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - ECDSA_do_sign
    - EVP_PKEY_get1_EC_KEY
    - EC_KEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - ECDSA_SIG_free
    linkageType: ''
    returnType: ECDSA_SIG
    signature: 'ECDSA_SIG *

      xmlSecOpenSSLSignatureLegacyEcdsaSignImpl(EVP_PKEY* pKey, const xmlSecByte*
      buf, xmlSecSize bufSize)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:625,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:626,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:627,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:628,1
    - Dst: EVP_PKEY_get1_EC_KEY
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:631,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:633,1
    - Dst: ECDSA_do_verify
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:639,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:641,1
    - Dst: EC_KEY_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:651,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - pKey
    - sig
    - buf
    - bufSize
    argTypes:
    - EVP_PKEY*
    - ECDSA_SIG*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 617
    functionDepth: 1
    functionLinenumber: 617
    functionLinenumberEnd: 655
    functionName: xmlSecOpenSSLSignatureLegacyEcdsaVerifyImpl
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - EC_KEY_free
    - EVP_PKEY_get1_EC_KEY
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - ECDSA_do_verify
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSignatureLegacyEcdsaVerifyImpl(EVP_PKEY* pKey, ECDSA_SIG*
      sig,\n                                     const xmlSecByte* buf, xmlSecSize
      bufSize)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:668,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:669,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:670,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:671,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:672,1
    - Dst: xmlSecOpenSSLSignatureLegacyEcdsaSignImpl
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:675,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:677,1
    - Dst: xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:682,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:684,1
    - Dst: ECDSA_SIG_get0
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:689,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:691,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:696,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:698,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:702,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:704,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:709,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:710,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:712,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:716,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:717,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:720,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:721,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:722,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:723,1
    - Dst: ECDSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:731,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 2
    argNames:
    - ctx
    - out
    argTypes:
    - xmlSecOpenSSLSignatureLegacyCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 657
    functionDepth: 2
    functionLinenumber: 657
    functionLinenumberEnd: 736
    functionName: xmlSecOpenSSLSignatureLegacyEcdsaSign
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - ECDSA_SIG_get0
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_num_bytes
    - ECDSA_SIG_free
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - BN_bn2bin
    - xmlSecBufferSetSize
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
    - xmlSecOpenSSLSignatureLegacyEcdsaSignImpl
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSignatureLegacyEcdsaSign(xmlSecOpenSSLSignatureLegacyCtxPtr
      ctx, xmlSecBufferPtr out)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:748,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:749,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:750,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:752,1
    - Dst: xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:755,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:757,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:775,1
    - Dst: ECDSA_SIG_new
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:780,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:782,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:786,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:788,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:791,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:793,1
    - Dst: ECDSA_SIG_set0
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:797,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:799,1
    - Dst: xmlSecOpenSSLSignatureLegacyEcdsaVerifyImpl
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:806,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:808,1
    - Dst: ECDSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:822,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:825,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures_legacy.c:828,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 75
    argCount: 3
    argNames:
    - ctx
    - signData
    - signSize
    argTypes:
    - xmlSecOpenSSLSignatureLegacyCtxPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 738
    functionDepth: 2
    functionLinenumber: 738
    functionLinenumberEnd: 832
    functionName: xmlSecOpenSSLSignatureLegacyEcdsaVerify
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - ECDSA_SIG_new
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - ECDSA_SIG_set0
    - ECDSA_SIG_free
    - BN_bin2bn
    - xmlSecOpenSSLSignatureLegacyEcdsaVerifyImpl
    - BN_clear_free
    - xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSignatureLegacyEcdsaVerify(xmlSecOpenSSLSignatureLegacyCtxPtr
      ctx,\n                    const xmlSecByte* signData, xmlSecSize signSize)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 878
      start: 875
    functionDepth: 0
    functionLinenumber: 875
    functionLinenumberEnd: 878
    functionName: xmlSecOpenSSLTransformEcdsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 923
    functionDepth: 0
    functionLinenumber: 923
    functionLinenumberEnd: 926
    functionName: xmlSecOpenSSLTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 971
    functionDepth: 0
    functionLinenumber: 971
    functionLinenumberEnd: 974
    functionName: xmlSecOpenSSLTransformEcdsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1022
    functionName: xmlSecOpenSSLTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1070
    functionName: xmlSecOpenSSLTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1115
    functionDepth: 0
    functionLinenumber: 1115
    functionLinenumberEnd: 1118
    functionName: xmlSecOpenSSLTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1164
    functionDepth: 0
    functionLinenumber: 1164
    functionLinenumberEnd: 1167
    functionName: xmlSecOpenSSLTransformEcdsaSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1203
    functionDepth: 0
    functionLinenumber: 1203
    functionLinenumberEnd: 1206
    functionName: xmlSecOpenSSLTransformEcdsaSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1242
    functionDepth: 0
    functionLinenumber: 1242
    functionLinenumberEnd: 1245
    functionName: xmlSecOpenSSLTransformEcdsaSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1281
    functionDepth: 0
    functionLinenumber: 1281
    functionLinenumberEnd: 1284
    functionName: xmlSecOpenSSLTransformEcdsaSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures_legacy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionName: xmlSecOpenSSLTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformKWDes3GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:168,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:169,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:169,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:172,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kw_des.c:173,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/openssl/kw_des.c:175,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:178,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_des.c:178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 163
    functionDepth: 3
    functionLinenumber: 163
    functionLinenumberEnd: 182
    functionName: xmlSecOpenSSLKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_des.c:188,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:188,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_des.c:189,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:189,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:191,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kw_des.c:192,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/openssl/kw_des.c:194,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kw_des.c:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 196
    functionName: xmlSecOpenSSLKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:203,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:204,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:204,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:207,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/openssl/kw_des.c:209,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:211,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_des.c:211,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 215
    functionName: xmlSecOpenSSLKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:222,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:223,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:223,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:226,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/openssl/kw_des.c:228,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:230,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_des.c:230,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 217
    functionDepth: 4
    functionLinenumber: 217
    functionLinenumberEnd: 234
    functionName: xmlSecOpenSSLKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3SetKey
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:242,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:243,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:243,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kw_des.c:244,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:247,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/openssl/kw_des.c:249,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:251,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kw_des.c:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 236
    functionDepth: 3
    functionLinenumber: 236
    functionLinenumberEnd: 255
    functionName: xmlSecOpenSSLKWDes3Execute
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last,\n
      \                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kw_des.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:274,1
    - Dst: SHA1
      Src: /src/xmlsec/src/openssl/kw_des.c:276,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 6
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 284
    functionName: xmlSecOpenSSLKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - UNREFERENCED_PARAMETER
    - SHA1
    - xmlSecOpenSSLError
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3Sha1(xmlSecTransformPtr transform XMLSEC_ATTRIBUTE_UNUSED,\n
      \                      const xmlSecByte * in, xmlSecSize inSize,\n                       xmlSecByte
      * out, xmlSecSize outSize,\n                       xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kw_des.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:297,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:298,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:301,1
    - Dst: EVP_Q_digest
      Src: /src/xmlsec/src/openssl/kw_des.c:304,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:304,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:307,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/kw_des.c:312,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kw_des.c:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 6
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 314
    functionName: xmlSecOpenSSLKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - return
    - EVP_Q_digest
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3Sha1(xmlSecTransformPtr transform XMLSEC_ATTRIBUTE_UNUSED,\n
      \                      const xmlSecByte * in, xmlSecSize inSize,\n                       xmlSecByte
      * out, xmlSecSize outSize,\n                       xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kw_des.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:327,1
    - Dst: RAND_priv_bytes_ex
      Src: /src/xmlsec/src/openssl/kw_des.c:329,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:329,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kw_des.c:331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 337
    functionName: xmlSecOpenSSLKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLError2
    - RAND_priv_bytes_ex
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3GenerateRandom(xmlSecTransformPtr transform
      XMLSEC_ATTRIBUTE_UNUSED,\n                                 xmlSecByte * out,
      xmlSecSize outSize,\n                                 xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:348,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:348,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:349,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:356,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:360,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_des.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:361,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kw_des.c:361,1
    - Dst: xmlSecOpenSSLKWDes3Encrypt
      Src: /src/xmlsec/src/openssl/kw_des.c:363,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_des.c:364,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 339
    functionDepth: 2
    functionLinenumber: 339
    functionLinenumberEnd: 375
    functionName: xmlSecOpenSSLKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecBufferGetData
    - xmlSecOpenSSLKWDes3Encrypt
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3BlockEncrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:386,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kw_des.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:387,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kw_des.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:390,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:394,1
    - Dst: xmlSecOpenSSLKWDes3GetCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:396,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:397,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:398,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_des.c:398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:399,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kw_des.c:399,1
    - Dst: xmlSecOpenSSLKWDes3Encrypt
      Src: /src/xmlsec/src/openssl/kw_des.c:401,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kw_des.c:402,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kw_des.c:408,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 377
    functionDepth: 2
    functionLinenumber: 377
    functionLinenumberEnd: 413
    functionName: xmlSecOpenSSLKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLKWDes3GetCtx
    - xmlSecBufferGetData
    - xmlSecOpenSSLKWDes3Encrypt
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3BlockDecrypt(xmlSecTransformPtr transform,\n
      \                              const xmlSecByte * iv, xmlSecSize ivSize,\n                               const
      xmlSecByte * in, xmlSecSize inSize,\n                               xmlSecByte
      * out, xmlSecSize outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:436,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:437,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:438,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:439,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:440,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:442,1
    - Dst: EVP_CIPHER_key_length
      Src: /src/xmlsec/src/openssl/kw_des.c:444,1
    - Dst: EVP_des_ede3_cbc
      Src: /src/xmlsec/src/openssl/kw_des.c:444,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:446,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:450,1
    - Dst: EVP_CIPHER_iv_length
      Src: /src/xmlsec/src/openssl/kw_des.c:452,1
    - Dst: EVP_des_ede3_cbc
      Src: /src/xmlsec/src/openssl/kw_des.c:452,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kw_des.c:458,1
    - Dst: EVP_des_ede3_cbc
      Src: /src/xmlsec/src/openssl/kw_des.c:461,1
    - Dst: EVP_CIPHER_fetch
      Src: /src/xmlsec/src/openssl/kw_des.c:463,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kw_des.c:463,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:465,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/xmlsec/src/openssl/kw_des.c:471,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:473,1
    - Dst: EVP_CipherInit
      Src: /src/xmlsec/src/openssl/kw_des.c:477,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:479,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/xmlsec/src/openssl/kw_des.c:483,1
    - Dst: EVP_CipherUpdate
      Src: /src/xmlsec/src/openssl/kw_des.c:486,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:488,1
    - Dst: EVP_CipherFinal
      Src: /src/xmlsec/src/openssl/kw_des.c:492,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kw_des.c:494,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kw_des.c:500,1
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/xmlsec/src/openssl/kw_des.c:506,1
    - Dst: EVP_CIPHER_free
      Src: /src/xmlsec/src/openssl/kw_des.c:510,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 69
    argCount: 10
    argNames:
    - key
    - keySize
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - enc
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 516
    functionName: xmlSecOpenSSLKWDes3Encrypt
    functionSourceFile: /src/xmlsec/src/openssl/kw_des.c
    functionUses: 2
    functionsReached:
    - EVP_CIPHER_fetch
    - EVP_CipherUpdate
    - EVP_CIPHER_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_des_ede3_cbc
    - xmlSecOpenSSLGetLibCtx
    - EVP_CIPHER_CTX_new
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - EVP_CIPHER_CTX_free
    - EVP_CIPHER_CTX_set_padding
    - EVP_CipherFinal
    - EVP_CIPHER_key_length
    - EVP_CIPHER_iv_length
    - EVP_CipherInit
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKWDes3Encrypt(const xmlSecByte* key, xmlSecSize keySize,\n
      \                          const xmlSecByte* iv, xmlSecSize ivSize,\n                           const
      xmlSecByte* in, xmlSecSize inSize,\n                           xmlSecByte* out,
      xmlSecSize outSize,\n                           xmlSecSize* outWritten,\n                           int
      enc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - on_error
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionName: XMLSEC_OPENSSL_PUSH_LIB_CTX
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_PUSH_LIB_CTX(on_error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: XMLSEC_OPENSSL_POP_LIB_CTX
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_POP_LIB_CTX()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPENSSL_init_crypto
      Src: /src/xmlsec/src/openssl/app.c:161,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:163,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:168,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 178
    functionName: xmlSecOpenSSLAppInit
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - OPENSSL_init_crypto
    - xmlSecOpenSSLError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppInit(const char* config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsPrintCryptoLibraryLogOnExitIsEnabled
      Src: /src/xmlsec/src/openssl/app.c:192,1
    - Dst: ERR_print_errors_fp
      Src: /src/xmlsec/src/openssl/app.c:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 197
    functionName: xmlSecOpenSSLAppShutdown
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsPrintCryptoLibraryLogOnExitIsEnabled
    - ERR_print_errors_fp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppShutdown(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:219,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/app.c:229,1
    - Dst: strchr
      Src: /src/xmlsec/src/openssl/app.c:236,1
    - Dst: xmlSecInvalidStringDataError
      Src: /src/xmlsec/src/openssl/app.c:238,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:239,1
    - Dst: xmlSecOpenSSLAppEngineKeyLoad
      Src: /src/xmlsec/src/openssl/app.c:245,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:247,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:248,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:249,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:253,1
    - Dst: xmlSecOpenSSLAppStoreKeyLoad
      Src: /src/xmlsec/src/openssl/app.c:255,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:257,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:258,1
    - Dst: xmlSecOpenSSLCreateReadFileBio
      Src: /src/xmlsec/src/openssl/app.c:264,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:266,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:267,1
    - Dst: xmlSecOpenSSLAppKeyLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:271,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:273,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:274,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:275,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:279,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 47
    argCount: 6
    argNames:
    - filename
    - type
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 212
    functionDepth: 2
    functionLinenumber: 212
    functionLinenumberEnd: 283
    functionName: xmlSecOpenSSLAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecInvalidStringDataError
    - xmlSecOpenSSLCreateReadFileBio
    - xmlSecOpenSSLAppStoreKeyLoad
    - strchr
    - BIO_free_all
    - xmlSecOpenSSLAppKeyLoadBIO
    - xmlSecOpenSSLAppEngineKeyLoad
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type, xmlSecKeyDataFormat format,\n    const char *pwd, void* pwdCallback, void*
      pwdCallbackCtx\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:306,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/app.c:309,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:311,1
    - Dst: xmlSecOpenSSLAppKeyLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:316,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:318,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:319,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 325
    functionName: xmlSecOpenSSLAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - BIO_free_all
    - xmlSecOpenSSLAppKeyLoadBIO
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppKeyLoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n                        xmlSecKeyDataFormat format, const
      char *pwd,\n                        void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:353,1
    - Dst: XMLSEC_PTR_TO_FUNC
      Src: /src/xmlsec/src/openssl/app.c:360,1
    - Dst: PEM_read_bio_PrivateKey_ex
      Src: /src/xmlsec/src/openssl/app.c:368,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/app.c:368,1
    - Dst: BIO_reset
      Src: /src/xmlsec/src/openssl/app.c:370,1
    - Dst: PEM_read_bio_PUBKEY_ex
      Src: /src/xmlsec/src/openssl/app.c:371,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/app.c:371,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:375,1
    - Dst: d2i_PrivateKey_ex_bio
      Src: /src/xmlsec/src/openssl/app.c:382,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/app.c:382,1
    - Dst: BIO_reset
      Src: /src/xmlsec/src/openssl/app.c:384,1
    - Dst: XMLSEC_OPENSSL_PUSH_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:386,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:386,1
    - Dst: d2i_PUBKEY_bio
      Src: /src/xmlsec/src/openssl/app.c:387,1
    - Dst: XMLSEC_OPENSSL_POP_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:388,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:391,1
    - Dst: PEM_read_bio_PrivateKey_ex
      Src: /src/xmlsec/src/openssl/app.c:397,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/app.c:397,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:399,1
    - Dst: XMLSEC_OPENSSL_PUSH_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:405,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:405,1
    - Dst: d2i_PKCS8PrivateKey_bio
      Src: /src/xmlsec/src/openssl/app.c:406,1
    - Dst: XMLSEC_OPENSSL_POP_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:407,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:409,1
    - Dst: xmlSecOpenSSLAppPkcs12LoadBIO
      Src: /src/xmlsec/src/openssl/app.c:415,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:417,1
    - Dst: xmlSecOpenSSLAppKeyFromCertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:424,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:426,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/app.c:433,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/app.c:434,1
    - Dst: xmlSecOpenSSLEvpKeyAdopt
      Src: /src/xmlsec/src/openssl/app.c:438,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:440,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:441,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/openssl/app.c:445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:447,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/app.c:448,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/app.c:449,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/openssl/app.c:453,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:455,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/app.c:456,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/app.c:457,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/app.c:458,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 90
    argCount: 5
    argNames:
    - bio
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - BIO*
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 340
    functionDepth: 4
    functionLinenumber: 340
    functionLinenumberEnd: 463
    functionName: xmlSecOpenSSLAppKeyLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 2
    functionsReached:
    - PEM_read_bio_PUBKEY_ex
    - EVP_PKEY_free
    - xmlSecOpenSSLGetLibCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - return
    - XMLSEC_OPENSSL_PUSH_LIB_CTX
    - xmlSecOpenSSLError
    - XMLSEC_PTR_TO_FUNC
    - xmlSecKeyDataDestroy
    - xmlSecKeyDestroy
    - xmlSecKeySetValue
    - d2i_PrivateKey_ex_bio
    - xmlSecInternalError
    - BIO_reset
    - xmlSecAssert2
    - PEM_read_bio_PrivateKey_ex
    - xmlSecOpenSSLEvpKeyAdopt
    - d2i_PUBKEY_bio
    - xmlSecOpenSSLAppPkcs12LoadBIO
    - d2i_PKCS8PrivateKey_bio
    - xmlSecKeyCreate
    - xmlSecKeyDataGetName
    - XMLSEC_OPENSSL_POP_LIB_CTX
    - xmlSecOpenSSLAppKeyFromCertLoadBIO
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat
      format,\n                        const char *pwd, void* pwdCallback,\n                        void*
      pwdCallbackCtx)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:483,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:484,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:485,1
    - Dst: XMLSEC_PTR_TO_FUNC
      Src: /src/xmlsec/src/openssl/app.c:493,1
    - Dst: UI_UTIL_wrap_read_pem_callback
      Src: /src/xmlsec/src/openssl/app.c:496,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:498,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:502,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:503,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:504,1
    - Dst: UI_OpenSSL
      Src: /src/xmlsec/src/openssl/app.c:506,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:508,1
    - Dst: ENGINE_by_id
      Src: /src/xmlsec/src/openssl/app.c:515,1
    - Dst: ENGINE_by_id
      Src: /src/xmlsec/src/openssl/app.c:517,1
    - Dst: ENGINE_ctrl_cmd_string
      Src: /src/xmlsec/src/openssl/app.c:519,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:520,1
    - Dst: ENGINE_ctrl_cmd_string
      Src: /src/xmlsec/src/openssl/app.c:523,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:524,1
    - Dst: ENGINE_ctrl_cmd
      Src: /src/xmlsec/src/openssl/app.c:530,1
    - Dst: UI_null
      Src: /src/xmlsec/src/openssl/app.c:530,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:531,1
    - Dst: ENGINE_set_default
      Src: /src/xmlsec/src/openssl/app.c:534,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:535,1
    - Dst: ENGINE_init
      Src: /src/xmlsec/src/openssl/app.c:538,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:539,1
    - Dst: ENGINE_load_private_key
      Src: /src/xmlsec/src/openssl/app.c:547,1
    - Dst: ENGINE_load_public_key
      Src: /src/xmlsec/src/openssl/app.c:549,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:551,1
    - Dst: ENGINE_load_private_key
      Src: /src/xmlsec/src/openssl/app.c:556,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:558,1
    - Dst: ENGINE_load_public_key
      Src: /src/xmlsec/src/openssl/app.c:562,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:564,1
    - Dst: xmlSecOpenSSLEvpKeyAdopt
      Src: /src/xmlsec/src/openssl/app.c:570,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:572,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/openssl/app.c:577,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:579,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/app.c:579,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/openssl/app.c:583,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:585,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/app.c:585,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/app.c:586,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:595,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/app.c:598,1
    - Dst: ENGINE_finish
      Src: /src/xmlsec/src/openssl/app.c:602,1
    - Dst: ENGINE_free
      Src: /src/xmlsec/src/openssl/app.c:604,1
    - Dst: UI_OpenSSL
      Src: /src/xmlsec/src/openssl/app.c:606,1
    - Dst: UI_destroy_method
      Src: /src/xmlsec/src/openssl/app.c:607,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:613,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:614,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:615,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:616,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:617,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:618,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:619,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/app.c:620,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 134
    argCount: 7
    argNames:
    - engineName
    - engineKeyId
    - type
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 465
    functionDepth: 4
    functionLinenumber: 465
    functionLinenumberEnd: 623
    functionName: xmlSecOpenSSLAppEngineKeyLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 1
    functionsReached:
    - EVP_PKEY_free
    - ENGINE_load_public_key
    - xmlSecOpenSSLError
    - ENGINE_free
    - XMLSEC_PTR_TO_FUNC
    - UI_null
    - xmlSecKeyDataDestroy
    - ENGINE_ctrl_cmd
    - xmlSecKeyDestroy
    - ENGINE_set_default
    - xmlSecKeySetValue
    - ENGINE_finish
    - UI_UTIL_wrap_read_pem_callback
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - UI_OpenSSL
    - ENGINE_load_private_key
    - xmlSecOpenSSLEvpKeyAdopt
    - UNREFERENCED_PARAMETER
    - ENGINE_ctrl_cmd_string
    - xmlSecKeyCreate
    - ENGINE_by_id
    - xmlSecKeyDataGetName
    - ENGINE_init
    - UI_destroy_method
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppEngineKeyLoad(const char *engineName,
      const char *engineKeyId,\n    xmlSecKeyDataType type, xmlSecKeyDataFormat format,\n
      \   const char *pwd, void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:741,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:742,1
    - Dst: X509_get0_pubkey
      Src: /src/xmlsec/src/openssl/app.c:744,1
    - Dst: EVP_PKEY_cmp
      Src: /src/xmlsec/src/openssl/app.c:750,1
    - Dst: EVP_PKEY_eq
      Src: /src/xmlsec/src/openssl/app.c:754,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - pKey
    - cert
    argTypes:
    - EVP_PKEY*
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 737
    functionDepth: 1
    functionLinenumber: 737
    functionLinenumberEnd: 761
    functionName: xmlSecOpenSSLAppCheckCertMatchesKey
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - X509_get0_pubkey
    - EVP_PKEY_eq
    - EVP_PKEY_cmp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppCheckCertMatchesKey(EVP_PKEY * pKey,  X509 * cert)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:770,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:771,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/app.c:774,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/app.c:775,1
    - Dst: xmlSecOpenSSLAppCheckCertMatchesKey
      Src: /src/xmlsec/src/openssl/app.c:781,1
    - Dst: X509_up_ref
      Src: /src/xmlsec/src/openssl/app.c:787,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - pKey
    - certs
    argTypes:
    - EVP_PKEY*
    - STACK_OF*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 796
    functionName: xmlSecOpenSSLAppFindKeyCert
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - X509_up_ref
    - xmlSecAssert2
    - sk_X509_num
    - xmlSecOpenSSLAppCheckCertMatchesKey
    - sk_X509_value
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLAppFindKeyCert(EVP_PKEY * pKey, STACK_OF(X509) * certs)'
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/app.c:809,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:818,1
    - Dst: XMLSEC_PTR_TO_FUNC
      Src: /src/xmlsec/src/openssl/app.c:825,1
    - Dst: UI_UTIL_wrap_read_pem_callback
      Src: /src/xmlsec/src/openssl/app.c:828,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:830,1
    - Dst: OSSL_STORE_open
      Src: /src/xmlsec/src/openssl/app.c:835,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/app.c:839,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:840,1
    - Dst: OSSL_STORE_open_ex
      Src: /src/xmlsec/src/openssl/app.c:844,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/app.c:845,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/app.c:849,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:850,1
    - Dst: sk_X509_new_null
      Src: /src/xmlsec/src/openssl/app.c:856,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:858,1
    - Dst: OSSL_STORE_eof
      Src: /src/xmlsec/src/openssl/app.c:863,1
    - Dst: OSSL_STORE_load
      Src: /src/xmlsec/src/openssl/app.c:864,1
    - Dst: OSSL_STORE_INFO_get_type
      Src: /src/xmlsec/src/openssl/app.c:869,1
    - Dst: OSSL_STORE_INFO_get1_PKEY
      Src: /src/xmlsec/src/openssl/app.c:873,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:875,1
    - Dst: OSSL_STORE_INFO_get1_PUBKEY
      Src: /src/xmlsec/src/openssl/app.c:885,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:887,1
    - Dst: OSSL_STORE_INFO_get1_CERT
      Src: /src/xmlsec/src/openssl/app.c:894,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:896,1
    - Dst: sk_X509_push
      Src: /src/xmlsec/src/openssl/app.c:899,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:901,1
    - Dst: OSSL_STORE_INFO_free
      Src: /src/xmlsec/src/openssl/app.c:911,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:918,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:931,1
    - Dst: xmlSecOpenSSLAppFindKeyCert
      Src: /src/xmlsec/src/openssl/app.c:939,1
    - Dst: xmlSecOpenSSLCreateKey
      Src: /src/xmlsec/src/openssl/app.c:942,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:944,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:952,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:955,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:958,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:961,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:964,1
    - Dst: sk_X509_pop_free
      Src: /src/xmlsec/src/openssl/app.c:967,1
    - Dst: OSSL_STORE_INFO_free
      Src: /src/xmlsec/src/openssl/app.c:970,1
    - Dst: OSSL_STORE_close
      Src: /src/xmlsec/src/openssl/app.c:973,1
    - Dst: UI_destroy_method
      Src: /src/xmlsec/src/openssl/app.c:976,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:982,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:983,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:984,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:985,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:986,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/app.c:988,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 147
    argCount: 5
    argNames:
    - uri
    - type
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 801
    functionDepth: 3
    functionLinenumber: 801
    functionLinenumberEnd: 991
    functionName: xmlSecOpenSSLAppStoreKeyLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 1
    functionsReached:
    - EVP_PKEY_free
    - xmlSecOpenSSLGetLibCtx
    - OSSL_STORE_INFO_get1_PUBKEY
    - OSSL_STORE_INFO_get1_CERT
    - xmlSecOpenSSLError
    - OSSL_STORE_open_ex
    - xmlSecErrorsSafeString
    - XMLSEC_PTR_TO_FUNC
    - OSSL_STORE_open
    - sk_X509_new_null
    - UI_UTIL_wrap_read_pem_callback
    - xmlSecOpenSSLError2
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - OSSL_STORE_close
    - OSSL_STORE_eof
    - sk_X509_pop_free
    - OSSL_STORE_INFO_get_type
    - xmlSecOpenSSLCreateKey
    - STACK_OF
    - OSSL_STORE_load
    - UNREFERENCED_PARAMETER
    - OSSL_STORE_INFO_free
    - X509_free
    - OSSL_STORE_INFO_get1_PKEY
    - sk_X509_push
    - xmlSecOpenSSLAppFindKeyCert
    - UI_destroy_method
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecOpenSSLAppStoreKeyLoad(const char *uri, xmlSecKeyDataType
      type, const char *pwd, void* pwdCallback, void* pwdCallbackCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1010,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1011,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1012,1
    - Dst: xmlSecOpenSSLCreateReadFileBio
      Src: /src/xmlsec/src/openssl/app.c:1014,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1016,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1017,1
    - Dst: xmlSecOpenSSLAppKeyCertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1021,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1023,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1024,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1025,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1029,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1005
    functionDepth: 1
    functionLinenumber: 1005
    functionLinenumberEnd: 1031
    functionName: xmlSecOpenSSLAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLAppKeyCertLoadBIO
    - xmlSecOpenSSLCreateReadFileBio
    - BIO_free_all
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
      xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1050,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1051,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1052,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/app.c:1055,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1057,1
    - Dst: xmlSecOpenSSLAppKeyCertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1062,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1064,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1065,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1069,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 1044
    functionDepth: 1
    functionLinenumber: 1044
    functionLinenumberEnd: 1071
    functionName: xmlSecOpenSSLAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecOpenSSLAppKeyCertLoadBIO
    - BIO_free_all
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize,\n                                xmlSecKeyDataFormat
      format)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1092,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1093,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1094,1
    - Dst: xmlSecOpenSSLX509CertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1109,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1111,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/openssl/app.c:1116,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1118,1
    - Dst: xmlSecOpenSSLKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/openssl/app.c:1123,1
    - Dst: xmlSecOpenSSLKeyGetEvp
      Src: /src/xmlsec/src/openssl/app.c:1127,1
    - Dst: xmlSecOpenSSLAppCheckCertMatchesKey
      Src: /src/xmlsec/src/openssl/app.c:1130,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1132,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/openssl/app.c:1142,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1144,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptCert
      Src: /src/xmlsec/src/openssl/app.c:1148,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1150,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:1161,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 63
    argCount: 3
    argNames:
    - key
    - bio
    - format
    argTypes:
    - xmlSecKeyPtr
    - BIO*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1083
    functionDepth: 4
    functionLinenumber: 1083
    functionLinenumberEnd: 1164
    functionName: xmlSecOpenSSLAppKeyCertLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyEnsureData
    - xmlSecOpenSSLX509CertLoadBIO
    - xmlSecOpenSSLKeyDataX509AdoptKeyCert
    - xmlSecOpenSSLAppCheckCertMatchesKey
    - xmlSecOpenSSLKeyDataX509GetKeyCert
    - X509_free
    - xmlSecOpenSSLKeyDataX509AdoptCert
    - xmlSecOpenSSLKeyGetEvp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeyCertLoadBIO(xmlSecKeyPtr key, BIO* bio, xmlSecKeyDataFormat
      format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1185,1
    - Dst: xmlSecOpenSSLCreateReadFileBio
      Src: /src/xmlsec/src/openssl/app.c:1187,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1189,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1190,1
    - Dst: xmlSecOpenSSLAppPkcs12LoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1194,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1196,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1197,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1198,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1204
      start: 1179
    functionDepth: 1
    functionLinenumber: 1179
    functionLinenumberEnd: 1204
    functionName: xmlSecOpenSSLAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLAppPkcs12LoadBIO
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLCreateReadFileBio
    - BIO_free_all
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppPkcs12Load(const char *filename, const
      char *pwd,\n                           void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1227,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/app.c:1230,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1232,1
    - Dst: xmlSecOpenSSLAppPkcs12LoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1237,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1239,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1240,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1244,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1220
    functionDepth: 1
    functionLinenumber: 1220
    functionLinenumberEnd: 1246
    functionName: xmlSecOpenSSLAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLAppPkcs12LoadBIO
    - xmlSecAssert2
    - xmlSecInternalError2
    - BIO_free_all
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize,\n                           const char *pwd, void* pwdCallback,\n
      \                          void* pwdCallbackCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/app.c:1269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1275,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:1276,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:1277,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/app.c:1279,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
      Src: /src/xmlsec/src/openssl/app.c:1280,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:1280,1
    - Dst: d2i_PKCS12_bio
      Src: /src/xmlsec/src/openssl/app.c:1283,1
    - Dst: XMLSEC_OPENSSL_POP_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:1284,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:1286,1
    - Dst: PKCS12_verify_mac
      Src: /src/xmlsec/src/openssl/app.c:1291,1
    - Dst: XMLSEC_OPENSSL_POP_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:1292,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:1294,1
    - Dst: PKCS12_parse
      Src: /src/xmlsec/src/openssl/app.c:1299,1
    - Dst: XMLSEC_OPENSSL_POP_LIB_CTX
      Src: /src/xmlsec/src/openssl/app.c:1300,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:1302,1
    - Dst: xmlSecOpenSSLCreateKey
      Src: /src/xmlsec/src/openssl/app.c:1320,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1322,1
    - Dst: sk_X509_pop_free
      Src: /src/xmlsec/src/openssl/app.c:1330,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:1333,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/app.c:1336,1
    - Dst: PKCS12_free
      Src: /src/xmlsec/src/openssl/app.c:1339,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 4
    argNames:
    - bio
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - BIO*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 1261
    functionDepth: 1
    functionLinenumber: 1261
    functionLinenumberEnd: 1342
    functionName: xmlSecOpenSSLAppPkcs12LoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 3
    functionsReached:
    - xmlSecOpenSSLCreateKey
    - PKCS12_free
    - STACK_OF
    - UNREFERENCED_PARAMETER
    - strlen
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_free
    - sk_X509_pop_free
    - XMLSEC_SAFE_CAST_SIZE_T_TO_INT
    - return
    - X509_free
    - PKCS12_parse
    - PKCS12_verify_mac
    - XMLSEC_OPENSSL_POP_LIB_CTX
    - d2i_PKCS12_bio
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,\n
      \                          void* pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n                           void*
      pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1363,1
    - Dst: xmlSecOpenSSLX509CertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1366,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1368,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/openssl/app.c:1373,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1375,1
    - Dst: xmlSecOpenSSLX509CertGetKey
      Src: /src/xmlsec/src/openssl/app.c:1380,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1382,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/openssl/app.c:1385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1387,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/openssl/app.c:1393,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1395,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/openssl/app.c:1398,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1400,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/app.c:1411,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/app.c:1414,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:1417,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - bio
    - format
    argTypes:
    - BIO*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1353
    functionDepth: 4
    functionLinenumber: 1353
    functionLinenumberEnd: 1420
    functionName: xmlSecOpenSSLAppKeyFromCertLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyEnsureData
    - xmlSecOpenSSLX509CertLoadBIO
    - xmlSecOpenSSLKeyDataX509AdoptKeyCert
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecOpenSSLX509CertGetKey
    - X509_free
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat
      format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1443,1
    - Dst: xmlSecOpenSSLCreateReadFileBio
      Src: /src/xmlsec/src/openssl/app.c:1445,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1447,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1448,1
    - Dst: xmlSecOpenSSLAppKeysMngrCertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1452,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1454,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1455,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1456,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1460,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1435
    functionDepth: 1
    functionLinenumber: 1435
    functionLinenumberEnd: 1462
    functionName: xmlSecOpenSSLAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLAppKeysMngrCertLoadBIO
    - xmlSecOpenSSLCreateReadFileBio
    - BIO_free_all
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const
      char *filename,\n                            xmlSecKeyDataFormat format, xmlSecKeyDataType
      type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1484,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1487,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/app.c:1490,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1492,1
    - Dst: xmlSecOpenSSLAppKeysMngrCertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1497,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1499,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1500,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1504,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1506
      start: 1477
    functionDepth: 1
    functionLinenumber: 1477
    functionLinenumberEnd: 1506
    functionName: xmlSecOpenSSLAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecOpenSSLAppKeysMngrCertLoadBIO
    - BIO_free_all
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,
      const xmlSecByte* data,\n                                    xmlSecSize dataSize,
      xmlSecKeyDataFormat format,\n                                    xmlSecKeyDataType
      type)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1528,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/app.c:1530,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1532,1
    - Dst: xmlSecOpenSSLX509CertLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1536,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1538,1
    - Dst: xmlSecOpenSSLX509StoreAdoptCert
      Src: /src/xmlsec/src/openssl/app.c:1542,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1544,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/app.c:1545,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 4
    argNames:
    - mngr
    - bio
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - BIO*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1520
    functionDepth: 3
    functionLinenumber: 1520
    functionLinenumberEnd: 1550
    functionName: xmlSecOpenSSLAppKeysMngrCertLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLX509StoreAdoptCert
    - xmlSecOpenSSLX509CertLoadBIO
    - X509_free
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrCertLoadBIO(xmlSecKeysMngrPtr mngr, BIO*
      bio, xmlSecKeyDataFormat format, xmlSecKeyDataType type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1569,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1570,1
    - Dst: xmlSecOpenSSLCreateReadFileBio
      Src: /src/xmlsec/src/openssl/app.c:1572,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1574,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1575,1
    - Dst: xmlSecOpenSSLAppKeysMngrCrlLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1579,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1581,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1582,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1583,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1587,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1589
      start: 1563
    functionDepth: 1
    functionLinenumber: 1563
    functionLinenumberEnd: 1589
    functionName: xmlSecOpenSSLAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLCreateReadFileBio
    - BIO_free_all
    - xmlSecOpenSSLAppKeysMngrCrlLoadBIO
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1607,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1608,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1609,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1610,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/app.c:1613,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1615,1
    - Dst: xmlSecOpenSSLAppKeysMngrCrlLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1620,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1622,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1623,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/app.c:1627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1629
      start: 1602
    functionDepth: 1
    functionLinenumber: 1602
    functionLinenumberEnd: 1629
    functionName: xmlSecOpenSSLAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - BIO_free_all
    - xmlSecOpenSSLAppKeysMngrCrlLoadBIO
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1647,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1648,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1649,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/app.c:1651,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1653,1
    - Dst: xmlSecOpenSSLX509CrlLoadBIO
      Src: /src/xmlsec/src/openssl/app.c:1657,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1659,1
    - Dst: xmlSecOpenSSLX509StoreAdoptCrl
      Src: /src/xmlsec/src/openssl/app.c:1663,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1665,1
    - Dst: X509_CRL_free
      Src: /src/xmlsec/src/openssl/app.c:1666,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - mngr
    - bio
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - BIO*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1641
    functionDepth: 3
    functionLinenumber: 1641
    functionLinenumberEnd: 1671
    functionName: xmlSecOpenSSLAppKeysMngrCrlLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 2
    functionsReached:
    - xmlSecOpenSSLX509CrlLoadBIO
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLX509StoreAdoptCrl
    - X509_CRL_free
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrCrlLoadBIO(xmlSecKeysMngrPtr mngr, BIO*
      bio, xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1687,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1688,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/app.c:1690,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1692,1
    - Dst: xmlSecOpenSSLX509StoreAddCertsPath
      Src: /src/xmlsec/src/openssl/app.c:1696,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1698,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1699,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - path
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1682
    functionDepth: 3
    functionLinenumber: 1682
    functionLinenumberEnd: 1704
    functionName: xmlSecOpenSSLAppKeysMngrAddCertsPath
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLX509StoreAddCertsPath
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrAddCertsPath(xmlSecKeysMngrPtr mngr, const
      char *path)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1721,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1722,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/app.c:1724,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1726,1
    - Dst: xmlSecOpenSSLX509StoreAddCertsFile
      Src: /src/xmlsec/src/openssl/app.c:1730,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1732,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1733,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - filename
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1738
      start: 1716
    functionDepth: 3
    functionLinenumber: 1716
    functionLinenumberEnd: 1738
    functionName: xmlSecOpenSSLAppKeysMngrAddCertsFile
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLX509StoreAddCertsFile
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppKeysMngrAddCertsFile(xmlSecKeysMngrPtr mngr, const
      char *filename)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1756,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/openssl/app.c:1759,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/openssl/app.c:1762,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1764,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/openssl/app.c:1768,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1770,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/openssl/app.c:1771,1
    - Dst: xmlSecOpenSSLKeysMngrInit
      Src: /src/xmlsec/src/openssl/app.c:1776,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1778,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1752
    functionDepth: 2
    functionLinenumber: 1752
    functionLinenumberEnd: 1784
    functionName: xmlSecOpenSSLAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecOpenSSLKeysMngrInit
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1800,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1801,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/openssl/app.c:1803,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1805,1
    - Dst: xmlSecOpenSSLKeysStoreAdoptKey
      Src: /src/xmlsec/src/openssl/app.c:1809,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1796
    functionDepth: 2
    functionLinenumber: 1796
    functionLinenumberEnd: 1810
    functionName: xmlSecOpenSSLAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecInternalError
    - xmlSecOpenSSLKeysStoreAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1833,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1834,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1835,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/app.c:1837,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1839,1
    - Dst: xmlSecOpenSSLX509StoreVerifyKey
      Src: /src/xmlsec/src/openssl/app.c:1843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1847,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1848,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1849,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/app.c:1851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1855
      start: 1828
    functionDepth: 3
    functionLinenumber: 1828
    functionLinenumberEnd: 1855
    functionName: xmlSecOpenSSLAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLX509StoreVerifyKey
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr,
      xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1873,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1874,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/openssl/app.c:1876,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1878,1
    - Dst: xmlSecOpenSSLKeysStoreLoad
      Src: /src/xmlsec/src/openssl/app.c:1882,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1884,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1885,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1868
    functionDepth: 2
    functionLinenumber: 1868
    functionLinenumberEnd: 1890
    functionName: xmlSecOpenSSLAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeysStoreLoad
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char* uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1908,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1909,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/openssl/app.c:1911,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/app.c:1913,1
    - Dst: xmlSecOpenSSLKeysStoreSave
      Src: /src/xmlsec/src/openssl/app.c:1917,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/app.c:1919,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/app.c:1920,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1925
      start: 1902
    functionDepth: 2
    functionLinenumber: 1902
    functionLinenumberEnd: 1925
    functionName: xmlSecOpenSSLAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeysStoreSave
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char* filename,\n                                    xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLSEC_FUNC_TO_PTR
      Src: /src/xmlsec/src/openssl/app.c:1936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1934
    functionDepth: 1
    functionLinenumber: 1934
    functionLinenumberEnd: 1937
    functionName: xmlSecOpenSSLAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - XMLSEC_FUNC_TO_PTR
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecOpenSSLAppGetDefaultPwdCallback(void)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:1947,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/openssl/app.c:1952,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/openssl/app.c:1954,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/openssl/app.c:1957,1
    - Dst: EVP_read_pw_string
      Src: /src/xmlsec/src/openssl/app.c:1961,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:1963,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/app.c:1971,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
      Src: /src/xmlsec/src/openssl/app.c:1972,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:1972,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/openssl/app.c:1977,1
    - Dst: xmlStrPrintf
      Src: /src/xmlsec/src/openssl/app.c:1979,1
    - Dst: xmlSecXmlError
      Src: /src/xmlsec/src/openssl/app.c:1982,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/app.c:1986,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:1986,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/openssl/app.c:1987,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/openssl/app.c:1989,1
    - Dst: EVP_read_pw_string
      Src: /src/xmlsec/src/openssl/app.c:1992,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/app.c:1994,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/app.c:1995,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:1996,1
    - Dst: strcmp
      Src: /src/xmlsec/src/openssl/app.c:2001,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/app.c:2004,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/app.c:2006,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:2007,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
      Src: /src/xmlsec/src/openssl/app.c:2009,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:2009,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/app.c:2014,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/app.c:2015,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 55
    argCount: 4
    argNames:
    - buf
    - buflen
    - verify
    - userdata
    argTypes:
    - char*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 1939
    functionDepth: 1
    functionLinenumber: 1939
    functionLinenumberEnd: 2019
    functionName: xmlSecOpenSSLDefaultPasswordCallback
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlFree
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecXmlError
    - strcmp
    - XMLSEC_SAFE_CAST_SIZE_T_TO_INT
    - return
    - xmlMalloc
    - EVP_read_pw_string
    - xmlStrPrintf
    - xmlSecMallocError
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDefaultPasswordCallback(char *buf, int buflen, int
      verify, void *userdata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/app.c:2029,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:2031,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/app.c:2032,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/app.c:2039,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_INT
      Src: /src/xmlsec/src/openssl/app.c:2040,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:2040,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/app.c:2045,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/app.c:2045,1
    - Dst: strcpy_s
      Src: /src/xmlsec/src/openssl/app.c:2047,1
    - Dst: strncpy
      Src: /src/xmlsec/src/openssl/app.c:2049,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - buf
    - bufLen
    - XMLSEC_ATTRIBUTE_UNUSED
    - userdata
    argTypes:
    - char*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2054
      start: 2021
    functionDepth: 1
    functionLinenumber: 2021
    functionLinenumberEnd: 2054
    functionName: xmlSecOpenSSLDummyPasswordCallback
    functionSourceFile: /src/xmlsec/src/openssl/app.c
    functionUses: 0
    functionsReached:
    - strncpy
    - UNREFERENCED_PARAMETER
    - strlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - strcpy_s
    - XMLSEC_SAFE_CAST_SIZE_T_TO_INT
    - return
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLDummyPasswordCallback(char *buf, int bufLen,\n                                   int
      verify XMLSEC_ATTRIBUTE_UNUSED,\n                                   void *userdata)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: xmlSecOpenSSLKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataX509GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:200,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:200,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 206
    functionName: xmlSecOpenSSLKeyDataX509GetKeyCert
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLKeyDataX509GetKeyCert(xmlSecKeyDataPtr data)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:215,1
    - Dst: sk_X509_new_null
      Src: /src/xmlsec/src/openssl/x509.c:218,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:220,1
    - Dst: sk_X509_delete_ptr
      Src: /src/xmlsec/src/openssl/x509.c:226,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:228,1
    - Dst: sk_X509_insert
      Src: /src/xmlsec/src/openssl/x509.c:233,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:235,1
    - Dst: sk_X509_push
      Src: /src/xmlsec/src/openssl/x509.c:239,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:241,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - cert
    - keyCert
    argTypes:
    - xmlSecOpenSSLX509DataCtxPtr
    - X509*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 248
    functionName: xmlSecOpenSSLKeyDataX509AddCertInternal
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - sk_X509_insert
    - sk_X509_delete_ptr
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_free
    - sk_X509_push
    - sk_X509_new_null
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509AddCertInternal(xmlSecOpenSSLX509DataCtxPtr
      ctx, X509* cert, int keyCert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:267,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:268,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:271,1
    - Dst: X509_cmp
      Src: /src/xmlsec/src/openssl/x509.c:275,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:276,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:279,1
    - Dst: xmlSecOpenSSLKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/openssl/x509.c:281,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:283,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:283,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 290
    functionName: xmlSecOpenSSLKeyDataX509AdoptKeyCert
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLKeyDataX509AddCertInternal
    - xmlSecAssert2
    - X509_cmp
    - X509_free
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, X509*
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:305,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:306,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:308,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:309,1
    - Dst: X509_cmp
      Src: /src/xmlsec/src/openssl/x509.c:313,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:314,1
    - Dst: xmlSecOpenSSLKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/openssl/x509.c:317,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 301
    functionDepth: 2
    functionLinenumber: 301
    functionLinenumberEnd: 318
    functionName: xmlSecOpenSSLKeyDataX509AdoptCert
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLKeyDataX509AddCertInternal
    - xmlSecAssert2
    - X509_cmp
    - X509_free
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509AdoptCert(xmlSecKeyDataPtr data, X509*
      cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:335,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:335,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:339,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/x509.c:343,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:344,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509.c:344,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509.c:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 346
    functionName: xmlSecOpenSSLKeyDataX509GetCert
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - sk_X509_value
    - sk_X509_num
    - return
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLKeyDataX509GetCert(xmlSecKeyDataPtr data, xmlSecSize pos)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:362,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:362,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:365,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509.c:371,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/x509.c:372,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509.c:372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 374
    functionName: xmlSecOpenSSLKeyDataX509GetCertsSize
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - sk_X509_num
    - return
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataX509GetCertsSize(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:390,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:390,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:391,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:394,1
    - Dst: sk_X509_CRL_new_null
      Src: /src/xmlsec/src/openssl/x509.c:397,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:399,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:399,1
    - Dst: sk_X509_CRL_push
      Src: /src/xmlsec/src/openssl/x509.c:404,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:406,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:406,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - data
    - crl
    argTypes:
    - xmlSecKeyDataPtr
    - X509_CRL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 411
    functionName: xmlSecOpenSSLKeyDataX509AdoptCrl
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - sk_X509_CRL_new_null
    - xmlSecKeyDataGetName
    - sk_X509_CRL_push
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, X509_CRL*
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:428,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:428,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:433,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/x509.c:435,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509.c:435,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:436,1
    - Dst: sk_X509_CRL_num
      Src: /src/xmlsec/src/openssl/x509.c:436,1
    - Dst: sk_X509_CRL_value
      Src: /src/xmlsec/src/openssl/x509.c:437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 438
    functionName: xmlSecOpenSSLKeyDataX509GetCrl
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - sk_X509_CRL_value
    - return
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    - sk_X509_CRL_num
    linkageType: ''
    returnType: X509_CRL
    signature: 'X509_CRL *

      xmlSecOpenSSLKeyDataX509GetCrl(xmlSecKeyDataPtr data, xmlSecSize pos)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:454,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:454,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:457,1
    - Dst: sk_X509_CRL_num
      Src: /src/xmlsec/src/openssl/x509.c:463,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/x509.c:464,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509.c:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 466
    functionName: xmlSecOpenSSLKeyDataX509GetCrlsSize
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - return
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - sk_X509_CRL_num
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataX509GetCrlsSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:497,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:497,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:499,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:500,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509.c:502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 504
    functionName: xmlSecOpenSSLKeyDataX509Initialize
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509Initialize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:510,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:510,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:512,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:513,1
    - Dst: sk_X509_pop_free
      Src: /src/xmlsec/src/openssl/x509.c:516,1
    - Dst: sk_X509_CRL_pop_free
      Src: /src/xmlsec/src/openssl/x509.c:519,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509.c:521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 506
    functionDepth: 1
    functionLinenumber: 506
    functionLinenumberEnd: 522
    functionName: xmlSecOpenSSLKeyDataX509Finalize
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - sk_X509_pop_free
    - xmlSecAssert
    - sk_X509_CRL_pop_free
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLX509DataGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataX509Finalize(xmlSecKeyDataPtr data)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:528,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:529,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:529,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:532,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:536,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:537,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:538,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:539,1
    - Dst: sk_X509_deep_copy
      Src: /src/xmlsec/src/openssl/x509.c:545,1
    - Dst: sk_X509_deep_copy
      Src: /src/xmlsec/src/openssl/x509.c:547,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:550,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:550,1
    - Dst: sk_X509_new_null
      Src: /src/xmlsec/src/openssl/x509.c:559,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:561,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:561,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509.c:564,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509.c:566,1
    - Dst: X509_dup
      Src: /src/xmlsec/src/openssl/x509.c:570,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:572,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:572,1
    - Dst: sk_X509_push
      Src: /src/xmlsec/src/openssl/x509.c:575,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:577,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:578,1
    - Dst: sk_X509_CRL_deep_copy
      Src: /src/xmlsec/src/openssl/x509.c:589,1
    - Dst: sk_X509_CRL_deep_copy
      Src: /src/xmlsec/src/openssl/x509.c:591,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:594,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:594,1
    - Dst: sk_X509_CRL_new_null
      Src: /src/xmlsec/src/openssl/x509.c:603,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:605,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:605,1
    - Dst: sk_X509_CRL_num
      Src: /src/xmlsec/src/openssl/x509.c:608,1
    - Dst: sk_X509_CRL_value
      Src: /src/xmlsec/src/openssl/x509.c:610,1
    - Dst: X509_CRL_dup
      Src: /src/xmlsec/src/openssl/x509.c:614,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:616,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:616,1
    - Dst: sk_X509_CRL_push
      Src: /src/xmlsec/src/openssl/x509.c:619,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:621,1
    - Dst: X509_CRL_free
      Src: /src/xmlsec/src/openssl/x509.c:622,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509.c:633,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:634,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509.c:634,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509.c:636,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509.c:638,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:643,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:644,1
    - Dst: X509_cmp
      Src: /src/xmlsec/src/openssl/x509.c:644,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 85
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 649
    functionName: xmlSecOpenSSLKeyDataX509Duplicate
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - sk_X509_deep_copy
    - X509_cmp
    - sk_X509_num
    - xmlSecOpenSSLError
    - sk_X509_CRL_value
    - xmlSecOpenSSLX509DataGetCtx
    - sk_X509_new_null
    - xmlSecAssert2
    - sk_X509_CRL_deep_copy
    - sk_X509_CRL_new_null
    - sk_X509_CRL_push
    - sk_X509_CRL_num
    - X509_CRL_free
    - X509_CRL_dup
    - X509_free
    - X509_dup
    - xmlSecKeyDataCheckId
    - sk_X509_push
    - xmlSecKeyDataGetName
    - sk_X509_value
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:657,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:658,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/x509.c:660,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:662,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:662,1
    - Dst: xmlSecKeyDataX509XmlRead
      Src: /src/xmlsec/src/openssl/x509.c:666,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:668,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:668,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:669,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/x509.c:674,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:675,1
    - Dst: xmlSecOpenSSLVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/openssl/x509.c:680,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:682,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:682,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:683,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:687,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 652
    functionDepth: 5
    functionLinenumber: 652
    functionLinenumberEnd: 694
    functionName: xmlSecOpenSSLKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecOpenSSLVerifyAndAdoptX509KeyData
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecKeyDataX509XmlRead
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:703,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:704,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/openssl/x509.c:707,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/openssl/x509.c:715,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/openssl/x509.c:716,1
    - Dst: xmlSecKeyDataX509XmlWrite
      Src: /src/xmlsec/src/openssl/x509.c:718,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/x509.c:719,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/openssl/x509.c:722,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:723,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 696
    functionDepth: 13
    functionLinenumber: 696
    functionLinenumberEnd: 731
    functionName: xmlSecOpenSSLKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecOpenSSLKeyDataX509GetCrlsSize
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataX509GetCertsSize
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataX509XmlWrite
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyGetData
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:738,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:738,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:739,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:741,1
    - Dst: xmlSecOpenSSLKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/openssl/x509.c:742,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:744,1
    - Dst: xmlSecOpenSSLX509CertDebugDump
      Src: /src/xmlsec/src/openssl/x509.c:745,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/openssl/x509.c:748,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCert
      Src: /src/xmlsec/src/openssl/x509.c:750,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:752,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:753,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:757,1
    - Dst: xmlSecOpenSSLX509CertDebugDump
      Src: /src/xmlsec/src/openssl/x509.c:758,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 733
    functionDepth: 2
    functionLinenumber: 733
    functionLinenumberEnd: 762
    functionName: xmlSecOpenSSLKeyDataX509DebugDump
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLX509CertDebugDump
    - xmlSecInternalError2
    - xmlSecOpenSSLKeyDataX509GetCert
    - xmlSecOpenSSLKeyDataX509GetCertsSize
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataX509GetKeyCert
    - xmlSecKeyDataCheckId
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:769,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:769,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:770,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:772,1
    - Dst: xmlSecOpenSSLKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/openssl/x509.c:773,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:775,1
    - Dst: xmlSecOpenSSLX509CertDebugXmlDump
      Src: /src/xmlsec/src/openssl/x509.c:776,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:777,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/openssl/x509.c:780,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCert
      Src: /src/xmlsec/src/openssl/x509.c:782,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:784,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:785,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:789,1
    - Dst: xmlSecOpenSSLX509CertDebugXmlDump
      Src: /src/xmlsec/src/openssl/x509.c:790,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:791,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:795,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 796
    functionName: xmlSecOpenSSLKeyDataX509DebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError2
    - xmlSecOpenSSLKeyDataX509GetCert
    - xmlSecOpenSSLKeyDataX509GetCertsSize
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataX509GetKeyCert
    - xmlSecKeyDataCheckId
    - fprintf
    - xmlSecOpenSSLX509CertDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:808,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:809,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:809,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:810,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:811,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509.c:814,1
    - Dst: xmlSecOpenSSLX509CertDerRead
      Src: /src/xmlsec/src/openssl/x509.c:815,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/x509.c:815,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509.c:816,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:818,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:818,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509.c:822,1
    - Dst: xmlSecOpenSSLX509CrlDerRead
      Src: /src/xmlsec/src/openssl/x509.c:823,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/x509.c:823,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509.c:824,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:826,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:826,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/x509.c:837,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:839,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:839,1
    - Dst: xmlSecOpenSSLX509StoreFindCertByValue
      Src: /src/xmlsec/src/openssl/x509.c:847,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/x509.c:849,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:849,1
    - Dst: X509_dup
      Src: /src/xmlsec/src/openssl/x509.c:854,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:856,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:856,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptCert
      Src: /src/xmlsec/src/openssl/x509.c:864,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:866,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:866,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/openssl/x509.c:872,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:874,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:874,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:886,1
    - Dst: X509_CRL_free
      Src: /src/xmlsec/src/openssl/x509.c:889,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 74
    argCount: 4
    argNames:
    - data
    - x509Value
    - keysMngr
    - flags
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeysMngrPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 799
    functionDepth: 3
    functionLinenumber: 799
    functionLinenumberEnd: 892
    functionName: xmlSecOpenSSLKeyDataX509Read
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLX509CrlDerRead
    - xmlSecInternalError
    - xmlSecOpenSSLX509CertDerRead
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlSecOpenSSLKeyDataX509AdoptCrl
    - X509_CRL_free
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecOpenSSLX509StoreFindCertByValue
    - xmlSecKeyDataCheckId
    - X509_dup
    - xmlSecOpenSSLKeyDataX509AdoptCert
    - X509_free
    - xmlSecKeyDataGetName
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataX509Read(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n    xmlSecKeysMngrPtr keysMngr, unsigned int flags\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:903,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:904,1
    - Dst: xmlSecOpenSSLCreateMemBio
      Src: /src/xmlsec/src/openssl/x509.c:906,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:908,1
    - Dst: i2d_X509_bio
      Src: /src/xmlsec/src/openssl/x509.c:912,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:914,1
    - Dst: BIO_flush
      Src: /src/xmlsec/src/openssl/x509.c:917,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:919,1
    - Dst: BIO_get_mem_data
      Src: /src/xmlsec/src/openssl/x509.c:923,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:925,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/x509.c:930,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:932,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/x509.c:941,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - X509*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 894
    functionDepth: 3
    functionLinenumber: 894
    functionLinenumberEnd: 944
    functionName: xmlSecOpenSSLX509CertDerWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - i2d_X509_bio
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BIO_get_mem_data
    - BIO_flush
    - xmlSecBufferSetData
    - xmlSecOpenSSLCreateMemBio
    - BIO_free_all
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509CertDerWrite(X509* cert, xmlSecBufferPtr buf)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:955,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:956,1
    - Dst: xmlSecOpenSSLCreateMemBio
      Src: /src/xmlsec/src/openssl/x509.c:958,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:960,1
    - Dst: i2d_X509_CRL_bio
      Src: /src/xmlsec/src/openssl/x509.c:964,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:966,1
    - Dst: BIO_flush
      Src: /src/xmlsec/src/openssl/x509.c:969,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:971,1
    - Dst: BIO_get_mem_data
      Src: /src/xmlsec/src/openssl/x509.c:975,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:977,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/x509.c:982,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:984,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/x509.c:994,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - crl
    - buf
    argTypes:
    - X509_CRL*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 946
    functionDepth: 3
    functionLinenumber: 946
    functionLinenumberEnd: 997
    functionName: xmlSecOpenSSLX509CrlDerWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - i2d_X509_CRL_bio
    - BIO_get_mem_data
    - BIO_flush
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - xmlSecOpenSSLCreateMemBio
    - BIO_free_all
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509CrlDerWrite(X509_CRL* crl, xmlSecBufferPtr buf)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1009,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1010,1
    - Dst: X509_get_ext_by_NID
      Src: /src/xmlsec/src/openssl/x509.c:1012,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1014,1
    - Dst: X509_get_ext
      Src: /src/xmlsec/src/openssl/x509.c:1018,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1020,1
    - Dst: X509V3_EXT_d2i
      Src: /src/xmlsec/src/openssl/x509.c:1024,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1026,1
    - Dst: ASN1_STRING_get0_data
      Src: /src/xmlsec/src/openssl/x509.c:1030,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1032,1
    - Dst: ASN1_STRING_length
      Src: /src/xmlsec/src/openssl/x509.c:1035,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1037,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/x509.c:1042,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1044,1
    - Dst: ASN1_OCTET_STRING_free
      Src: /src/xmlsec/src/openssl/x509.c:1055,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - cert
    - buf
    argTypes:
    - X509*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 999
    functionDepth: 3
    functionLinenumber: 999
    functionLinenumberEnd: 1058
    functionName: xmlSecOpenSSLX509SKIWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_get_ext_by_NID
    - X509V3_EXT_d2i
    - ASN1_STRING_get0_data
    - ASN1_STRING_length
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - X509_get_ext
    - ASN1_OCTET_STRING_free
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509SKIWrite(X509* cert, xmlSecBufferPtr buf)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/x509.c:1065,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/x509.c:1067,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509.c:1068,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1074,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/x509.c:1075,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1080,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/x509.c:1081,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1086,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/x509.c:1087,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1092,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/x509.c:1093,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1098,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/x509.c:1099,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1104,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/x509.c:1105,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1106,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/x509.c:1107,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1108,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/x509.c:1109,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/x509.c:1110,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/x509.c:1111,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/x509.c:1116,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509.c:1117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1060
    functionDepth: 1
    functionLinenumber: 1060
    functionLinenumberEnd: 1120
    functionName: xmlSecOpenSSLX509GetDigestFromAlgorithm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - EVP_sha512
    - EVP_sha3_512
    - xmlSecErrorsSafeString
    - EVP_sha1
    - xmlSecOtherError2
    - EVP_sha3_224
    - EVP_sha3_384
    - EVP_sha384
    - xmlStrcmp
    - EVP_sha256
    - EVP_sha224
    - EVP_sha3_256
    linkageType: ''
    returnType: EVP_MD
    signature: 'EVP_MD *

      xmlSecOpenSSLX509GetDigestFromAlgorithm(const xmlChar* href)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1129,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1130,1
    - Dst: xmlSecOpenSSLX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/openssl/x509.c:1133,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1135,1
    - Dst: X509_digest
      Src: /src/xmlsec/src/openssl/x509.c:1139,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1141,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/x509.c:1145,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1147,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - cert
    - algorithm
    - buf
    argTypes:
    - X509*
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1122
    functionDepth: 3
    functionLinenumber: 1122
    functionLinenumberEnd: 1153
    functionName: xmlSecOpenSSLX509DigestWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLX509GetDigestFromAlgorithm
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_digest
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509DigestWrite(X509* cert, const xmlChar* algorithm,
      xmlSecBufferPtr buf)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1165,1
    - Dst: xmlSecOpenSSLCreateMemBio
      Src: /src/xmlsec/src/openssl/x509.c:1167,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1169,1
    - Dst: X509_NAME_print_ex
      Src: /src/xmlsec/src/openssl/x509.c:1173,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1174,1
    - Dst: BIO_flush
      Src: /src/xmlsec/src/openssl/x509.c:1178,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1180,1
    - Dst: BIO_pending
      Src: /src/xmlsec/src/openssl/x509.c:1184,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1186,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/openssl/x509.c:1192,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/openssl/x509.c:1194,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509.c:1197,1
    - Dst: BIO_read
      Src: /src/xmlsec/src/openssl/x509.c:1199,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1201,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/x509.c:1212,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/x509.c:1215,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 1
    argNames:
    - nm
    argTypes:
    - X509_NAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1155
    functionDepth: 1
    functionLinenumber: 1155
    functionLinenumberEnd: 1218
    functionName: xmlSecOpenSSLX509NameWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecMallocError
    - xmlFree
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_NAME_print_ex
    - BIO_flush
    - BIO_read
    - xmlSecOpenSSLCreateMemBio
    - xmlMalloc
    - BIO_free_all
    - BIO_pending
    - memset
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLX509NameWrite(X509_NAME* nm)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1226,1
    - Dst: ASN1_INTEGER_to_BN
      Src: /src/xmlsec/src/openssl/x509.c:1228,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1230,1
    - Dst: BN_bn2dec
      Src: /src/xmlsec/src/openssl/x509.c:1234,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1236,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509.c:1237,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509.c:1240,1
    - Dst: xmlCharStrdup
      Src: /src/xmlsec/src/openssl/x509.c:1247,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/x509.c:1250,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/x509.c:1253,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 1
    argNames:
    - asni
    argTypes:
    - ASN1_INTEGER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1220
    functionDepth: 2
    functionLinenumber: 1220
    functionLinenumberEnd: 1256
    functionName: xmlSecOpenSSLASN1IntegerWrite
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlCharStrdup
    - BN_bn2dec
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_clear_free
    - ASN1_INTEGER_to_BN
    - OPENSSL_free
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLASN1IntegerWrite(ASN1_INTEGER *asni)'
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1268,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:1268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1270,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCert
      Src: /src/xmlsec/src/openssl/x509.c:1275,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1277,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1278,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/openssl/x509.c:1282,1
    - Dst: xmlSecOpenSSLX509CertDerWrite
      Src: /src/xmlsec/src/openssl/x509.c:1283,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1285,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1286,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/openssl/x509.c:1291,1
    - Dst: xmlSecOpenSSLX509SKIWrite
      Src: /src/xmlsec/src/openssl/x509.c:1292,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1294,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1295,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/openssl/x509.c:1300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1301,1
    - Dst: xmlSecOpenSSLX509NameWrite
      Src: /src/xmlsec/src/openssl/x509.c:1303,1
    - Dst: X509_get_subject_name
      Src: /src/xmlsec/src/openssl/x509.c:1303,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1305,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1306,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/openssl/x509.c:1311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1313,1
    - Dst: xmlSecOpenSSLX509NameWrite
      Src: /src/xmlsec/src/openssl/x509.c:1315,1
    - Dst: X509_get_issuer_name
      Src: /src/xmlsec/src/openssl/x509.c:1315,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1317,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1318,1
    - Dst: xmlSecOpenSSLASN1IntegerWrite
      Src: /src/xmlsec/src/openssl/x509.c:1322,1
    - Dst: X509_get_serialNumber
      Src: /src/xmlsec/src/openssl/x509.c:1322,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1324,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1325,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/openssl/x509.c:1330,1
    - Dst: xmlSecOpenSSLX509DigestWrite
      Src: /src/xmlsec/src/openssl/x509.c:1331,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1333,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1334,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCrl
      Src: /src/xmlsec/src/openssl/x509.c:1342,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1344,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1345,1
    - Dst: xmlSecOpenSSLX509CrlDerWrite
      Src: /src/xmlsec/src/openssl/x509.c:1351,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1353,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1354,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 73
    argCount: 4
    argNames:
    - data
    - x509Value
    - content
    - context
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1261
    functionDepth: 4
    functionLinenumber: 1261
    functionLinenumberEnd: 1367
    functionName: xmlSecOpenSSLKeyDataX509Write
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - X509_get_subject_name
    - XMLSEC_X509DATA_HAS_EMPTY_NODE
    - xmlSecAssert2
    - xmlSecOpenSSLX509CrlDerWrite
    - xmlSecInternalError2
    - xmlSecOpenSSLKeyDataX509GetCert
    - xmlSecOpenSSLX509CertDerWrite
    - xmlSecOpenSSLX509SKIWrite
    - xmlSecOpenSSLKeyDataX509GetCrl
    - X509_get_serialNumber
    - X509_get_issuer_name
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLASN1IntegerWrite
    - xmlSecOpenSSLX509NameWrite
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLX509DigestWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataX509Write(xmlSecKeyDataPtr data,  xmlSecKeyX509DataValuePtr
      x509Value,\n                              int content, void* context)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: mktime
      Src: /src/xmlsec/src/openssl/x509.c:1386,1
    - Dst: mktime
      Src: /src/xmlsec/src/openssl/x509.c:1389,1
    - Dst: gmtime
      Src: /src/xmlsec/src/openssl/x509.c:1395,1
    - Dst: mktime
      Src: /src/xmlsec/src/openssl/x509.c:1400,1
    - Dst: mktime
      Src: /src/xmlsec/src/openssl/x509.c:1403,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - t
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1381
    functionDepth: 0
    functionLinenumber: 1381
    functionLinenumberEnd: 1410
    functionName: my_timegm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - mktime
    - gmtime
    linkageType: ''
    returnType: time_t
    signature: time_t my_timegm(struct tm *t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - tm
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1412
    functionDepth: 0
    functionLinenumber: 1412
    functionLinenumberEnd: 1413
    functionName: timegm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: timegm(tm)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _get_timezone
      Src: /src/xmlsec/src/openssl/x509.c:1420,1
    - Dst: mktime
      Src: /src/xmlsec/src/openssl/x509.c:1423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1417
    functionDepth: 0
    functionLinenumber: 1417
    functionLinenumberEnd: 1424
    functionName: my_timegm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - mktime
    - _get_timezone
    linkageType: ''
    returnType: time_t
    signature: time_t my_timegm(struct tm *t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - tm
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1425
    functionDepth: 0
    functionLinenumber: 1425
    functionLinenumberEnd: 1426
    functionName: timegm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: timegm(tm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - tm
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1430
    functionDepth: 0
    functionLinenumber: 1430
    functionLinenumberEnd: 1431
    functionName: timegm
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: timegm(tm)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1442,1
    - Dst: ASN1_TIME_check
      Src: /src/xmlsec/src/openssl/x509.c:1444,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1445,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509.c:1449,1
    - Dst: ASN1_TIME_to_tm
      Src: /src/xmlsec/src/openssl/x509.c:1450,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1452,1
    - Dst: timegm
      Src: /src/xmlsec/src/openssl/x509.c:1456,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - t
    - res
    argTypes:
    - ASN1_TIME*
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1436
    functionDepth: 1
    functionLinenumber: 1436
    functionLinenumberEnd: 1458
    functionName: xmlSecOpenSSLX509Asn1TimeToTime
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - ASN1_TIME_check
    - ASN1_TIME_to_tm
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - timegm
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509Asn1TimeToTime(const ASN1_TIME * t, time_t * res)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1467,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1468,1
    - Dst: ASN1_TIME_check
      Src: /src/xmlsec/src/openssl/x509.c:1470,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1471,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509.c:1475,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1479,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1482,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1486,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1487,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1488,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1489,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1490,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1494,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1496,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1503,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1505,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1505,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1506,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1507,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1508,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1509,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1510,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1514,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1516,1
    - Dst: g2
      Src: /src/xmlsec/src/openssl/x509.c:1516,1
    - Dst: timegm
      Src: /src/xmlsec/src/openssl/x509.c:1525,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 50
    argCount: 2
    argNames:
    - t
    - res
    argTypes:
    - ASN1_TIME*
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1462
    functionDepth: 1
    functionLinenumber: 1462
    functionLinenumberEnd: 1527
    functionName: xmlSecOpenSSLX509Asn1TimeToTime
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - ASN1_TIME_check
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - g2
    - timegm
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509Asn1TimeToTime(const ASN1_TIME * t, time_t * res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1477
    functionDepth: 0
    functionLinenumber: 1477
    functionLinenumberEnd: 1478
    functionName: g2
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: g2(p)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1540,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/x509.c:1540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1541,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1542,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1543,1
    - Dst: xmlSecOpenSSLX509DataGetCtx
      Src: /src/xmlsec/src/openssl/x509.c:1545,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1547,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/x509.c:1549,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/x509.c:1555,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1557,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1557,1
    - Dst: xmlSecOpenSSLX509StoreVerify
      Src: /src/xmlsec/src/openssl/x509.c:1560,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/x509.c:1564,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1564,1
    - Dst: X509_dup
      Src: /src/xmlsec/src/openssl/x509.c:1573,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1575,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1575,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/openssl/x509.c:1578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1580,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1580,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:1581,1
    - Dst: xmlSecOpenSSLX509CertGetKey
      Src: /src/xmlsec/src/openssl/x509.c:1587,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1589,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1589,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/openssl/x509.c:1592,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1593,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1593,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:1594,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/openssl/x509.c:1597,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1599,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1599,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:1600,1
    - Dst: X509_get0_notBefore
      Src: /src/xmlsec/src/openssl/x509.c:1606,1
    - Dst: xmlSecOpenSSLX509Asn1TimeToTime
      Src: /src/xmlsec/src/openssl/x509.c:1607,1
    - Dst: X509_get0_notBefore
      Src: /src/xmlsec/src/openssl/x509.c:1607,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1609,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1609,1
    - Dst: X509_get0_notAfter
      Src: /src/xmlsec/src/openssl/x509.c:1615,1
    - Dst: xmlSecOpenSSLX509Asn1TimeToTime
      Src: /src/xmlsec/src/openssl/x509.c:1616,1
    - Dst: X509_get0_notAfter
      Src: /src/xmlsec/src/openssl/x509.c:1616,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1618,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1618,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/openssl/x509.c:1628,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1630,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/x509.c:1630,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 77
    argCount: 3
    argNames:
    - key
    - data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1531
    functionDepth: 3
    functionLinenumber: 1531
    functionLinenumberEnd: 1636
    functionName: xmlSecOpenSSLVerifyAndAdoptX509KeyData
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - X509_get0_notAfter
    - xmlSecOpenSSLX509StoreVerify
    - xmlSecOpenSSLKeyDataX509AdoptKeyCert
    - xmlSecKeyGetValue
    - xmlSecOpenSSLError
    - xmlSecKeyDataDestroy
    - xmlSecOpenSSLX509CertGetKey
    - xmlSecOpenSSLX509DataGetCtx
    - X509_get0_notBefore
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLX509Asn1TimeToTime
    - xmlSecKeyAdoptData
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    - xmlSecKeyReqMatchKeyValue
    - X509_free
    - X509_dup
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLVerifyAndAdoptX509KeyData(xmlSecKeyPtr key, xmlSecKeyDataPtr
      data, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1651,1
    - Dst: X509_get_pubkey
      Src: /src/xmlsec/src/openssl/x509.c:1653,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1655,1
    - Dst: xmlSecOpenSSLEvpKeyAdopt
      Src: /src/xmlsec/src/openssl/x509.c:1659,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1661,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/x509.c:1662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - cert
    argTypes:
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1667
      start: 1646
    functionDepth: 1
    functionLinenumber: 1646
    functionLinenumberEnd: 1667
    functionName: xmlSecOpenSSLX509CertGetKey
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - X509_get_pubkey
    - EVP_PKEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyAdopt
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLX509CertGetKey(X509* cert)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1675,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1676,1
    - Dst: X509_new_ex
      Src: /src/xmlsec/src/openssl/x509.c:1679,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509.c:1679,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1681,1
    - Dst: PEM_read_bio_X509_AUX
      Src: /src/xmlsec/src/openssl/x509.c:1689,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1691,1
    - Dst: d2i_X509_bio
      Src: /src/xmlsec/src/openssl/x509.c:1698,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1700,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/x509.c:1706,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/x509.c:1707,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:1713,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - bio
    - format
    argTypes:
    - BIO*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1670
    functionDepth: 1
    functionLinenumber: 1670
    functionLinenumberEnd: 1716
    functionName: xmlSecOpenSSLX509CertLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - PEM_read_bio_X509_AUX
    - d2i_X509_bio
    - X509_free
    - X509_new_ex
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLX509CertLoadBIO(BIO* bio, xmlSecKeyDataFormat format)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1724,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1725,1
    - Dst: X509_CRL_new_ex
      Src: /src/xmlsec/src/openssl/x509.c:1728,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509.c:1728,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1730,1
    - Dst: PEM_read_bio_X509_CRL
      Src: /src/xmlsec/src/openssl/x509.c:1738,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1740,1
    - Dst: d2i_X509_CRL_bio
      Src: /src/xmlsec/src/openssl/x509.c:1747,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509.c:1749,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/x509.c:1755,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/x509.c:1756,1
    - Dst: X509_CRL_free
      Src: /src/xmlsec/src/openssl/x509.c:1762,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - bio
    - format
    argTypes:
    - BIO*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1765
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1765
    functionName: xmlSecOpenSSLX509CrlLoadBIO
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - X509_CRL_new_ex
    - PEM_read_bio_X509_CRL
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - X509_CRL_free
    - d2i_X509_CRL_bio
    linkageType: ''
    returnType: X509_CRL
    signature: 'X509_CRL *

      xmlSecOpenSSLX509CrlLoadBIO(BIO* bio, xmlSecKeyDataFormat format)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1772,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1773,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/x509.c:1775,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1777,1
    - Dst: xmlSecOpenSSLX509CertLoadBIO
      Src: /src/xmlsec/src/openssl/x509.c:1782,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1784,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/x509.c:1790,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1767
    functionDepth: 2
    functionLinenumber: 1767
    functionLinenumberEnd: 1793
    functionName: xmlSecOpenSSLX509CertDerRead
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecOpenSSLX509CertLoadBIO
    - BIO_free_all
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLX509CertDerRead(const xmlSecByte* buf, xmlSecSize size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1800,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1801,1
    - Dst: xmlSecOpenSSLCreateMemBufBio
      Src: /src/xmlsec/src/openssl/x509.c:1803,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509.c:1805,1
    - Dst: xmlSecOpenSSLX509CrlLoadBIO
      Src: /src/xmlsec/src/openssl/x509.c:1809,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1811,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/x509.c:1818,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1795
    functionDepth: 2
    functionLinenumber: 1795
    functionLinenumberEnd: 1821
    functionName: xmlSecOpenSSLX509CrlDerRead
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509CrlLoadBIO
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - BIO_free_all
    - xmlSecOpenSSLCreateMemBufBio
    linkageType: ''
    returnType: X509_CRL
    signature: 'X509_CRL *

      xmlSecOpenSSLX509CrlDerRead(xmlSecByte* buf, xmlSecSize size)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:1828,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:1829,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1831,1
    - Dst: X509_NAME_oneline
      Src: /src/xmlsec/src/openssl/x509.c:1832,1
    - Dst: X509_get_subject_name
      Src: /src/xmlsec/src/openssl/x509.c:1832,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1833,1
    - Dst: X509_NAME_oneline
      Src: /src/xmlsec/src/openssl/x509.c:1834,1
    - Dst: X509_get_issuer_name
      Src: /src/xmlsec/src/openssl/x509.c:1834,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1835,1
    - Dst: ASN1_INTEGER_to_BN
      Src: /src/xmlsec/src/openssl/x509.c:1836,1
    - Dst: X509_get_serialNumber
      Src: /src/xmlsec/src/openssl/x509.c:1836,1
    - Dst: BN_print_fp
      Src: /src/xmlsec/src/openssl/x509.c:1838,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509.c:1839,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1840,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - X509*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1823
    functionDepth: 1
    functionLinenumber: 1823
    functionLinenumberEnd: 1844
    functionName: xmlSecOpenSSLX509CertDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - X509_get_subject_name
    - BN_clear_free
    - X509_get_serialNumber
    - xmlSecAssert
    - BN_print_fp
    - X509_get_issuer_name
    - ASN1_INTEGER_to_BN
    - fprintf
    - X509_NAME_oneline
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLX509CertDebugDump(X509* cert, FILE* output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:1852,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509.c:1853,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1855,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1859,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1862,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1865,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1867,1
    - Dst: ASN1_INTEGER_to_BN
      Src: /src/xmlsec/src/openssl/x509.c:1868,1
    - Dst: X509_get_serialNumber
      Src: /src/xmlsec/src/openssl/x509.c:1868,1
    - Dst: BN_print_fp
      Src: /src/xmlsec/src/openssl/x509.c:1870,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509.c:1871,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/x509.c:1873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - X509*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1847
    functionDepth: 1
    functionLinenumber: 1847
    functionLinenumberEnd: 1874
    functionName: xmlSecOpenSSLX509CertDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 1
    functionsReached:
    - BN_clear_free
    - X509_get_serialNumber
    - xmlSecAssert
    - BN_print_fp
    - ASN1_INTEGER_to_BN
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLX509CertDebugXmlDump(X509* cert, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1934
    functionDepth: 0
    functionLinenumber: 1934
    functionLinenumberEnd: 1937
    functionName: xmlSecOpenSSLKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataRawX509CertGetKlass(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1947,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1948,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1949,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1950,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509.c:1951,1
    - Dst: xmlSecOpenSSLX509CertDerRead
      Src: /src/xmlsec/src/openssl/x509.c:1953,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1955,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/x509.c:1959,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1961,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:1961,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:1962,1
    - Dst: xmlSecOpenSSLKeyDataX509AdoptCert
      Src: /src/xmlsec/src/openssl/x509.c:1966,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1968,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:1968,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509.c:1969,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:1970,1
    - Dst: xmlSecOpenSSLVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/openssl/x509.c:1975,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509.c:1977,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/x509.c:1977,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:1978,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/x509.c:1982,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1989
      start: 1939
    functionDepth: 4
    functionLinenumber: 1939
    functionLinenumberEnd: 1989
    functionName: xmlSecOpenSSLKeyDataRawX509CertBinRead
    functionSourceFile: /src/xmlsec/src/openssl/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLVerifyAndAdoptX509KeyData
    - xmlSecOpenSSLX509CertDerRead
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - X509_free
    - xmlSecKeyDataKlassGetName
    - xmlSecOpenSSLKeyDataX509AdoptCert
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n    const xmlSecByte* buf, xmlSecSize bufSize, xmlSecKeyInfoCtxPtr keyInfoCtx\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:97,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:98,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:100,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:101,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:104,1
    - Dst: EVP_CIPHER_iv_length
      Src: /src/xmlsec/src/openssl/ciphers.c:107,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:112,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:113,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:113,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:115,1
    - Dst: RAND_priv_bytes_ex
      Src: /src/xmlsec/src/openssl/ciphers.c:118,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:118,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/ciphers.c:120,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/openssl/ciphers.c:125,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:127,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:138,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:138,1
    - Dst: memcpy
      Src: /src/xmlsec/src/openssl/ciphers.c:139,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:139,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/ciphers.c:142,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:144,1
    - Dst: EVP_CipherInit
      Src: /src/xmlsec/src/openssl/ciphers.c:150,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:152,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/xmlsec/src/openssl/ciphers.c:166,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 50
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 87
    functionDepth: 3
    functionLinenumber: 87
    functionLinenumberEnd: 170
    functionName: xmlSecOpenSSLEvpBlockCipherCtxInit
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecOpenSSLError2
    - RAND_priv_bytes_ex
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlSecOpenSSLGetLibCtx
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - EVP_CIPHER_CTX_set_padding
    - xmlSecBufferAppend
    - xmlSecBufferGetSize
    - EVP_CIPHER_iv_length
    - EVP_CipherInit
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherCtxInit(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n                                xmlSecBufferPtr in, xmlSecBufferPtr out,\n
      \                               int encrypt,\n                                const
      xmlChar* cipherName,\n                                xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:187,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:188,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:196,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:199,1
    - Dst: EVP_CIPHER_block_size
      Src: /src/xmlsec/src/openssl/ciphers.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:207,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:209,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:210,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:212,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/ciphers.c:216,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:218,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/ciphers.c:219,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/ciphers.c:225,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:227,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/ciphers.c:228,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:234,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/ciphers.c:237,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:237,1
    - Dst: EVP_CipherUpdate
      Src: /src/xmlsec/src/openssl/ciphers.c:238,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:250,1
    - Dst: EVP_CIPHER_CTX_encrypting
      Src: /src/xmlsec/src/openssl/ciphers.c:251,1
    - Dst: EVP_CIPHER_CTX_ctrl
      Src: /src/xmlsec/src/openssl/ciphers.c:252,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:255,1
    - Dst: EVP_CipherFinal
      Src: /src/xmlsec/src/openssl/ciphers.c:261,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:268,1
    - Dst: EVP_CIPHER_CTX_encrypting
      Src: /src/xmlsec/src/openssl/ciphers.c:269,1
    - Dst: EVP_CIPHER_CTX_ctrl
      Src: /src/xmlsec/src/openssl/ciphers.c:270,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:273,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:281,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:281,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:284,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:286,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 76
    argCount: 7
    argNames:
    - ctx
    - in
    - inSize
    - out
    - cipherName
    - final
    - tagData
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecBufferPtr
    - xmlChar*
    - int
    - xmlSecByte*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 293
    functionName: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - EVP_CipherUpdate
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - EVP_CIPHER_CTX_ctrl
    - xmlSecBufferGetData
    - return
    - EVP_CIPHER_CTX_encrypting
    - EVP_CipherFinal
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecBufferSetSize
    - EVP_CIPHER_block_size
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n        const xmlSecByte * in,\n        xmlSecSize inSize,\n        xmlSecBufferPtr
      out,\n        const xmlChar* cipherName,\n        int final,\n        xmlSecByte
      *tagData)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:307,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:308,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:311,1
    - Dst: EVP_CIPHER_block_size
      Src: /src/xmlsec/src/openssl/ciphers.c:313,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:314,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:315,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:315,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:355,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:357,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
      Src: /src/xmlsec/src/openssl/ciphers.c:358,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:361,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/ciphers.c:366,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:368,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:378,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 295
    functionDepth: 3
    functionLinenumber: 295
    functionLinenumberEnd: 383
    functionName: xmlSecOpenSSLEvpBlockCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
    - EVP_CIPHER_block_size
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherCtxUpdate(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n                                     xmlSecBufferPtr in, xmlSecBufferPtr
      out,\n                                     const xmlChar* cipherName,\n                                     xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:402,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:403,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:404,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/ciphers.c:405,1
    - Dst: EVP_CIPHER_block_size
      Src: /src/xmlsec/src/openssl/ciphers.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:408,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:409,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:412,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:413,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/ciphers.c:414,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:415,1
    - Dst: EVP_CIPHER_CTX_encrypting
      Src: /src/xmlsec/src/openssl/ciphers.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:431,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:435,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:435,1
    - Dst: memcpy
      Src: /src/xmlsec/src/openssl/ciphers.c:436,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:441,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:441,1
    - Dst: RAND_priv_bytes_ex
      Src: /src/xmlsec/src/openssl/ciphers.c:442,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:442,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:445,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
      Src: /src/xmlsec/src/openssl/ciphers.c:452,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:452,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:455,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:455,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
      Src: /src/xmlsec/src/openssl/ciphers.c:456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:458,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
      Src: /src/xmlsec/src/openssl/ciphers.c:465,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:467,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:472,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:473,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/ciphers.c:474,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:474,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/ciphers.c:476,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/ciphers.c:483,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:486,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:489,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:489,1
    - Dst: xmlSecBufferRemoveTail
      Src: /src/xmlsec/src/openssl/ciphers.c:490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:492,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/ciphers.c:498,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:500,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 75
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - cipherName
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 385
    functionDepth: 3
    functionLinenumber: 385
    functionLinenumberEnd: 507
    functionName: xmlSecOpenSSLEvpBlockCipherCBCCtxFinal
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLGetLibCtx
    - return
    - EVP_CIPHER_block_size
    - RAND_priv_bytes_ex
    - xmlSecOpenSSLError
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecBufferGetData
    - EVP_CIPHER_CTX_encrypting
    - UNREFERENCED_PARAMETER
    - xmlSecInvalidDataError
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecBufferGetSize
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
    - xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
    - xmlSecBufferRemoveTail
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherCBCCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n        xmlSecBufferPtr in,\n        xmlSecBufferPtr out,\n        const
      xmlChar* cipherName,\n        xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:527,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:532,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:533,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:535,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:536,1
    - Dst: EVP_CIPHER_CTX_encrypting
      Src: /src/xmlsec/src/openssl/ciphers.c:538,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
      Src: /src/xmlsec/src/openssl/ciphers.c:539,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:542,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:547,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/ciphers.c:548,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:550,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:553,1
    - Dst: memcpy
      Src: /src/xmlsec/src/openssl/ciphers.c:554,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:555,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:557,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:562,1
    - Dst: memcpy
      Src: /src/xmlsec/src/openssl/ciphers.c:565,1
    - Dst: xmlSecBufferRemoveTail
      Src: /src/xmlsec/src/openssl/ciphers.c:567,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:569,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:570,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
      Src: /src/xmlsec/src/openssl/ciphers.c:573,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:576,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/ciphers.c:582,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/ciphers.c:584,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 49
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 510
    functionDepth: 3
    functionLinenumber: 510
    functionLinenumberEnd: 591
    functionName: xmlSecOpenSSLEvpBlockCipherGCMCtxFinal
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - EVP_CIPHER_CTX_encrypting
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
    - xmlSecBufferSetMaxSize
    - xmlSecBufferRemoveTail
    - memcpy
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherGCMCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n        xmlSecBufferPtr in,\n        xmlSecBufferPtr out,\n        const
      xmlChar* cipherName,\n        xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:601,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCBCCtxFinal
      Src: /src/xmlsec/src/openssl/ciphers.c:604,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGCMCtxFinal
      Src: /src/xmlsec/src/openssl/ciphers.c:607,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/ciphers.c:609,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecOpenSSLEvpBlockCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 594
    functionDepth: 4
    functionLinenumber: 594
    functionLinenumberEnd: 613
    functionName: xmlSecOpenSSLEvpBlockCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecOpenSSLEvpBlockCipherCBCCtxFinal
    - xmlSecOpenSSLEvpBlockCipherGCMCtxFinal
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr
      ctx,\n        xmlSecBufferPtr in,\n        xmlSecBufferPtr out,\n        const
      xmlChar* cipherName,\n        xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:640,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:646,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:647,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:648,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:649,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:650,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:651,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 637
    functionDepth: 1
    functionLinenumber: 637
    functionLinenumberEnd: 658
    functionName: xmlSecOpenSSLEvpBlockCipherCheckId
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpBlockCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - cipherVal
    - ','
    - cipherNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 664
    functionName: XMLSEC_OPENSSL_SET_CIPHER
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SET_CIPHER(ctx, cipherVal, cipherNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - cipherVal
    - ','
    - cipherNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 665
    functionDepth: 0
    functionLinenumber: 665
    functionLinenumberEnd: 667
    functionName: XMLSEC_OPENSSL_SET_CIPHER
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SET_CIPHER(ctx, cipherVal, cipherNameVal)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:673,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:674,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/ciphers.c:674,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGetCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:676,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:677,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/ciphers.c:679,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:683,1
    - Dst: EVP_des_ede3_cbc
      Src: /src/xmlsec/src/openssl/ciphers.c:683,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:691,1
    - Dst: EVP_aes_128_cbc
      Src: /src/xmlsec/src/openssl/ciphers.c:691,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:695,1
    - Dst: EVP_aes_192_cbc
      Src: /src/xmlsec/src/openssl/ciphers.c:695,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:699,1
    - Dst: EVP_aes_256_cbc
      Src: /src/xmlsec/src/openssl/ciphers.c:699,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:703,1
    - Dst: EVP_aes_128_gcm
      Src: /src/xmlsec/src/openssl/ciphers.c:703,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:707,1
    - Dst: EVP_aes_192_gcm
      Src: /src/xmlsec/src/openssl/ciphers.c:707,1
    - Dst: XMLSEC_OPENSSL_SET_CIPHER
      Src: /src/xmlsec/src/openssl/ciphers.c:711,1
    - Dst: EVP_aes_256_gcm
      Src: /src/xmlsec/src/openssl/ciphers.c:711,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/ciphers.c:718,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:724,1
    - Dst: EVP_CIPHER_fetch
      Src: /src/xmlsec/src/openssl/ciphers.c:725,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:725,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/ciphers.c:727,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:727,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/ciphers.c:728,1
    - Dst: xmlSecOpenSSLEvpBlockCipherFinalize
      Src: /src/xmlsec/src/openssl/ciphers.c:729,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/xmlsec/src/openssl/ciphers.c:735,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/ciphers.c:737,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:737,1
    - Dst: xmlSecOpenSSLEvpBlockCipherFinalize
      Src: /src/xmlsec/src/openssl/ciphers.c:738,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 59
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 744
    functionName: xmlSecOpenSSLEvpBlockCipherInitialize
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_fetch
    - XMLSEC_OPENSSL_SET_CIPHER
    - EVP_aes_192_gcm
    - xmlSecOpenSSLGetLibCtx
    - EVP_aes_256_gcm
    - xmlSecOpenSSLError
    - EVP_aes_128_cbc
    - xmlSecErrorsSafeString
    - EVP_CIPHER_CTX_new
    - xmlSecTransformGetName
    - xmlSecInvalidTransfromError
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - EVP_des_ede3_cbc
    - xmlSecOpenSSLEvpBlockCipherCheckId
    - EVP_aes_256_cbc
    - memset
    - EVP_aes_192_cbc
    - xmlSecOpenSSLEvpBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - EVP_aes_128_gcm
    - xmlSecOpenSSLEvpBlockCipherFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpBlockCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/ciphers.c:750,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:750,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/ciphers.c:751,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/ciphers.c:751,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGetCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:753,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/ciphers.c:754,1
    - Dst: EVP_CIPHER_CTX_free
      Src: /src/xmlsec/src/openssl/ciphers.c:757,1
    - Dst: EVP_CIPHER_free
      Src: /src/xmlsec/src/openssl/ciphers.c:761,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/ciphers.c:764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 746
    functionDepth: 2
    functionLinenumber: 746
    functionLinenumberEnd: 765
    functionName: xmlSecOpenSSLEvpBlockCipherFinalize
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 1
    functionsReached:
    - EVP_CIPHER_free
    - xmlSecOpenSSLEvpBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - EVP_CIPHER_CTX_free
    - xmlSecAssert
    - xmlSecOpenSSLEvpBlockCipherCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLEvpBlockCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:772,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:772,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:773,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:774,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/ciphers.c:774,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:775,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGetCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:777,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:778,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:779,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:780,1
    - Dst: EVP_CIPHER_key_length
      Src: /src/xmlsec/src/openssl/ciphers.c:790,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:791,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:794,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:794,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:794,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 796
    functionName: xmlSecOpenSSLEvpBlockCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLEvpBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecAssert2
    - return
    - EVP_CIPHER_key_length
    - xmlSecTransformGetName
    - xmlSecOpenSSLEvpBlockCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpBlockCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:805,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:805,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:806,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:807,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/ciphers.c:807,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:808,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGetCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:810,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:811,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:812,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:813,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:814,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:815,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:815,1
    - Dst: EVP_CIPHER_key_length
      Src: /src/xmlsec/src/openssl/ciphers.c:817,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:818,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/ciphers.c:819,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/ciphers.c:819,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:819,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:820,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/ciphers.c:822,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/ciphers.c:822,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:823,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:825,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/openssl/ciphers.c:826,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:826,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:827,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:830,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:830,1
    - Dst: memcpy
      Src: /src/xmlsec/src/openssl/ciphers.c:831,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/ciphers.c:831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 835
    functionName: xmlSecOpenSSLEvpBlockCipherSetKey
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecOpenSSLEvpBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecAssert2
    - xmlSecKeyGetValue
    - xmlSecBufferGetData
    - return
    - EVP_CIPHER_key_length
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    - memcpy
    - xmlSecOpenSSLEvpBlockCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpBlockCipherSetKey(xmlSecTransformPtr transform,
      xmlSecKeyPtr key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:843,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCheckId
      Src: /src/xmlsec/src/openssl/ciphers.c:843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:844,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:845,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/ciphers.c:845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:846,1
    - Dst: xmlSecOpenSSLEvpBlockCipherGetCtx
      Src: /src/xmlsec/src/openssl/ciphers.c:851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:852,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxInit
      Src: /src/xmlsec/src/openssl/ciphers.c:860,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:862,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:864,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:865,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/ciphers.c:870,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:871,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxUpdate
      Src: /src/xmlsec/src/openssl/ciphers.c:876,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:877,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:880,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:881,1
    - Dst: xmlSecOpenSSLEvpBlockCipherCtxFinal
      Src: /src/xmlsec/src/openssl/ciphers.c:887,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:888,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/ciphers.c:891,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/ciphers.c:892,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:898,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:898,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:902,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/ciphers.c:902,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/ciphers.c:905,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/ciphers.c:907,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 837
    functionDepth: 5
    functionLinenumber: 837
    functionLinenumberEnd: 912
    functionName: xmlSecOpenSSLEvpBlockCipherExecute
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLEvpBlockCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecInvalidDataError
    - xmlSecAssert2
    - xmlSecOpenSSLEvpBlockCipherCtxInit
    - xmlSecOpenSSLEvpBlockCipherCtxUpdate
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecOpenSSLEvpBlockCipherCtxFinal
    - xmlSecTransformGetName
    - xmlSecOpenSSLEvpBlockCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpBlockCipherExecute(xmlSecTransformPtr transform,
      int last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 958
    functionName: xmlSecOpenSSLTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 994
    functionDepth: 0
    functionLinenumber: 994
    functionLinenumberEnd: 997
    functionName: xmlSecOpenSSLTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1036
    functionName: xmlSecOpenSSLTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1072
    functionDepth: 0
    functionLinenumber: 1072
    functionLinenumberEnd: 1076
    functionName: xmlSecOpenSSLTransformAes128GcmGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes128GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1116
    functionName: xmlSecOpenSSLTransformAes192GcmGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes192GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1156
      start: 1152
    functionDepth: 0
    functionLinenumber: 1152
    functionLinenumberEnd: 1156
    functionName: xmlSecOpenSSLTransformAes256GcmGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformAes256GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1195
    functionDepth: 0
    functionLinenumber: 1195
    functionLinenumberEnd: 1198
    functionName: xmlSecOpenSSLTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/ciphers.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformDes3CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:88,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:88,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:89,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:89,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:91,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:92,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:95,1
    - Dst: xmlSecTransformKeyAgreementParamsInitialize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:97,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:99,1
    - Dst: xmlSecOpenSSLEcdhFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 106
    functionName: xmlSecOpenSSLEcdhInitialize
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLEcdhFinalize
    - xmlSecTransformKeyAgreementParamsInitialize
    - xmlSecOpenSSLEcdhGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:112,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:112,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:113,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:113,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:115,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:116,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:119,1
    - Dst: xmlSecTransformKeyAgreementParamsFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:121,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 108
    functionDepth: 6
    functionLinenumber: 108
    functionLinenumberEnd: 123
    functionName: xmlSecOpenSSLEcdhFinalize
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecTransformKeyAgreementParamsFinalize
    - xmlSecOpenSSLEcdhGetCtx
    - xmlSecKeyDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLEcdhFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:130,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:130,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:131,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:131,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:132,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:134,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:135,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 142
    functionName: xmlSecOpenSSLEcdhSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckId
    - xmlSecOpenSSLEcdhGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhSetKeyReq(xmlSecTransformPtr transform, xmlSecKeyReqPtr
      keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:148,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:148,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:149,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:150,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 158
    functionName: xmlSecOpenSSLEcdhSetKey
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckId
    - xmlSecOpenSSLEcdhGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:165,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:166,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:168,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:170,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:172,1
    - Dst: xmlSecTransformKeyAgreementParamsRead
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:174,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:176,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 160
    functionDepth: 13
    functionLinenumber: 160
    functionLinenumberEnd: 182
    functionName: xmlSecOpenSSLEcdhNodeRead
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKeyAgreementParamsRead
    - xmlSecOpenSSLEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:189,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:190,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:192,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:195,1
    - Dst: xmlSecTransformKeyAgreementParamsWrite
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:197,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 184
    functionDepth: 3
    functionLinenumber: 184
    functionLinenumberEnd: 204
    functionName: xmlSecOpenSSLEcdhNodeWrite
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformKeyAgreementParamsWrite
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLEcdhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhNodeWrite(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:222,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:227,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:229,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:234,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:240,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:242,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:245,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:247,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:255,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:258,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:260,1
    - Dst: EVP_PKEY_CTX_new
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:265,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:267,1
    - Dst: EVP_PKEY_derive_init
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:270,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:272,1
    - Dst: EVP_PKEY_derive_set_peer
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:275,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:277,1
    - Dst: EVP_PKEY_derive
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:282,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:284,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:289,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:291,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:295,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:296,1
    - Dst: EVP_PKEY_derive
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:299,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:301,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:310,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 90
    argCount: 3
    argNames:
    - ctx
    - operation
    - secret
    argTypes:
    - xmlSecOpenSSLEcdhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 314
    functionName: xmlSecOpenSSLEcdhGenerateSecret
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - EVP_PKEY_derive
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - EVP_PKEY_derive_init
    - xmlSecBufferSetSize
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - EVP_PKEY_CTX_new
    - EVP_PKEY_derive_set_peer
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhGenerateSecret(xmlSecOpenSSLEcdhCtxPtr ctx, xmlSecTransformOperation
      operation, xmlSecBufferPtr secret)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:325,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:327,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:330,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:335,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:337,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:337,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:340,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:342,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:342,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:343,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - secret
    argTypes:
    - xmlSecOpenSSLEcdhCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 316
    functionDepth: 4
    functionLinenumber: 316
    functionLinenumberEnd: 349
    functionName: xmlSecOpenSSLEcdhCreateKdfKey
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyCreate
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinRead
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecOpenSSLEcdhCreateKdfKey(xmlSecOpenSSLEcdhCtxPtr
      ctx, xmlSecBufferPtr secret)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:364,1
    - Dst: xmlSecOpenSSLEcdhCreateKdfKey
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:369,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:371,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:375,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:377,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:381,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:383,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:387,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:389,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:394,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 6
    argNames:
    - ctx
    - operation
    - secret
    - out
    - expectedOutputSize
    - transformCtx
    argTypes:
    - xmlSecOpenSSLEcdhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 351
    functionDepth: 5
    functionLinenumber: 351
    functionLinenumberEnd: 396
    functionName: xmlSecOpenSSLEcdhGenerateExecuteKdf
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformSetKey
    - xmlSecTransformMemBufGetBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPushBin
    - xmlSecOpenSSLEcdhCreateKdfKey
    - xmlSecBufferSwap
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEcdhGenerateExecuteKdf(xmlSecOpenSSLEcdhCtxPtr ctx,
      xmlSecTransformOperation operation,\n    xmlSecBufferPtr secret, xmlSecBufferPtr
      out, xmlSecSize expectedOutputSize,\n    xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:404,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:406,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:407,1
    - Dst: xmlSecOpenSSLEcdhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:413,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:414,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:426,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:428,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:428,1
    - Dst: xmlSecOpenSSLEcdhGenerateSecret
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:433,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:435,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:435,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:436,1
    - Dst: xmlSecOpenSSLEcdhGenerateExecuteKdf
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:441,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:444,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:444,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:445,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:455,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:455,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:457,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 398
    functionDepth: 6
    functionLinenumber: 398
    functionLinenumberEnd: 462
    functionName: xmlSecOpenSSLEcdhExecute
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecInvalidTransfromStatusError
    - xmlSecOpenSSLEcdhGenerateSecret
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecBufferFinalize
    - xmlSecOpenSSLEcdhGetCtx
    - xmlSecOpenSSLEcdhGenerateExecuteKdf
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEcdhExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 506
    functionName: xmlSecOpenSSLTransformEcdhGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdhGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:558,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:559,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:559,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:561,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:562,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:565,1
    - Dst: xmlSecTransformKeyAgreementParamsInitialize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:567,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:569,1
    - Dst: xmlSecOpenSSLDhFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 553
    functionDepth: 2
    functionLinenumber: 553
    functionLinenumberEnd: 576
    functionName: xmlSecOpenSSLDhInitialize
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    - xmlSecTransformKeyAgreementParamsInitialize
    - xmlSecOpenSSLDhFinalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:582,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:582,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:583,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:583,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:585,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:586,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:589,1
    - Dst: xmlSecTransformKeyAgreementParamsFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:591,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 578
    functionDepth: 6
    functionLinenumber: 578
    functionLinenumberEnd: 593
    functionName: xmlSecOpenSSLDhFinalize
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLDhGetCtx
    - xmlSecAssert
    - xmlSecTransformKeyAgreementParamsFinalize
    - xmlSecKeyDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLDhFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:600,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:600,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:601,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:601,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:602,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:604,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:605,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 596
    functionDepth: 1
    functionLinenumber: 596
    functionLinenumberEnd: 612
    functionName: xmlSecOpenSSLDhSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhSetKeyReq(xmlSecTransformPtr transform, xmlSecKeyReqPtr
      keyReq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:618,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:618,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:619,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:619,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:620,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:622,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:623,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 614
    functionDepth: 1
    functionLinenumber: 614
    functionLinenumberEnd: 628
    functionName: xmlSecOpenSSLDhSetKey
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:635,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:635,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:636,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:637,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:638,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:641,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:642,1
    - Dst: xmlSecTransformKeyAgreementParamsRead
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:644,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:646,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 630
    functionDepth: 13
    functionLinenumber: 630
    functionLinenumberEnd: 652
    functionName: xmlSecOpenSSLDhNodeRead
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    - xmlSecTransformKeyAgreementParamsRead
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:659,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:659,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:660,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:660,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:661,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:662,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:664,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:665,1
    - Dst: xmlSecTransformKeyAgreementParamsWrite
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:667,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 654
    functionDepth: 3
    functionLinenumber: 654
    functionLinenumberEnd: 674
    functionName: xmlSecOpenSSLDhNodeWrite
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformKeyAgreementParamsWrite
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhNodeWrite(xmlSecTransformPtr transform, xmlNodePtr
      node, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:689,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:690,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:691,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:692,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:697,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:699,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:702,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:704,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:710,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:712,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:715,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:717,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:723,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:725,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:728,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:730,1
    - Dst: EVP_PKEY_CTX_new
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:735,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:737,1
    - Dst: EVP_PKEY_derive_init
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:740,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:742,1
    - Dst: EVP_PKEY_derive_set_peer
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:745,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:747,1
    - Dst: EVP_PKEY_derive
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:752,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:754,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:759,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:761,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:765,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:766,1
    - Dst: EVP_PKEY_derive
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:769,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:771,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:780,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 90
    argCount: 3
    argNames:
    - ctx
    - operation
    - secret
    argTypes:
    - xmlSecOpenSSLDhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 677
    functionDepth: 2
    functionLinenumber: 677
    functionLinenumberEnd: 784
    functionName: xmlSecOpenSSLDhGenerateSecret
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - EVP_PKEY_derive
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - EVP_PKEY_derive_init
    - xmlSecBufferSetSize
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - EVP_PKEY_CTX_new
    - EVP_PKEY_derive_set_peer
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhGenerateSecret(xmlSecOpenSSLDhCtxPtr ctx, xmlSecTransformOperation
      operation, xmlSecBufferPtr secret)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:794,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:795,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:797,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:798,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:799,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:800,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:805,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:807,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:807,1
    - Dst: xmlSecKeyDataBinRead
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:810,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:812,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:812,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:813,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - secret
    argTypes:
    - xmlSecOpenSSLDhCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 786
    functionDepth: 4
    functionLinenumber: 786
    functionLinenumberEnd: 819
    functionName: xmlSecOpenSSLDhCreateKdfKey
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecKeyCreate
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataBinRead
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecOpenSSLDhCreateKdfKey(xmlSecOpenSSLDhCtxPtr ctx,
      xmlSecBufferPtr secret)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:829,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:830,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:831,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:832,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:833,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:834,1
    - Dst: xmlSecOpenSSLDhCreateKdfKey
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:839,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:841,1
    - Dst: xmlSecTransformSetKey
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:845,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:847,1
    - Dst: xmlSecTransformPushBin
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:851,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:853,1
    - Dst: xmlSecTransformMemBufGetBuffer
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:857,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:859,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:864,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 6
    argNames:
    - ctx
    - operation
    - secret
    - out
    - expectedOutputSize
    - transformCtx
    argTypes:
    - xmlSecOpenSSLDhCtxPtr
    - xmlSecTransformOperation
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 821
    functionDepth: 5
    functionLinenumber: 821
    functionLinenumberEnd: 866
    functionName: xmlSecOpenSSLDhGenerateExecuteKdf
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformSetKey
    - xmlSecTransformMemBufGetBuffer
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecTransformPushBin
    - xmlSecOpenSSLDhCreateKdfKey
    - xmlSecBufferSwap
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLDhGenerateExecuteKdf(xmlSecOpenSSLDhCtxPtr ctx, xmlSecTransformOperation
      operation,\n    xmlSecBufferPtr secret, xmlSecBufferPtr out, xmlSecSize expectedOutputSize,\n
      \   xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:874,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:874,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:875,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:876,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:876,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:877,1
    - Dst: xmlSecOpenSSLDhGetCtx
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:882,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:883,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:884,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:896,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:898,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:898,1
    - Dst: xmlSecOpenSSLDhGenerateSecret
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:903,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:905,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:905,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:906,1
    - Dst: xmlSecOpenSSLDhGenerateExecuteKdf
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:911,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:914,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:914,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:915,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:920,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:925,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:925,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/key_agrmnt.c:927,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 868
    functionDepth: 6
    functionLinenumber: 868
    functionLinenumberEnd: 932
    functionName: xmlSecOpenSSLDhExecute
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLDhGenerateSecret
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLDhGenerateExecuteKdf
    - xmlSecAssert2
    - xmlSecOpenSSLDhGetCtx
    - xmlSecBufferInitialize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecTransformGetName
    - xmlSecBufferFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLDhExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 973
    functionDepth: 0
    functionLinenumber: 973
    functionLinenumberEnd: 976
    functionName: xmlSecOpenSSLTransformDhEsGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/key_agrmnt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformDhEsGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: xmlSecOpenSSLX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecOpenSSLX509StoreGetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/openssl/x509vfy.c:144,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:146,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:147,1
    - Dst: xmlSecOpenSSLX509StoreFindCert_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:151,1
    - Dst: xmlSecOpenSSLX509StoreFindCert_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 134
    functionDepth: 4
    functionLinenumber: 134
    functionLinenumberEnd: 157
    functionName: xmlSecOpenSSLX509StoreFindCert
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecBase64DecodeInPlace
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecOpenSSLX509StoreFindCert_ex
    linkageType: ''
    returnType: X509
    signature: "X509 *\nxmlSecOpenSSLX509StoreFindCert(xmlSecKeyDataStorePtr store,
      xmlChar *subjectName,\n                                xmlChar *issuerName,
      xmlChar *issuerSerial,\n                                xmlChar *ski, xmlSecKeyInfoCtx*
      keyInfoCtx\n)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:187,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:187,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/x509vfy.c:188,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:191,1
    - Dst: xmlSecOpenSSLX509FindCertCtxInitialize
      Src: /src/xmlsec/src/openssl/x509vfy.c:197,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:202,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:203,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509vfy.c:206,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509vfy.c:207,1
    - Dst: xmlSecOpenSSLX509FindCertCtxMatch
      Src: /src/xmlsec/src/openssl/x509vfy.c:212,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:214,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:215,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:224,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 7
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    - keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 226
    functionName: xmlSecOpenSSLX509StoreFindCert_ex
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLX509FindCertCtxInitialize
    - sk_X509_num
    - xmlSecKeyDataStoreCheckId
    - xmlSecOpenSSLX509FindCertCtxFinalize
    - xmlSecOpenSSLX509FindCertCtxMatch
    - sk_X509_value
    linkageType: ''
    returnType: X509
    signature: "X509 *\nxmlSecOpenSSLX509StoreFindCert_ex(xmlSecKeyDataStorePtr store,\n
      \   xmlChar *subjectName,\n    xmlChar *issuerName, xmlChar *issuerSerial,\n
      \   xmlSecByte * ski, xmlSecSize skiSize,\n    xmlSecKeyInfoCtx* keyInfoCtx
      XMLSEC_ATTRIBUTE_UNUSED\n)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:236,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:237,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:238,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:241,1
    - Dst: xmlSecOpenSSLX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/openssl/x509vfy.c:247,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:249,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:250,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509vfy.c:253,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509vfy.c:254,1
    - Dst: xmlSecOpenSSLX509FindCertCtxMatch
      Src: /src/xmlsec/src/openssl/x509vfy.c:259,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:261,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:262,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:271,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - store
    - x509Value
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 273
    functionName: xmlSecOpenSSLX509StoreFindCertByValue
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509FindCertCtxInitializeFromValue
    - xmlSecInternalError
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecAssert2
    - sk_X509_num
    - xmlSecKeyDataStoreCheckId
    - xmlSecOpenSSLX509FindCertCtxFinalize
    - xmlSecOpenSSLX509FindCertCtxMatch
    - sk_X509_value
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLX509StoreFindCertByValue(xmlSecKeyDataStorePtr store, xmlSecKeyX509DataValuePtr
      x509Value)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:283,1
    - Dst: xmlSecOpenSSLX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/openssl/x509vfy.c:285,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:287,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:288,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/openssl/x509vfy.c:292,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/openssl/x509vfy.c:299,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/openssl/x509vfy.c:303,1
    - Dst: xmlSecOpenSSLKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/openssl/x509vfy.c:307,1
    - Dst: xmlSecOpenSSLX509FindCertCtxMatch
      Src: /src/xmlsec/src/openssl/x509vfy.c:313,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:315,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:316,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:325,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - keysList
    - x509Value
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 275
    functionDepth: 3
    functionLinenumber: 275
    functionLinenumberEnd: 327
    functionName: xmlSecOpenSSLX509FindKeyByValue
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLX509FindCertCtxInitializeFromValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecOpenSSLX509FindCertCtxFinalize
    - xmlSecOpenSSLKeyDataX509GetKeyCert
    - xmlSecOpenSSLX509FindCertCtxMatch
    - xmlSecKeyGetData
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecOpenSSLX509FindKeyByValue(xmlSecPtrListPtr keysList,
      xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:646,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:647,1
    - Dst: X509_STORE_CTX_set_time
      Src: /src/xmlsec/src/openssl/x509vfy.c:650,1
    - Dst: X509_VERIFY_PARAM_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:654,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:656,1
    - Dst: X509_VERIFY_PARAM_get_flags
      Src: /src/xmlsec/src/openssl/x509vfy.c:659,1
    - Dst: X509_VERIFY_PARAM_set_time
      Src: /src/xmlsec/src/openssl/x509vfy.c:663,1
    - Dst: X509_VERIFY_PARAM_set_flags
      Src: /src/xmlsec/src/openssl/x509vfy.c:669,1
    - Dst: X509_VERIFY_PARAM_set_depth
      Src: /src/xmlsec/src/openssl/x509vfy.c:670,1
    - Dst: X509_STORE_CTX_set0_param
      Src: /src/xmlsec/src/openssl/x509vfy.c:672,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - xsc
    - keyInfoCtx
    argTypes:
    - X509_STORE_CTX*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 641
    functionDepth: 1
    functionLinenumber: 641
    functionLinenumberEnd: 677
    functionName: xmlSecOpenSSLX509StoreSetCtx
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - X509_VERIFY_PARAM_set_time
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_VERIFY_PARAM_new
    - X509_STORE_CTX_set0_param
    - X509_STORE_CTX_set_time
    - X509_VERIFY_PARAM_set_flags
    - X509_VERIFY_PARAM_set_depth
    - X509_VERIFY_PARAM_get_flags
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreSetCtx(X509_STORE_CTX* xsc, xmlSecKeyInfoCtx*
      keyInfoCtx)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:816,1
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:817,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:824,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:824,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:825,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:826,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:828,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:829,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:830,1
    - Dst: X509_STORE_CTX_new_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:833,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:833,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:835,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:835,1
    - Dst: xmlSecOpenSSLX509StoreCombineCerts
      Src: /src/xmlsec/src/openssl/x509vfy.c:840,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:842,1
    - Dst: xmlSecOpenSSLX509StoreVerifyAndCopyCrls
      Src: /src/xmlsec/src/openssl/x509vfy.c:847,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509vfy.c:850,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509vfy.c:852,1
    - Dst: xmlSecOpenSSLX509FindChildCert
      Src: /src/xmlsec/src/openssl/x509vfy.c:858,1
    - Dst: xmlSecOpenSSLX509StoreVerifyCert
      Src: /src/xmlsec/src/openssl/x509vfy.c:868,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:870,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:870,1
    - Dst: sk_X509_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:886,1
    - Dst: sk_X509_CRL_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:889,1
    - Dst: X509_STORE_CTX_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:892,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 4
    argNames:
    - store
    - certs
    - crls
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - XMLSEC_STACK_OF_X509*
    - XMLSEC_STACK_OF_X509_CRL*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 895
    functionName: xmlSecOpenSSLX509StoreVerify
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - STACK_OF
    - xmlSecInternalError
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - xmlSecKeyDataStoreGetName
    - sk_X509_num
    - xmlSecOpenSSLX509FindChildCert
    - sk_X509_CRL_free
    - xmlSecOpenSSLX509StoreVerifyAndCopyCrls
    - xmlSecKeyDataStoreCheckId
    - X509_STORE_CTX_new_ex
    - X509_STORE_CTX_free
    - xmlSecOpenSSLX509StoreCombineCerts
    - sk_X509_free
    - xmlSecOpenSSLX509StoreVerifyCert
    - sk_X509_value
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
      certs, XMLSEC_STACK_OF_X509_CRL* crls, xmlSecKeyInfoCtx* keyInfoCtx)'
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:918,1
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:919,1
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:921,1
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:922,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:926,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:926,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:927,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:928,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:931,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:932,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:933,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/openssl/x509vfy.c:936,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:938,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:938,1
    - Dst: xmlSecOpenSSLKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/openssl/x509vfy.c:941,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:943,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:943,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCerts
      Src: /src/xmlsec/src/openssl/x509vfy.c:954,1
    - Dst: xmlSecOpenSSLKeyDataX509GetCrls
      Src: /src/xmlsec/src/openssl/x509vfy.c:955,1
    - Dst: X509_STORE_CTX_new_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:958,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:958,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:960,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:960,1
    - Dst: xmlSecOpenSSLX509StoreCombineCerts
      Src: /src/xmlsec/src/openssl/x509vfy.c:965,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:967,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:967,1
    - Dst: xmlSecOpenSSLX509StoreVerifyAndCopyCrls
      Src: /src/xmlsec/src/openssl/x509vfy.c:972,1
    - Dst: xmlSecOpenSSLX509StoreVerifyCert
      Src: /src/xmlsec/src/openssl/x509vfy.c:975,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:977,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:977,1
    - Dst: sk_X509_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:992,1
    - Dst: sk_X509_CRL_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:995,1
    - Dst: X509_STORE_CTX_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:998,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 3
    argNames:
    - store
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 913
    functionDepth: 3
    functionLinenumber: 913
    functionLinenumberEnd: 1001
    functionName: xmlSecOpenSSLX509StoreVerifyKey
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLKeyDataX509GetCerts
    - xmlSecOpenSSLGetLibCtx
    - sk_X509_CRL_free
    - xmlSecOpenSSLX509StoreVerifyAndCopyCrls
    - xmlSecKeyGetData
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - xmlSecOpenSSLKeyDataX509GetKeyCert
    - xmlSecOpenSSLX509StoreCombineCerts
    - sk_X509_free
    - xmlSecInternalError
    - xmlSecAssert2
    - X509_STORE_CTX_new_ex
    - STACK_OF
    - xmlSecOpenSSLKeyDataX509GetCrls
    - X509_STORE_CTX_free
    - xmlSecOpenSSLX509StoreVerifyCert
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreVerifyKey(xmlSecKeyDataStorePtr store, xmlSecKeyPtr
      key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1017,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1017,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1018,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1020,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1021,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1026,1
    - Dst: X509_STORE_add_cert
      Src: /src/xmlsec/src/openssl/x509vfy.c:1028,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1030,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1031,1
    - Dst: X509_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1035,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1039,1
    - Dst: sk_X509_push
      Src: /src/xmlsec/src/openssl/x509vfy.c:1041,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1043,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1043,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 3
    argNames:
    - store
    - cert
    - type
    argTypes:
    - xmlSecKeyDataStorePtr
    - X509*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 1013
    functionDepth: 1
    functionLinenumber: 1013
    functionLinenumberEnd: 1048
    functionName: xmlSecOpenSSLX509StoreAdoptCert
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - X509_STORE_add_cert
    - xmlSecKeyDataStoreCheckId
    - X509_free
    - sk_X509_push
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreAdoptCert(xmlSecKeyDataStorePtr store, X509*
      cert, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1064,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1064,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1065,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1067,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1068,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1069,1
    - Dst: sk_X509_CRL_push
      Src: /src/xmlsec/src/openssl/x509vfy.c:1071,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1073,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1073,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - store
    - crl
    argTypes:
    - xmlSecKeyDataStorePtr
    - X509_CRL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1078
      start: 1059
    functionDepth: 1
    functionLinenumber: 1059
    functionLinenumberEnd: 1078
    functionName: xmlSecOpenSSLX509StoreAdoptCrl
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - sk_X509_CRL_push
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreAdoptCrl(xmlSecKeyDataStorePtr store, X509_CRL*
      crl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1095,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1095,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1096,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1098,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1099,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1100,1
    - Dst: X509_STORE_add_lookup
      Src: /src/xmlsec/src/openssl/x509vfy.c:1102,1
    - Dst: X509_LOOKUP_hash_dir
      Src: /src/xmlsec/src/openssl/x509vfy.c:1102,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1104,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1105,1
    - Dst: X509_LOOKUP_add_dir
      Src: /src/xmlsec/src/openssl/x509vfy.c:1108,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1109,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1110,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - store
    - path
    argTypes:
    - xmlSecKeyDataStorePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1090
    functionDepth: 1
    functionLinenumber: 1090
    functionLinenumberEnd: 1116
    functionName: xmlSecOpenSSLX509StoreAddCertsPath
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError2
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - X509_LOOKUP_hash_dir
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - X509_STORE_add_lookup
    - X509_LOOKUP_add_dir
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreAddCertsPath(xmlSecKeyDataStorePtr store,
      const char *path)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1133,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1134,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1138,1
    - Dst: X509_STORE_add_lookup
      Src: /src/xmlsec/src/openssl/x509vfy.c:1140,1
    - Dst: X509_LOOKUP_file
      Src: /src/xmlsec/src/openssl/x509vfy.c:1140,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1142,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1143,1
    - Dst: X509_LOOKUP_load_file
      Src: /src/xmlsec/src/openssl/x509vfy.c:1146,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1147,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1148,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - store
    - filename
    argTypes:
    - xmlSecKeyDataStorePtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1128
    functionDepth: 1
    functionLinenumber: 1128
    functionLinenumberEnd: 1154
    functionName: xmlSecOpenSSLX509StoreAddCertsFile
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError2
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - X509_STORE_add_lookup
    - X509_LOOKUP_file
    - X509_LOOKUP_load_file
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreAddCertsFile(xmlSecKeyDataStorePtr store,
      const char *filename)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1163,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1163,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1166,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509vfy.c:1168,1
    - Dst: X509_STORE_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:1170,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1172,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1173,1
    - Dst: X509_STORE_set_default_paths_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:1177,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1177,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1179,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1180,1
    - Dst: X509_STORE_add_lookup
      Src: /src/xmlsec/src/openssl/x509vfy.c:1185,1
    - Dst: X509_LOOKUP_hash_dir
      Src: /src/xmlsec/src/openssl/x509vfy.c:1185,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1187,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1188,1
    - Dst: xmlSecOpenSSLGetDefaultTrustedCertsFolder
      Src: /src/xmlsec/src/openssl/x509vfy.c:1192,1
    - Dst: X509_LOOKUP_add_dir
      Src: /src/xmlsec/src/openssl/x509vfy.c:1194,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1195,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1196,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1198,1
    - Dst: X509_LOOKUP_add_dir
      Src: /src/xmlsec/src/openssl/x509vfy.c:1202,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1203,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1204,1
    - Dst: sk_X509_new_null
      Src: /src/xmlsec/src/openssl/x509vfy.c:1209,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1211,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1212,1
    - Dst: sk_X509_CRL_new_null
      Src: /src/xmlsec/src/openssl/x509vfy.c:1216,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1218,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1219,1
    - Dst: X509_VERIFY_PARAM_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:1223,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1225,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1226,1
    - Dst: X509_VERIFY_PARAM_set_depth
      Src: /src/xmlsec/src/openssl/x509vfy.c:1229,1
    - Dst: X509_STORE_set1_param
      Src: /src/xmlsec/src/openssl/x509vfy.c:1230,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1156
    functionDepth: 1
    functionLinenumber: 1156
    functionLinenumberEnd: 1234
    functionName: xmlSecOpenSSLX509StoreInitialize
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLGetLibCtx
    - X509_STORE_add_lookup
    - X509_LOOKUP_add_dir
    - xmlSecOpenSSLX509StoreGetCtx
    - xmlSecOpenSSLError
    - xmlSecErrorsSafeString
    - xmlSecKeyDataStoreGetName
    - xmlSecKeyDataStoreCheckId
    - X509_STORE_new
    - X509_VERIFY_PARAM_set_depth
    - sk_X509_new_null
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecOpenSSLGetDefaultTrustedCertsFolder
    - sk_X509_CRL_new_null
    - memset
    - X509_VERIFY_PARAM_new
    - X509_STORE_set_default_paths_ex
    - X509_LOOKUP_hash_dir
    - X509_STORE_set1_param
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509StoreInitialize(xmlSecKeyDataStorePtr store)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509vfy.c:1239,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/openssl/x509vfy.c:1239,1
    - Dst: xmlSecOpenSSLX509StoreGetCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1241,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509vfy.c:1242,1
    - Dst: X509_STORE_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1246,1
    - Dst: sk_X509_pop_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1249,1
    - Dst: sk_X509_CRL_pop_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1252,1
    - Dst: X509_VERIFY_PARAM_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1255,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509vfy.c:1258,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1236
    functionDepth: 1
    functionLinenumber: 1236
    functionLinenumberEnd: 1259
    functionName: xmlSecOpenSSLX509StoreFinalize
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - X509_VERIFY_PARAM_free
    - xmlSecOpenSSLX509StoreGetCtx
    - sk_X509_pop_free
    - xmlSecAssert
    - xmlSecKeyDataStoreCheckId
    - sk_X509_CRL_pop_free
    - X509_STORE_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLX509StoreFinalize(xmlSecKeyDataStorePtr store)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1356,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509vfy.c:1358,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/x509vfy.c:1363,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509vfy.c:1363,1
    - Dst: xmlSecOpenSSLX509NameRead
      Src: /src/xmlsec/src/openssl/x509vfy.c:1368,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1370,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1371,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1372,1
    - Dst: xmlSecOpenSSLX509NameRead
      Src: /src/xmlsec/src/openssl/x509vfy.c:1380,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1382,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1383,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1384,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:1388,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1390,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1391,1
    - Dst: BN_dec2bn
      Src: /src/xmlsec/src/openssl/x509vfy.c:1394,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1395,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1396,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1397,1
    - Dst: BN_to_ASN1_INTEGER
      Src: /src/xmlsec/src/openssl/x509vfy.c:1400,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1402,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1403,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1404,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1407,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 6
    argNames:
    - ctx
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    argTypes:
    - xmlSecOpenSSLX509FindCertCtxPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1412
    functionName: xmlSecOpenSSLX509FindCertCtxInitialize
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecOpenSSLX509NameRead
    - xmlSecInternalError2
    - BN_dec2bn
    - BN_clear_free
    - return
    - BN_new
    - xmlSecOpenSSLX509FindCertCtxFinalize
    - BN_to_ASN1_INTEGER
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLX509FindCertCtxInitialize(xmlSecOpenSSLX509FindCertCtxPtr
      ctx,\n    const xmlChar *subjectName,\n    const xmlChar *issuerName, const
      xmlChar *issuerSerial,\n    const xmlSecByte * ski, xmlSecSize skiSize\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1419,1
    - Dst: xmlSecOpenSSLX509FindCertCtxInitialize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1421,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/x509vfy.c:1424,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1424,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1427,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1428,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/openssl/x509vfy.c:1432,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/x509vfy.c:1435,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1436,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/x509vfy.c:1437,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509vfy.c:1437,1
    - Dst: xmlSecOpenSSLX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/openssl/x509vfy.c:1439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1441,1
    - Dst: xmlSecOpenSSLX509FindCertCtxFinalize
      Src: /src/xmlsec/src/openssl/x509vfy.c:1442,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - x509Value
    argTypes:
    - xmlSecOpenSSLX509FindCertCtxPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1414
    functionDepth: 2
    functionLinenumber: 1414
    functionLinenumberEnd: 1448
    functionName: xmlSecOpenSSLX509FindCertCtxInitializeFromValue
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecOpenSSLX509GetDigestFromAlgorithm
    - xmlSecInternalError
    - xmlSecBufferIsEmpty
    - xmlSecAssert2
    - xmlSecOpenSSLX509FindCertCtxInitialize
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecOpenSSLX509FindCertCtxFinalize
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509FindCertCtxInitializeFromValue(xmlSecOpenSSLX509FindCertCtxPtr
      ctx, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/x509vfy.c:1451,1
    - Dst: X509_NAME_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1454,1
    - Dst: X509_NAME_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1457,1
    - Dst: ASN1_INTEGER_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1460,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/x509vfy.c:1462,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecOpenSSLX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1450
    functionDepth: 1
    functionLinenumber: 1450
    functionLinenumberEnd: 1463
    functionName: xmlSecOpenSSLX509FindCertCtxFinalize
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 5
    functionsReached:
    - xmlSecAssert
    - ASN1_INTEGER_free
    - X509_NAME_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLX509FindCertCtxFinalize(xmlSecOpenSSLX509FindCertCtxPtr
      ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1471,1
    - Dst: X509_get_subject_name
      Src: /src/xmlsec/src/openssl/x509vfy.c:1477,1
    - Dst: xmlSecOpenSSLX509NamesCompare
      Src: /src/xmlsec/src/openssl/x509vfy.c:1483,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - cert
    - subjectName
    argTypes:
    - X509*
    - X509_NAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1490
      start: 1466
    functionDepth: 1
    functionLinenumber: 1466
    functionLinenumberEnd: 1490
    functionName: xmlSecOpenSSLX509MatchBySubjectName
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLX509NamesCompare
    - X509_get_subject_name
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509MatchBySubjectName(X509* cert, X509_NAME* subjectName)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1497,1
    - Dst: X509_get_serialNumber
      Src: /src/xmlsec/src/openssl/x509vfy.c:1503,1
    - Dst: ASN1_INTEGER_cmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:1504,1
    - Dst: X509_get_issuer_name
      Src: /src/xmlsec/src/openssl/x509vfy.c:1507,1
    - Dst: xmlSecOpenSSLX509NamesCompare
      Src: /src/xmlsec/src/openssl/x509vfy.c:1508,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - cert
    - issuerName
    - issuerSerial
    argTypes:
    - X509*
    - X509_NAME*
    - ASN1_INTEGER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1492
    functionDepth: 1
    functionLinenumber: 1492
    functionLinenumberEnd: 1514
    functionName: xmlSecOpenSSLX509MatchByIssuer
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLX509NamesCompare
    - ASN1_INTEGER_cmp
    - X509_get_serialNumber
    - X509_get_issuer_name
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509MatchByIssuer(X509* cert,  X509_NAME* issuerName,
      ASN1_INTEGER* issuerSerial)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1522,1
    - Dst: X509_get_ext_by_NID
      Src: /src/xmlsec/src/openssl/x509vfy.c:1528,1
    - Dst: X509_get_ext
      Src: /src/xmlsec/src/openssl/x509vfy.c:1532,1
    - Dst: X509V3_EXT_d2i
      Src: /src/xmlsec/src/openssl/x509vfy.c:1536,1
    - Dst: memcmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:1540,1
    - Dst: ASN1_OCTET_STRING_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1541,1
    - Dst: ASN1_OCTET_STRING_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1544,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - cert
    - ski
    - skiLen
    argTypes:
    - X509*
    - xmlSecByte*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1548
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1548
    functionName: xmlSecOpenSSLX509MatchBySki
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - X509_get_ext_by_NID
    - X509V3_EXT_d2i
    - X509_get_ext
    - memcmp
    - ASN1_OCTET_STRING_free
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509MatchBySki(X509* cert, const xmlSecByte* ski,
      int skiLen)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1556,1
    - Dst: X509_digest
      Src: /src/xmlsec/src/openssl/x509vfy.c:1562,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1564,1
    - Dst: memcmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:1568,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 4
    argNames:
    - cert
    - digestValue
    - digestLen
    - digest
    argTypes:
    - X509*
    - xmlSecByte*
    - unsigned int
    - EVP_MD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1550
    functionDepth: 1
    functionLinenumber: 1550
    functionLinenumberEnd: 1574
    functionName: xmlSecOpenSSLX509MatchByDigest
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memcmp
    - X509_digest
    - xmlSecOpenSSLError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509MatchByDigest(X509* cert, const xmlSecByte * digestValue,
      unsigned int digestLen, const EVP_MD* digest)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1581,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1582,1
    - Dst: xmlSecOpenSSLX509MatchBySubjectName
      Src: /src/xmlsec/src/openssl/x509vfy.c:1584,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1586,1
    - Dst: xmlSecOpenSSLX509MatchByIssuer
      Src: /src/xmlsec/src/openssl/x509vfy.c:1593,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1595,1
    - Dst: xmlSecOpenSSLX509MatchBySki
      Src: /src/xmlsec/src/openssl/x509vfy.c:1602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1604,1
    - Dst: xmlSecOpenSSLX509MatchByDigest
      Src: /src/xmlsec/src/openssl/x509vfy.c:1611,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1613,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - cert
    argTypes:
    - xmlSecOpenSSLX509FindCertCtxPtr
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1577
    functionDepth: 2
    functionLinenumber: 1577
    functionLinenumberEnd: 1622
    functionName: xmlSecOpenSSLX509FindCertCtxMatch
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 3
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLX509MatchBySubjectName
    - xmlSecAssert2
    - xmlSecOpenSSLX509MatchBySki
    - xmlSecOpenSSLX509MatchByIssuer
    - xmlSecOpenSSLX509MatchByDigest
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509FindCertCtxMatch(xmlSecOpenSSLX509FindCertCtxPtr
      ctx, X509* cert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1629,1
    - Dst: X509_get_subject_name
      Src: /src/xmlsec/src/openssl/x509vfy.c:1631,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1633,1
    - Dst: X509_NAME_hash_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:1637,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1637,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1639,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1624
    functionDepth: 1
    functionLinenumber: 1624
    functionLinenumberEnd: 1644
    functionName: xmlSecOpenSSLX509GetSubjectHash
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - X509_get_subject_name
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - X509_NAME_hash_ex
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long xmlSecOpenSSLX509GetSubjectHash(X509* x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1651,1
    - Dst: X509_get_issuer_name
      Src: /src/xmlsec/src/openssl/x509vfy.c:1653,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1655,1
    - Dst: X509_NAME_hash_ex
      Src: /src/xmlsec/src/openssl/x509vfy.c:1659,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/x509vfy.c:1659,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1661,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1666
      start: 1646
    functionDepth: 1
    functionLinenumber: 1646
    functionLinenumberEnd: 1666
    functionName: xmlSecOpenSSLX509GetIssuerHash
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - X509_get_issuer_name
    - X509_NAME_hash_ex
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long xmlSecOpenSSLX509GetIssuerHash(X509* x)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1763,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1764,1
    - Dst: xmlSecOpenSSLX509GetSubjectHash
      Src: /src/xmlsec/src/openssl/x509vfy.c:1766,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1768,1
    - Dst: sk_X509_num
      Src: /src/xmlsec/src/openssl/x509vfy.c:1771,1
    - Dst: sk_X509_value
      Src: /src/xmlsec/src/openssl/x509vfy.c:1772,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1773,1
    - Dst: xmlSecOpenSSLX509GetSubjectHash
      Src: /src/xmlsec/src/openssl/x509vfy.c:1780,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1782,1
    - Dst: xmlSecOpenSSLX509GetIssuerHash
      Src: /src/xmlsec/src/openssl/x509vfy.c:1790,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1792,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 2
    argNames:
    - chain
    - cert
    argTypes:
    - STACK_OF*
    - X509*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1757
    functionDepth: 2
    functionLinenumber: 1757
    functionLinenumberEnd: 1804
    functionName: xmlSecOpenSSLX509FindChildCert
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLX509GetIssuerHash
    - xmlSecAssert2
    - sk_X509_num
    - xmlSecOpenSSLX509GetSubjectHash
    - sk_X509_value
    linkageType: ''
    returnType: X509
    signature: 'X509 *

      xmlSecOpenSSLX509FindChildCert(STACK_OF(X509) *chain, X509 *cert)'
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1819,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1820,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1821,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1824,1
    - Dst: xmlSecInvalidIntegerDataError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1834,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/x509vfy.c:1839,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509vfy.c:1839,1
    - Dst: X509_NAME_add_entry_by_txt
      Src: /src/xmlsec/src/openssl/x509vfy.c:1840,1
    - Dst: xmlSecOpenSSLError3
      Src: /src/xmlsec/src/openssl/x509vfy.c:1842,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/x509vfy.c:1842,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 5
    argNames:
    - name
    - value
    - valueSize
    - type
    - context
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlSecSize
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1806
    functionDepth: 1
    functionLinenumber: 1806
    functionLinenumberEnd: 1848
    functionName: xmlSecOpenSSLX509NameReadCallback
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecOpenSSLError3
    - xmlSecInvalidIntegerDataError
    - X509_NAME_add_entry_by_txt
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLX509NameReadCallback(\n    const xmlChar * name,\n
      \   const xmlChar * value,\n    xmlSecSize valueSize,\n    int type,\n    void
      * context\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1862,1
    - Dst: X509_NAME_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:1864,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1866,1
    - Dst: xmlSecX509NameRead
      Src: /src/xmlsec/src/openssl/x509vfy.c:1870,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1872,1
    - Dst: X509_NAME_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - str
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1857
    functionDepth: 4
    functionLinenumber: 1857
    functionLinenumberEnd: 1879
    functionName: xmlSecOpenSSLX509NameRead
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - X509_NAME_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - X509_NAME_new
    - xmlSecX509NameRead
    linkageType: ''
    returnType: X509_NAME
    signature: 'X509_NAME *

      xmlSecOpenSSLX509NameRead(const xmlChar *str)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:1886,1
    - Dst: sk_X509_NAME_ENTRY_new
      Src: /src/xmlsec/src/openssl/x509vfy.c:1890,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1892,1
    - Dst: X509_NAME_entry_count
      Src: /src/xmlsec/src/openssl/x509vfy.c:1896,1
    - Dst: sk_X509_NAME_ENTRY_push
      Src: /src/xmlsec/src/openssl/x509vfy.c:1897,1
    - Dst: X509_NAME_get_entry
      Src: /src/xmlsec/src/openssl/x509vfy.c:1897,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - a
    argTypes:
    - X509_NAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1905
      start: 1884
    functionDepth: 1
    functionLinenumber: 1884
    functionLinenumberEnd: 1905
    functionName: xmlSecOpenSSLX509_NAME_ENTRIES_copy
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - STACK_OF
    - sk_X509_NAME_ENTRY_push
    - xmlSecOpenSSLError
    - X509_NAME_get_entry
    - X509_NAME_entry_count
    - sk_X509_NAME_ENTRY_new
    linkageType: ''
    returnType: STACK_OF
    signature: 'STACK_OF *

      xmlSecOpenSSLX509_NAME_ENTRIES_copy(X509_NAME * a)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:1953,1
    - Dst: STACK_OF
      Src: /src/xmlsec/src/openssl/x509vfy.c:1954,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1957,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1958,1
    - Dst: xmlSecOpenSSLX509_NAME_ENTRIES_copy
      Src: /src/xmlsec/src/openssl/x509vfy.c:1960,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1962,1
    - Dst: xmlSecOpenSSLX509_NAME_ENTRIES_copy
      Src: /src/xmlsec/src/openssl/x509vfy.c:1965,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/x509vfy.c:1967,1
    - Dst: sk_X509_NAME_ENTRY_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1968,1
    - Dst: sk_X509_NAME_ENTRY_set_cmp_func
      Src: /src/xmlsec/src/openssl/x509vfy.c:1973,1
    - Dst: sk_X509_NAME_ENTRY_sort
      Src: /src/xmlsec/src/openssl/x509vfy.c:1974,1
    - Dst: sk_X509_NAME_ENTRY_set_cmp_func
      Src: /src/xmlsec/src/openssl/x509vfy.c:1975,1
    - Dst: sk_X509_NAME_ENTRY_sort
      Src: /src/xmlsec/src/openssl/x509vfy.c:1976,1
    - Dst: xmlSecOpenSSLX509_NAME_ENTRIES_cmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:1979,1
    - Dst: sk_X509_NAME_ENTRY_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1982,1
    - Dst: sk_X509_NAME_ENTRY_free
      Src: /src/xmlsec/src/openssl/x509vfy.c:1983,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - X509_NAME*
    - X509_NAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1951
    functionDepth: 2
    functionLinenumber: 1951
    functionLinenumberEnd: 1985
    functionName: xmlSecOpenSSLX509NamesCompare
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 2
    functionsReached:
    - STACK_OF
    - xmlSecInternalError
    - xmlSecAssert2
    - sk_X509_NAME_ENTRY_set_cmp_func
    - xmlSecOpenSSLX509_NAME_ENTRIES_copy
    - sk_X509_NAME_ENTRY_sort
    - sk_X509_NAME_ENTRY_free
    - xmlSecOpenSSLX509_NAME_ENTRIES_cmp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509NamesCompare(X509_NAME *a, X509_NAME *b)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1995,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1996,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1997,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/x509vfy.c:1998,1
    - Dst: X509_NAME_ENTRY_get_data
      Src: /src/xmlsec/src/openssl/x509vfy.c:2002,1
    - Dst: X509_NAME_ENTRY_get_data
      Src: /src/xmlsec/src/openssl/x509vfy.c:2003,1
    - Dst: ASN1_STRING_length
      Src: /src/xmlsec/src/openssl/x509vfy.c:2013,1
    - Dst: ASN1_STRING_length
      Src: /src/xmlsec/src/openssl/x509vfy.c:2014,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/x509vfy.c:2022,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/x509vfy.c:2022,1
    - Dst: memcmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:2023,1
    - Dst: ASN1_STRING_get0_data
      Src: /src/xmlsec/src/openssl/x509vfy.c:2023,1
    - Dst: ASN1_STRING_get0_data
      Src: /src/xmlsec/src/openssl/x509vfy.c:2023,1
    - Dst: X509_NAME_ENTRY_get_object
      Src: /src/xmlsec/src/openssl/x509vfy.c:2030,1
    - Dst: X509_NAME_ENTRY_get_object
      Src: /src/xmlsec/src/openssl/x509vfy.c:2031,1
    - Dst: OBJ_cmp
      Src: /src/xmlsec/src/openssl/x509vfy.c:2041,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 41
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - X509_NAME_ENTRY**
    - X509_NAME_ENTRY**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2042
      start: 1988
    functionDepth: 1
    functionLinenumber: 1988
    functionLinenumberEnd: 2042
    functionName: xmlSecOpenSSLX509_NAME_ENTRY_cmp
    functionSourceFile: /src/xmlsec/src/openssl/x509vfy.c
    functionUses: 0
    functionsReached:
    - X509_NAME_ENTRY_get_object
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - ASN1_STRING_get0_data
    - ASN1_STRING_length
    - OBJ_cmp
    - return
    - memcmp
    - X509_NAME_ENTRY_get_data
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLX509_NAME_ENTRY_cmp(const X509_NAME_ENTRY * const
      *a, const X509_NAME_ENTRY * const *b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:114,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:120,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:126,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:132,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:138,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:144,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 159
    functionName: xmlSecOpenSSLHmacCheckId
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: XMLSEC_OPENSSL_HMAC_SET_DIGEST
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_HMAC_SET_DIGEST(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: XMLSEC_OPENSSL_HMAC_SET_DIGEST
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_HMAC_SET_DIGEST(ctx, digestVal, digestNameVal)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:174,1
    - Dst: xmlSecOpenSSLHmacCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:174,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:175,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:175,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:178,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/hmac.c:181,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:184,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:185,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/hmac.c:185,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:190,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:191,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/hmac.c:191,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:196,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:197,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/hmac.c:197,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:202,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:203,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/hmac.c:203,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:208,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:209,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/hmac.c:209,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:214,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:215,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/hmac.c:215,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:220,1
    - Dst: XMLSEC_OPENSSL_HMAC_SET_DIGEST
      Src: /src/xmlsec/src/openssl/hmac.c:221,1
    - Dst: EVP_md5
      Src: /src/xmlsec/src/openssl/hmac.c:221,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/hmac.c:226,1
    - Dst: HMAC_CTX_new
      Src: /src/xmlsec/src/openssl/hmac.c:232,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:234,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:234,1
    - Dst: xmlSecOpenSSLHmacFinalize
      Src: /src/xmlsec/src/openssl/hmac.c:235,1
    - Dst: EVP_MAC_fetch
      Src: /src/xmlsec/src/openssl/hmac.c:239,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/hmac.c:239,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:241,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:241,1
    - Dst: xmlSecOpenSSLHmacFinalize
      Src: /src/xmlsec/src/openssl/hmac.c:242,1
    - Dst: EVP_MAC_CTX_new
      Src: /src/xmlsec/src/openssl/hmac.c:245,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:247,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:247,1
    - Dst: xmlSecOpenSSLHmacFinalize
      Src: /src/xmlsec/src/openssl/hmac.c:248,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 170
    functionDepth: 2
    functionLinenumber: 170
    functionLinenumberEnd: 255
    functionName: xmlSecOpenSSLHmacInitialize
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - EVP_md5
    - xmlSecOpenSSLGetLibCtx
    - EVP_MAC_CTX_new
    - xmlSecOpenSSLError
    - xmlSecOpenSSLHmacFinalize
    - EVP_ripemd160
    - xmlSecTransformGetName
    - xmlSecOpenSSLHmacGetCtx
    - XMLSEC_OPENSSL_HMAC_SET_DIGEST
    - EVP_sha512
    - xmlSecInvalidTransfromError
    - xmlSecAssert2
    - EVP_sha384
    - HMAC_CTX_new
    - EVP_sha224
    - memset
    - xmlSecTransformCheckSize
    - EVP_sha1
    - EVP_sha256
    - xmlSecOpenSSLHmacCheckId
    - EVP_MAC_fetch
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/hmac.c:261,1
    - Dst: xmlSecOpenSSLHmacCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:261,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/hmac.c:262,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:262,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:264,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/hmac.c:265,1
    - Dst: HMAC_CTX_free
      Src: /src/xmlsec/src/openssl/hmac.c:269,1
    - Dst: EVP_MAC_CTX_free
      Src: /src/xmlsec/src/openssl/hmac.c:273,1
    - Dst: EVP_MAC_free
      Src: /src/xmlsec/src/openssl/hmac.c:276,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/hmac.c:280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 281
    functionName: xmlSecOpenSSLHmacFinalize
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - EVP_MAC_free
    - xmlSecAssert
    - HMAC_CTX_free
    - xmlSecOpenSSLHmacGetCtx
    - xmlSecOpenSSLHmacCheckId
    - EVP_MAC_CTX_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:289,1
    - Dst: xmlSecOpenSSLHmacCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:290,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:291,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/hmac.c:292,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:294,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:295,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/openssl/hmac.c:297,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/hmac.c:299,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 283
    functionDepth: 2
    functionLinenumber: 283
    functionLinenumberEnd: 305
    functionName: xmlSecOpenSSLHmacNodeRead
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecOpenSSLHmacGetCtx
    - xmlSecOpenSSLHmacCheckId
    - xmlSecTransformHmacReadOutputBitsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:309,1
    - Dst: xmlSecOpenSSLHmacCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:309,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:310,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:312,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:312,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:313,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 324
    functionName: xmlSecOpenSSLHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLHmacCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:332,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:336,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/hmac.c:338,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/hmac.c:338,1
    - Dst: HMAC_Init_ex
      Src: /src/xmlsec/src/openssl/hmac.c:339,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - key
    - keySize
    argTypes:
    - xmlSecOpenSSLHmacCtxPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 327
    functionDepth: 1
    functionLinenumber: 327
    functionLinenumberEnd: 347
    functionName: xmlSecOpenSSLHmacSetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - return
    - HMAC_Init_ex
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacSetKeyImpl(xmlSecOpenSSLHmacCtxPtr ctx, const
      xmlSecByte* key, xmlSecSize keySize)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:362,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/hmac.c:364,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:366,1
    - Dst: OSSL_PARAM_BLD_push_utf8_string
      Src: /src/xmlsec/src/openssl/hmac.c:370,1
    - Dst: strlen
      Src: /src/xmlsec/src/openssl/hmac.c:371,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:373,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/hmac.c:377,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:379,1
    - Dst: EVP_MAC_init
      Src: /src/xmlsec/src/openssl/hmac.c:383,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:385,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/hmac.c:394,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/hmac.c:397,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 3
    argNames:
    - ctx
    - key
    - keySize
    argTypes:
    - xmlSecOpenSSLHmacCtxPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 351
    functionDepth: 1
    functionLinenumber: 351
    functionLinenumberEnd: 401
    functionName: xmlSecOpenSSLHmacSetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - OSSL_PARAM_BLD_free
    - strlen
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - OSSL_PARAM_BLD_to_param
    - EVP_MAC_init
    - OSSL_PARAM_free
    - OSSL_PARAM_BLD_push_utf8_string
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacSetKeyImpl(xmlSecOpenSSLHmacCtxPtr ctx, const
      xmlSecByte* key, xmlSecSize keySize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:412,1
    - Dst: xmlSecOpenSSLHmacCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:413,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:414,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:415,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:417,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:419,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/hmac.c:421,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:422,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/hmac.c:422,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/hmac.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:425,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/hmac.c:427,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/openssl/hmac.c:428,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:431,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/hmac.c:431,1
    - Dst: xmlSecOpenSSLHmacSetKeyImpl
      Src: /src/xmlsec/src/openssl/hmac.c:433,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/hmac.c:433,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/hmac.c:433,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/hmac.c:435,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:435,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 405
    functionDepth: 2
    functionLinenumber: 405
    functionLinenumberEnd: 442
    functionName: xmlSecOpenSSLHmacSetKey
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecOpenSSLHmacSetKeyImpl
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecOpenSSLHmacGetCtx
    - xmlSecOpenSSLHmacCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:451,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/openssl/hmac.c:451,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:452,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:454,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:455,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/hmac.c:456,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:458,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:459,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:460,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/openssl/hmac.c:463,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/hmac.c:465,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:465,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 444
    functionDepth: 2
    functionLinenumber: 444
    functionLinenumberEnd: 476
    functionName: xmlSecOpenSSLHmacVerify
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformHmacVerify
    - xmlSecTransformGetName
    - xmlSecTransformIsValid
    - xmlSecOpenSSLHmacGetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLHmacVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:484,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/openssl/hmac.c:484,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:485,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:486,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/hmac.c:486,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:487,1
    - Dst: xmlSecOpenSSLHmacGetCtx
      Src: /src/xmlsec/src/openssl/hmac.c:492,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:494,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/hmac.c:504,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:507,1
    - Dst: HMAC_Update
      Src: /src/xmlsec/src/openssl/hmac.c:509,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/hmac.c:509,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:511,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:512,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:516,1
    - Dst: EVP_MAC_update
      Src: /src/xmlsec/src/openssl/hmac.c:518,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/hmac.c:518,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:520,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:521,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/hmac.c:526,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/hmac.c:528,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:541,1
    - Dst: HMAC_Final
      Src: /src/xmlsec/src/openssl/hmac.c:542,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:544,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:544,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/hmac.c:547,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/hmac.c:547,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:551,1
    - Dst: EVP_MAC_final
      Src: /src/xmlsec/src/openssl/hmac.c:552,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/hmac.c:554,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:554,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/hmac.c:557,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/hmac.c:557,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:557,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:559,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/openssl/hmac.c:568,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/hmac.c:570,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/hmac.c:570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/hmac.c:578,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/hmac.c:578,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/hmac.c:580,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 70
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 478
    functionDepth: 2
    functionLinenumber: 478
    functionLinenumberEnd: 585
    functionName: xmlSecOpenSSLHmacExecute
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached:
    - return
    - EVP_MAC_final
    - xmlSecOpenSSLError
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecTransformHmacWriteOutput
    - xmlSecTransformGetName
    - xmlSecOpenSSLHmacGetCtx
    - EVP_MAC_update
    - xmlSecBufferRemoveHead
    - HMAC_Final
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecTransformCheckSize
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - HMAC_Update
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLHmacExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionName: xmlSecOpenSSLTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: xmlSecOpenSSLTransformHmacRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 722
    functionDepth: 0
    functionLinenumber: 722
    functionLinenumberEnd: 725
    functionName: xmlSecOpenSSLTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 769
    functionDepth: 0
    functionLinenumber: 769
    functionLinenumberEnd: 772
    functionName: xmlSecOpenSSLTransformHmacSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 816
    functionDepth: 0
    functionLinenumber: 816
    functionLinenumberEnd: 819
    functionName: xmlSecOpenSSLTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 863
    functionDepth: 0
    functionLinenumber: 863
    functionLinenumberEnd: 866
    functionName: xmlSecOpenSSLTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 910
    functionDepth: 0
    functionLinenumber: 910
    functionLinenumberEnd: 913
    functionName: xmlSecOpenSSLTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: xmlSecOpenSSLSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecOpenSSLSymKeyDataCheckId(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:79,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:79,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/openssl/symkeys.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 3
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: xmlSecOpenSSLSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueInitialize
    - xmlSecOpenSSLSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:86,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:86,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:87,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:87,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:88,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/openssl/symkeys.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 84
    functionDepth: 3
    functionLinenumber: 84
    functionLinenumberEnd: 91
    functionName: xmlSecOpenSSLSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecOpenSSLSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/symkeys.c:95,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:95,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/openssl/symkeys.c:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 3
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: xmlSecOpenSSLSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:103,1
    - Dst: xmlSecOpenSSLSymKeyDataKlassCheck
      Src: /src/xmlsec/src/openssl/symkeys.c:103,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/openssl/symkeys.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 100
    functionDepth: 11
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionName: xmlSecOpenSSLSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecOpenSSLSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:111,1
    - Dst: xmlSecOpenSSLSymKeyDataKlassCheck
      Src: /src/xmlsec/src/openssl/symkeys.c:111,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/openssl/symkeys.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 9
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: xmlSecOpenSSLSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecOpenSSLSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlNodePtr node, xmlSecKeyInfoCtxPtr
      keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:120,1
    - Dst: xmlSecOpenSSLSymKeyDataKlassCheck
      Src: /src/xmlsec/src/openssl/symkeys.c:120,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/openssl/symkeys.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 123
    functionName: xmlSecOpenSSLSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinRead
    - xmlSecOpenSSLSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:129,1
    - Dst: xmlSecOpenSSLSymKeyDataKlassCheck
      Src: /src/xmlsec/src/openssl/symkeys.c:129,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/openssl/symkeys.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionName: xmlSecOpenSSLSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinWrite
    - xmlSecOpenSSLSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    xmlSecByte** buf, xmlSecSize* bufSize,\n
      \                                   xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:138,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:139,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/symkeys.c:140,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:142,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:143,1
    - Dst: xmlSecOpenSSLGenerateRandom
      Src: /src/xmlsec/src/openssl/symkeys.c:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 146
    functionName: xmlSecOpenSSLSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecOpenSSLSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecOpenSSLGenerateRandom
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:152,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:152,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:155,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/symkeys.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 158
    functionName: xmlSecOpenSSLSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferGetSize
    - xmlSecOpenSSLSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLSymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:162,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:162,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/openssl/symkeys.c:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 160
    functionDepth: 3
    functionLinenumber: 160
    functionLinenumberEnd: 165
    functionName: xmlSecOpenSSLSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/symkeys.c:169,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:169,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/openssl/symkeys.c:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 167
    functionDepth: 3
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionName: xmlSecOpenSSLSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyDataBinaryValueDebugDump
    - xmlSecOpenSSLSymKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/symkeys.c:176,1
    - Dst: xmlSecOpenSSLSymKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:176,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/openssl/symkeys.c:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 174
    functionDepth: 3
    functionLinenumber: 174
    functionLinenumberEnd: 179
    functionName: xmlSecOpenSSLSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 214
    functionName: xmlSecOpenSSLSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionName: xmlSecOpenSSLKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:286,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:288,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:291,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/symkeys.c:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 282
    functionDepth: 3
    functionLinenumber: 282
    functionLinenumberEnd: 294
    functionName: xmlSecOpenSSLKeyDataAesSet
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataAesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionName: xmlSecOpenSSLKeyDataConcatKdfGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataConcatKdfGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:367,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:369,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:372,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/symkeys.c:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 363
    functionDepth: 3
    functionLinenumber: 363
    functionLinenumberEnd: 375
    functionName: xmlSecOpenSSLKeyDataConcatKdfSet
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataConcatKdfSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionName: xmlSecOpenSSLKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:449,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:449,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:450,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:451,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:454,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/symkeys.c:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 445
    functionDepth: 3
    functionLinenumber: 445
    functionLinenumberEnd: 457
    functionName: xmlSecOpenSSLKeyDataDesSet
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionName: xmlSecOpenSSLKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:531,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:532,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:533,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:535,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:536,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/symkeys.c:538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 527
    functionDepth: 3
    functionLinenumber: 527
    functionLinenumberEnd: 539
    functionName: xmlSecOpenSSLKeyDataHmacSet
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataHmacSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 593
    functionDepth: 0
    functionLinenumber: 593
    functionLinenumberEnd: 596
    functionName: xmlSecOpenSSLKeyDataPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:612,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/symkeys.c:612,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:613,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:614,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/openssl/symkeys.c:616,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/symkeys.c:617,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/symkeys.c:619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 608
    functionDepth: 3
    functionLinenumber: 608
    functionLinenumberEnd: 620
    functionName: xmlSecOpenSSLKeyDataPbkdf2Set
    functionSourceFile: /src/xmlsec/src/openssl/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataPbkdf2Set(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:173,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:179,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:185,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:191,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:197,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:203,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:209,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:215,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:221,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:227,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:233,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:239,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:245,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:248,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:251,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:254,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:270,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:276,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:291,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:297,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:303,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:309,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:315,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:321,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:327,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:330,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:333,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:336,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:349,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:355,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:358,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 96
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 371
    functionName: xmlSecOpenSSLEvpSignatureCheckId
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 377
    functionName: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST(ctx, digestVal, digestNameVal)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:389,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:390,1
    - Dst: EVP_get_digestbyname
      Src: /src/xmlsec/src/openssl/signatures.c:393,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:395,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/signatures.c:396,1
    - Dst: EVP_get_digestbyname
      Src: /src/xmlsec/src/openssl/signatures.c:402,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:404,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/signatures.c:405,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - digestName
    argTypes:
    - xmlSecOpenSSLEvpSignatureCtxPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 411
    functionName: xmlSecOpenSSLEvpSignatureSetLegacyDigest
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - EVP_get_digestbyname
    - xmlSecOpenSSLError2
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpSignatureSetLegacyDigest(xmlSecOpenSSLEvpSignatureCtxPtr
      ctx,\n                                         const char * digestName)"
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:419,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:420,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:420,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:422,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:423,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures.c:425,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:435,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:436,1
    - Dst: EVP_md5
      Src: /src/xmlsec/src/openssl/signatures.c:436,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:444,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:445,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/signatures.c:445,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:453,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:454,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/signatures.c:454,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:461,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:462,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/signatures.c:462,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:470,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:471,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/signatures.c:471,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:479,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:480,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/signatures.c:480,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:488,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:489,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/signatures.c:489,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:497,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:498,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/signatures.c:498,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:506,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:507,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/signatures.c:507,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:515,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:516,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/signatures.c:516,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:524,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:525,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/signatures.c:525,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:533,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:534,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/signatures.c:534,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:542,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:543,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/signatures.c:543,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:548,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:549,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/signatures.c:549,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:554,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:555,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/signatures.c:555,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:560,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:561,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/signatures.c:561,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:578,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:579,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/signatures.c:579,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:586,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:587,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/signatures.c:587,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:604,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:605,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/signatures.c:605,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:612,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:613,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/signatures.c:613,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:620,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:621,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/signatures.c:621,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:628,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:629,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/signatures.c:629,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:636,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:637,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/signatures.c:637,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:644,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:645,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/signatures.c:645,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:652,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:653,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/signatures.c:653,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:657,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:658,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/signatures.c:658,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:662,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:663,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/signatures.c:663,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:667,1
    - Dst: XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
      Src: /src/xmlsec/src/openssl/signatures.c:668,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/signatures.c:668,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:682,1
    - Dst: xmlSecOpenSSLEvpSignatureSetLegacyDigest
      Src: /src/xmlsec/src/openssl/signatures.c:684,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:686,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:687,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:688,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:698,1
    - Dst: xmlSecOpenSSLEvpSignatureSetLegacyDigest
      Src: /src/xmlsec/src/openssl/signatures.c:700,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:702,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:703,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:704,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:712,1
    - Dst: xmlSecOpenSSLEvpSignatureSetLegacyDigest
      Src: /src/xmlsec/src/openssl/signatures.c:714,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:716,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:717,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:718,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/signatures.c:733,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:734,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:746,1
    - Dst: EVP_MD_fetch
      Src: /src/xmlsec/src/openssl/signatures.c:747,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/signatures.c:747,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:749,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:749,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/signatures.c:750,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:751,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:756,1
    - Dst: EVP_MD_CTX_new
      Src: /src/xmlsec/src/openssl/signatures.c:759,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:761,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:761,1
    - Dst: xmlSecOpenSSLEvpSignatureFinalize
      Src: /src/xmlsec/src/openssl/signatures.c:762,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 216
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 415
    functionDepth: 2
    functionLinenumber: 415
    functionLinenumberEnd: 768
    functionName: xmlSecOpenSSLEvpSignatureInitialize
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - EVP_sha3_512
    - EVP_md5
    - xmlSecOpenSSLGetLibCtx
    - EVP_MD_CTX_new
    - xmlSecOpenSSLError
    - xmlSecOpenSSLEvpSignatureSetLegacyDigest
    - xmlSecErrorsSafeString
    - EVP_sha3_224
    - EVP_MD_fetch
    - EVP_ripemd160
    - xmlSecTransformGetName
    - xmlSecOpenSSLEvpSignatureCheckId
    - EVP_sha512
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
    - EVP_sha384
    - EVP_sha224
    - memset
    - xmlSecTransformCheckSize
    - EVP_sha1
    - xmlSecOpenSSLEvpSignatureFinalize
    - EVP_sha3_384
    - EVP_sha256
    - xmlSecOpenSSLEvpSignatureGetCtx
    - EVP_sha3_256
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures.c:774,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:774,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures.c:775,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:775,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:777,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/signatures.c:778,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/signatures.c:781,1
    - Dst: EVP_MD_CTX_free
      Src: /src/xmlsec/src/openssl/signatures.c:785,1
    - Dst: EVP_MD_free
      Src: /src/xmlsec/src/openssl/signatures.c:789,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures.c:793,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 770
    functionDepth: 2
    functionLinenumber: 770
    functionLinenumberEnd: 794
    functionName: xmlSecOpenSSLEvpSignatureFinalize
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 1
    functionsReached:
    - EVP_MD_free
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - EVP_MD_CTX_free
    - xmlSecAssert
    - xmlSecOpenSSLEvpSignatureGetCtx
    - xmlSecOpenSSLEvpSignatureCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLEvpSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:801,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:801,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:802,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:803,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:803,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:804,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:806,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:807,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:808,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:809,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:810,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:810,1
    - Dst: xmlSecKeyGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:812,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:814,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:814,1
    - Dst: xmlSecOpenSSLKeyGetEvp
      Src: /src/xmlsec/src/openssl/signatures.c:818,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:820,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:820,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/signatures.c:825,1
    - Dst: xmlSecOpenSSLEvpKeyDup
      Src: /src/xmlsec/src/openssl/signatures.c:828,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:830,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:830,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 796
    functionDepth: 2
    functionLinenumber: 796
    functionLinenumberEnd: 835
    functionName: xmlSecOpenSSLEvpSignatureSetKey
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - xmlSecKeyGetSize
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDup
    - xmlSecKeyCheckId
    - xmlSecOpenSSLEvpSignatureGetCtx
    - xmlSecTransformGetName
    - xmlSecOpenSSLKeyGetEvp
    - xmlSecOpenSSLEvpSignatureCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:841,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:841,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:842,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:843,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:843,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:844,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:846,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:847,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 837
    functionDepth: 2
    functionLinenumber: 837
    functionLinenumberEnd: 859
    functionName: xmlSecOpenSSLEvpSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLEvpSignatureCheckId
    - xmlSecOpenSSLEvpSignatureGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:867,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:868,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:869,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:870,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:871,1
    - Dst: EVP_MD_size
      Src: /src/xmlsec/src/openssl/signatures.c:873,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:875,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:875,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
      Src: /src/xmlsec/src/openssl/signatures.c:878,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/signatures.c:878,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:879,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:880,1
    - Dst: EVP_DigestFinal
      Src: /src/xmlsec/src/openssl/signatures.c:882,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:884,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:884,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:887,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - ctx
    - dgst
    - dgstSize
    argTypes:
    - xmlSecTransformPtr
    - xmlSecOpenSSLEvpSignatureCtxPtr
    - xmlSecByte*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 892
    functionName: xmlSecOpenSSLEvpSignatureCalculateDigest
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
    - return
    - EVP_DigestFinal
    - xmlSecTransformGetName
    - EVP_MD_size
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureCalculateDigest(xmlSecTransformPtr transform,
      xmlSecOpenSSLEvpSignatureCtxPtr ctx, xmlSecByte* dgst, unsigned int* dgstSize)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:899,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:900,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:901,1
    - Dst: EVP_PKEY_CTX_new
      Src: /src/xmlsec/src/openssl/signatures.c:904,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:906,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:906,1
    - Dst: EVP_PKEY_CTX_new_from_pkey
      Src: /src/xmlsec/src/openssl/signatures.c:910,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/signatures.c:910,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:912,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:912,1
    - Dst: EVP_PKEY_sign_init
      Src: /src/xmlsec/src/openssl/signatures.c:918,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:920,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:920,1
    - Dst: EVP_PKEY_verify_init
      Src: /src/xmlsec/src/openssl/signatures.c:925,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:927,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:927,1
    - Dst: EVP_PKEY_CTX_set_signature_md
      Src: /src/xmlsec/src/openssl/signatures.c:932,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:934,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:934,1
    - Dst: EVP_PKEY_CTX_set_rsa_padding
      Src: /src/xmlsec/src/openssl/signatures.c:940,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:942,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:942,1
    - Dst: EVP_MD_size
      Src: /src/xmlsec/src/openssl/signatures.c:952,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:954,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:954,1
    - Dst: EVP_PKEY_CTX_set_rsa_pss_saltlen
      Src: /src/xmlsec/src/openssl/signatures.c:959,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:961,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:961,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/signatures.c:973,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 67
    argCount: 2
    argNames:
    - transform
    - ctx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecOpenSSLEvpSignatureCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 894
    functionDepth: 1
    functionLinenumber: 894
    functionLinenumberEnd: 976
    functionName: xmlSecOpenSSLEvpSignatureCreatePkeyCtx
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError2
    - EVP_PKEY_sign_init
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_verify_init
    - xmlSecTransformGetName
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_CTX_set_rsa_padding
    - EVP_PKEY_CTX_set_rsa_pss_saltlen
    - EVP_PKEY_CTX_free
    - EVP_MD_size
    - EVP_PKEY_CTX_new_from_pkey
    - EVP_PKEY_CTX_set_signature_md
    - EVP_PKEY_CTX_new
    linkageType: ''
    returnType: EVP_PKEY_CTX
    signature: 'EVP_PKEY_CTX *

      xmlSecOpenSSLEvpSignatureCreatePkeyCtx(xmlSecTransformPtr transform, xmlSecOpenSSLEvpSignatureCtxPtr
      ctx)'
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:994,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:994,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:995,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:996,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:996,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:997,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:998,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:999,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:1001,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1002,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1003,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1004,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1005,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1006,1
    - Dst: xmlSecOpenSSLEvpSignatureCalculateDigest
      Src: /src/xmlsec/src/openssl/signatures.c:1009,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1011,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1011,1
    - Dst: xmlSecOpenSSLEvpSignatureCreatePkeyCtx
      Src: /src/xmlsec/src/openssl/signatures.c:1016,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1018,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1018,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/openssl/signatures.c:1026,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1026,1
    - Dst: EVP_PKEY_verify
      Src: /src/xmlsec/src/openssl/signatures.c:1027,1
    - Dst: xmlSecOpenSSLEvpSignatureDsa_XmlDSig2OpenSSL
      Src: /src/xmlsec/src/openssl/signatures.c:1033,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1035,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1035,1
    - Dst: EVP_PKEY_verify
      Src: /src/xmlsec/src/openssl/signatures.c:1039,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/signatures.c:1042,1
    - Dst: xmlSecOpenSSLEvpSignatureEcdsa_XmlDSig2OpenSSL
      Src: /src/xmlsec/src/openssl/signatures.c:1049,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1051,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1051,1
    - Dst: EVP_PKEY_verify
      Src: /src/xmlsec/src/openssl/signatures.c:1055,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/signatures.c:1058,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1066,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1066,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/signatures.c:1074,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1074,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/signatures.c:1082,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/signatures.c:1086,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 80
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 978
    functionDepth: 2
    functionLinenumber: 978
    functionLinenumberEnd: 1090
    functionName: xmlSecOpenSSLEvpSignatureVerify
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - EVP_PKEY_CTX_free
    - xmlSecOpenSSLEvpSignatureEcdsa_XmlDSig2OpenSSL
    - EVP_PKEY_verify
    - OPENSSL_free
    - xmlSecOpenSSLEvpSignatureCalculateDigest
    - xmlSecOpenSSLEvpSignatureGetCtx
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecOpenSSLEvpSignatureDsa_XmlDSig2OpenSSL
    - xmlSecOpenSSLEvpSignatureCreatePkeyCtx
    - xmlSecOpenSSLEvpSignatureCheckId
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpSignatureVerify(xmlSecTransformPtr transform,\n
      \                       const xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1103,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1104,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1106,1
    - Dst: xmlSecOpenSSLEvpSignatureCalculateDigest
      Src: /src/xmlsec/src/openssl/signatures.c:1109,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1111,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1111,1
    - Dst: xmlSecOpenSSLEvpSignatureCreatePkeyCtx
      Src: /src/xmlsec/src/openssl/signatures.c:1116,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1118,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1118,1
    - Dst: EVP_PKEY_sign
      Src: /src/xmlsec/src/openssl/signatures.c:1123,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:1125,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1125,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/signatures.c:1131,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures.c:1133,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1133,1
    - Dst: EVP_PKEY_sign
      Src: /src/xmlsec/src/openssl/signatures.c:1139,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1139,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:1141,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1141,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1146,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures.c:1148,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1148,1
    - Dst: xmlSecOpenSSLEvpSignatureDsa_OpenSSL2XmlDSig
      Src: /src/xmlsec/src/openssl/signatures.c:1163,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1165,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1165,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/signatures.c:1170,1
    - Dst: xmlSecOpenSSLEvpSignatureEcdsa_OpenSSL2XmlDSig
      Src: /src/xmlsec/src/openssl/signatures.c:1177,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1179,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1179,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/signatures.c:1184,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/signatures.c:1194,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 78
    argCount: 3
    argNames:
    - transform
    - ctx
    - out
    argTypes:
    - xmlSecTransformPtr
    - xmlSecOpenSSLEvpSignatureCtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1092
    functionDepth: 2
    functionLinenumber: 1092
    functionLinenumberEnd: 1198
    functionName: xmlSecOpenSSLEvpSignatureSign
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - EVP_PKEY_sign
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - EVP_PKEY_CTX_free
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - xmlSecOpenSSLEvpSignatureDsa_OpenSSL2XmlDSig
    - xmlSecOpenSSLEvpSignatureEcdsa_OpenSSL2XmlDSig
    - xmlSecOpenSSLEvpSignatureCalculateDigest
    - xmlSecTransformGetName
    - xmlSecOpenSSLEvpSignatureCreatePkeyCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureSign(xmlSecTransformPtr transform, xmlSecOpenSSLEvpSignatureCtxPtr
      ctx, xmlSecBufferPtr out)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1208,1
    - Dst: xmlSecOpenSSLEvpSignatureCheckId
      Src: /src/xmlsec/src/openssl/signatures.c:1208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1210,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/signatures.c:1210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1211,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:1213,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1214,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1218,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1219,1
    - Dst: xmlSecOpenSSLEvpSignatureGetCtx
      Src: /src/xmlsec/src/openssl/signatures.c:1221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1225,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1228,1
    - Dst: EVP_DigestInit
      Src: /src/xmlsec/src/openssl/signatures.c:1230,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1232,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1232,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1240,1
    - Dst: EVP_DigestUpdate
      Src: /src/xmlsec/src/openssl/signatures.c:1242,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1242,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/signatures.c:1244,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1244,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/signatures.c:1249,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures.c:1251,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1259,1
    - Dst: xmlSecOpenSSLEvpSignatureSign
      Src: /src/xmlsec/src/openssl/signatures.c:1261,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1263,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/signatures.c:1263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1272,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1272,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/signatures.c:1274,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1200
    functionDepth: 3
    functionLinenumber: 1200
    functionLinenumberEnd: 1279
    functionName: xmlSecOpenSSLEvpSignatureExecute
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached:
    - EVP_DigestUpdate
    - EVP_DigestInit
    - xmlSecOpenSSLError2
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecOpenSSLEvpSignatureGetCtx
    - xmlSecTransformGetName
    - xmlSecOpenSSLEvpSignatureSign
    - xmlSecOpenSSLEvpSignatureCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureExecute(xmlSecTransformPtr transform,
      int last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1301
    functionDepth: 0
    functionLinenumber: 1301
    functionLinenumberEnd: 1304
    functionName: xmlSecOpenSSLTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1319
    functionDepth: 0
    functionLinenumber: 1319
    functionLinenumberEnd: 1322
    functionName: xmlSecOpenSSLTransformRsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1337
    functionDepth: 0
    functionLinenumber: 1337
    functionLinenumberEnd: 1340
    functionName: xmlSecOpenSSLTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1355
    functionDepth: 0
    functionLinenumber: 1355
    functionLinenumberEnd: 1358
    functionName: xmlSecOpenSSLTransformRsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1373
    functionDepth: 0
    functionLinenumber: 1373
    functionLinenumberEnd: 1376
    functionName: xmlSecOpenSSLTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1391
    functionDepth: 0
    functionLinenumber: 1391
    functionLinenumberEnd: 1394
    functionName: xmlSecOpenSSLTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1409
    functionDepth: 0
    functionLinenumber: 1409
    functionLinenumberEnd: 1412
    functionName: xmlSecOpenSSLTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1427
    functionDepth: 0
    functionLinenumber: 1427
    functionLinenumberEnd: 1430
    functionName: xmlSecOpenSSLTransformRsaPssSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1449
    functionName: xmlSecOpenSSLTransformRsaPssSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1467
      start: 1464
    functionDepth: 0
    functionLinenumber: 1464
    functionLinenumberEnd: 1467
    functionName: xmlSecOpenSSLTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1482
    functionDepth: 0
    functionLinenumber: 1482
    functionLinenumberEnd: 1485
    functionName: xmlSecOpenSSLTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1500
    functionDepth: 0
    functionLinenumber: 1500
    functionLinenumberEnd: 1503
    functionName: xmlSecOpenSSLTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1523
      start: 1520
    functionDepth: 0
    functionLinenumber: 1520
    functionLinenumberEnd: 1523
    functionName: xmlSecOpenSSLTransformRsaPssSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha3_224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: xmlSecOpenSSLTransformRsaPssSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1550
    functionDepth: 0
    functionLinenumber: 1550
    functionLinenumberEnd: 1553
    functionName: xmlSecOpenSSLTransformRsaPssSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1565
    functionDepth: 0
    functionLinenumber: 1565
    functionLinenumberEnd: 1568
    functionName: xmlSecOpenSSLTransformRsaPssSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPssSha3_512GetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - transformId
    argTypes:
    - xmlSecTransformId
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1609
    functionName: xmlSecOpenSSLEvpSignatureDsaHalfLen
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureDsaHalfLen(const xmlSecTransformId transformId)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1623,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1624,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1625,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1626,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1627,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1628,1
    - Dst: xmlSecOpenSSLEvpSignatureDsaHalfLen
      Src: /src/xmlsec/src/openssl/signatures.c:1631,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1633,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/openssl/signatures.c:1651,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures.c:1657,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1659,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures.c:1662,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1664,1
    - Dst: DSA_SIG_new
      Src: /src/xmlsec/src/openssl/signatures.c:1668,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1670,1
    - Dst: DSA_SIG_set0
      Src: /src/xmlsec/src/openssl/signatures.c:1673,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1675,1
    - Dst: i2d_DSA_SIG
      Src: /src/xmlsec/src/openssl/signatures.c:1681,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1683,1
    - Dst: DSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures.c:1694,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures.c:1697,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures.c:1700,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 5
    argNames:
    - transformId
    - data
    - dataSize
    - out
    - outLen
    argTypes:
    - xmlSecTransformId
    - xmlSecByte*
    - xmlSecSize
    - unsigned char**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1611
    functionDepth: 1
    functionLinenumber: 1611
    functionLinenumberEnd: 1704
    functionName: xmlSecOpenSSLEvpSignatureDsa_XmlDSig2OpenSSL
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError3
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_bin2bn
    - DSA_SIG_set0
    - BN_clear_free
    - xmlSecOpenSSLEvpSignatureDsaHalfLen
    - DSA_SIG_free
    - DSA_SIG_new
    - i2d_DSA_SIG
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpSignatureDsa_XmlDSig2OpenSSL(const xmlSecTransformId
      transformId,\n    const xmlSecByte * data, xmlSecSize dataSize,\n    unsigned
      char ** out, int * outLen\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1717,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1718,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1720,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1721,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1722,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1723,1
    - Dst: xmlSecOpenSSLEvpSignatureDsaHalfLen
      Src: /src/xmlsec/src/openssl/signatures.c:1726,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/signatures.c:1728,1
    - Dst: d2i_DSA_SIG
      Src: /src/xmlsec/src/openssl/signatures.c:1734,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1736,1
    - Dst: DSA_SIG_get0
      Src: /src/xmlsec/src/openssl/signatures.c:1739,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1741,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures.c:1746,1
    - Dst: xmlSecOpenSSLError3
      Src: /src/xmlsec/src/openssl/signatures.c:1748,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures.c:1752,1
    - Dst: xmlSecOpenSSLError3
      Src: /src/xmlsec/src/openssl/signatures.c:1754,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/signatures.c:1760,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1761,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures.c:1763,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1767,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1768,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1771,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures.c:1772,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures.c:1773,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures.c:1774,1
    - Dst: DSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures.c:1782,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 2
    argNames:
    - transformId
    - data
    argTypes:
    - xmlSecTransformId
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1706
    functionDepth: 2
    functionLinenumber: 1706
    functionLinenumberEnd: 1786
    functionName: xmlSecOpenSSLEvpSignatureDsa_OpenSSL2XmlDSig
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - d2i_DSA_SIG
    - BN_num_bytes
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - BN_bn2bin
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecOpenSSLEvpSignatureDsaHalfLen
    - DSA_SIG_free
    - xmlSecOpenSSLError3
    - DSA_SIG_get0
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureDsa_OpenSSL2XmlDSig(const xmlSecTransformId
      transformId, xmlSecBufferPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1801
    functionDepth: 0
    functionLinenumber: 1801
    functionLinenumberEnd: 1804
    functionName: xmlSecOpenSSLTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformDsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1819
    functionDepth: 0
    functionLinenumber: 1819
    functionLinenumberEnd: 1822
    functionName: xmlSecOpenSSLTransformDsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformDsaSha256GetKlass(void)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1857,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1858,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1859,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1860,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1861,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1862,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/signatures.c:1865,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/openssl/signatures.c:1881,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures.c:1887,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1889,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/signatures.c:1892,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1894,1
    - Dst: ECDSA_SIG_new
      Src: /src/xmlsec/src/openssl/signatures.c:1898,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1900,1
    - Dst: ECDSA_SIG_set0
      Src: /src/xmlsec/src/openssl/signatures.c:1903,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1905,1
    - Dst: i2d_ECDSA_SIG
      Src: /src/xmlsec/src/openssl/signatures.c:1911,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1913,1
    - Dst: ECDSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures.c:1924,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures.c:1927,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/signatures.c:1930,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 67
    argCount: 5
    argNames:
    - keySizeBits
    - data
    - dataSize
    - out
    - outLen
    argTypes:
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - unsigned char**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1934
      start: 1846
    functionDepth: 1
    functionLinenumber: 1846
    functionLinenumberEnd: 1934
    functionName: xmlSecOpenSSLEvpSignatureEcdsa_XmlDSig2OpenSSL
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError3
    - ECDSA_SIG_new
    - ECDSA_SIG_set0
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - ECDSA_SIG_free
    - BN_bin2bn
    - BN_clear_free
    - i2d_ECDSA_SIG
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpSignatureEcdsa_XmlDSig2OpenSSL(xmlSecSize keySizeBits,
      const xmlSecByte * data, xmlSecSize dataSize,\n    unsigned char ** out, int
      * outLen\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1947,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1948,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1950,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1951,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1952,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1953,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/signatures.c:1956,1
    - Dst: d2i_ECDSA_SIG
      Src: /src/xmlsec/src/openssl/signatures.c:1960,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1962,1
    - Dst: ECDSA_SIG_get0
      Src: /src/xmlsec/src/openssl/signatures.c:1965,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/signatures.c:1967,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures.c:1972,1
    - Dst: xmlSecOpenSSLError3
      Src: /src/xmlsec/src/openssl/signatures.c:1974,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/signatures.c:1978,1
    - Dst: xmlSecOpenSSLError3
      Src: /src/xmlsec/src/openssl/signatures.c:1980,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/signatures.c:1986,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/signatures.c:1987,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/signatures.c:1989,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/signatures.c:1993,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1994,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/signatures.c:1997,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/signatures.c:1998,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures.c:1999,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/signatures.c:2000,1
    - Dst: ECDSA_SIG_free
      Src: /src/xmlsec/src/openssl/signatures.c:2008,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - keySizeBits
    - data
    argTypes:
    - xmlSecSize
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 1936
    functionDepth: 2
    functionLinenumber: 1936
    functionLinenumberEnd: 2012
    functionName: xmlSecOpenSSLEvpSignatureEcdsa_OpenSSL2XmlDSig
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 1
    functionsReached:
    - ECDSA_SIG_get0
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_num_bytes
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - d2i_ECDSA_SIG
    - xmlSecInternalError2
    - ECDSA_SIG_free
    - xmlSecBufferGetData
    - BN_bn2bin
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - xmlSecOpenSSLError3
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpSignatureEcdsa_OpenSSL2XmlDSig(xmlSecSize keySizeBits,
      xmlSecBufferPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2025
    functionDepth: 0
    functionLinenumber: 2025
    functionLinenumberEnd: 2028
    functionName: xmlSecOpenSSLTransformEcdsaRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2046
      start: 2043
    functionDepth: 0
    functionLinenumber: 2043
    functionLinenumberEnd: 2046
    functionName: xmlSecOpenSSLTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2061
    functionDepth: 0
    functionLinenumber: 2061
    functionLinenumberEnd: 2064
    functionName: xmlSecOpenSSLTransformEcdsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2079
    functionDepth: 0
    functionLinenumber: 2079
    functionLinenumberEnd: 2082
    functionName: xmlSecOpenSSLTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2097
    functionDepth: 0
    functionLinenumber: 2097
    functionLinenumberEnd: 2100
    functionName: xmlSecOpenSSLTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2115
    functionDepth: 0
    functionLinenumber: 2115
    functionLinenumberEnd: 2118
    functionName: xmlSecOpenSSLTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2137
      start: 2134
    functionDepth: 0
    functionLinenumber: 2134
    functionLinenumberEnd: 2137
    functionName: xmlSecOpenSSLTransformEcdsaSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2149
    functionDepth: 0
    functionLinenumber: 2149
    functionLinenumberEnd: 2152
    functionName: xmlSecOpenSSLTransformEcdsaSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2164
    functionDepth: 0
    functionLinenumber: 2164
    functionLinenumberEnd: 2167
    functionName: xmlSecOpenSSLTransformEcdsaSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2180
    functionDepth: 0
    functionLinenumber: 2180
    functionLinenumberEnd: 2183
    functionName: xmlSecOpenSSLTransformEcdsaSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformEcdsaSha3_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2205
    functionDepth: 0
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionName: xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2223
    functionDepth: 0
    functionLinenumber: 2223
    functionLinenumberEnd: 2226
    functionName: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2238
    functionDepth: 0
    functionLinenumber: 2238
    functionLinenumberEnd: 2241
    functionName: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass(void)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:78,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:84,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:90,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:96,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:102,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:108,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:114,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:120,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:123,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:126,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:129,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:135,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:141,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:145,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 153
    functionName: xmlSecOpenSSLEvpDigestCheckId
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionName: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_EVP_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_EVP_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:170,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:171,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:172,1
    - Dst: EVP_get_digestbyname
      Src: /src/xmlsec/src/openssl/digests.c:175,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/digests.c:177,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/digests.c:178,1
    - Dst: EVP_get_digestbyname
      Src: /src/xmlsec/src/openssl/digests.c:184,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/digests.c:186,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/digests.c:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - digestName
    argTypes:
    - xmlSecOpenSSLEvpDigestCtxPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 193
    functionName: xmlSecOpenSSLEvpDigestSetLegacyDigest
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - EVP_get_digestbyname
    - xmlSecOpenSSLError2
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpDigestSetLegacyDigest(xmlSecOpenSSLEvpDigestCtxPtr
      ctx,\n                                      const char * digestName)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:202,1
    - Dst: xmlSecOpenSSLEvpDigestCheckId
      Src: /src/xmlsec/src/openssl/digests.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:203,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/digests.c:203,1
    - Dst: xmlSecOpenSSLEvpDigestGetCtx
      Src: /src/xmlsec/src/openssl/digests.c:205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:206,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/digests.c:209,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:212,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:213,1
    - Dst: EVP_md5
      Src: /src/xmlsec/src/openssl/digests.c:213,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:218,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:219,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/digests.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:224,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:225,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/digests.c:225,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:230,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:231,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/digests.c:231,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:236,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:237,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/digests.c:237,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:242,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:243,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/digests.c:243,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:248,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:249,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/digests.c:249,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:254,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:255,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/digests.c:255,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:257,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:258,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/digests.c:258,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:260,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:261,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/digests.c:261,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:263,1
    - Dst: XMLSEC_OPENSSL_EVP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/digests.c:264,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/digests.c:264,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:269,1
    - Dst: xmlSecOpenSSLEvpDigestSetLegacyDigest
      Src: /src/xmlsec/src/openssl/digests.c:271,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/digests.c:273,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:274,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:275,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:282,1
    - Dst: xmlSecOpenSSLEvpDigestSetLegacyDigest
      Src: /src/xmlsec/src/openssl/digests.c:284,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/digests.c:286,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:287,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:288,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/digests.c:293,1
    - Dst: xmlSecOpenSSLEvpDigestSetLegacyDigest
      Src: /src/xmlsec/src/openssl/digests.c:295,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/digests.c:297,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:298,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:299,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/openssl/digests.c:305,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:306,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:312,1
    - Dst: EVP_MD_fetch
      Src: /src/xmlsec/src/openssl/digests.c:313,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/digests.c:313,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/digests.c:315,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:315,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/digests.c:316,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:322,1
    - Dst: EVP_MD_CTX_new
      Src: /src/xmlsec/src/openssl/digests.c:325,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/digests.c:327,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:327,1
    - Dst: xmlSecOpenSSLEvpDigestFinalize
      Src: /src/xmlsec/src/openssl/digests.c:328,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 84
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 334
    functionName: xmlSecOpenSSLEvpDigestInitialize
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - EVP_sha3_512
    - xmlSecOpenSSLEvpDigestGetCtx
    - EVP_md5
    - xmlSecOpenSSLGetLibCtx
    - EVP_MD_CTX_new
    - xmlSecOpenSSLError
    - xmlSecOpenSSLEvpDigestFinalize
    - xmlSecErrorsSafeString
    - EVP_sha3_224
    - EVP_MD_fetch
    - EVP_ripemd160
    - xmlSecTransformGetName
    - EVP_sha512
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - EVP_sha384
    - EVP_sha224
    - memset
    - xmlSecOpenSSLEvpDigestCheckId
    - xmlSecTransformCheckSize
    - EVP_sha1
    - EVP_sha3_384
    - EVP_sha256
    - xmlSecOpenSSLEvpDigestSetLegacyDigest
    - EVP_sha3_256
    - XMLSEC_OPENSSL_EVP_DIGEST_SETUP
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/digests.c:340,1
    - Dst: xmlSecOpenSSLEvpDigestCheckId
      Src: /src/xmlsec/src/openssl/digests.c:340,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/digests.c:341,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/digests.c:341,1
    - Dst: xmlSecOpenSSLEvpDigestGetCtx
      Src: /src/xmlsec/src/openssl/digests.c:343,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/digests.c:344,1
    - Dst: EVP_MD_CTX_free
      Src: /src/xmlsec/src/openssl/digests.c:347,1
    - Dst: EVP_MD_free
      Src: /src/xmlsec/src/openssl/digests.c:351,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/digests.c:355,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 336
    functionDepth: 2
    functionLinenumber: 336
    functionLinenumberEnd: 356
    functionName: xmlSecOpenSSLEvpDigestFinalize
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLEvpDigestCheckId
    - EVP_MD_free
    - xmlSecTransformCheckSize
    - EVP_MD_CTX_free
    - xmlSecOpenSSLEvpDigestGetCtx
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLEvpDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:364,1
    - Dst: xmlSecOpenSSLEvpDigestCheckId
      Src: /src/xmlsec/src/openssl/digests.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:365,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/digests.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:369,1
    - Dst: xmlSecOpenSSLEvpDigestGetCtx
      Src: /src/xmlsec/src/openssl/digests.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:372,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:373,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/openssl/digests.c:376,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:377,1
    - Dst: memcmp
      Src: /src/xmlsec/src/openssl/digests.c:382,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/openssl/digests.c:383,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 391
    functionName: xmlSecOpenSSLEvpDigestVerify
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLEvpDigestCheckId
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLEvpDigestGetCtx
    - memcmp
    - xmlSecTransformGetName
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLEvpDigestVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:399,1
    - Dst: xmlSecOpenSSLEvpDigestCheckId
      Src: /src/xmlsec/src/openssl/digests.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:401,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/digests.c:401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:402,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:408,1
    - Dst: xmlSecOpenSSLEvpDigestGetCtx
      Src: /src/xmlsec/src/openssl/digests.c:410,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:413,1
    - Dst: EVP_DigestInit
      Src: /src/xmlsec/src/openssl/digests.c:416,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/digests.c:418,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:419,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/digests.c:428,1
    - Dst: EVP_DigestUpdate
      Src: /src/xmlsec/src/openssl/digests.c:430,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/digests.c:430,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/digests.c:432,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:433,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/digests.c:438,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/digests.c:440,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:441,1
    - Dst: EVP_MD_size
      Src: /src/xmlsec/src/openssl/digests.c:451,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/digests.c:453,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:453,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/digests.c:456,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/digests.c:456,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:456,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:457,1
    - Dst: EVP_DigestFinal
      Src: /src/xmlsec/src/openssl/digests.c:459,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/digests.c:461,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:462,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:465,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/openssl/digests.c:470,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/digests.c:472,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/digests.c:473,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/digests.c:482,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/digests.c:482,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/digests.c:484,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 67
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 393
    functionDepth: 3
    functionLinenumber: 393
    functionLinenumberEnd: 489
    functionName: xmlSecOpenSSLEvpDigestExecute
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLEvpDigestGetCtx
    - return
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecOpenSSLError
    - xmlSecTransformGetName
    - EVP_DigestInit
    - xmlSecBufferRemoveHead
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - EVP_DigestFinal
    - xmlSecBufferAppend
    - xmlSecOpenSSLEvpDigestCheckId
    - xmlSecTransformCheckSize
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - EVP_DigestUpdate
    - EVP_MD_size
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: xmlSecOpenSSLTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionName: xmlSecOpenSSLTransformRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 628
    functionName: xmlSecOpenSSLTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 671
    functionDepth: 0
    functionLinenumber: 671
    functionLinenumberEnd: 674
    functionName: xmlSecOpenSSLTransformSha224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 717
    functionDepth: 0
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionName: xmlSecOpenSSLTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 766
    functionName: xmlSecOpenSSLTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 809
    functionDepth: 0
    functionLinenumber: 809
    functionLinenumberEnd: 812
    functionName: xmlSecOpenSSLTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: xmlSecOpenSSLTransformSha3_224GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha3_224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 900
    functionDepth: 0
    functionLinenumber: 900
    functionLinenumberEnd: 903
    functionName: xmlSecOpenSSLTransformSha3_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha3_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 947
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 947
    functionName: xmlSecOpenSSLTransformSha3_384GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha3_384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 991
    functionName: xmlSecOpenSSLTransformSha3_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformSha3_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1035
    functionName: xmlSecOpenSSLTransformGostR3411_94GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGostR3411_94GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 1077
    functionDepth: 0
    functionLinenumber: 1077
    functionLinenumberEnd: 1080
    functionName: xmlSecOpenSSLTransformGostR3411_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGostR3411_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1119
    functionDepth: 0
    functionLinenumber: 1119
    functionLinenumberEnd: 1122
    functionName: xmlSecOpenSSLTransformGostR3411_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformGostR3411_2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: xmlSecOpenSSLKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecOpenSSLKeysStoreGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:90,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:90,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:93,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/openssl/keysstore.c:95,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/keysstore.c:97,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/openssl/keysstore.c:98,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: xmlSecOpenSSLKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecKeyStoreCreate
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/keysstore.c:109,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:109,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:111,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/keysstore.c:112,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/openssl/keysstore.c:114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 115
    functionName: xmlSecOpenSSLKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCheckId
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:122,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:122,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:123,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:125,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:126,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/openssl/keysstore.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 129
    functionName: xmlSecOpenSSLKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyStoreFindKey
    - xmlSecKeyStoreCheckId
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLKeysStoreFindKey(xmlSecKeyStorePtr store,
      const xmlChar* name,\n                          xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:140,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:141,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:142,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:144,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:145,1
    - Dst: xmlSecSimpleKeysStoreGetKeys
      Src: /src/xmlsec/src/openssl/keysstore.c:147,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/keysstore.c:149,1
    - Dst: xmlSecOpenSSLX509FindKeyByValue
      Src: /src/xmlsec/src/openssl/keysstore.c:153,1
    - Dst: xmlSecKeyDuplicate
      Src: /src/xmlsec/src/openssl/keysstore.c:160,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/keysstore.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:168,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:170,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/openssl/keysstore.c:172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - store
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 131
    functionDepth: 5
    functionLinenumber: 131
    functionLinenumberEnd: 175
    functionName: xmlSecOpenSSLKeysStoreFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyDuplicate
    - xmlSecNotImplementedError
    - xmlSecOpenSSLX509FindKeyByValue
    - xmlSecSimpleKeysStoreGetKeys
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecOpenSSLKeysStoreFindKeyFromX509Data(xmlSecKeyStorePtr
      store, xmlSecKeyX509DataValuePtr x509Data,\n    xmlSecKeyInfoCtxPtr keyInfoCtx\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:190,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:191,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:194,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:195,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/openssl/keysstore.c:197,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 198
    functionName: xmlSecOpenSSLKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecKeyStoreCheckId
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/openssl/keysstore.c:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - store
    - uri
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 15
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: xmlSecOpenSSLKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecSimpleKeysStoreLoad_ex
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeysStoreLoad(xmlSecKeyStorePtr store, const char
      *uri,\n                            xmlSecKeysMngrPtr keysMngr XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:231,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:231,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:232,1
    - Dst: xmlSecOpenSSLKeysStoreGetCtx
      Src: /src/xmlsec/src/openssl/keysstore.c:234,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/keysstore.c:235,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/openssl/keysstore.c:236,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/openssl/keysstore.c:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 227
    functionDepth: 12
    functionLinenumber: 227
    functionLinenumberEnd: 239
    functionName: xmlSecOpenSSLKeysStoreSave
    functionSourceFile: /src/xmlsec/src/openssl/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecSimpleKeysStoreSave
    - xmlSecKeyStoreCheckId
    - xmlSecOpenSSLKeysStoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeysStoreSave(xmlSecKeyStorePtr store, const char
      *filename, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/openssl/crypto.c:77,1
    - Dst: xmlSecOpenSSLAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/openssl/crypto.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 114
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 433
    functionName: xmlSecCryptoGetFunctions_openssl
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_openssl(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/openssl/crypto.c:445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/crypto.c:446,1
    - Dst: xmlSecOpenSSLErrorsInit
      Src: /src/xmlsec/src/openssl/crypto.c:450,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/crypto.c:451,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/openssl/crypto.c:456,1
    - Dst: xmlSecCryptoGetFunctions_openssl
      Src: /src/xmlsec/src/openssl/crypto.c:456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/crypto.c:457,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 442
    functionDepth: 3
    functionLinenumber: 442
    functionLinenumberEnd: 462
    functionName: xmlSecOpenSSLInit
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLErrorsInit
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecCheckVersionExact
    - xmlSecCryptoGetFunctions_openssl
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOpenSSLSetDefaultTrustedCertsFolder
      Src: /src/xmlsec/src/openssl/crypto.c:473,1
    - Dst: xmlSecOpenSSLErrorsShutdown
      Src: /src/xmlsec/src/openssl/crypto.c:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 476
    functionName: xmlSecOpenSSLShutdown
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLSetDefaultTrustedCertsFolder
    - xmlSecOpenSSLErrorsShutdown
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:491,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/openssl/crypto.c:494,1
    - Dst: xmlSecKeyDataStoreCreate
      Src: /src/xmlsec/src/openssl/crypto.c:497,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/crypto.c:499,1
    - Dst: xmlSecKeysMngrAdoptDataStore
      Src: /src/xmlsec/src/openssl/crypto.c:503,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/crypto.c:505,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/openssl/crypto.c:506,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:512,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 486
    functionDepth: 3
    functionLinenumber: 486
    functionLinenumberEnd: 517
    functionName: xmlSecOpenSSLKeysMngrInit
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCreate
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeysMngrAdoptDataStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:532,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:533,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/crypto.c:535,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/crypto.c:537,1
    - Dst: RAND_priv_bytes_ex
      Src: /src/xmlsec/src/openssl/crypto.c:543,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/crypto.c:543,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/crypto.c:543,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/crypto.c:546,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 528
    functionDepth: 2
    functionLinenumber: 528
    functionLinenumberEnd: 551
    functionName: xmlSecOpenSSLGenerateRandom
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecOpenSSLError2
    - RAND_priv_bytes_ex
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize
      size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ERR_put_error
      Src: /src/xmlsec/src/openssl/crypto.c:570,1
    - Dst: xmlSecErrorsDefaultCallback
      Src: /src/xmlsec/src/openssl/crypto.c:575,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 7
    argNames:
    - file
    - line
    - func
    - errorObject
    - errorSubject
    - reason
    - msg
    argTypes:
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 565
    functionDepth: 2
    functionLinenumber: 565
    functionLinenumberEnd: 578
    functionName: xmlSecOpenSSLErrorsDefaultCallback
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsDefaultCallback
    - ERR_put_error
    linkageType: ''
    returnType: void
    signature: "void xmlSecOpenSSLErrorsDefaultCallback(const char* file, int line,
      const char* func,\n                                const char* errorObject,
      const char* errorSubject,\n                                int reason, const
      char* msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ERR_get_next_error_library
      Src: /src/xmlsec/src/openssl/crypto.c:586,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/crypto.c:589,1
    - Dst: ERR_PACK
      Src: /src/xmlsec/src/openssl/crypto.c:590,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/crypto.c:594,1
    - Dst: ERR_PACK
      Src: /src/xmlsec/src/openssl/crypto.c:595,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/crypto.c:599,1
    - Dst: xmlSecErrorsGetMsg
      Src: /src/xmlsec/src/openssl/crypto.c:600,1
    - Dst: ERR_PACK
      Src: /src/xmlsec/src/openssl/crypto.c:601,1
    - Dst: xmlSecErrorsGetCode
      Src: /src/xmlsec/src/openssl/crypto.c:601,1
    - Dst: xmlSecErrorsGetMsg
      Src: /src/xmlsec/src/openssl/crypto.c:602,1
    - Dst: ERR_load_strings
      Src: /src/xmlsec/src/openssl/crypto.c:606,1
    - Dst: ERR_load_strings
      Src: /src/xmlsec/src/openssl/crypto.c:607,1
    - Dst: ERR_load_strings
      Src: /src/xmlsec/src/openssl/crypto.c:608,1
    - Dst: xmlSecErrorsSetCallback
      Src: /src/xmlsec/src/openssl/crypto.c:612,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 580
    functionDepth: 1
    functionLinenumber: 580
    functionLinenumberEnd: 615
    functionName: xmlSecOpenSSLErrorsInit
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached:
    - ERR_PACK
    - xmlSecErrorsSetCallback
    - xmlSecErrorsGetCode
    - xmlSecErrorsGetMsg
    - ERR_get_next_error_library
    - ERR_load_strings
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLErrorsInit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsSetCallback
      Src: /src/xmlsec/src/openssl/crypto.c:621,1
    - Dst: ERR_unload_strings
      Src: /src/xmlsec/src/openssl/crypto.c:625,1
    - Dst: ERR_unload_strings
      Src: /src/xmlsec/src/openssl/crypto.c:626,1
    - Dst: ERR_unload_strings
      Src: /src/xmlsec/src/openssl/crypto.c:627,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 618
    functionDepth: 1
    functionLinenumber: 618
    functionLinenumberEnd: 629
    functionName: xmlSecOpenSSLErrorsShutdown
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached:
    - ERR_unload_strings
    - xmlSecErrorsSetCallback
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLErrorsShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/crypto.c:642,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/crypto.c:647,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - path
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 639
    functionDepth: 2
    functionLinenumber: 639
    functionLinenumberEnd: 655
    functionName: xmlSecOpenSSLSetDefaultTrustedCertsFolder
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlFree
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSetDefaultTrustedCertsFolder(const xmlChar* path)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 667
    functionName: xmlSecOpenSSLGetDefaultTrustedCertsFolder
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLGetDefaultTrustedCertsFolder(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - libctx
    argTypes:
    - OSSL_LIB_CTX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 687
    functionName: xmlSecOpenSSLSetLibCtx
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSetLibCtx(OSSL_LIB_CTX* libctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 697
    functionDepth: 0
    functionLinenumber: 697
    functionLinenumberEnd: 700
    functionName: xmlSecOpenSSLGetLibCtx
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: OSSL_LIB_CTX
    signature: 'OSSL_LIB_CTX *

      xmlSecOpenSSLGetLibCtx(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BIO_new_ex
      Src: /src/xmlsec/src/openssl/crypto.c:720,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/crypto.c:720,1
    - Dst: BIO_s_mem
      Src: /src/xmlsec/src/openssl/crypto.c:720,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/crypto.c:722,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 716
    functionDepth: 1
    functionLinenumber: 716
    functionLinenumberEnd: 726
    functionName: xmlSecOpenSSLCreateMemBio
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 3
    functionsReached:
    - xmlSecOpenSSLError
    - BIO_new_ex
    - BIO_s_mem
    - xmlSecOpenSSLGetLibCtx
    linkageType: ''
    returnType: BIO
    signature: 'BIO *

      xmlSecOpenSSLCreateMemBio(void)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:743,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/crypto.c:745,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/crypto.c:745,1
    - Dst: BIO_new_mem_buf
      Src: /src/xmlsec/src/openssl/crypto.c:746,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/crypto.c:748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - bufSize
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 738
    functionDepth: 1
    functionLinenumber: 738
    functionLinenumberEnd: 753
    functionName: xmlSecOpenSSLCreateMemBufBio
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 7
    functionsReached:
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - BIO_new_mem_buf
    - return
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: BIO
    signature: 'BIO *

      xmlSecOpenSSLCreateMemBufBio(const xmlSecByte *buf, xmlSecSize bufSize)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/crypto.c:767,1
    - Dst: BIO_new_ex
      Src: /src/xmlsec/src/openssl/crypto.c:769,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/crypto.c:769,1
    - Dst: BIO_s_file
      Src: /src/xmlsec/src/openssl/crypto.c:769,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/crypto.c:771,1
    - Dst: BIO_read_filename
      Src: /src/xmlsec/src/openssl/crypto.c:774,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/crypto.c:775,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/crypto.c:776,1
    - Dst: BIO_free_all
      Src: /src/xmlsec/src/openssl/crypto.c:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 764
    functionDepth: 1
    functionLinenumber: 764
    functionLinenumberEnd: 781
    functionName: xmlSecOpenSSLCreateReadFileBio
    functionSourceFile: /src/xmlsec/src/openssl/crypto.c
    functionUses: 5
    functionsReached:
    - BIO_s_file
    - xmlSecOpenSSLError2
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BIO_new_ex
    - xmlSecOpenSSLGetLibCtx
    - xmlSecErrorsSafeString
    - BIO_read_filename
    - BIO_free_all
    linkageType: ''
    returnType: BIO
    signature: 'BIO *

      xmlSecOpenSSLCreateReadFileBio(const char* path)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionName: xmlSecOpenSSLTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaPkcs1GetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:132,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:133,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:134,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kt_rsa.c:135,1
    - Dst: EVP_PKEY_get0_RSA
      Src: /src/xmlsec/src/openssl/kt_rsa.c:137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:138,1
    - Dst: RSA_size
      Src: /src/xmlsec/src/openssl/kt_rsa.c:140,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:142,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:145,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:145,1
    - Dst: xmlSecOpenSSLEvpKeyDup
      Src: /src/xmlsec/src/openssl/kt_rsa.c:147,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:149,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - pKey
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecOpenSSLRsaPkcs1CtxPtr
    - EVP_PKEY*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 155
    functionName: xmlSecOpenSSLRsaPkcs1SetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_RSA
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - RSA_size
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - return
    - xmlSecOpenSSLEvpKeyDup
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaPkcs1SetKeyImpl(xmlSecOpenSSLRsaPkcs1CtxPtr ctx,
      EVP_PKEY* pKey,\n                                int encrypt XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:164,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:166,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/kt_rsa.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:167,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:170,1
    - Dst: EVP_PKEY_get0_RSA
      Src: /src/xmlsec/src/openssl/kt_rsa.c:172,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:173,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/kt_rsa.c:175,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:175,1
    - Dst: RSA_public_encrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:177,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:179,1
    - Dst: RSA_private_decrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:185,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:187,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:192,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:192,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 6
    argNames:
    - ctx
    - inBuf
    - inSize
    - outBuf
    - outSize
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaPkcs1CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 196
    functionName: xmlSecOpenSSLRsaPkcs1ProcessImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_RSA
    - xmlSecOpenSSLError2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - return
    - RSA_private_decrypt
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    - RSA_public_encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaPkcs1ProcessImpl(xmlSecOpenSSLRsaPkcs1CtxPtr ctx,
      const xmlSecByte* inBuf, xmlSecSize inSize,\n                                 xmlSecByte*
      outBuf, xmlSecSize* outSize, int encrypt)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:208,1
    - Dst: EVP_PKEY_get_size
      Src: /src/xmlsec/src/openssl/kt_rsa.c:210,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:212,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:215,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:215,1
    - Dst: EVP_PKEY_CTX_new_from_pkey
      Src: /src/xmlsec/src/openssl/kt_rsa.c:217,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:217,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:219,1
    - Dst: EVP_PKEY_encrypt_init
      Src: /src/xmlsec/src/openssl/kt_rsa.c:224,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:226,1
    - Dst: EVP_PKEY_decrypt_init
      Src: /src/xmlsec/src/openssl/kt_rsa.c:230,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:232,1
    - Dst: EVP_PKEY_CTX_set_rsa_padding
      Src: /src/xmlsec/src/openssl/kt_rsa.c:237,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:239,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - pKey
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaPkcs1CtxPtr
    - EVP_PKEY*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 245
    functionName: xmlSecOpenSSLRsaPkcs1SetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get_size
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_encrypt_init
    - return
    - EVP_PKEY_CTX_new_from_pkey
    - EVP_PKEY_CTX_set_rsa_padding
    - EVP_PKEY_decrypt_init
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaPkcs1SetKeyImpl(xmlSecOpenSSLRsaPkcs1CtxPtr ctx,
      EVP_PKEY* pKey,\n                                int encrypt)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:256,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:258,1
    - Dst: EVP_PKEY_encrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:262,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:264,1
    - Dst: EVP_PKEY_decrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:269,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:271,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:276,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:276,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 6
    argNames:
    - ctx
    - inBuf
    - inSize
    - outBuf
    - outSize
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaPkcs1CtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 280
    functionName: xmlSecOpenSSLRsaPkcs1ProcessImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - return
    - EVP_PKEY_decrypt
    - EVP_PKEY_encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaPkcs1ProcessImpl(xmlSecOpenSSLRsaPkcs1CtxPtr ctx,
      const xmlSecByte* inBuf, xmlSecSize inSize,\n                                 xmlSecByte*
      outBuf, xmlSecSize* outSize, int encrypt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:287,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:288,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:288,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:291,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kt_rsa.c:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 295
    functionName: xmlSecOpenSSLRsaPkcs1Initialize
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaPkcs1Initialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:301,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:301,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:302,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:302,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:304,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:305,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:310,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:314,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kt_rsa.c:318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 319
    functionName: xmlSecOpenSSLRsaPkcs1Finalize
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - EVP_PKEY_CTX_free
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLRsaPkcs1Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:325,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:327,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:328,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:331,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 342
    functionName: xmlSecOpenSSLRsaPkcs1SetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaPkcs1SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:351,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:353,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:353,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:355,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:355,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/kt_rsa.c:355,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:359,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetEvp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:362,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/kt_rsa.c:362,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:364,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:368,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/kt_rsa.c:368,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:375,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:376,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/kt_rsa.c:378,1
    - Dst: xmlSecOpenSSLRsaPkcs1SetKeyImpl
      Src: /src/xmlsec/src/openssl/kt_rsa.c:382,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:384,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:385,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 391
    functionName: xmlSecOpenSSLRsaPkcs1SetKey
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLKeyDataRsaGetEvp
    - xmlSecAssert2
    - xmlSecOpenSSLRsaPkcs1SetKeyImpl
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaPkcs1SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:399,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:401,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:401,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kt_rsa.c:402,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:406,1
    - Dst: xmlSecOpenSSLRsaPkcs1Process
      Src: /src/xmlsec/src/openssl/kt_rsa.c:415,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:417,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:424,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:424,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:426,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 393
    functionDepth: 2
    functionLinenumber: 393
    functionLinenumberEnd: 430
    functionName: xmlSecOpenSSLRsaPkcs1Execute
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - xmlSecInvalidTransfromStatusError
    - xmlSecOpenSSLRsaPkcs1Process
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaPkcs1Execute(xmlSecTransformPtr transform, int
      last,\n                             xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:440,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:440,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:442,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:442,1
    - Dst: xmlSecOpenSSLRsaPkcs1GetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:445,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:446,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:451,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:452,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:453,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:460,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:461,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/kt_rsa.c:463,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:470,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:471,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:474,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:475,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:480,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:482,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:483,1
    - Dst: xmlSecOpenSSLRsaPkcs1ProcessImpl
      Src: /src/xmlsec/src/openssl/kt_rsa.c:488,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:488,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:489,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:491,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:492,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:496,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:498,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:499,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/kt_rsa.c:504,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:506,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:507,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 432
    functionDepth: 2
    functionLinenumber: 432
    functionLinenumberEnd: 513
    functionName: xmlSecOpenSSLRsaPkcs1Process
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 1
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - xmlSecTransformCheckId
    - xmlSecOpenSSLRsaPkcs1ProcessImpl
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecOpenSSLRsaPkcs1GetCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecTransformGetName
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaPkcs1Process(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionName: xmlSecOpenSSLTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaOaepGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 639
    functionName: xmlSecOpenSSLTransformRsaOaepEnc11GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecOpenSSLTransformRsaOaepEnc11GetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:643,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:645,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 641
    functionDepth: 1
    functionLinenumber: 641
    functionLinenumberEnd: 651
    functionName: xmlSecOpenSSLRsaOaepCheckId
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaOaepCheckId(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:661,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:662,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:663,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kt_rsa.c:664,1
    - Dst: EVP_PKEY_get0_RSA
      Src: /src/xmlsec/src/openssl/kt_rsa.c:666,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:667,1
    - Dst: RSA_size
      Src: /src/xmlsec/src/openssl/kt_rsa.c:669,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:671,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:674,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:674,1
    - Dst: xmlSecOpenSSLEvpKeyDup
      Src: /src/xmlsec/src/openssl/kt_rsa.c:676,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:678,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - pKey
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecOpenSSLRsaOaepCtxPtr
    - EVP_PKEY*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 655
    functionDepth: 1
    functionLinenumber: 655
    functionLinenumberEnd: 684
    functionName: xmlSecOpenSSLRsaOaepSetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_RSA
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - RSA_size
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - return
    - xmlSecOpenSSLEvpKeyDup
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepSetKeyImpl(xmlSecOpenSSLRsaOaepCtxPtr ctx,
      EVP_PKEY* pKey,\n                            int encrypt XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:695,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:696,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:697,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/kt_rsa.c:697,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:698,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:699,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:700,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:701,1
    - Dst: EVP_PKEY_get0_RSA
      Src: /src/xmlsec/src/openssl/kt_rsa.c:703,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:704,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:706,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:707,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/kt_rsa.c:709,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:709,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/kt_rsa.c:710,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:710,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/openssl/kt_rsa.c:711,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:711,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:718,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:720,1
    - Dst: RSA_padding_add_PKCS1_OAEP_mgf1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:726,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:727,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:732,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:733,1
    - Dst: RSA_public_encrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:738,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:738,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:741,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:742,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:745,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:748,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:748,1
    - Dst: RSA_private_decrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:754,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:756,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/kt_rsa.c:767,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:769,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/kt_rsa.c:773,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:774,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:776,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/kt_rsa.c:780,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:782,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:783,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:787,1
    - Dst: RSA_padding_check_PKCS1_OAEP_mgf1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:789,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:794,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:799,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:799,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 68
    argCount: 6
    argNames:
    - ctx
    - inBuf
    - inSize
    - outBuf
    - outSize
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaOaepCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 686
    functionDepth: 2
    functionLinenumber: 686
    functionLinenumberEnd: 804
    functionName: xmlSecOpenSSLRsaOaepProcessImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_RSA
    - RSA_padding_add_PKCS1_OAEP_mgf1
    - BN_bin2bn
    - return
    - BN_new
    - xmlSecBufferFinalize
    - xmlSecOpenSSLError
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecInternalError2
    - BN_clear_free
    - xmlSecBufferGetData
    - xmlSecBufferInitialize
    - BN_bn2bin
    - RSA_private_decrypt
    - RSA_padding_check_PKCS1_OAEP_mgf1
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - RSA_public_encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepProcessImpl(xmlSecOpenSSLRsaOaepCtxPtr ctx,
      const xmlSecByte* inBuf, xmlSecSize inSize,\n                            xmlSecByte*
      outBuf, xmlSecSize* outSize, int encrypt)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:814,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:815,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:816,1
    - Dst: EVP_PKEY_get_size
      Src: /src/xmlsec/src/openssl/kt_rsa.c:818,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:820,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:823,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:823,1
    - Dst: EVP_PKEY_CTX_new_from_pkey
      Src: /src/xmlsec/src/openssl/kt_rsa.c:825,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:825,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:827,1
    - Dst: EVP_PKEY_encrypt_init
      Src: /src/xmlsec/src/openssl/kt_rsa.c:832,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:834,1
    - Dst: EVP_PKEY_decrypt_init
      Src: /src/xmlsec/src/openssl/kt_rsa.c:838,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:840,1
    - Dst: EVP_PKEY_CTX_set_rsa_padding
      Src: /src/xmlsec/src/openssl/kt_rsa.c:845,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:847,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - pKey
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaOaepCtxPtr
    - EVP_PKEY*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 853
    functionName: xmlSecOpenSSLRsaOaepSetKeyImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get_size
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_encrypt_init
    - return
    - EVP_PKEY_CTX_new_from_pkey
    - EVP_PKEY_CTX_set_rsa_padding
    - EVP_PKEY_decrypt_init
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepSetKeyImpl(xmlSecOpenSSLRsaOaepCtxPtr ctx,
      EVP_PKEY* pKey,\n                            int encrypt)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:866,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:867,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:875,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:876,1
    - Dst: OSSL_PARAM_construct_octet_string
      Src: /src/xmlsec/src/openssl/kt_rsa.c:879,1
    - Dst: OSSL_PARAM_construct_end
      Src: /src/xmlsec/src/openssl/kt_rsa.c:880,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/kt_rsa.c:882,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:884,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/xmlsec/src/openssl/kt_rsa.c:892,1
    - Dst: OSSL_PARAM_construct_end
      Src: /src/xmlsec/src/openssl/kt_rsa.c:893,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/kt_rsa.c:895,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:897,1
    - Dst: OSSL_PARAM_construct_utf8_string
      Src: /src/xmlsec/src/openssl/kt_rsa.c:905,1
    - Dst: OSSL_PARAM_construct_end
      Src: /src/xmlsec/src/openssl/kt_rsa.c:906,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/kt_rsa.c:908,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:910,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecOpenSSLRsaOaepCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 859
    functionDepth: 2
    functionLinenumber: 859
    functionLinenumberEnd: 921
    functionName: xmlSecOpenSSSLRsaOaepSetParamsIfNeeded
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_CTX_set_params
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - OSSL_PARAM_construct_octet_string
    - xmlSecBufferGetData
    - OSSL_PARAM_construct_end
    - xmlSecBufferGetSize
    - OSSL_PARAM_construct_utf8_string
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSSLRsaOaepSetParamsIfNeeded(xmlSecOpenSSLRsaOaepCtxPtr
      ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:929,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:930,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:931,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:932,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:933,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:934,1
    - Dst: xmlSecOpenSSSLRsaOaepSetParamsIfNeeded
      Src: /src/xmlsec/src/openssl/kt_rsa.c:936,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:938,1
    - Dst: EVP_PKEY_encrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:944,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:946,1
    - Dst: EVP_PKEY_decrypt
      Src: /src/xmlsec/src/openssl/kt_rsa.c:950,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:952,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/kt_rsa.c:957,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/kt_rsa.c:957,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 28
    argCount: 6
    argNames:
    - ctx
    - inBuf
    - inSize
    - outBuf
    - outSize
    - encrypt
    argTypes:
    - xmlSecOpenSSLRsaOaepCtxPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 923
    functionDepth: 3
    functionLinenumber: 923
    functionLinenumberEnd: 960
    functionName: xmlSecOpenSSLRsaOaepProcessImpl
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSSLRsaOaepSetParamsIfNeeded
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - return
    - EVP_PKEY_decrypt
    - EVP_PKEY_encrypt
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepProcessImpl(xmlSecOpenSSLRsaOaepCtxPtr ctx,
      const xmlSecByte* inBuf, xmlSecSize inSize,\n                            xmlSecByte*
      outBuf, xmlSecSize* outSize, int encrypt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:968,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:968,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:969,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:969,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:971,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:972,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kt_rsa.c:974,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:976,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:978,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:979,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 963
    functionDepth: 2
    functionLinenumber: 963
    functionLinenumberEnd: 983
    functionName: xmlSecOpenSSLRsaOaepInitialize
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLRsaOaepGetCtx
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaOaepInitialize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:989,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:989,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:990,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:990,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:992,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/kt_rsa.c:993,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:997,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1001,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1005,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1006,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1007
      start: 985
    functionDepth: 2
    functionLinenumber: 985
    functionLinenumberEnd: 1007
    functionName: xmlSecOpenSSLRsaOaepFinalize
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_free
    - xmlSecTransformCheckSize
    - EVP_PKEY_CTX_free
    - xmlSecOpenSSLRsaOaepGetCtx
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecAssert
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLRsaOaepFinalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1013
    functionName: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 1013
    functionDepth: 0
    functionLinenumber: 1013
    functionLinenumberEnd: 1015
    functionName: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1016
    functionDepth: 0
    functionLinenumber: 1016
    functionLinenumberEnd: 1018
    functionName: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - digestVal
    - ','
    - digestNameVal
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1020
    functionName: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP(ctx, digestVal, digestNameVal)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1029,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1029,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1030,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1030,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1031,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1032,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1034,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1035,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1036,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1036,1
    - Dst: xmlSecTransformRsaOaepParamsInitialize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1038,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1040,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1041,1
    - Dst: xmlSecTransformRsaOaepParamsRead
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1045,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1047,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1048,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1049,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1056,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1056,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1058,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1059,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1064,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1065,1
    - Dst: EVP_md5
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1065,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1070,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1071,1
    - Dst: EVP_ripemd160
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1071,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1076,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1077,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1077,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1082,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1083,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1083,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1088,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1089,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1089,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1094,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1095,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1095,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1100,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1101,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1101,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1106,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1107,1
    - Dst: EVP_sha3_224
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1107,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1108,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1109,1
    - Dst: EVP_sha3_256
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1109,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1110,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1111,1
    - Dst: EVP_sha3_384
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1111,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1112,1
    - Dst: XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1113,1
    - Dst: EVP_sha3_512
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1113,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1118,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1120,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1121,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1128,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1128,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1130,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1131,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1136,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1137,1
    - Dst: EVP_sha1
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1137,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1142,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1143,1
    - Dst: EVP_sha224
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1143,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1148,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1149,1
    - Dst: EVP_sha256
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1149,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1154,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1155,1
    - Dst: EVP_sha384
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1155,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1160,1
    - Dst: XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1161,1
    - Dst: EVP_sha512
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1161,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1165,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1167,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1168,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1173,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1176,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 90
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1022
    functionDepth: 12
    functionLinenumber: 1022
    functionLinenumberEnd: 1178
    functionName: xmlSecOpenSSLRsaOaepNodeRead
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - EVP_sha3_512
    - EVP_md5
    - xmlSecTransformRsaOaepParamsFinalize
    - XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
    - xmlSecOpenSSLRsaOaepGetCtx
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - EVP_sha3_224
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecTransformRsaOaepParamsInitialize
    - xmlStrcmp
    - EVP_ripemd160
    - xmlSecTransformGetName
    - xmlSecTransformRsaOaepParamsRead
    - EVP_sha512
    - xmlSecInternalError
    - xmlSecAssert2
    - EVP_sha384
    - EVP_sha224
    - xmlSecOtherError
    - XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
    - UNREFERENCED_PARAMETER
    - xmlSecTransformCheckSize
    - EVP_sha1
    - EVP_sha3_384
    - xmlSecBufferGetSize
    - EVP_sha256
    - EVP_sha3_256
    - xmlSecBufferSwap
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                             xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1184,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1184,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1186,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1187,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1189,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1180
    functionDepth: 2
    functionLinenumber: 1180
    functionLinenumberEnd: 1202
    functionName: xmlSecOpenSSLRsaOaepSetKeyReq
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLRsaOaepGetCtx
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaOaepSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1211,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1211,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1213,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1213,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1214,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1215,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1215,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1215,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1217,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1219,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetEvp
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1221,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1221,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1223,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1227,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1227,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1234,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1235,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1237,1
    - Dst: xmlSecOpenSSLRsaOaepSetKeyImpl
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1241,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1243,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1244,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1250
      start: 1204
    functionDepth: 2
    functionLinenumber: 1204
    functionLinenumberEnd: 1250
    functionName: xmlSecOpenSSLRsaOaepSetKey
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecOpenSSLKeyDataRsaGetEvp
    - xmlSecAssert2
    - xmlSecOpenSSLRsaOaepGetCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecKeyDataCheckId
    - xmlSecTransformGetName
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    - xmlSecOpenSSLRsaOaepSetKeyImpl
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaOaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1258,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1260,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1260,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1261,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1264,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1265,1
    - Dst: xmlSecOpenSSLRsaOaepProcess
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1283,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1283,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1285,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1252
    functionDepth: 2
    functionLinenumber: 1252
    functionLinenumberEnd: 1289
    functionName: xmlSecOpenSSLRsaOaepExecute
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLRsaOaepGetCtx
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecInvalidTransfromStatusError
    - xmlSecOpenSSLRsaOaepProcess
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLRsaOaepExecute(xmlSecTransformPtr transform, int
      last,\n                            xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1299,1
    - Dst: xmlSecOpenSSLRsaOaepCheckId
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1301,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1301,1
    - Dst: xmlSecOpenSSLRsaOaepGetCtx
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1305,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1310,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1311,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1312,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1321,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1322,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1324,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1329,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1330,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1333,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1334,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1339,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1341,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1342,1
    - Dst: xmlSecOpenSSLRsaOaepProcessImpl
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1347,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1347,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1348,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1350,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1351,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1355,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1357,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1358,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1363,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1365,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/openssl/kt_rsa.c:1366,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 51
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1291
    functionDepth: 3
    functionLinenumber: 1291
    functionLinenumberEnd: 1372
    functionName: xmlSecOpenSSLRsaOaepProcess
    functionSourceFile: /src/xmlsec/src/openssl/kt_rsa.c
    functionUses: 1
    functionsReached:
    - xmlSecInvalidSizeLessThanError
    - xmlSecOpenSSLRsaOaepProcessImpl
    - xmlSecInternalError
    - xmlSecBufferRemoveHead
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecOpenSSLRsaOaepGetCtx
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecOpenSSLRsaOaepCheckId
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecTransformGetName
    - xmlSecInvalidSizeError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:61,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:62,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:64,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:65,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/evp.c:66,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:66,1
    - Dst: BN_bin2bn
      Src: /src/xmlsec/src/openssl/evp.c:68,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - buf
    - bigNum
    argTypes:
    - xmlSecBufferPtr
    - BIGNUM**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 74
    functionName: xmlSecOpenSSLGetBNValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - BN_bin2bn
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLGetBNValue(const xmlSecBufferPtr buf, BIGNUM **bigNum)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:83,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:84,1
    - Dst: BN_num_bytes
      Src: /src/xmlsec/src/openssl/evp.c:86,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:88,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:91,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:91,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/openssl/evp.c:93,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:95,1
    - Dst: BN_bn2bin
      Src: /src/xmlsec/src/openssl/evp.c:99,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:99,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:101,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:104,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:104,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/evp.c:106,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:108,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - bigNum
    - buf
    argTypes:
    - BIGNUM*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 113
    functionName: xmlSecOpenSSLSetBNValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - BN_num_bytes
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - return
    - BN_bn2bin
    - xmlSecBufferSetSize
    - xmlSecBufferSetMaxSize
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLSetBNValue(const BIGNUM *bigNum, xmlSecBufferPtr buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:152,1
    - Dst: EVP_PKEY_get0_engine
      Src: /src/xmlsec/src/openssl/evp.c:155,1
    - Dst: EVP_PKEY_get0_provider
      Src: /src/xmlsec/src/openssl/evp.c:161,1
    - Dst: OSSL_PROVIDER_get0_name
      Src: /src/xmlsec/src/openssl/evp.c:166,1
    - Dst: strcmp
      Src: /src/xmlsec/src/openssl/evp.c:167,1
    - Dst: strcmp
      Src: /src/xmlsec/src/openssl/evp.c:167,1
    - Dst: strcmp
      Src: /src/xmlsec/src/openssl/evp.c:167,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 175
    functionName: xmlSecOpenSSLEvpIsKeyInMemory
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - EVP_PKEY_get0_engine
    - strcmp
    - EVP_PKEY_get0_provider
    - OSSL_PROVIDER_get0_name
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpIsKeyInMemory(EVP_PKEY* pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:183,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:183,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:185,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 188
    functionName: xmlSecOpenSSLEvpKeyDataIsKeyInMemory
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataIsValid
    - xmlSecOpenSSLEvpKeyDataGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpKeyDataIsKeyInMemory(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:203,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:204,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:205,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:208,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:211,1
    - Dst: xmlSecOpenSSLEvpIsKeyInMemory
      Src: /src/xmlsec/src/openssl/evp.c:214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - pKey
    argTypes:
    - xmlSecKeyDataPtr
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 216
    functionName: xmlSecOpenSSLEvpKeyDataAdoptEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - EVP_PKEY_free
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetCtx
    - xmlSecKeyDataCheckSize
    - xmlSecOpenSSLEvpIsKeyInMemory
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpKeyDataAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY*
      pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:230,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:231,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:231,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 237
    functionName: xmlSecOpenSSLEvpKeyDataGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataIsValid
    - xmlSecOpenSSLEvpKeyDataGetCtx
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLEvpKeyDataGetEvp(xmlSecKeyDataPtr data)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:251,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/openssl/evp.c:253,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - key
    argTypes:
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 259
    functionName: xmlSecOpenSSLKeyGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - xmlSecKeyGetValue
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLKeyGetEvp(xmlSecKeyPtr key)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:265,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:265,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:266,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:266,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:269,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 274
    functionName: xmlSecOpenSSLEvpKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetCtx
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:281,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:282,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:282,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:283,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:284,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:284,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:288,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:291,1
    - Dst: xmlSecOpenSSLEvpKeyDup
      Src: /src/xmlsec/src/openssl/evp.c:294,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:296,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 276
    functionDepth: 1
    functionLinenumber: 276
    functionLinenumberEnd: 305
    functionName: xmlSecOpenSSLEvpKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetCtx
    - xmlSecOpenSSLEvpKeyDup
    - xmlSecKeyDataCheckSize
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLEvpKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:311,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/openssl/evp.c:311,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:312,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/openssl/evp.c:312,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetCtx
      Src: /src/xmlsec/src/openssl/evp.c:314,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:315,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:318,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 321
    functionName: xmlSecOpenSSLEvpKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - EVP_PKEY_free
    - xmlSecOpenSSLEvpKeyDataGetCtx
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLEvpKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:331,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:334,1
    - Dst: EVP_PKEY_get_bits
      Src: /src/xmlsec/src/openssl/evp.c:336,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:338,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:338,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:342,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:342,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:342,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 344
    functionName: xmlSecOpenSSLKeyDataGetKeySize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - return
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - EVP_PKEY_get_bits
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataGetKeySize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:364,1
    - Dst: EVP_PKEY_up_ref
      Src: /src/xmlsec/src/openssl/evp.c:366,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 373
    functionName: xmlSecOpenSSLEvpKeyDup
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 5
    functionsReached:
    - xmlSecAssert2
    - EVP_PKEY_up_ref
    - xmlSecOpenSSLError
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLEvpKeyDup(EVP_PKEY* pKey)'
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:388,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:390,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:395,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:397,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:405,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:407,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:415,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:417,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:425,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:427,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:435,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:437,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:447,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:453,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:455,1
    - Dst: xmlSecInvalidIntegerTypeError
      Src: /src/xmlsec/src/openssl/evp.c:462,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:462,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:467,1
    - Dst: xmlSecOpenSSLEvpKeyDataAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:468,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:470,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:471,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 67
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 383
    functionDepth: 3
    functionLinenumber: 383
    functionLinenumberEnd: 477
    functionName: xmlSecOpenSSLEvpKeyAdopt
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 3
    functionsReached:
    - EVP_PKEY_base_id
    - xmlSecInternalError
    - xmlSecOpenSSLEvpKeyDataAdoptEvp
    - xmlSecAssert2
    - xmlSecInvalidIntegerTypeError
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 553
    functionDepth: 0
    functionLinenumber: 553
    functionLinenumberEnd: 556
    functionName: xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass(void)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:570,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:571,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:572,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:573,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:574,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:575,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/openssl/evp.c:577,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:579,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:579,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/openssl/evp.c:584,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/openssl/evp.c:586,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:586,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/openssl/evp.c:591,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:593,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:593,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:596,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:597,1
    - Dst: d2i_PUBKEY
      Src: /src/xmlsec/src/openssl/evp.c:608,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:610,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:610,1
    - Dst: d2i_PUBKEY_ex
      Src: /src/xmlsec/src/openssl/evp.c:615,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:615,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:617,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:617,1
    - Dst: xmlSecOpenSSLEvpKeyAdopt
      Src: /src/xmlsec/src/openssl/evp.c:624,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:626,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:626,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/openssl/evp.c:631,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:633,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:633,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:643,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:646,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/openssl/evp.c:648,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 69
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 558
    functionDepth: 4
    functionLinenumber: 558
    functionLinenumberEnd: 650
    functionName: xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferBase64NodeContentRead
    - d2i_PUBKEY
    - xmlSecKeySetValue
    - xmlSecGetNextElementNode
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - EVP_PKEY_free
    - xmlSecAssert2
    - xmlSecOpenSSLGetLibCtx
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecKeyDataDestroy
    - xmlSecOpenSSLEvpKeyAdopt
    - xmlSecBufferGetSize
    - d2i_PUBKEY_ex
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlRead(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:661,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:662,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:663,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:664,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:665,1
    - Dst: xmlSecOpenSSLKeyGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:668,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:670,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:670,1
    - Dst: i2d_PUBKEY
      Src: /src/xmlsec/src/openssl/evp.c:675,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:677,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:677,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/openssl/evp.c:683,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/evp.c:683,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:685,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:685,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/openssl/evp.c:688,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/openssl/evp.c:695,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/evp.c:698,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 652
    functionDepth: 10
    functionLinenumber: 652
    functionLinenumberEnd: 701
    functionName: xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlFree
    - i2d_PUBKEY
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlNodeAddContent
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataKlassGetName
    - xmlSecBase64Encode
    - xmlSecOpenSSLKeyGetEvp
    - OPENSSL_free
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlWrite(xmlSecKeyDataId
      id, xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:794,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dsaKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 792
    functionDepth: 1
    functionLinenumber: 792
    functionLinenumberEnd: 797
    functionName: xmlSecOpenSSLKeyValueDsaInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyValueDsaInitialize(xmlSecOpenSSLKeyValueDsaPtr
      dsaKeyValue)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:801,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:804,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:807,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:810,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:813,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:816,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:818,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 1
    argNames:
    - dsaKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 819
    functionName: xmlSecOpenSSLKeyValueDsaFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - BN_clear_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyValueDsaFinalize(xmlSecOpenSSLKeyValueDsaPtr dsaKeyValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 900
    functionName: xmlSecOpenSSLKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataDsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:913,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:913,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:914,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:915,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:915,1
    - Dst: xmlSecOpenSSLEvpKeyDataAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:917,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pKey
    argTypes:
    - xmlSecKeyDataPtr
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 911
    functionDepth: 3
    functionLinenumber: 911
    functionLinenumberEnd: 918
    functionName: xmlSecOpenSSLKeyDataDsaAdoptEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataAdoptEvp
    - xmlSecKeyDataCheckId
    - EVP_PKEY_base_id
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY*
      pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:930,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:930,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:932,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 928
    functionDepth: 2
    functionLinenumber: 928
    functionLinenumberEnd: 933
    functionName: xmlSecOpenSSLKeyDataDsaGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLKeyDataDsaGetEvp(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:937,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:937,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:939,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 935
    functionDepth: 2
    functionLinenumber: 935
    functionLinenumberEnd: 940
    functionName: xmlSecOpenSSLKeyDataDsaInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:944,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:944,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:945,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:945,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:947,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 942
    functionDepth: 2
    functionLinenumber: 942
    functionLinenumberEnd: 948
    functionName: xmlSecOpenSSLKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:952,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:952,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 2
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: xmlSecOpenSSLKeyDataDsaFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:961,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/openssl/evp.c:962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 957
    functionDepth: 3
    functionLinenumber: 957
    functionLinenumberEnd: 964
    functionName: xmlSecOpenSSLKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:969,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/openssl/evp.c:970,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/evp.c:971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 966
    functionDepth: 3
    functionLinenumber: 966
    functionLinenumberEnd: 973
    functionName: xmlSecOpenSSLKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:982,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:982,1
    - Dst: EVP_PKEY_new
      Src: /src/xmlsec/src/openssl/evp.c:986,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:988,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:989,1
    - Dst: EVP_PKEY_assign_DSA
      Src: /src/xmlsec/src/openssl/evp.c:992,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:994,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:995,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:996,1
    - Dst: xmlSecOpenSSLKeyDataDsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:1001,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1003,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1004,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:1006,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - data
    - dsa
    argTypes:
    - xmlSecKeyDataPtr
    - DSA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 977
    functionDepth: 4
    functionLinenumber: 977
    functionLinenumberEnd: 1011
    functionName: xmlSecOpenSSLKeyDataDsaAdoptDsa
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_free
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_assign_DSA
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaAdoptEvp
    - xmlSecKeyDataGetName
    - EVP_PKEY_new
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaAdoptDsa(xmlSecKeyDataPtr data, DSA* dsa)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1017,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1017,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:1019,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1020,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:1020,1
    - Dst: EVP_PKEY_get0_DSA
      Src: /src/xmlsec/src/openssl/evp.c:1022,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 1013
    functionDepth: 3
    functionLinenumber: 1013
    functionLinenumberEnd: 1023
    functionName: xmlSecOpenSSLKeyDataDsaGetDsa
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_DSA
    - EVP_PKEY_base_id
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaGetEvp
    linkageType: ''
    returnType: DSA
    signature: 'DSA *

      xmlSecOpenSSLKeyDataDsaGetDsa(xmlSecKeyDataPtr data)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1029,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1030,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1030,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1031,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetDsa
      Src: /src/xmlsec/src/openssl/evp.c:1036,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1038,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1038,1
    - Dst: DSA_get0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:1041,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1046,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1046,1
    - Dst: DSA_get0_key
      Src: /src/xmlsec/src/openssl/evp.c:1049,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1053,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1053,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - data
    - dsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1025
    functionDepth: 4
    functionLinenumber: 1025
    functionLinenumberEnd: 1059
    functionName: xmlSecOpenSSLKeyDataDsaGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - DSA_get0_pqg
    - DSA_get0_key
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataDsaGetDsa
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDsaPtr
      dsaKeyValue)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1068,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1069,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1069,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1070,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1071,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1072,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1073,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1074,1
    - Dst: DSA_new
      Src: /src/xmlsec/src/openssl/evp.c:1076,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1078,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1078,1
    - Dst: DSA_set0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:1082,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1084,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1084,1
    - Dst: DSA_set0_key
      Src: /src/xmlsec/src/openssl/evp.c:1091,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1093,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1093,1
    - Dst: xmlSecOpenSSLKeyDataDsaAdoptDsa
      Src: /src/xmlsec/src/openssl/evp.c:1099,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1101,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1102,1
    - Dst: DSA_free
      Src: /src/xmlsec/src/openssl/evp.c:1113,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - data
    - dsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1062
    functionDepth: 5
    functionLinenumber: 1062
    functionLinenumberEnd: 1116
    functionName: xmlSecOpenSSLKeyDataDsaSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - DSA_new
    - xmlSecOpenSSLKeyDataDsaAdoptDsa
    - DSA_set0_pqg
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - DSA_free
    - xmlSecKeyDataGetName
    - DSA_set0_key
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDsaPtr
      dsaKeyValue)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1126,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1126,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1127,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:1128,1
    - Dst: DSA_new
      Src: /src/xmlsec/src/openssl/evp.c:1130,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1132,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1133,1
    - Dst: DSA_generate_parameters_ex
      Src: /src/xmlsec/src/openssl/evp.c:1138,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:1140,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1140,1
    - Dst: DSA_generate_key
      Src: /src/xmlsec/src/openssl/evp.c:1145,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1147,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1147,1
    - Dst: xmlSecOpenSSLKeyDataDsaAdoptDsa
      Src: /src/xmlsec/src/openssl/evp.c:1151,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1153,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1153,1
    - Dst: DSA_free
      Src: /src/xmlsec/src/openssl/evp.c:1163,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1166
      start: 1118
    functionDepth: 5
    functionLinenumber: 1118
    functionLinenumberEnd: 1166
    functionName: xmlSecOpenSSLKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - DSA_new
    - xmlSecOpenSSLKeyDataDsaAdoptDsa
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLError2
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - DSA_generate_parameters_ex
    - DSA_generate_key
    - xmlSecKeyDataCheckId
    - DSA_free
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1175,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1175,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetDsa
      Src: /src/xmlsec/src/openssl/evp.c:1177,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1179,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1179,1
    - Dst: DSA_get0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:1183,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1185,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1185,1
    - Dst: BN_num_bits
      Src: /src/xmlsec/src/openssl/evp.c:1188,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1190,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1190,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:1194,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:1194,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1194,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1196
      start: 1168
    functionDepth: 4
    functionLinenumber: 1168
    functionLinenumberEnd: 1196
    functionName: xmlSecOpenSSLKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - BN_num_bits
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - DSA_get0_pqg
    - return
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataDsaGetDsa
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1206,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1207,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:1209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1210,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:1212,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1214,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1214,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:1217,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1219,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1219,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:1222,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1224,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1224,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:1227,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1229,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1229,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:1232,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - data
    - dsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1200
    functionDepth: 3
    functionLinenumber: 1200
    functionLinenumberEnd: 1239
    functionName: xmlSecOpenSSLKeyDataDsaGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_get_bn_param
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaGetEvp
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDsaPtr
      dsaKeyValue)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1251,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1252,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1253,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1254,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1255,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1256,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:1258,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1260,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1261,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:1264,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1266,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1267,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:1270,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1272,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1273,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:1276,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1278,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1279,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:1282,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1284,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1285,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:1288,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1290,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1291,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:1295,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1297,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1298,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:1301,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:1301,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1303,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1304,1
    - Dst: EVP_PKEY_fromdata_init
      Src: /src/xmlsec/src/openssl/evp.c:1308,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1310,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1311,1
    - Dst: EVP_PKEY_fromdata
      Src: /src/xmlsec/src/openssl/evp.c:1314,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1316,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1317,1
    - Dst: xmlSecOpenSSLKeyDataDsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:1320,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1322,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1323,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:1333,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:1336,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:1339,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:1342,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 91
    argCount: 2
    argNames:
    - data
    - dsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1241
    functionDepth: 4
    functionLinenumber: 1241
    functionLinenumberEnd: 1345
    functionName: xmlSecOpenSSLKeyDataDsaSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - EVP_PKEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_fromdata_init
    - EVP_PKEY_CTX_free
    - OSSL_PARAM_BLD_push_BN
    - EVP_PKEY_CTX_new_from_name
    - EVP_PKEY_fromdata
    - OSSL_PARAM_free
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaAdoptEvp
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDsaPtr
      dsaKeyValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1356,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1357,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:1358,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:1360,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:1360,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1362,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1362,1
    - Dst: EVP_PKEY_paramgen_init
      Src: /src/xmlsec/src/openssl/evp.c:1365,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1367,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1367,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:1370,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1372,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1372,1
    - Dst: OSSL_PARAM_BLD_push_size_t
      Src: /src/xmlsec/src/openssl/evp.c:1375,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1376,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1376,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:1379,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1381,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1381,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/evp.c:1384,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1386,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1386,1
    - Dst: EVP_PKEY_generate
      Src: /src/xmlsec/src/openssl/evp.c:1389,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:1391,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1391,1
    - Dst: xmlSecOpenSSLKeyDataDsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:1395,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1397,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1397,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:1407,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:1410,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:1413,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:1416,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 68
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1347
    functionDepth: 4
    functionLinenumber: 1347
    functionLinenumberEnd: 1420
    functionName: xmlSecOpenSSLKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - EVP_PKEY_free
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - xmlSecOpenSSLError
    - EVP_PKEY_generate
    - OSSL_PARAM_free
    - EVP_PKEY_paramgen_init
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - EVP_PKEY_CTX_set_params
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - EVP_PKEY_CTX_new_from_name
    - OSSL_PARAM_BLD_push_size_t
    - UNREFERENCED_PARAMETER
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaAdoptEvp
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOpenSSLKeyDataGetKeySize
      Src: /src/xmlsec/src/openssl/evp.c:1424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1425
      start: 1422
    functionDepth: 3
    functionLinenumber: 1422
    functionLinenumberEnd: 1425
    functionName: xmlSecOpenSSLKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGetKeySize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1435,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1435,1
    - Dst: xmlSecOpenSSLEvpKeyDataIsKeyInMemory
      Src: /src/xmlsec/src/openssl/evp.c:1438,1
    - Dst: xmlSecOpenSSLKeyValueDsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:1447,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1449,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1449,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetValue
      Src: /src/xmlsec/src/openssl/evp.c:1453,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1455,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1456,1
    - Dst: xmlSecOpenSSLKeyValueDsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:1467,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1429
    functionDepth: 5
    functionLinenumber: 1429
    functionLinenumberEnd: 1469
    functionName: xmlSecOpenSSLKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataIsKeyInMemory
    - xmlSecOpenSSLKeyDataDsaGetValue
    - xmlSecOpenSSLKeyValueDsaInitialize
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyValueDsaFinalize
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataDsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1473,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1473,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1474,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:1476,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetSize
      Src: /src/xmlsec/src/openssl/evp.c:1477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1471
    functionDepth: 5
    functionLinenumber: 1471
    functionLinenumberEnd: 1478
    functionName: xmlSecOpenSSLKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1482,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1482,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1483,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:1485,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetSize
      Src: /src/xmlsec/src/openssl/evp.c:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1480
    functionDepth: 5
    functionLinenumber: 1480
    functionLinenumberEnd: 1487
    functionName: xmlSecOpenSSLKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1497,1
    - Dst: xmlSecOpenSSLKeyValueDsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:1499,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1501,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1502,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1507,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1509,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1510,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1514,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1516,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1517,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1521,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1523,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1524,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1528,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1530,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1531,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:1535,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1537,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1539,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1540,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:1545,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1547,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1548,1
    - Dst: xmlSecOpenSSLKeyDataDsaSetValue
      Src: /src/xmlsec/src/openssl/evp.c:1552,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1554,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1555,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:1565,1
    - Dst: xmlSecOpenSSLKeyValueDsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:1567,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1489
    functionDepth: 6
    functionLinenumber: 1489
    functionLinenumberEnd: 1569
    functionName: xmlSecOpenSSLKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecOpenSSLGetBNValue
    - xmlSecOpenSSLKeyValueDsaInitialize
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecOpenSSLKeyValueDsaFinalize
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    - xmlSecOpenSSLKeyDataDsaSetValue
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1578,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1579,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1580,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1580,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1581,1
    - Dst: xmlSecOpenSSLKeyValueDsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:1584,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1586,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1587,1
    - Dst: xmlSecOpenSSLKeyDataDsaGetValue
      Src: /src/xmlsec/src/openssl/evp.c:1591,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1593,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1594,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1599,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1600,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1602,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1603,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1608,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1609,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1611,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1612,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1617,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1618,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1620,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1621,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1626,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1627,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1629,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1630,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:1636,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1638,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:1639,1
    - Dst: xmlSecOpenSSLKeyValueDsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:1648,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 58
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1571
    functionDepth: 5
    functionLinenumber: 1571
    functionLinenumberEnd: 1650
    functionName: xmlSecOpenSSLKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLSetBNValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataDsaGetValue
    - xmlSecOpenSSLKeyValueDsaInitialize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecOpenSSLKeyValueDsaFinalize
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                             xmlSecKeyValueDsaPtr dsaValue, int writePrivateKey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1689,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:1690,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dhKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1687
    functionDepth: 1
    functionLinenumber: 1687
    functionLinenumberEnd: 1692
    functionName: xmlSecOpenSSLKeyValueDhInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyValueDhInitialize(xmlSecOpenSSLKeyValueDhPtr dhKeyValue)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1696,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1699,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1702,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1705,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1708,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1711,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1714,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:1717,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:1719,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 24
    argCount: 1
    argNames:
    - dhKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1720
      start: 1694
    functionDepth: 1
    functionLinenumber: 1694
    functionLinenumberEnd: 1720
    functionName: xmlSecOpenSSLKeyValueDhFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - BN_clear_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyValueDhFinalize(xmlSecOpenSSLKeyValueDhPtr dhKeyValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1798
    functionDepth: 0
    functionLinenumber: 1798
    functionLinenumberEnd: 1801
    functionName: xmlSecOpenSSLKeyDataDhGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataDhGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1814,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1814,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1815,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1816,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:1816,1
    - Dst: xmlSecOpenSSLEvpKeyDataAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:1818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pKey
    argTypes:
    - xmlSecKeyDataPtr
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1819
      start: 1812
    functionDepth: 3
    functionLinenumber: 1812
    functionLinenumberEnd: 1819
    functionName: xmlSecOpenSSLKeyDataDhAdoptEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataAdoptEvp
    - xmlSecKeyDataCheckId
    - EVP_PKEY_base_id
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY*
      pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1831,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1831,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:1833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1829
    functionDepth: 2
    functionLinenumber: 1829
    functionLinenumberEnd: 1834
    functionName: xmlSecOpenSSLKeyDataDhGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLKeyDataDhGetEvp(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1838,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1838,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:1840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1841
      start: 1836
    functionDepth: 2
    functionLinenumber: 1836
    functionLinenumberEnd: 1841
    functionName: xmlSecOpenSSLKeyDataDhInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1845,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1845,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1846,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1846,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:1848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1843
    functionDepth: 2
    functionLinenumber: 1843
    functionLinenumberEnd: 1849
    functionName: xmlSecOpenSSLKeyDataDhDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:1853,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1853,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:1855,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1856
      start: 1851
    functionDepth: 2
    functionLinenumber: 1851
    functionLinenumberEnd: 1856
    functionName: xmlSecOpenSSLKeyDataDhFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDhFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1862,1
    - Dst: xmlSecKeyDataDhXmlRead
      Src: /src/xmlsec/src/openssl/evp.c:1863,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1858
    functionDepth: 3
    functionLinenumber: 1858
    functionLinenumberEnd: 1865
    functionName: xmlSecOpenSSLKeyDataDhXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDhXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDhXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1870,1
    - Dst: xmlSecKeyDataDhXmlWrite
      Src: /src/xmlsec/src/openssl/evp.c:1871,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/evp.c:1872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1867
    functionDepth: 3
    functionLinenumber: 1867
    functionLinenumberEnd: 1874
    functionName: xmlSecOpenSSLKeyDataDhXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDhXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDhXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1883,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1883,1
    - Dst: EVP_PKEY_new
      Src: /src/xmlsec/src/openssl/evp.c:1887,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1889,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1890,1
    - Dst: EVP_PKEY_assign_DH
      Src: /src/xmlsec/src/openssl/evp.c:1893,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1895,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1896,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:1897,1
    - Dst: xmlSecOpenSSLKeyDataDhAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:1902,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1904,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1905,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:1907,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - data
    - dh
    argTypes:
    - xmlSecKeyDataPtr
    - DH*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1878
    functionDepth: 4
    functionLinenumber: 1878
    functionLinenumberEnd: 1912
    functionName: xmlSecOpenSSLKeyDataDhAdoptDh
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_free
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_assign_DH
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDhAdoptEvp
    - xmlSecKeyDataGetName
    - EVP_PKEY_new
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhAdoptDh(xmlSecKeyDataPtr data, DH* dh)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1918,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1918,1
    - Dst: xmlSecOpenSSLKeyDataDhGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:1920,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1921,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:1921,1
    - Dst: EVP_PKEY_get0_DH
      Src: /src/xmlsec/src/openssl/evp.c:1923,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1914
    functionDepth: 3
    functionLinenumber: 1914
    functionLinenumberEnd: 1924
    functionName: xmlSecOpenSSLKeyDataDhGetDh
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_base_id
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataDhGetEvp
    - EVP_PKEY_get0_DH
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: DH
    signature: 'DH *

      xmlSecOpenSSLKeyDataDhGetDh(xmlSecKeyDataPtr data)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1930,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1931,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1931,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1932,1
    - Dst: xmlSecOpenSSLKeyDataDhGetDh
      Src: /src/xmlsec/src/openssl/evp.c:1937,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:1939,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1939,1
    - Dst: DH_get0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:1942,1
    - Dst: DH_get0_key
      Src: /src/xmlsec/src/openssl/evp.c:1952,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1956,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1956,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - data
    - dhKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1962
      start: 1926
    functionDepth: 4
    functionLinenumber: 1926
    functionLinenumberEnd: 1962
    functionName: xmlSecOpenSSLKeyDataDhGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - DH_get0_pqg
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataDhGetDh
    - xmlSecKeyDataCheckId
    - DH_get0_key
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDhPtr
      dhKeyValue)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1971,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1972,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:1972,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1973,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:1974,1
    - Dst: DH_new
      Src: /src/xmlsec/src/openssl/evp.c:1976,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1978,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1978,1
    - Dst: DH_set0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:1983,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1985,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1985,1
    - Dst: DH_set0_key
      Src: /src/xmlsec/src/openssl/evp.c:1993,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:1995,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:1995,1
    - Dst: xmlSecOpenSSLKeyDataDhAdoptDh
      Src: /src/xmlsec/src/openssl/evp.c:2000,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2002,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2003,1
    - Dst: DH_free
      Src: /src/xmlsec/src/openssl/evp.c:2014,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 2
    argNames:
    - data
    - dhKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2017
      start: 1965
    functionDepth: 5
    functionLinenumber: 1965
    functionLinenumberEnd: 2017
    functionName: xmlSecOpenSSLKeyDataDhSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - DH_new
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - DH_set0_pqg
    - DH_set0_key
    - DH_free
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataDhAdoptDh
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDhPtr
      dhKeyValue)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2026,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2026,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2027,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:2028,1
    - Dst: DH_new
      Src: /src/xmlsec/src/openssl/evp.c:2030,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2032,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2033,1
    - Dst: DH_generate_parameters_ex
      Src: /src/xmlsec/src/openssl/evp.c:2038,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:2040,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2040,1
    - Dst: DH_generate_key
      Src: /src/xmlsec/src/openssl/evp.c:2045,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2047,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2047,1
    - Dst: xmlSecOpenSSLKeyDataDhAdoptDh
      Src: /src/xmlsec/src/openssl/evp.c:2051,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2053,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2053,1
    - Dst: DH_free
      Src: /src/xmlsec/src/openssl/evp.c:2063,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2066
      start: 2019
    functionDepth: 5
    functionLinenumber: 2019
    functionLinenumberEnd: 2066
    functionName: xmlSecOpenSSLKeyDataDhGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - DH_new
    - DH_generate_parameters_ex
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLError2
    - DH_generate_key
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecInternalError
    - DH_free
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataDhAdoptDh
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2075,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2075,1
    - Dst: xmlSecOpenSSLKeyDataDhGetDh
      Src: /src/xmlsec/src/openssl/evp.c:2077,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2079,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2079,1
    - Dst: DH_get0_pqg
      Src: /src/xmlsec/src/openssl/evp.c:2083,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2085,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2085,1
    - Dst: BN_num_bits
      Src: /src/xmlsec/src/openssl/evp.c:2088,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2090,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2090,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:2094,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:2094,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2094,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2096
      start: 2068
    functionDepth: 4
    functionLinenumber: 2068
    functionLinenumberEnd: 2096
    functionName: xmlSecOpenSSLKeyDataDhGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - BN_num_bits
    - xmlSecInternalError
    - DH_get0_pqg
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecOpenSSLKeyDataDhGetDh
    - return
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataDhGetSize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2106,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2107,1
    - Dst: xmlSecOpenSSLKeyDataDhGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:2109,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2110,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2112,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2114,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2114,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2117,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2119,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2119,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2122,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2124,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2124,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2127,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2129,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2129,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2132,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - data
    - dhKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2100
    functionDepth: 3
    functionLinenumber: 2100
    functionLinenumberEnd: 2152
    functionName: xmlSecOpenSSLKeyDataDhGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EVP_PKEY_get_bn_param
    - xmlSecOpenSSLKeyDataDhGetEvp
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDhPtr
      dhKeyValue)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2163,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2164,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2164,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2166,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:2168,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2170,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2171,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2176,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2178,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2179,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2183,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2185,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2186,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2191,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2193,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2194,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2199,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2201,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2202,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2207,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2209,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2210,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:2215,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2217,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2218,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:2224,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2226,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2227,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:2230,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:2230,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2232,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2233,1
    - Dst: EVP_PKEY_fromdata_init
      Src: /src/xmlsec/src/openssl/evp.c:2237,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2239,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2240,1
    - Dst: EVP_PKEY_fromdata
      Src: /src/xmlsec/src/openssl/evp.c:2243,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2245,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2246,1
    - Dst: xmlSecOpenSSLKeyDataDhAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:2249,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2251,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2252,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:2262,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:2265,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:2268,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:2271,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 104
    argCount: 2
    argNames:
    - data
    - dhKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2274
      start: 2154
    functionDepth: 4
    functionLinenumber: 2154
    functionLinenumberEnd: 2274
    functionName: xmlSecOpenSSLKeyDataDhSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - EVP_PKEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_fromdata_init
    - EVP_PKEY_CTX_free
    - OSSL_PARAM_BLD_push_BN
    - EVP_PKEY_CTX_new_from_name
    - EVP_PKEY_fromdata
    - OSSL_PARAM_free
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataDhAdoptEvp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueDhPtr
      dhKeyValue)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2285,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2286,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:2287,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:2289,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:2289,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2291,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2291,1
    - Dst: EVP_PKEY_paramgen_init
      Src: /src/xmlsec/src/openssl/evp.c:2294,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2296,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2296,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:2300,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2302,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2302,1
    - Dst: OSSL_PARAM_BLD_push_size_t
      Src: /src/xmlsec/src/openssl/evp.c:2305,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2307,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2307,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:2312,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2314,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2314,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/evp.c:2317,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2319,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2319,1
    - Dst: EVP_PKEY_generate
      Src: /src/xmlsec/src/openssl/evp.c:2322,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:2324,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2324,1
    - Dst: xmlSecOpenSSLKeyDataDhAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:2328,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2330,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2330,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:2340,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:2343,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:2346,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:2349,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 69
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2276
    functionDepth: 4
    functionLinenumber: 2276
    functionLinenumberEnd: 2353
    functionName: xmlSecOpenSSLKeyDataDhGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - EVP_PKEY_free
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - xmlSecOpenSSLError
    - EVP_PKEY_generate
    - OSSL_PARAM_free
    - xmlSecOpenSSLKeyDataDhAdoptEvp
    - EVP_PKEY_paramgen_init
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - EVP_PKEY_CTX_set_params
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - EVP_PKEY_CTX_new_from_name
    - OSSL_PARAM_BLD_push_size_t
    - UNREFERENCED_PARAMETER
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataDhGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOpenSSLKeyDataGetKeySize
      Src: /src/xmlsec/src/openssl/evp.c:2357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2355
    functionDepth: 3
    functionLinenumber: 2355
    functionLinenumberEnd: 2358
    functionName: xmlSecOpenSSLKeyDataDhGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGetKeySize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataDhGetSize(xmlSecKeyDataPtr data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2367,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2367,1
    - Dst: xmlSecOpenSSLEvpKeyDataIsKeyInMemory
      Src: /src/xmlsec/src/openssl/evp.c:2370,1
    - Dst: xmlSecOpenSSLKeyValueDhInitialize
      Src: /src/xmlsec/src/openssl/evp.c:2379,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2381,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2381,1
    - Dst: xmlSecOpenSSLKeyDataDhGetValue
      Src: /src/xmlsec/src/openssl/evp.c:2385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2387,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2387,1
    - Dst: xmlSecOpenSSLKeyValueDhFinalize
      Src: /src/xmlsec/src/openssl/evp.c:2398,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2400
      start: 2362
    functionDepth: 5
    functionLinenumber: 2362
    functionLinenumberEnd: 2400
    functionName: xmlSecOpenSSLKeyDataDhGetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataIsKeyInMemory
    - xmlSecOpenSSLKeyValueDhFinalize
    - xmlSecOpenSSLKeyValueDhInitialize
    - xmlSecOpenSSLKeyDataDhGetValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataDhGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:2404,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2404,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:2405,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:2407,1
    - Dst: xmlSecOpenSSLKeyDataDhGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2409
      start: 2402
    functionDepth: 5
    functionLinenumber: 2402
    functionLinenumberEnd: 2409
    functionName: xmlSecOpenSSLKeyDataDhDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDhGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDhDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:2413,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2413,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:2414,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:2416,1
    - Dst: xmlSecOpenSSLKeyDataDhGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2418
      start: 2411
    functionDepth: 5
    functionLinenumber: 2411
    functionLinenumberEnd: 2418
    functionName: xmlSecOpenSSLKeyDataDhDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataDhGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataDhDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2428,1
    - Dst: xmlSecOpenSSLKeyValueDhInitialize
      Src: /src/xmlsec/src/openssl/evp.c:2430,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2432,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2433,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2438,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2441,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2442,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2447,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2448,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2450,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2451,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2456,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2457,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2459,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2460,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2465,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2467,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2468,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2472,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2473,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2475,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2476,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:2481,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2482,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2484,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2485,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:2490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2492,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2493,1
    - Dst: xmlSecOpenSSLKeyDataDhSetValue
      Src: /src/xmlsec/src/openssl/evp.c:2497,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2499,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2500,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:2510,1
    - Dst: xmlSecOpenSSLKeyValueDhFinalize
      Src: /src/xmlsec/src/openssl/evp.c:2512,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 2
    argNames:
    - id
    - dhValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDhPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2514
      start: 2420
    functionDepth: 6
    functionLinenumber: 2420
    functionLinenumberEnd: 2514
    functionName: xmlSecOpenSSLKeyDataDhRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLKeyDataDhSetValue
    - xmlSecAssert2
    - xmlSecOpenSSLKeyValueDhFinalize
    - xmlSecOpenSSLKeyValueDhInitialize
    - xmlSecKeyDataDestroy
    - xmlSecBufferGetSize
    - xmlSecOpenSSLGetBNValue
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLKeyDataDhRead(xmlSecKeyDataId id, xmlSecKeyValueDhPtr
      dhValue)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2526,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2527,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:2528,1
    - Dst: xmlSecOpenSSLKeyValueDhInitialize
      Src: /src/xmlsec/src/openssl/evp.c:2531,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2533,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2534,1
    - Dst: xmlSecOpenSSLKeyDataDhGetValue
      Src: /src/xmlsec/src/openssl/evp.c:2538,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2540,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2541,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2549,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2550,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2557,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2559,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2560,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2567,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2569,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2570,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2576,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2578,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2579,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2585,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2587,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2588,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:2595,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2597,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:2598,1
    - Dst: xmlSecOpenSSLKeyValueDhFinalize
      Src: /src/xmlsec/src/openssl/evp.c:2607,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 4
    argNames:
    - id
    - data
    - dhValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDhPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2609
      start: 2516
    functionDepth: 5
    functionLinenumber: 2516
    functionLinenumberEnd: 2609
    functionName: xmlSecOpenSSLKeyDataDhWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLSetBNValue
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecOpenSSLKeyValueDhFinalize
    - xmlSecOpenSSLKeyValueDhInitialize
    - xmlSecOpenSSLKeyDataDhGetValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataDhWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueDhPtr dhValue,\n    int writePrivateKey XMLSEC_ATTRIBUTE_UNUSED\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2708
    functionDepth: 0
    functionLinenumber: 2708
    functionLinenumberEnd: 2711
    functionName: xmlSecOpenSSLKeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataEcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2724,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2724,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2725,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2726,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:2726,1
    - Dst: xmlSecOpenSSLEvpKeyDataAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:2727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pKey
    argTypes:
    - xmlSecKeyDataPtr
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2722
    functionDepth: 3
    functionLinenumber: 2722
    functionLinenumberEnd: 2728
    functionName: xmlSecOpenSSLKeyDataEcAdoptEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataAdoptEvp
    - xmlSecKeyDataCheckId
    - EVP_PKEY_base_id
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY*
      pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2740,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2740,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:2741,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2742
      start: 2738
    functionDepth: 2
    functionLinenumber: 2738
    functionLinenumberEnd: 2742
    functionName: xmlSecOpenSSLKeyDataEcGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLKeyDataEcGetEvp(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2746,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2746,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:2748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2744
    functionDepth: 2
    functionLinenumber: 2744
    functionLinenumberEnd: 2749
    functionName: xmlSecOpenSSLKeyDataEcInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2753,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2753,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2754,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2754,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:2756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2751
    functionDepth: 2
    functionLinenumber: 2751
    functionLinenumberEnd: 2757
    functionName: xmlSecOpenSSLKeyDataEcDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:2761,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2761,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:2763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2764
      start: 2759
    functionDepth: 2
    functionLinenumber: 2759
    functionLinenumberEnd: 2764
    functionName: xmlSecOpenSSLKeyDataEcFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataEcFinalize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2777,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2777,1
    - Dst: xmlSecOpenSSLEvpKeyDataIsKeyInMemory
      Src: /src/xmlsec/src/openssl/evp.c:2780,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEcKey
      Src: /src/xmlsec/src/openssl/evp.c:2790,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2792,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2792,1
    - Dst: EC_KEY_get0_private_key
      Src: /src/xmlsec/src/openssl/evp.c:2795,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:2801,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2802,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:2804,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:2812,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2766
    functionDepth: 3
    functionLinenumber: 2766
    functionLinenumberEnd: 2818
    functionName: xmlSecOpenSSLKeyDataEcGetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - EVP_PKEY_get_bn_param
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataIsKeyInMemory
    - BN_clear_free
    - xmlSecKeyDataCheckId
    - EC_KEY_get0_private_key
    - xmlSecOpenSSLKeyDataEcGetEvp
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataEcGetEcKey
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataEcGetType(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2847,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - nid
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2843
    functionDepth: 1
    functionLinenumber: 2843
    functionLinenumberEnd: 2855
    functionName: xmlSecOpenSSLKeyDataEcGetOidFromNid
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLKeyDataEcGetOidFromNid(int nid)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2861,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/evp.c:2864,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - oid
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2857
    functionDepth: 1
    functionLinenumber: 2857
    functionLinenumberEnd: 2869
    functionName: xmlSecOpenSSLKeyDataEcGetNidFromOid
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcGetNidFromOid(const xmlChar * oid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2875,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2876,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2876,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:2878,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2879,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:2879,1
    - Dst: EVP_PKEY_get0_EC_KEY
      Src: /src/xmlsec/src/openssl/evp.c:2881,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2882
      start: 2871
    functionDepth: 3
    functionLinenumber: 2871
    functionLinenumberEnd: 2882
    functionName: xmlSecOpenSSLKeyDataEcGetEcKey
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 1
    functionsReached:
    - EVP_PKEY_base_id
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataEcGetEvp
    - xmlSecKeyDataCheckId
    - EVP_PKEY_get0_EC_KEY
    linkageType: ''
    returnType: EC_KEY
    signature: 'EC_KEY *

      xmlSecOpenSSLKeyDataEcGetEcKey(xmlSecKeyDataPtr data)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2889,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2890,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2890,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2891,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:2893,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2894,1
    - Dst: EVP_PKEY_new
      Src: /src/xmlsec/src/openssl/evp.c:2896,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2898,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2898,1
    - Dst: EVP_PKEY_set1_EC_KEY
      Src: /src/xmlsec/src/openssl/evp.c:2902,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2904,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2904,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:2905,1
    - Dst: xmlSecOpenSSLKeyDataEcAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:2909,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2911,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2911,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:2912,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - data
    - ecKey
    argTypes:
    - xmlSecKeyDataPtr
    - EC_KEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2917
      start: 2884
    functionDepth: 4
    functionLinenumber: 2884
    functionLinenumberEnd: 2917
    functionName: xmlSecOpenSSLKeyDataEcSetEcKey
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_set1_EC_KEY
    - EVP_PKEY_free
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataEcGetEvp
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataEcAdoptEvp
    - xmlSecKeyDataGetName
    - EVP_PKEY_new
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcSetEcKey(xmlSecKeyDataPtr data,  EC_KEY*
      ecKey)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2929,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2929,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEcKey
      Src: /src/xmlsec/src/openssl/evp.c:2931,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2933,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2933,1
    - Dst: EC_KEY_get0_group
      Src: /src/xmlsec/src/openssl/evp.c:2937,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2939,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2939,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/evp.c:2943,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2945,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2945,1
    - Dst: EC_GROUP_get_order
      Src: /src/xmlsec/src/openssl/evp.c:2949,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2951,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2951,1
    - Dst: BN_num_bits
      Src: /src/xmlsec/src/openssl/evp.c:2955,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2957,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2957,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:2966,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2969
      start: 2920
    functionDepth: 4
    functionLinenumber: 2920
    functionLinenumberEnd: 2969
    functionName: xmlSecOpenSSLKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EC_GROUP_get_order
    - BN_num_bits
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - EC_KEY_get0_group
    - BN_clear_free
    - BN_new
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataEcGetEcKey
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2983,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2984,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2985,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:2985,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2986,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:2987,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEcKey
      Src: /src/xmlsec/src/openssl/evp.c:2989,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:2991,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2991,1
    - Dst: EC_KEY_get0_group
      Src: /src/xmlsec/src/openssl/evp.c:2995,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:2997,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:2997,1
    - Dst: EC_GROUP_get_curve_name
      Src: /src/xmlsec/src/openssl/evp.c:3002,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3004,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3004,1
    - Dst: xmlSecOpenSSLKeyDataEcGetOidFromNid
      Src: /src/xmlsec/src/openssl/evp.c:3007,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3009,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3009,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/evp.c:3013,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/openssl/evp.c:3015,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3015,1
    - Dst: EC_KEY_get0_public_key
      Src: /src/xmlsec/src/openssl/evp.c:3020,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3022,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3022,1
    - Dst: EC_POINT_point2oct
      Src: /src/xmlsec/src/openssl/evp.c:3027,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3029,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3029,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:3032,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:3032,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3032,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/evp.c:3034,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3036,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:3040,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3041,1
    - Dst: EC_POINT_point2oct
      Src: /src/xmlsec/src/openssl/evp.c:3043,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3045,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3045,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:3050,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:3050,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3050,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/openssl/evp.c:3051,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3053,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 61
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3060
      start: 2970
    functionDepth: 4
    functionLinenumber: 2970
    functionLinenumberEnd: 3060
    functionName: xmlSecOpenSSLKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - EC_KEY_get0_public_key
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataEcGetOidFromNid
    - xmlSecInternalError2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - EC_KEY_get0_group
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - EC_GROUP_get_curve_name
    - EC_POINT_point2oct
    - xmlSecKeyDataCheckId
    - xmlSecStrdupError
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataEcGetEcKey
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueEcPtr ecValue)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3073,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3074,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3074,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3075,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3076,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:3078,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:3079,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3080,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3081,1
    - Dst: xmlSecOpenSSLKeyDataEcGetNidFromOid
      Src: /src/xmlsec/src/openssl/evp.c:3084,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3086,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3086,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/evp.c:3087,1
    - Dst: EC_GROUP_new_by_curve_name
      Src: /src/xmlsec/src/openssl/evp.c:3091,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:3093,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3093,1
    - Dst: EC_POINT_new
      Src: /src/xmlsec/src/openssl/evp.c:3099,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3101,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3101,1
    - Dst: EC_POINT_oct2point
      Src: /src/xmlsec/src/openssl/evp.c:3104,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3106,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3106,1
    - Dst: EC_KEY_new
      Src: /src/xmlsec/src/openssl/evp.c:3111,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3113,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3113,1
    - Dst: EC_KEY_set_group
      Src: /src/xmlsec/src/openssl/evp.c:3117,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3119,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3119,1
    - Dst: EC_KEY_set_public_key
      Src: /src/xmlsec/src/openssl/evp.c:3123,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3125,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3125,1
    - Dst: xmlSecOpenSSLKeyDataEcSetEcKey
      Src: /src/xmlsec/src/openssl/evp.c:3130,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3132,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3132,1
    - Dst: EC_POINT_free
      Src: /src/xmlsec/src/openssl/evp.c:3141,1
    - Dst: EC_GROUP_free
      Src: /src/xmlsec/src/openssl/evp.c:3144,1
    - Dst: EC_KEY_free
      Src: /src/xmlsec/src/openssl/evp.c:3147,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 70
    argCount: 3
    argNames:
    - data
    - curveOid
    - pubkey
    argTypes:
    - xmlSecKeyDataPtr
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3150
      start: 3062
    functionDepth: 5
    functionLinenumber: 3062
    functionLinenumberEnd: 3150
    functionName: xmlSecOpenSSLKeyDataEcSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataEcGetNidFromOid
    - EC_POINT_oct2point
    - EC_GROUP_free
    - xmlSecOpenSSLKeyDataEcSetEcKey
    - EC_KEY_new
    - EC_GROUP_new_by_curve_name
    - xmlSecOpenSSLError
    - xmlSecErrorsSafeString
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - EC_POINT_free
    - EC_POINT_new
    - EC_KEY_set_public_key
    - EC_KEY_free
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - EC_KEY_set_group
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcSetValue(xmlSecKeyDataPtr data, const xmlChar*
      curveOid, xmlSecBufferPtr pubkey)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3158,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/evp.c:3161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3166
      start: 3154
    functionDepth: 1
    functionLinenumber: 3154
    functionLinenumberEnd: 3166
    functionName: xmlSecOpenSSLKeyDataEcGetOidFromName
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLKeyDataEcGetOidFromName(const xmlChar* name)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3172,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/openssl/evp.c:3175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - oid
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3180
      start: 3168
    functionDepth: 1
    functionLinenumber: 3168
    functionLinenumberEnd: 3180
    functionName: xmlSecOpenSSLKeyDataEcGetNameFromOid
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecOpenSSLKeyDataEcGetNameFromOid(const xmlChar* oid)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOpenSSLKeyDataGetKeySize
      Src: /src/xmlsec/src/openssl/evp.c:3184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3185
      start: 3182
    functionDepth: 3
    functionLinenumber: 3182
    functionLinenumberEnd: 3185
    functionName: xmlSecOpenSSLKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGetKeySize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3200,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3201,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3202,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3204,1
    - Dst: xmlSecOpenSSLKeyDataEcGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:3206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3207,1
    - Dst: EVP_PKEY_get_utf8_string_param
      Src: /src/xmlsec/src/openssl/evp.c:3210,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3213,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3213,1
    - Dst: xmlSecOpenSSLKeyDataEcGetOidFromName
      Src: /src/xmlsec/src/openssl/evp.c:3218,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3220,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3220,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/evp.c:3221,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/openssl/evp.c:3224,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/openssl/evp.c:3226,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3226,1
    - Dst: EVP_PKEY_get1_encoded_public_key
      Src: /src/xmlsec/src/openssl/evp.c:3231,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3233,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3233,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3236,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:3238,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:3238,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3238,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/openssl/evp.c:3239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3241,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3241,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/evp.c:3242,1
    - Dst: OPENSSL_free
      Src: /src/xmlsec/src/openssl/evp.c:3247,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3249
      start: 3187
    functionDepth: 3
    functionLinenumber: 3187
    functionLinenumberEnd: 3249
    functionName: xmlSecOpenSSLKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - EVP_PKEY_get_utf8_string_param
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
    - EVP_PKEY_get1_encoded_public_key
    - xmlSecBufferSetData
    - return
    - xmlSecOpenSSLKeyDataEcGetEvp
    - xmlSecKeyDataCheckId
    - xmlSecStrdupError
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyDataEcGetOidFromName
    - OPENSSL_free
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data, xmlSecKeyValueEcPtr ecValue)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3261,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3262,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3262,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3264,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/openssl/evp.c:3266,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:3267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3269,1
    - Dst: xmlSecOpenSSLKeyDataEcGetNameFromOid
      Src: /src/xmlsec/src/openssl/evp.c:3272,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/openssl/evp.c:3274,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3274,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/evp.c:3275,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:3280,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:3280,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3282,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3282,1
    - Dst: EVP_PKEY_paramgen_init
      Src: /src/xmlsec/src/openssl/evp.c:3285,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3287,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3287,1
    - Dst: EVP_PKEY_CTX_set_group_name
      Src: /src/xmlsec/src/openssl/evp.c:3290,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:3292,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3292,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/openssl/evp.c:3293,1
    - Dst: EVP_PKEY_paramgen
      Src: /src/xmlsec/src/openssl/evp.c:3298,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3300,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3300,1
    - Dst: EVP_PKEY_set1_encoded_public_key
      Src: /src/xmlsec/src/openssl/evp.c:3303,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3305,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3305,1
    - Dst: xmlSecOpenSSLKeyDataEcAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:3310,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3312,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3312,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:3322,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:3325,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 62
    argCount: 3
    argNames:
    - data
    - curveOid
    - pubkey
    argTypes:
    - xmlSecKeyDataPtr
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3328
      start: 3251
    functionDepth: 4
    functionLinenumber: 3251
    functionLinenumberEnd: 3328
    functionName: xmlSecOpenSSLKeyDataEcSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_free
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_CTX_set_group_name
    - xmlSecOpenSSLKeyDataEcGetNameFromOid
    - EVP_PKEY_paramgen
    - xmlSecOpenSSLError
    - xmlSecErrorsSafeString
    - EVP_PKEY_paramgen_init
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - xmlSecInternalError2
    - EVP_PKEY_CTX_new_from_name
    - xmlSecBufferGetData
    - EVP_PKEY_set1_encoded_public_key
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataEcAdoptEvp
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataEcSetValue(xmlSecKeyDataPtr data, const xmlChar*
      curveOid, xmlSecBufferPtr pubkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3336,1
    - Dst: xmlSecKeyDataEcXmlRead
      Src: /src/xmlsec/src/openssl/evp.c:3337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3339
      start: 3332
    functionDepth: 3
    functionLinenumber: 3332
    functionLinenumberEnd: 3339
    functionName: xmlSecOpenSSLKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataEcXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataEcXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3344,1
    - Dst: xmlSecKeyDataEcXmlWrite
      Src: /src/xmlsec/src/openssl/evp.c:3345,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/evp.c:3346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3348
      start: 3341
    functionDepth: 3
    functionLinenumber: 3341
    functionLinenumberEnd: 3348
    functionName: xmlSecOpenSSLKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataEcXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3352,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3352,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3353,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:3355,1
    - Dst: xmlSecOpenSSLKeyDataEcGetSize
      Src: /src/xmlsec/src/openssl/evp.c:3356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3357
      start: 3350
    functionDepth: 5
    functionLinenumber: 3350
    functionLinenumberEnd: 3357
    functionName: xmlSecOpenSSLKeyDataEcDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataEcGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataEcDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3361,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3361,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3362,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:3364,1
    - Dst: xmlSecOpenSSLKeyDataEcGetSize
      Src: /src/xmlsec/src/openssl/evp.c:3365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3366
      start: 3359
    functionDepth: 5
    functionLinenumber: 3359
    functionLinenumberEnd: 3366
    functionName: xmlSecOpenSSLKeyDataEcDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataEcGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataEcDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3377,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:3380,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3382,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:3382,1
    - Dst: xmlSecOpenSSLKeyDataEcSetValue
      Src: /src/xmlsec/src/openssl/evp.c:3386,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3388,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:3388,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:3398,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - id
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3401
      start: 3369
    functionDepth: 6
    functionLinenumber: 3369
    functionLinenumberEnd: 3401
    functionName: xmlSecOpenSSLKeyDataEcRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataEcSetValue
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLKeyDataEcRead(xmlSecKeyDataId id, xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3416,1
    - Dst: EVP_PKEY_base_id
      Src: /src/xmlsec/src/openssl/evp.c:3418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pKey
    argTypes:
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3426
      start: 3414
    functionDepth: 1
    functionLinenumber: 3414
    functionLinenumberEnd: 3426
    functionName: xmlSecOpenSSLKeyValueRsaCheckKeyType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    - EVP_PKEY_base_id
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyValueRsaCheckKeyType(EVP_PKEY* pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3440,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:3441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - rsaKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3438
    functionDepth: 1
    functionLinenumber: 3438
    functionLinenumberEnd: 3443
    functionName: xmlSecOpenSSLKeyValueRsaInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyValueRsaInitialize(xmlSecOpenSSLKeyValueRsaPtr
      rsaKeyValue)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3447,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:3450,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:3453,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:3456,1
    - Dst: memset
      Src: /src/xmlsec/src/openssl/evp.c:3458,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - rsaKeyValue
    argTypes:
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3459
      start: 3445
    functionDepth: 1
    functionLinenumber: 3445
    functionLinenumberEnd: 3459
    functionName: xmlSecOpenSSLKeyValueRsaFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - BN_clear_free
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyValueRsaFinalize(xmlSecOpenSSLKeyValueRsaPtr rsaKeyValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3582
      start: 3579
    functionDepth: 0
    functionLinenumber: 3579
    functionLinenumberEnd: 3582
    functionName: xmlSecOpenSSLKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataRsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3597,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3597,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3598,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3599,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/evp.c:3599,1
    - Dst: xmlSecOpenSSLEvpKeyDataAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:3601,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - data
    - pKey
    argTypes:
    - xmlSecKeyDataPtr
    - EVP_PKEY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3602
      start: 3595
    functionDepth: 3
    functionLinenumber: 3595
    functionLinenumberEnd: 3602
    functionName: xmlSecOpenSSLKeyDataRsaAdoptEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    - xmlSecOpenSSLEvpKeyDataAdoptEvp
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY*
      pKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3614,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3614,1
    - Dst: xmlSecOpenSSLEvpKeyDataGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:3616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3617
      start: 3612
    functionDepth: 2
    functionLinenumber: 3612
    functionLinenumberEnd: 3617
    functionName: xmlSecOpenSSLKeyDataRsaGetEvp
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataGetEvp
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: EVP_PKEY
    signature: 'EVP_PKEY *

      xmlSecOpenSSLKeyDataRsaGetEvp(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3621,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3621,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:3623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3624
      start: 3619
    functionDepth: 2
    functionLinenumber: 3619
    functionLinenumberEnd: 3624
    functionName: xmlSecOpenSSLKeyDataRsaInitialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3628,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3629,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3629,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:3631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3632
      start: 3626
    functionDepth: 2
    functionLinenumber: 3626
    functionLinenumberEnd: 3632
    functionName: xmlSecOpenSSLKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:3636,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3636,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:3638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3639
      start: 3634
    functionDepth: 2
    functionLinenumber: 3634
    functionLinenumberEnd: 3639
    functionName: xmlSecOpenSSLKeyDataRsaFinalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataRsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3644,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/openssl/evp.c:3645,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3648
      start: 3641
    functionDepth: 3
    functionLinenumber: 3641
    functionLinenumberEnd: 3648
    functionName: xmlSecOpenSSLKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3653,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/openssl/evp.c:3654,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/openssl/evp.c:3655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3657
      start: 3650
    functionDepth: 3
    functionLinenumber: 3650
    functionLinenumberEnd: 3657
    functionName: xmlSecOpenSSLKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                            xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3665,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3665,1
    - Dst: EVP_PKEY_new
      Src: /src/xmlsec/src/openssl/evp.c:3669,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3671,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3672,1
    - Dst: EVP_PKEY_assign_RSA
      Src: /src/xmlsec/src/openssl/evp.c:3676,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3678,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3679,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:3680,1
    - Dst: xmlSecOpenSSLKeyDataRsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:3685,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3687,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3688,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:3690,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - data
    - rsa
    argTypes:
    - xmlSecKeyDataPtr
    - RSA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3695
      start: 3660
    functionDepth: 4
    functionLinenumber: 3660
    functionLinenumberEnd: 3695
    functionName: xmlSecOpenSSLKeyDataRsaAdoptRsa
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_free
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataRsaAdoptEvp
    - xmlSecKeyDataCheckId
    - EVP_PKEY_assign_RSA
    - xmlSecKeyDataGetName
    - EVP_PKEY_new
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaAdoptRsa(xmlSecKeyDataPtr data, RSA* rsa)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3701,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3701,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:3703,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3707,1
    - Dst: xmlSecOpenSSLKeyValueRsaCheckKeyType
      Src: /src/xmlsec/src/openssl/evp.c:3707,1
    - Dst: EVP_PKEY_get0_RSA
      Src: /src/xmlsec/src/openssl/evp.c:3708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3709
      start: 3697
    functionDepth: 3
    functionLinenumber: 3697
    functionLinenumberEnd: 3709
    functionName: xmlSecOpenSSLKeyDataRsaGetRsa
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get0_RSA
    - xmlSecOpenSSLKeyDataRsaGetEvp
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyValueRsaCheckKeyType
    linkageType: ''
    returnType: RSA
    signature: 'RSA *

      xmlSecOpenSSLKeyDataRsaGetRsa(xmlSecKeyDataPtr data)'
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3719,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3719,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3720,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:3721,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/evp.c:3724,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3726,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3726,1
    - Dst: BN_set_word
      Src: /src/xmlsec/src/openssl/evp.c:3730,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3732,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3732,1
    - Dst: RSA_new
      Src: /src/xmlsec/src/openssl/evp.c:3736,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3738,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3738,1
    - Dst: RSA_generate_key_ex
      Src: /src/xmlsec/src/openssl/evp.c:3743,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:3745,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3745,1
    - Dst: xmlSecOpenSSLKeyDataRsaAdoptRsa
      Src: /src/xmlsec/src/openssl/evp.c:3750,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3752,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3752,1
    - Dst: RSA_free
      Src: /src/xmlsec/src/openssl/evp.c:3763,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:3766,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3769
      start: 3711
    functionDepth: 5
    functionLinenumber: 3711
    functionLinenumberEnd: 3769
    functionName: xmlSecOpenSSLKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataRsaAdoptRsa
    - RSA_free
    - UNREFERENCED_PARAMETER
    - xmlSecOpenSSLError2
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - RSA_new
    - RSA_generate_key_ex
    - BN_clear_free
    - BN_new
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - BN_set_word
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3778,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3778,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetRsa
      Src: /src/xmlsec/src/openssl/evp.c:3780,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3782,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3782,1
    - Dst: RSA_get0_key
      Src: /src/xmlsec/src/openssl/evp.c:3786,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3788,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3788,1
    - Dst: BN_num_bits
      Src: /src/xmlsec/src/openssl/evp.c:3792,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3794,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3794,1
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
      Src: /src/xmlsec/src/openssl/evp.c:3798,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/evp.c:3798,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3798,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3800
      start: 3771
    functionDepth: 4
    functionLinenumber: 3771
    functionLinenumberEnd: 3800
    functionName: xmlSecOpenSSLKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - BN_num_bits
    - xmlSecInternalError
    - RSA_get0_key
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataRsaGetRsa
    - xmlSecOpenSSLError
    - return
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3807,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3808,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3808,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3809,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetRsa
      Src: /src/xmlsec/src/openssl/evp.c:3814,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3816,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3816,1
    - Dst: RSA_get0_key
      Src: /src/xmlsec/src/openssl/evp.c:3820,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3825,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3825,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - data
    - rsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3831
      start: 3803
    functionDepth: 4
    functionLinenumber: 3803
    functionLinenumberEnd: 3831
    functionName: xmlSecOpenSSLKeyDataRsaGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - RSA_get0_key
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataRsaGetRsa
    - xmlSecOpenSSLError
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueRsaPtr
      rsaKeyValue)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3839,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3840,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3840,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3841,1
    - Dst: RSA_new
      Src: /src/xmlsec/src/openssl/evp.c:3843,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3845,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3845,1
    - Dst: RSA_set0_key
      Src: /src/xmlsec/src/openssl/evp.c:3848,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3850,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3851,1
    - Dst: xmlSecOpenSSLKeyDataRsaAdoptRsa
      Src: /src/xmlsec/src/openssl/evp.c:3859,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3861,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3862,1
    - Dst: RSA_free
      Src: /src/xmlsec/src/openssl/evp.c:3872,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 2
    argNames:
    - data
    - rsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3875
      start: 3833
    functionDepth: 5
    functionLinenumber: 3833
    functionLinenumberEnd: 3875
    functionName: xmlSecOpenSSLKeyDataRsaSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataRsaAdoptRsa
    - RSA_free
    - xmlSecInternalError
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - RSA_new
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - RSA_set0_key
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueRsaPtr
      rsaKeyValue)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3889,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3889,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3890,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:3891,1
    - Dst: BN_new
      Src: /src/xmlsec/src/openssl/evp.c:3894,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3896,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3897,1
    - Dst: BN_set_word
      Src: /src/xmlsec/src/openssl/evp.c:3901,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3903,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3904,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:3908,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:3908,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3910,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3911,1
    - Dst: EVP_PKEY_keygen_init
      Src: /src/xmlsec/src/openssl/evp.c:3914,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3916,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3917,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:3920,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3922,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3923,1
    - Dst: OSSL_PARAM_BLD_push_size_t
      Src: /src/xmlsec/src/openssl/evp.c:3926,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3927,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3928,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:3931,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3932,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3933,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:3937,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3939,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3940,1
    - Dst: EVP_PKEY_CTX_set_params
      Src: /src/xmlsec/src/openssl/evp.c:3943,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:3945,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3946,1
    - Dst: EVP_PKEY_generate
      Src: /src/xmlsec/src/openssl/evp.c:3949,1
    - Dst: xmlSecOpenSSLError2
      Src: /src/xmlsec/src/openssl/evp.c:3951,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3952,1
    - Dst: xmlSecOpenSSLKeyDataRsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:3956,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:3958,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:3959,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:3969,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:3972,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:3975,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:3978,1
    - Dst: BN_clear_free
      Src: /src/xmlsec/src/openssl/evp.c:3981,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 88
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3984
      start: 3879
    functionDepth: 4
    functionLinenumber: 3879
    functionLinenumberEnd: 3984
    functionName: xmlSecOpenSSLKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - EVP_PKEY_free
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - OSSL_PARAM_BLD_push_BN
    - BN_new
    - xmlSecOpenSSLKeyDataRsaAdoptEvp
    - xmlSecOpenSSLError
    - EVP_PKEY_generate
    - OSSL_PARAM_free
    - BN_set_word
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - xmlSecOpenSSLError2
    - EVP_PKEY_CTX_set_params
    - xmlSecAssert2
    - EVP_PKEY_CTX_free
    - EVP_PKEY_CTX_new_from_name
    - BN_clear_free
    - OSSL_PARAM_BLD_push_size_t
    - UNREFERENCED_PARAMETER
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - EVP_PKEY_keygen_init
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize
      sizeBits, xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOpenSSLKeyDataGetKeySize
      Src: /src/xmlsec/src/openssl/evp.c:3988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3989
      start: 3986
    functionDepth: 3
    functionLinenumber: 3986
    functionLinenumberEnd: 3989
    functionName: xmlSecOpenSSLKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGetKeySize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3996,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3997,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:3997,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:3998,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetEvp
      Src: /src/xmlsec/src/openssl/evp.c:4000,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4001,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:4003,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4005,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4005,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:4008,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4010,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4010,1
    - Dst: EVP_PKEY_get_bn_param
      Src: /src/xmlsec/src/openssl/evp.c:4013,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - data
    - rsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4020
      start: 3991
    functionDepth: 3
    functionLinenumber: 3991
    functionLinenumberEnd: 4020
    functionName: xmlSecOpenSSLKeyDataRsaGetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - EVP_PKEY_get_bn_param
    - xmlSecAssert2
    - xmlSecOpenSSLError
    - xmlSecOpenSSLKeyDataRsaGetEvp
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaGetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueRsaPtr
      rsaKeyValue)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4031,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4032,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4032,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4033,1
    - Dst: OSSL_PARAM_BLD_new
      Src: /src/xmlsec/src/openssl/evp.c:4035,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4037,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4038,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:4041,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4043,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4044,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:4047,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4049,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4050,1
    - Dst: OSSL_PARAM_BLD_push_BN
      Src: /src/xmlsec/src/openssl/evp.c:4053,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4055,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4056,1
    - Dst: OSSL_PARAM_BLD_to_param
      Src: /src/xmlsec/src/openssl/evp.c:4060,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4062,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4063,1
    - Dst: EVP_PKEY_CTX_new_from_name
      Src: /src/xmlsec/src/openssl/evp.c:4066,1
    - Dst: xmlSecOpenSSLGetLibCtx
      Src: /src/xmlsec/src/openssl/evp.c:4066,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4068,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4069,1
    - Dst: EVP_PKEY_fromdata_init
      Src: /src/xmlsec/src/openssl/evp.c:4073,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4075,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4076,1
    - Dst: EVP_PKEY_fromdata
      Src: /src/xmlsec/src/openssl/evp.c:4079,1
    - Dst: xmlSecOpenSSLError
      Src: /src/xmlsec/src/openssl/evp.c:4081,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4082,1
    - Dst: xmlSecOpenSSLKeyDataRsaAdoptEvp
      Src: /src/xmlsec/src/openssl/evp.c:4085,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4087,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4088,1
    - Dst: EVP_PKEY_free
      Src: /src/xmlsec/src/openssl/evp.c:4098,1
    - Dst: EVP_PKEY_CTX_free
      Src: /src/xmlsec/src/openssl/evp.c:4101,1
    - Dst: OSSL_PARAM_free
      Src: /src/xmlsec/src/openssl/evp.c:4104,1
    - Dst: OSSL_PARAM_BLD_free
      Src: /src/xmlsec/src/openssl/evp.c:4107,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 75
    argCount: 2
    argNames:
    - data
    - rsaKeyValue
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecOpenSSLKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4110
      start: 4022
    functionDepth: 4
    functionLinenumber: 4022
    functionLinenumberEnd: 4110
    functionName: xmlSecOpenSSLKeyDataRsaSetValue
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - OSSL_PARAM_BLD_new
    - OSSL_PARAM_BLD_free
    - xmlSecInternalError
    - EVP_PKEY_free
    - xmlSecOpenSSLError
    - xmlSecAssert2
    - OSSL_PARAM_BLD_to_param
    - xmlSecOpenSSLGetLibCtx
    - EVP_PKEY_fromdata_init
    - EVP_PKEY_CTX_free
    - OSSL_PARAM_BLD_push_BN
    - EVP_PKEY_CTX_new_from_name
    - EVP_PKEY_fromdata
    - xmlSecOpenSSLKeyDataRsaAdoptEvp
    - OSSL_PARAM_free
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataRsaSetValue(xmlSecKeyDataPtr data, xmlSecOpenSSLKeyValueRsaPtr
      rsaKeyValue)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4119,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4119,1
    - Dst: xmlSecOpenSSLEvpKeyDataIsKeyInMemory
      Src: /src/xmlsec/src/openssl/evp.c:4122,1
    - Dst: xmlSecOpenSSLKeyValueRsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4131,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4133,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4133,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetValue
      Src: /src/xmlsec/src/openssl/evp.c:4137,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4139,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4139,1
    - Dst: xmlSecOpenSSLKeyValueRsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4150,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4152
      start: 4113
    functionDepth: 5
    functionLinenumber: 4113
    functionLinenumberEnd: 4152
    functionName: xmlSecOpenSSLKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLKeyValueRsaFinalize
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataIsKeyInMemory
    - xmlSecOpenSSLKeyDataRsaGetValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyValueRsaInitialize
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataRsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4157,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4157,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4158,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4160,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetSize
      Src: /src/xmlsec/src/openssl/evp.c:4161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4162
      start: 4155
    functionDepth: 5
    functionLinenumber: 4155
    functionLinenumberEnd: 4162
    functionName: xmlSecOpenSSLKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataRsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4166,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4166,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4167,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4169,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetSize
      Src: /src/xmlsec/src/openssl/evp.c:4170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4171
      start: 4164
    functionDepth: 5
    functionLinenumber: 4164
    functionLinenumberEnd: 4171
    functionName: xmlSecOpenSSLKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataRsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4181,1
    - Dst: xmlSecOpenSSLKeyValueRsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4183,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4185,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4186,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4191,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4193,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4194,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4199,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4201,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4202,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/openssl/evp.c:4206,1
    - Dst: xmlSecOpenSSLGetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4208,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4210,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4211,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/openssl/evp.c:4216,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4218,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4218,1
    - Dst: xmlSecOpenSSLKeyDataRsaSetValue
      Src: /src/xmlsec/src/openssl/evp.c:4222,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4224,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4225,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/openssl/evp.c:4235,1
    - Dst: xmlSecOpenSSLKeyValueRsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4237,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4239
      start: 4173
    functionDepth: 6
    functionLinenumber: 4173
    functionLinenumberEnd: 4239
    functionName: xmlSecOpenSSLKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecOpenSSLKeyDataRsaSetValue
    - xmlSecOpenSSLKeyValueRsaFinalize
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecOpenSSLGetBNValue
    - xmlSecBufferGetSize
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecOpenSSLKeyValueRsaInitialize
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecOpenSSLKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4249,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4250,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4251,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4251,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4252,1
    - Dst: xmlSecOpenSSLKeyValueRsaInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4255,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4257,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4258,1
    - Dst: xmlSecOpenSSLKeyDataRsaGetValue
      Src: /src/xmlsec/src/openssl/evp.c:4262,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4264,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/openssl/evp.c:4265,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4270,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4271,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4273,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4279,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4280,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4282,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4283,1
    - Dst: xmlSecOpenSSLSetBNValue
      Src: /src/xmlsec/src/openssl/evp.c:4289,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/openssl/evp.c:4291,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/openssl/evp.c:4292,1
    - Dst: xmlSecOpenSSLKeyValueRsaFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4301,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4303
      start: 4241
    functionDepth: 5
    functionLinenumber: 4241
    functionLinenumberEnd: 4303
    functionName: xmlSecOpenSSLKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLSetBNValue
    - xmlSecInternalError
    - xmlSecOpenSSLKeyValueRsaFinalize
    - xmlSecAssert2
    - xmlSecOpenSSLKeyDataRsaGetValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataGetName
    - xmlSecOpenSSLKeyValueRsaInitialize
    linkageType: ''
    returnType: int
    signature: "int xmlSecOpenSSLKeyDataRsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                             xmlSecKeyValueRsaPtr rsaValue, int writePrivateKey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4372
      start: 4369
    functionDepth: 0
    functionLinenumber: 4369
    functionLinenumberEnd: 4372
    functionName: xmlSecOpenSSLKeyDataGost2001GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataGost2001GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4377,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4377,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4380
      start: 4375
    functionDepth: 2
    functionLinenumber: 4375
    functionLinenumberEnd: 4380
    functionName: xmlSecOpenSSLKeyDataGost2001Initialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataGost2001Initialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4384,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4385,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4385,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:4387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4388
      start: 4382
    functionDepth: 2
    functionLinenumber: 4382
    functionLinenumberEnd: 4388
    functionName: xmlSecOpenSSLKeyDataGost2001Duplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataGost2001Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4392,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4392,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4395
      start: 4390
    functionDepth: 2
    functionLinenumber: 4390
    functionLinenumberEnd: 4395
    functionName: xmlSecOpenSSLKeyDataGost2001Finalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGost2001Finalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:4399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4404
      start: 4397
    functionDepth: 0
    functionLinenumber: 4397
    functionLinenumberEnd: 4404
    functionName: xmlSecOpenSSLKeyDataGost2001GetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataGost2001GetType(xmlSecKeyDataPtr
      data XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4408,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4411
      start: 4406
    functionDepth: 1
    functionLinenumber: 4406
    functionLinenumberEnd: 4411
    functionName: xmlSecOpenSSLKeyDataGost2001GetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataGost2001GetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4415,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4415,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4416,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4418,1
    - Dst: xmlSecOpenSSLKeyDataGost2001GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4420
      start: 4413
    functionDepth: 2
    functionLinenumber: 4413
    functionLinenumberEnd: 4420
    functionName: xmlSecOpenSSLKeyDataGost2001DebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecOpenSSLKeyDataGost2001GetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGost2001DebugDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4424,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4424,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4425,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4427,1
    - Dst: xmlSecOpenSSLKeyDataGost2001GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4429
      start: 4422
    functionDepth: 2
    functionLinenumber: 4422
    functionLinenumberEnd: 4429
    functionName: xmlSecOpenSSLKeyDataGost2001DebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecOpenSSLKeyDataGost2001GetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGost2001DebugXmlDump(xmlSecKeyDataPtr data,
      FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4499
      start: 4496
    functionDepth: 0
    functionLinenumber: 4496
    functionLinenumberEnd: 4499
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4504,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4504,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4507
      start: 4502
    functionDepth: 2
    functionLinenumber: 4502
    functionLinenumberEnd: 4507
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256Initialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataGostR3410_2012_256Initialize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4512,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4512,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4513,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4513,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:4515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4516
      start: 4509
    functionDepth: 2
    functionLinenumber: 4509
    functionLinenumberEnd: 4516
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256Duplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: 'int xmlSecOpenSSLKeyDataGostR3410_2012_256Duplicate(xmlSecKeyDataPtr
      dst,

      xmlSecKeyDataPtr src)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4520,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4520,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4523
      start: 4518
    functionDepth: 2
    functionLinenumber: 4518
    functionLinenumberEnd: 4523
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256Finalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_256Finalize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:4527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4532
      start: 4525
    functionDepth: 0
    functionLinenumber: 4525
    functionLinenumberEnd: 4532
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256GetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataGostR3410_2012_256GetType(xmlSecKeyDataPtr
      data XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4536,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4539
      start: 4534
    functionDepth: 1
    functionLinenumber: 4534
    functionLinenumberEnd: 4539
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4543,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4543,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4544,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4546,1
    - Dst: xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4548
      start: 4541
    functionDepth: 2
    functionLinenumber: 4541
    functionLinenumberEnd: 4548
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256DebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_256DebugDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4552,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4552,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4553,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4555,1
    - Dst: xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4557
      start: 4550
    functionDepth: 2
    functionLinenumber: 4550
    functionLinenumberEnd: 4557
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_256DebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_256DebugXmlDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4627
      start: 4624
    functionDepth: 0
    functionLinenumber: 4624
    functionLinenumberEnd: 4627
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4632,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4632,1
    - Dst: xmlSecOpenSSLEvpKeyDataInitialize
      Src: /src/xmlsec/src/openssl/evp.c:4634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4635
      start: 4630
    functionDepth: 2
    functionLinenumber: 4630
    functionLinenumberEnd: 4635
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512Initialize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLKeyDataGostR3410_2012_512Initialize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4640,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4640,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4641,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4641,1
    - Dst: xmlSecOpenSSLEvpKeyDataDuplicate
      Src: /src/xmlsec/src/openssl/evp.c:4643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4644
      start: 4637
    functionDepth: 2
    functionLinenumber: 4637
    functionLinenumberEnd: 4644
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512Duplicate
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecOpenSSLEvpKeyDataDuplicate
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: 'int xmlSecOpenSSLKeyDataGostR3410_2012_512Duplicate(xmlSecKeyDataPtr
      dst,

      xmlSecKeyDataPtr src)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4648,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4648,1
    - Dst: xmlSecOpenSSLEvpKeyDataFinalize
      Src: /src/xmlsec/src/openssl/evp.c:4650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4651
      start: 4646
    functionDepth: 2
    functionLinenumber: 4646
    functionLinenumberEnd: 4651
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512Finalize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecOpenSSLEvpKeyDataFinalize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_512Finalize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/openssl/evp.c:4655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4660
      start: 4653
    functionDepth: 0
    functionLinenumber: 4653
    functionLinenumberEnd: 4660
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512GetType
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecOpenSSLKeyDataGostR3410_2012_512GetType(xmlSecKeyDataPtr
      data XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/openssl/evp.c:4664,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4667
      start: 4662
    functionDepth: 1
    functionLinenumber: 4662
    functionLinenumberEnd: 4667
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize(xmlSecKeyDataPtr
      data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4671,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4671,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4672,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4674,1
    - Dst: xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4676
      start: 4669
    functionDepth: 2
    functionLinenumber: 4669
    functionLinenumberEnd: 4676
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512DebugDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_512DebugDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4680,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/openssl/evp.c:4680,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/openssl/evp.c:4681,1
    - Dst: fprintf
      Src: /src/xmlsec/src/openssl/evp.c:4683,1
    - Dst: xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
      Src: /src/xmlsec/src/openssl/evp.c:4684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4685
      start: 4678
    functionDepth: 2
    functionLinenumber: 4678
    functionLinenumberEnd: 4685
    functionName: xmlSecOpenSSLKeyDataGostR3410_2012_512DebugXmlDump
    functionSourceFile: /src/xmlsec/src/openssl/evp.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecOpenSSLKeyDataGostR3410_2012_512DebugXmlDump(xmlSecKeyDataPtr
      data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: ENGINE_cleanup
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ENGINE_cleanup(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: CONF_modules_unload
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONF_modules_unload(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: RAND_priv_bytes
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_priv_bytes(buf,len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - file
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: RAND_write_file
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_write_file(file)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - pkey
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: EVP_PKEY_base_id
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVP_PKEY_base_id(pkey)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - out
    - ','
    - out_len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: EVP_CipherFinal
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVP_CipherFinal(ctx, out, out_len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: EVP_read_pw_string
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVP_read_pw_string(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cert
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: X509_get0_pubkey
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_get0_pubkey(cert)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - crts
    - ','
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: sk_X509_reserve
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sk_X509_reserve(crts, num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - crls
    - ','
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: sk_X509_CRL_reserve
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sk_X509_CRL_reserve(crls, num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionName: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionName: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - srcVal
    - ','
    - dstVal
    - ','
    - errorAction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionName: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT(srcVal, dstVal, errorAction,
      errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - buf
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: RAND_priv_bytes
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_priv_bytes(buf,len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - crts
    - ','
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: sk_X509_reserve
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sk_X509_reserve(crts, num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - crls
    - ','
    - num
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: sk_X509_CRL_reserve
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: sk_X509_CRL_reserve(crls, num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: UI_null
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UI_null()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - libctx
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: BIO_new_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BIO_new_ex(libctx,type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - bp
    - ','
    - x
    - ','
    - cb
    - ','
    - u
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 165
    functionName: PEM_read_bio_PrivateKey_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PEM_read_bio_PrivateKey_ex(bp,x,cb,u,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - bp
    - ','
    - x
    - ','
    - cb
    - ','
    - u
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: PEM_read_bio_PUBKEY_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PEM_read_bio_PUBKEY_ex(bp,x,cb,u,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - bp
    - ','
    - a
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: d2i_PrivateKey_ex_bio
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: d2i_PrivateKey_ex_bio(bp,a,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - ctx
    - ','
    - md
    - ','
    - s
    - ','
    - pkey
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: EVP_SignFinal_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVP_SignFinal_ex(ctx,md,s,pkey,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - ctx
    - ','
    - sigbuf
    - ','
    - siglen
    - ','
    - pkey
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: EVP_VerifyFinal_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EVP_VerifyFinal_ex(ctx,sigbuf,siglen,pkey,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 172
    functionName: X509_new_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_new_ex(libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 173
    functionName: X509_CRL_new_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_CRL_new_ex(libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 174
    functionName: X509_STORE_CTX_new_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_STORE_CTX_new_ex(libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - ctx
    - ','
    - libctx
    - ','
    - propq
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: X509_STORE_set_default_paths_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_STORE_set_default_paths_ex(ctx,libctx,propq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - libctx
    - ','
    - propq
    - ','
    - ok
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 176
    functionName: X509_NAME_hash_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: X509_NAME_hash_ex(x,libctx,propq,ok)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - ctx
    - ','
    - buf
    - ','
    - num
    - ','
    - strength
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 178
    functionName: RAND_priv_bytes_ex
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_priv_bytes_ex(ctx,buf,num,strength)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
      Src: /src/xmlsec/src/openssl/openssl_compat.h:180,1
    - Dst: return
      Src: /src/xmlsec/src/openssl/openssl_compat.h:180,1
    - Dst: RAND_priv_bytes
      Src: /src/xmlsec/src/openssl/openssl_compat.h:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - unsigned char*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: xmlSecOpenSSLCompatRand
    functionSourceFile: /src/xmlsec/src/openssl/openssl_compat.h
    functionUses: 0
    functionsReached:
    - return
    - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
    - RAND_priv_bytes
    linkageType: ''
    returnType: int
    signature: int xmlSecOpenSSLCompatRand(unsigned char *buf, xmlSecSize size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:85,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:86,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 93
    functionName: xmlSecNssGcmCipherCheckId
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:99,1
    - Dst: xmlSecNssGcmCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:99,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:100,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:100,1
    - Dst: xmlSecNssGcmCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:103,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:105,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:119,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 125
    functionName: xmlSecNssGcmCipherInitialize
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecNssGcmCipherCheckId
    - xmlSecNssGcmCipherGetCtx
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:131,1
    - Dst: xmlSecNssGcmCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:131,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:132,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:132,1
    - Dst: xmlSecNssGcmCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:134,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:135,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:138,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 127
    functionDepth: 2
    functionLinenumber: 127
    functionLinenumberEnd: 141
    functionName: xmlSecNssGcmCipherFinalize
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecNssGcmCipherCheckId
    - xmlSecNssGcmCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecKeyDataDestroy
    - xmlSecAssert
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssGcmCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:147,1
    - Dst: xmlSecNssGcmCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:147,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:148,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:149,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:149,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:150,1
    - Dst: xmlSecNssGcmCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:152,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:154,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 168
    functionName: xmlSecNssGcmCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssGcmCipherCheckId
    - xmlSecNssGcmCipherGetCtx
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:175,1
    - Dst: xmlSecNssGcmCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:175,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:176,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:177,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:177,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:178,1
    - Dst: xmlSecNssGcmCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:180,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:181,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:182,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:184,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:184,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:186,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:187,1
    - Dst: xmlSecKeyDataDuplicate
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:189,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:191,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 170
    functionDepth: 3
    functionLinenumber: 170
    functionLinenumberEnd: 197
    functionName: xmlSecNssGcmCipherSetKey
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecNssGcmCipherCheckId
    - xmlSecNssGcmCipherGetCtx
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:210,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:213,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:215,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:217,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:221,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:226,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:226,1
    - Dst: PK11_GetInternalSlot
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:228,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:230,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:234,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:236,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:237,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:242,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - operation
    argTypes:
    - xmlSecNssGcmCipherCtxPtr
    - CK_ATTRIBUTE_TYPE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 244
    functionName: xmlSecNssGcmCipherGetKey
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidKeyDataSizeError
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - PK11_FreeSlot
    - xmlSecBufferGetSize
    - xmlSecNssError
    - xmlSecKeyDataBinaryValueGetBuffer
    - PK11_ImportSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_GetInternalSlot
    linkageType: ''
    returnType: PK11SymKey
    signature: 'PK11SymKey *

      xmlSecNssGcmCipherGetKey(xmlSecNssGcmCipherCtxPtr ctx, CK_ATTRIBUTE_TYPE operation)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:257,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:258,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:259,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:260,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:262,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:263,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:265,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:266,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:270,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:272,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:278,1
    - Dst: PK11_GenerateRandom
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:280,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:282,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:289,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:289,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:290,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:290,1
    - Dst: xmlSecNssGcmCipherGetKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:294,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:296,1
    - Dst: PK11_Encrypt
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:311,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:315,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:316,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:319,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:322,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:322,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:323,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:325,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 54
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecNssGcmCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 246
    functionDepth: 3
    functionLinenumber: 246
    functionLinenumberEnd: 331
    functionName: xmlSecNssGcmCipherEncrypt
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - PK11_Encrypt
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - xmlSecInternalError2
    - xmlSecNssGcmCipherGetKey
    - xmlSecNssError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecNssError
    - PK11_FreeSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_GenerateRandom
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherEncrypt(xmlSecNssGcmCipherCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:345,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:348,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:352,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:355,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:360,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:362,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:366,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:369,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:369,1
    - Dst: xmlSecNssGcmCipherGetKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:373,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:375,1
    - Dst: PK11_Decrypt
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:390,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:394,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:395,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:398,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:401,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:401,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:402,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:404,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 47
    argCount: 3
    argNames:
    - ctx
    - in
    - out
    argTypes:
    - xmlSecNssGcmCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 410
    functionName: xmlSecNssGcmCipherDecrypt
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - xmlSecInternalError2
    - xmlSecNssGcmCipherGetKey
    - PK11_Decrypt
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecNssError
    - PK11_FreeSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherDecrypt(xmlSecNssGcmCipherCtxPtr ctx, xmlSecBufferPtr
      in, xmlSecBufferPtr out)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:418,1
    - Dst: xmlSecNssGcmCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:420,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:420,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:421,1
    - Dst: xmlSecNssGcmCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:427,1
    - Dst: xmlSecNssGcmCipherEncrypt
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:441,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:441,1
    - Dst: xmlSecNssGcmCipherDecrypt
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:447,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:447,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:453,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:459,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:459,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:462,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/ciphers_gcm.c:464,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 412
    functionDepth: 4
    functionLinenumber: 412
    functionLinenumberEnd: 469
    functionName: xmlSecNssGcmCipherExecute
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached:
    - xmlSecNssGcmCipherCheckId
    - xmlSecNssGcmCipherGetCtx
    - xmlSecInternalError
    - xmlSecNssGcmCipherDecrypt
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecNssGcmCipherEncrypt
    - xmlSecBufferEmpty
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGcmCipherExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 516
    functionName: xmlSecNssTransformAes128GcmGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes128GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: xmlSecNssTransformAes192GcmGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes192GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 591
    functionDepth: 0
    functionLinenumber: 591
    functionLinenumberEnd: 594
    functionName: xmlSecNssTransformAes256GcmGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_gcm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes256GcmGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 45
    functionName: xmlSecNssError
    functionSourceFile: /src/xmlsec/src/nss/globals.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNssError(errorFunction, errorObject)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 67
    functionName: xmlSecNssError2
    functionSourceFile: /src/xmlsec/src/nss/globals.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNssError2(errorFunction, errorObject, msg, param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - errorFunction
    - ','
    - errorObject
    - ','
    - msg
    - ','
    - param1
    - ','
    - param2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 92
    functionName: xmlSecNssError3
    functionSourceFile: /src/xmlsec/src/nss/globals.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNssError3(errorFunction, errorObject, msg, param1, param2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: xmlSecNssKWAesCheckId
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNssKWAesCheckId(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: xmlSecNssTransformKWAes128GetKlass
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformKWAes128GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: xmlSecNssTransformKWAes192GetKlass
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformKWAes192GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 235
    functionName: xmlSecNssTransformKWAes256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformKWAes256GetKlass(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:243,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:244,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:244,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:247,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/kw_aes.c:248,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:250,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:252,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:254,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/kw_aes.c:257,1
    - Dst: xmlSecTransformKWAesInitialize
      Src: /src/xmlsec/src/nss/kw_aes.c:261,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:265,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_aes.c:265,1
    - Dst: xmlSecNssKWAesFinalize
      Src: /src/xmlsec/src/nss/kw_aes.c:266,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 271
    functionName: xmlSecNssKWAesInitialize
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssKWAesFinalize
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesInitialize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWAesInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_aes.c:277,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:277,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_aes.c:278,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:278,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:280,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_aes.c:281,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/kw_aes.c:284,1
    - Dst: xmlSecTransformKWAesFinalize
      Src: /src/xmlsec/src/nss/kw_aes.c:287,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/kw_aes.c:288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 273
    functionDepth: 3
    functionLinenumber: 273
    functionLinenumberEnd: 289
    functionName: xmlSecNssKWAesFinalize
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecTransformKWAesFinalize
    - xmlSecAssert
    - PK11_FreeSymKey
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKWAesFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:296,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:297,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:297,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:299,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:300,1
    - Dst: xmlSecTransformKWAesSetKeyReq
      Src: /src/xmlsec/src/nss/kw_aes.c:302,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:304,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_aes.c:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 308
    functionName: xmlSecNssKWAesSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKeyReq
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWAesSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:315,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:315,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:316,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:316,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:318,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:319,1
    - Dst: xmlSecTransformKWAesSetKey
      Src: /src/xmlsec/src/nss/kw_aes.c:321,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:323,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_aes.c:323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 310
    functionDepth: 4
    functionLinenumber: 310
    functionLinenumberEnd: 327
    functionName: xmlSecNssKWAesSetKey
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWAesSetKey
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:335,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:336,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:336,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/kw_aes.c:337,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:340,1
    - Dst: xmlSecTransformKWAesExecute
      Src: /src/xmlsec/src/nss/kw_aes.c:342,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:344,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_aes.c:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 329
    functionDepth: 3
    functionLinenumber: 329
    functionLinenumberEnd: 348
    functionName: xmlSecNssKWAesExecute
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecTransformGetName
    - xmlSecTransformKWAesExecute
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last,\n
      \                     xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:362,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:363,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:363,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:368,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:371,1
    - Dst: xmlSecNSSKWAesEnsureKey
      Src: /src/xmlsec/src/nss/kw_aes.c:374,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:379,1
    - Dst: xmlSecNssAesOp
      Src: /src/xmlsec/src/nss/kw_aes.c:382,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 355
    functionDepth: 1
    functionLinenumber: 355
    functionLinenumberEnd: 389
    functionName: xmlSecNSSKWAesBlockEncrypt
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNSSKWAesEnsureKey
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecNssAesOp
    linkageType: ''
    returnType: int
    signature: "int xmlSecNSSKWAesBlockEncrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                           xmlSecByte *
      out, xmlSecSize outSize,\n                           xmlSecSize * outWritten)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:398,1
    - Dst: xmlSecNssKWAesCheckId
      Src: /src/xmlsec/src/nss/kw_aes.c:398,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:399,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_aes.c:399,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:400,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:402,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:403,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:404,1
    - Dst: xmlSecNssKWAesGetCtx
      Src: /src/xmlsec/src/nss/kw_aes.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:407,1
    - Dst: xmlSecNSSKWAesEnsureKey
      Src: /src/xmlsec/src/nss/kw_aes.c:410,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:415,1
    - Dst: xmlSecNssAesOp
      Src: /src/xmlsec/src/nss/kw_aes.c:418,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_aes.c:420,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 6
    argNames:
    - transform
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 425
    functionName: xmlSecNSSKWAesBlockDecrypt
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNSSKWAesEnsureKey
    - xmlSecNssKWAesGetCtx
    - xmlSecNssKWAesCheckId
    - xmlSecNssAesOp
    linkageType: ''
    returnType: int
    signature: "int xmlSecNSSKWAesBlockDecrypt(xmlSecTransformPtr transform, const
      xmlSecByte * in, xmlSecSize inSize,\n                           xmlSecByte *
      out, xmlSecSize outSize,\n                           xmlSecSize * outWritten)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:436,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/kw_aes.c:441,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/kw_aes.c:442,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:443,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:444,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/kw_aes.c:447,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:449,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/kw_aes.c:454,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/kw_aes.c:456,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:459,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/kw_aes.c:468,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - ctx
    - enc
    argTypes:
    - xmlSecNssKWAesCtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 427
    functionDepth: 2
    functionLinenumber: 427
    functionLinenumberEnd: 471
    functionName: xmlSecNSSKWAesEnsureKey
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferGetData
    - PK11_GetBestSlot
    - xmlSecBufferGetSize
    - xmlSecNssError
    - PK11_ImportSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_FreeSlot
    linkageType: ''
    returnType: int
    signature: int xmlSecNSSKWAesEnsureKey(xmlSecNssKWAesCtxPtr ctx, int enc)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:484,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_aes.c:485,1
    - Dst: PK11_ParamFromIV
      Src: /src/xmlsec/src/nss/kw_aes.c:488,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:490,1
    - Dst: PK11_CreateContextBySymKey
      Src: /src/xmlsec/src/nss/kw_aes.c:494,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:497,1
    - Dst: PK11_CipherOp
      Src: /src/xmlsec/src/nss/kw_aes.c:502,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:506,1
    - Dst: PK11_Finalize
      Src: /src/xmlsec/src/nss/kw_aes.c:510,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_aes.c:512,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/kw_aes.c:521,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_aes.c:524,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 4
    argNames:
    - aeskey
    - in
    - out
    - enc
    argTypes:
    - PK11SymKey*
    - xmlSecByte*
    - xmlSecByte*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 528
    functionName: xmlSecNssAesOp
    functionSourceFile: /src/xmlsec/src/nss/kw_aes.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - PK11_CipherOp
    - PK11_Finalize
    - PK11_ParamFromIV
    - xmlSecNssError
    - PK11_CreateContextBySymKey
    - SECITEM_FreeItem
    - PK11_DestroyContext
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAesOp(PK11SymKey *aeskey, const xmlSecByte *in, xmlSecByte
      *out, int enc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:79,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:79,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:80,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:80,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:82,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:83,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/pkikeys.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionName: xmlSecNssPKIKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPKIKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:95,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:95,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:96,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:96,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:98,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:99,1
    - Dst: xmlSecNSSPKIKeyDataCtxFree
      Src: /src/xmlsec/src/nss/pkikeys.c:101,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/pkikeys.c:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 103
    functionName: xmlSecNssPKIKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecNSSPKIKeyDataCtxFree
    - xmlSecAssert
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssPKIKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:109,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:111,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecNssPKIKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 121
    functionName: xmlSecNSSPKIKeyDataCtxFree
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - SECKEY_DestroyPublicKey
    - SECKEY_DestroyPrivateKey
    linkageType: ''
    returnType: void
    signature: void xmlSecNSSPKIKeyDataCtxFree(xmlSecNssPKIKeyDataCtxPtr ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecNSSPKIKeyDataCtxFree
      Src: /src/xmlsec/src/nss/pkikeys.c:127,1
    - Dst: SECKEY_CopyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:129,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:131,1
    - Dst: SECKEY_CopyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:137,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - ctxDst
    - ctxSrc
    argTypes:
    - xmlSecNssPKIKeyDataCtxPtr
    - xmlSecNssPKIKeyDataCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionName: xmlSecNSSPKIKeyDataCtxDup
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_CopyPublicKey
    - xmlSecNssError
    - SECKEY_CopyPrivateKey
    - xmlSecNSSPKIKeyDataCtxFree
    linkageType: ''
    returnType: int
    signature: "int xmlSecNSSPKIKeyDataCtxDup(xmlSecNssPKIKeyDataCtxPtr ctxDst,\n
      \                         xmlSecNssPKIKeyDataCtxPtr ctxSrc)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:156,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:157,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:157,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:159,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:160,1
    - Dst: SECKEY_ConvertToPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:164,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:166,1
    - Dst: SECKEY_GetPrivateKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:173,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:177,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:179,1
    - Dst: xmlSecNssError3
      Src: /src/xmlsec/src/nss/pkikeys.c:182,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:184,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:191,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:196,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 3
    argNames:
    - data
    - privkey
    - pubkey
    argTypes:
    - xmlSecKeyDataPtr
    - SECKEYPrivateKey*
    - SECKEYPublicKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 202
    functionName: xmlSecNssPKIKeyDataAdoptKey
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - SECKEY_DestroyPublicKey
    - SECKEY_GetPublicKeyType
    - SECKEY_ConvertToPublicKey
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - SECKEY_GetPrivateKeyType
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecNssError
    - xmlSecNssError3
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssPKIKeyDataAdoptKey(xmlSecKeyDataPtr data,\n                            SECKEYPrivateKey
      *privkey,\n                            SECKEYPublicKey  *pubkey)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: SECKEY_GetPrivateKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:224,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:228,1
    - Dst: xmlSecNssError3
      Src: /src/xmlsec/src/nss/pkikeys.c:233,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:243,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:245,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:252,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:254,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:261,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:263,1
    - Dst: xmlSecUnsupportedEnumValueError
      Src: /src/xmlsec/src/nss/pkikeys.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:273,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:276,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:277,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 2
    argNames:
    - privkey
    - pubkey
    argTypes:
    - SECKEYPrivateKey*
    - SECKEYPublicKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 281
    functionName: xmlSecNssPKIAdoptKey
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - SECKEY_GetPublicKeyType
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - SECKEY_GetPrivateKeyType
    - xmlSecUnsupportedEnumValueError
    - xmlSecNssPKIKeyDataAdoptKey
    - xmlSecNssError3
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: "xmlSecKeyDataPtr xmlSecNssPKIAdoptKey(SECKEYPrivateKey *privkey,\n
      \                    SECKEYPublicKey  *pubkey)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:297,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:297,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:298,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:298,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:300,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:301,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:302,1
    - Dst: SECKEY_CopyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 306
    functionName: xmlSecNssPKIKeyDataGetPubKey
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - SECKEY_CopyPublicKey
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    linkageType: ''
    returnType: SECKEYPublicKey
    signature: 'SECKEYPublicKey *

      xmlSecNssPKIKeyDataGetPubKey(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:322,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:323,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:323,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:327,1
    - Dst: SECKEY_CopyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 331
    functionName: xmlSecNssPKIKeyDataGetPrivKey
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecAssert2
    - SECKEY_CopyPrivateKey
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    linkageType: ''
    returnType: SECKEYPrivateKey
    signature: 'SECKEYPrivateKey *

      xmlSecNssPKIKeyDataGetPrivKey(xmlSecKeyDataPtr data)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:346,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:347,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:347,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:350,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:353,1
    - Dst: SECKEY_GetPrivateKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 341
    functionDepth: 1
    functionLinenumber: 341
    functionLinenumberEnd: 358
    functionName: xmlSecNssPKIKeyDataGetKeyType
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - SECKEY_GetPublicKeyType
    - xmlSecAssert2
    - SECKEY_GetPrivateKeyType
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    linkageType: ''
    returnType: KeyType
    signature: KeyType xmlSecNssPKIKeyDataGetKeyType(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:374,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:375,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:376,1
    - Dst: xmlSecKeyDataIsValid
      Src: /src/xmlsec/src/nss/pkikeys.c:376,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:377,1
    - Dst: xmlSecKeyDataCheckSize
      Src: /src/xmlsec/src/nss/pkikeys.c:377,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:379,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:380,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:383,1
    - Dst: xmlSecNSSPKIKeyDataCtxDup
      Src: /src/xmlsec/src/nss/pkikeys.c:385,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:386,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 369
    functionDepth: 3
    functionLinenumber: 369
    functionLinenumberEnd: 392
    functionName: xmlSecNssPKIKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataIsValid
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataCheckSize
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataGetName
    - xmlSecNSSPKIKeyDataCtxDup
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPKIKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:404,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:405,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:406,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:407,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:408,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/pkikeys.c:410,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:411,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:412,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:413,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/pkikeys.c:415,1
    - Dst: return
      Src: /src/xmlsec/src/nss/pkikeys.c:415,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/pkikeys.c:416,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/nss/pkikeys.c:418,1
    - Dst: PORT_Memcpy
      Src: /src/xmlsec/src/nss/pkikeys.c:422,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 3
    argNames:
    - buf
    - arena
    - val
    argTypes:
    - xmlSecBufferPtr
    - PRArenaPool*
    - SECItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 399
    functionDepth: 2
    functionLinenumber: 399
    functionLinenumberEnd: 424
    functionName: xmlSecNssGetBigNumValue
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - PORT_ArenaZAlloc
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PORT_Memcpy
    - xmlSecMallocError
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGetBigNumValue(xmlSecBufferPtr buf, PRArenaPool *arena,
      SECItem *val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:433,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/pkikeys.c:435,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/pkikeys.c:437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - val
    - buf
    argTypes:
    - SECItem*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 426
    functionDepth: 3
    functionLinenumber: 426
    functionLinenumberEnd: 442
    functionName: xmlSecNssSetBigNumValue
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSetBigNumValue(const SECItem *val, xmlSecBufferPtr buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 522
    functionName: xmlSecNssKeyDataDEREncodedKeyValueGetKlass
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataDEREncodedKeyValueGetKlass(void)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:537,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:538,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:539,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:541,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:542,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/nss/pkikeys.c:545,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:547,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:547,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/nss/pkikeys.c:552,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/nss/pkikeys.c:554,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:554,1
    - Dst: xmlSecBufferBase64NodeContentRead
      Src: /src/xmlsec/src/nss/pkikeys.c:559,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:561,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:561,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/pkikeys.c:564,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:565,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/pkikeys.c:574,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:574,1
    - Dst: SECKEY_DecodeDERSubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/pkikeys.c:575,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:577,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:577,1
    - Dst: SECKEY_ExtractPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:580,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:582,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:582,1
    - Dst: xmlSecNssPKIAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:587,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:589,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:589,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/pkikeys.c:594,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:596,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:596,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:606,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:609,1
    - Dst: SECKEY_DestroySubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/pkikeys.c:612,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/nss/pkikeys.c:614,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 524
    functionDepth: 4
    functionLinenumber: 524
    functionLinenumberEnd: 616
    functionName: xmlSecNssKeyDataDEREncodedKeyValueXmlRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyDataKlassGetName
    - xmlSecBufferFinalize
    - SECKEY_DestroyPublicKey
    - xmlSecGetNextElementNode
    - xmlSecKeyDataDestroy
    - xmlSecNssError
    - SECKEY_ExtractPublicKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecBufferBase64NodeContentRead
    - xmlSecKeySetValue
    - xmlSecInternalError
    - SECKEY_DestroySubjectPublicKeyInfo
    - xmlSecAssert2
    - xmlSecBufferInitialize
    - xmlSecBufferGetData
    - xmlSecUnexpectedNodeError
    - xmlSecBufferGetSize
    - SECKEY_DecodeDERSubjectPublicKeyInfo
    - xmlSecNssPKIAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDEREncodedKeyValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:626,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:627,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:628,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:629,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:630,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/pkikeys.c:633,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:635,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:635,1
    - Dst: xmlSecNssPKIKeyDataGetPubKey
      Src: /src/xmlsec/src/nss/pkikeys.c:638,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:640,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:640,1
    - Dst: SECKEY_EncodeDERSubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/pkikeys.c:645,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:647,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:647,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/src/nss/pkikeys.c:652,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/nss/pkikeys.c:652,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:654,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:654,1
    - Dst: xmlNodeAddContent
      Src: /src/xmlsec/src/nss/pkikeys.c:657,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/nss/pkikeys.c:664,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:667,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/pkikeys.c:670,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 618
    functionDepth: 10
    functionLinenumber: 618
    functionLinenumberEnd: 673
    functionName: xmlSecNssKeyDataDEREncodedKeyValueXmlWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_DestroyPublicKey
    - SECKEY_EncodeDERSubjectPublicKeyInfo
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecNssPKIKeyDataGetPubKey
    - xmlFree
    - xmlSecAssert2
    - xmlNodeAddContent
    - xmlSecNssError
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataKlassGetName
    - xmlSecBase64Encode
    - SECITEM_FreeItem
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDEREncodedKeyValueXmlWrite(xmlSecKeyDataId id,
      xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: xmlSecNssKeyDataDsaGetKlass
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataDsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:835,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:835,1
    - Dst: xmlSecNssPKIKeyDataInitialize
      Src: /src/xmlsec/src/nss/pkikeys.c:837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 833
    functionDepth: 2
    functionLinenumber: 833
    functionLinenumberEnd: 838
    functionName: xmlSecNssKeyDataDsaInitialize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:842,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:842,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:843,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:843,1
    - Dst: xmlSecNssPKIKeyDataDuplicate
      Src: /src/xmlsec/src/nss/pkikeys.c:845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 840
    functionDepth: 4
    functionLinenumber: 840
    functionLinenumberEnd: 846
    functionName: xmlSecNssKeyDataDsaDuplicate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssPKIKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:850,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:850,1
    - Dst: xmlSecNssPKIKeyDataFinalize
      Src: /src/xmlsec/src/nss/pkikeys.c:852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 848
    functionDepth: 2
    functionLinenumber: 848
    functionLinenumberEnd: 853
    functionName: xmlSecNssKeyDataDsaFinalize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecNssPKIKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataDsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:858,1
    - Dst: xmlSecKeyDataDsaXmlRead
      Src: /src/xmlsec/src/nss/pkikeys.c:859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 855
    functionDepth: 3
    functionLinenumber: 855
    functionLinenumberEnd: 861
    functionName: xmlSecNssKeyDataDsaXmlRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataDsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                          xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:866,1
    - Dst: xmlSecKeyDataDsaXmlWrite
      Src: /src/xmlsec/src/nss/pkikeys.c:867,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/nss/pkikeys.c:868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 863
    functionDepth: 3
    functionLinenumber: 863
    functionLinenumberEnd: 870
    functionName: xmlSecNssKeyDataDsaXmlWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataDsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:885,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:885,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:886,1
    - Dst: PQG_PBITS_TO_INDEX
      Src: /src/xmlsec/src/nss/pkikeys.c:888,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:890,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:890,1
    - Dst: PK11_PQG_ParamGen
      Src: /src/xmlsec/src/nss/pkikeys.c:896,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:898,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:898,1
    - Dst: PK11_PQG_VerifyParams
      Src: /src/xmlsec/src/nss/pkikeys.c:903,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:905,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:905,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:910,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:912,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:912,1
    - Dst: PK11_Authenticate
      Src: /src/xmlsec/src/nss/pkikeys.c:916,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:918,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:918,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/pkikeys.c:919,1
    - Dst: PK11_GetTokenName
      Src: /src/xmlsec/src/nss/pkikeys.c:919,1
    - Dst: PK11_GenerateKeyPair
      Src: /src/xmlsec/src/nss/pkikeys.c:923,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:927,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:927,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:931,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:933,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:934,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:942,1
    - Dst: PK11_PQG_DestroyParams
      Src: /src/xmlsec/src/nss/pkikeys.c:945,1
    - Dst: PK11_PQG_DestroyVerify
      Src: /src/xmlsec/src/nss/pkikeys.c:948,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:954,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:957,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 68
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 960
      start: 872
    functionDepth: 2
    functionLinenumber: 872
    functionLinenumberEnd: 960
    functionName: xmlSecNssKeyDataDsaGenerate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - PK11_PQG_DestroyParams
    - PK11_GetBestSlot
    - PK11_PQG_VerifyParams
    - SECKEY_DestroyPublicKey
    - PK11_GenerateKeyPair
    - PQG_PBITS_TO_INDEX
    - xmlSecErrorsSafeString
    - PK11_GetTokenName
    - xmlSecNssError
    - PK11_PQG_DestroyVerify
    - PK11_PQG_ParamGen
    - xmlSecInternalError
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - PK11_Authenticate
    - xmlSecNssError2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecNssPKIKeyDataAdoptKey
    - PK11_FreeSlot
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,
      xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:966,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:966,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:968,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:969,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:974,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:974,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 962
    functionDepth: 1
    functionLinenumber: 962
    functionLinenumberEnd: 976
    functionName: xmlSecNssKeyDataDsaGetType
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECKEY_GetPublicKeyType
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecNssKeyDataDsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:982,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:982,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:984,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:985,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:986,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:987,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:987,1
    - Dst: SECKEY_PublicKeyStrength
      Src: /src/xmlsec/src/nss/pkikeys.c:989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 978
    functionDepth: 1
    functionLinenumber: 978
    functionLinenumberEnd: 990
    functionName: xmlSecNssKeyDataDsaGetSize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_GetPublicKeyType
    - SECKEY_PublicKeyStrength
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssKeyDataDsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:994,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:994,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:995,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:997,1
    - Dst: xmlSecNssKeyDataDsaGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:998,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 992
    functionDepth: 2
    functionLinenumber: 992
    functionLinenumberEnd: 999
    functionName: xmlSecNssKeyDataDsaDebugDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataDsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataDsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1003,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1003,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1004,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:1006,1
    - Dst: xmlSecNssKeyDataDsaGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1007,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 1001
    functionDepth: 2
    functionLinenumber: 1001
    functionLinenumberEnd: 1008
    functionName: xmlSecNssKeyDataDsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataDsaGetSize
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataDsaDebugXmlDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1020,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1021,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1023,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1025,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1025,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1029,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1031,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1031,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/pkikeys.c:1035,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1037,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1037,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1047,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1049,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1050,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1055,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1057,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1058,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1063,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1065,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1066,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1073,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1075,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1076,1
    - Dst: PK11_ImportPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1081,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1083,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1084,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:1088,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1090,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1091,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1095,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1097,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1098,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1109,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1112,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1115,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:1118,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 85
    argCount: 2
    argNames:
    - id
    - dsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueDsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1010
    functionDepth: 3
    functionLinenumber: 1010
    functionLinenumberEnd: 1121
    functionName: xmlSecNssKeyDataDsaRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - PK11_ImportPublicKey
    - SECKEY_DestroyPublicKey
    - xmlSecInternalError
    - xmlSecNssGetBigNumValue
    - xmlSecAssert2
    - xmlSecNssError2
    - xmlSecKeyDataDestroy
    - PK11_FreeSlot
    - PORT_FreeArena
    - PK11_GetBestSlot
    - xmlSecNssError
    - xmlSecKeyDataKlassGetName
    - xmlSecNssPKIKeyDataAdoptKey
    - PORT_ArenaZAlloc
    - xmlSecKeyDataGetName
    - PORT_NewArena
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecNssKeyDataDsaRead(xmlSecKeyDataId id, xmlSecKeyValueDsaPtr
      dsaValue)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1130,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1131,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1132,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1132,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1133,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/pkikeys.c:1134,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1139,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1139,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1142,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1144,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1145,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1150,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1152,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1153,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1158,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1160,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1161,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1168,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1170,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1171,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 4
    argNames:
    - id
    - data
    - dsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueDsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1123
    functionDepth: 4
    functionLinenumber: 1123
    functionLinenumberEnd: 1177
    functionName: xmlSecNssKeyDataDsaWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - SECKEY_GetPublicKeyType
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecNssSetBigNumValue
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataDsaWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr
      data,\n                         xmlSecKeyValueDsaPtr dsaValue,\n                         int
      writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1300
    functionDepth: 0
    functionLinenumber: 1300
    functionLinenumberEnd: 1303
    functionName: xmlSecNssKeyDataRsaGetKlass
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataRsaGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1307,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1307,1
    - Dst: xmlSecNssPKIKeyDataInitialize
      Src: /src/xmlsec/src/nss/pkikeys.c:1309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1305
    functionDepth: 2
    functionLinenumber: 1305
    functionLinenumberEnd: 1310
    functionName: xmlSecNssKeyDataRsaInitialize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataRsaInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1314,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1315,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1315,1
    - Dst: xmlSecNssPKIKeyDataDuplicate
      Src: /src/xmlsec/src/nss/pkikeys.c:1317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1318
      start: 1312
    functionDepth: 4
    functionLinenumber: 1312
    functionLinenumberEnd: 1318
    functionName: xmlSecNssKeyDataRsaDuplicate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssPKIKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataRsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1322,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1322,1
    - Dst: xmlSecNssPKIKeyDataFinalize
      Src: /src/xmlsec/src/nss/pkikeys.c:1324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1320
    functionDepth: 2
    functionLinenumber: 1320
    functionLinenumberEnd: 1325
    functionName: xmlSecNssKeyDataRsaFinalize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecNssPKIKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataRsaFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1330,1
    - Dst: xmlSecKeyDataRsaXmlRead
      Src: /src/xmlsec/src/nss/pkikeys.c:1331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1327
    functionDepth: 3
    functionLinenumber: 1327
    functionLinenumberEnd: 1333
    functionName: xmlSecNssKeyDataRsaXmlRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataRsaXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                          xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1338,1
    - Dst: xmlSecKeyDataRsaXmlWrite
      Src: /src/xmlsec/src/nss/pkikeys.c:1339,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1342
      start: 1335
    functionDepth: 3
    functionLinenumber: 1335
    functionLinenumberEnd: 1342
    functionName: xmlSecNssKeyDataRsaXmlWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataRsaXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                           xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1348,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1348,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1356,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1344
    functionDepth: 1
    functionLinenumber: 1344
    functionLinenumberEnd: 1358
    functionName: xmlSecNssKeyDataRsaGetType
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECKEY_GetPublicKeyType
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecNssKeyDataRsaGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1364,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1364,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1366,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1367,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1368,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1369,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1369,1
    - Dst: SECKEY_PublicKeyStrength
      Src: /src/xmlsec/src/nss/pkikeys.c:1371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1360
    functionDepth: 1
    functionLinenumber: 1360
    functionLinenumberEnd: 1372
    functionName: xmlSecNssKeyDataRsaGetSize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_GetPublicKeyType
    - SECKEY_PublicKeyStrength
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssKeyDataRsaGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1376,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1376,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1377,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:1379,1
    - Dst: xmlSecNssKeyDataRsaGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1374
    functionDepth: 2
    functionLinenumber: 1374
    functionLinenumberEnd: 1381
    functionName: xmlSecNssKeyDataRsaDebugDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecNssKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataRsaDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1385,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1385,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1386,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:1388,1
    - Dst: xmlSecNssKeyDataRsaGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1383
    functionDepth: 2
    functionLinenumber: 1383
    functionLinenumberEnd: 1390
    functionName: xmlSecNssKeyDataRsaDebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecNssKeyDataRsaGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1401,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1402,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1404,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1406,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1406,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1410,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1412,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1412,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/pkikeys.c:1416,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1419,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1419,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1427,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1429,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1430,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1435,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1437,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1438,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:1445,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1447,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1448,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1453,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1455,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1456,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:1457,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1468,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1471,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1474,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:1477,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 68
    argCount: 2
    argNames:
    - id
    - rsaValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueRsaPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1392
    functionDepth: 3
    functionLinenumber: 1392
    functionLinenumberEnd: 1480
    functionName: xmlSecNssKeyDataRsaRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_DestroyPublicKey
    - xmlSecInternalError
    - xmlSecNssGetBigNumValue
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - PK11_FreeSlot
    - PORT_FreeArena
    - PK11_GetBestSlot
    - xmlSecNssError
    - xmlSecKeyDataKlassGetName
    - xmlSecNssPKIKeyDataAdoptKey
    - PORT_ArenaZAlloc
    - PORT_NewArena
    - xmlSecKeyDataCreate
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecNssKeyDataRsaRead(xmlSecKeyDataId id, xmlSecKeyValueRsaPtr
      rsaValue)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1490,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1491,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1491,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1492,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/pkikeys.c:1493,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1497,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1498,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1498,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1501,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1503,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1504,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1509,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1511,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 4
    argNames:
    - id
    - data
    - rsaValue
    - writePrivateKey XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueRsaPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1482
    functionDepth: 4
    functionLinenumber: 1482
    functionLinenumberEnd: 1519
    functionName: xmlSecNssKeyDataRsaWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - SECKEY_GetPublicKeyType
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecNssSetBigNumValue
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataRsaWrite(xmlSecKeyDataId id,xmlSecKeyDataPtr data,\n
      \                        xmlSecKeyValueRsaPtr rsaValue,\n                         int
      writePrivateKey XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1530,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1531,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/pkikeys.c:1533,1
    - Dst: return
      Src: /src/xmlsec/src/nss/pkikeys.c:1533,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1533,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1536,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1538,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1538,1
    - Dst: PK11_Authenticate
      Src: /src/xmlsec/src/nss/pkikeys.c:1542,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1544,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1544,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/pkikeys.c:1545,1
    - Dst: PK11_GetTokenName
      Src: /src/xmlsec/src/nss/pkikeys.c:1545,1
    - Dst: PK11_GenerateKeyPair
      Src: /src/xmlsec/src/nss/pkikeys.c:1549,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1552,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1552,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1556,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1558,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1559,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1567,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1574,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1577,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 45
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1521
    functionDepth: 2
    functionLinenumber: 1521
    functionLinenumberEnd: 1580
    functionName: xmlSecNssKeyDataRsaGenerate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - PK11_Authenticate
    - SECKEY_DestroyPublicKey
    - xmlSecInternalError
    - PK11_GenerateKeyPair
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - xmlSecErrorsSafeString
    - xmlSecNssError2
    - PK11_GetTokenName
    - return
    - PK11_GetBestSlot
    - xmlSecNssError
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    - xmlSecNssPKIKeyDataAdoptKey
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - PK11_FreeSlot
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,
      xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1661
    functionName: xmlSecNsskeyDataEcGetKlass
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNsskeyDataEcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1665,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1665,1
    - Dst: xmlSecNssPKIKeyDataInitialize
      Src: /src/xmlsec/src/nss/pkikeys.c:1667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1663
    functionDepth: 2
    functionLinenumber: 1663
    functionLinenumberEnd: 1668
    functionName: xmlSecNssKeyDataEcInitialize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataInitialize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataEcInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1672,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1672,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1673,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1673,1
    - Dst: xmlSecNssPKIKeyDataDuplicate
      Src: /src/xmlsec/src/nss/pkikeys.c:1675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1670
    functionDepth: 4
    functionLinenumber: 1670
    functionLinenumberEnd: 1676
    functionName: xmlSecNssKeyDataEcDuplicate
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssPKIKeyDataDuplicate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataEcDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1680,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1680,1
    - Dst: xmlSecNssPKIKeyDataFinalize
      Src: /src/xmlsec/src/nss/pkikeys.c:1682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1683
      start: 1678
    functionDepth: 2
    functionLinenumber: 1678
    functionLinenumberEnd: 1683
    functionName: xmlSecNssKeyDataEcFinalize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecNssPKIKeyDataFinalize
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataEcFinalize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1689,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1689,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1691,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1692,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1697,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1697,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1685
    functionDepth: 1
    functionLinenumber: 1685
    functionLinenumberEnd: 1699
    functionName: xmlSecNssKeyDataEcGetType
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECKEY_GetPublicKeyType
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecNssKeyDataEcGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1705,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1705,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1707,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1708,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1709,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1710,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1710,1
    - Dst: SECKEY_SignatureLen
      Src: /src/xmlsec/src/nss/pkikeys.c:1712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1701
    functionDepth: 1
    functionLinenumber: 1701
    functionLinenumberEnd: 1713
    functionName: xmlSecNssKeyDataEcGetSize
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - SECKEY_SignatureLen
    - SECKEY_GetPublicKeyType
    - xmlSecAssert2
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssKeyDataEcGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1717,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1717,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1718,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:1720,1
    - Dst: xmlSecNssKeyDataEcGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1715
    functionDepth: 2
    functionLinenumber: 1715
    functionLinenumberEnd: 1722
    functionName: xmlSecNssKeyDataEcDebugDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecNssKeyDataEcGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataEcDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1726,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1726,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pkikeys.c:1727,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/pkikeys.c:1729,1
    - Dst: xmlSecNssKeyDataEcGetSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1724
    functionDepth: 2
    functionLinenumber: 1724
    functionLinenumberEnd: 1731
    functionName: xmlSecNssKeyDataEcDebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    - xmlSecNssKeyDataEcGetSize
    - xmlSecKeyDataCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataEcDebugXmlDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1736,1
    - Dst: xmlSecKeyDataEcXmlRead
      Src: /src/xmlsec/src/nss/pkikeys.c:1737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1733
    functionDepth: 3
    functionLinenumber: 1733
    functionLinenumberEnd: 1739
    functionName: xmlSecNssKeyDataEcXmlRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataEcXmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataEcXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                          xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1744,1
    - Dst: xmlSecKeyDataEcXmlWrite
      Src: /src/xmlsec/src/nss/pkikeys.c:1745,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/nss/pkikeys.c:1746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1748
      start: 1741
    functionDepth: 3
    functionLinenumber: 1741
    functionLinenumberEnd: 1748
    functionName: xmlSecNssKeyDataEcXmlWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataEcXmlWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataEcXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                               xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1773,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - curveOidTag
    argTypes:
    - SECOidTag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1769
    functionDepth: 1
    functionLinenumber: 1769
    functionLinenumberEnd: 1781
    functionName: xmlSecNssKeyDataEcGetOidFromOidTag
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecNssKeyDataEcGetOidFromOidTag(SECOidTag curveOidTag)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1787,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pkikeys.c:1790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - oid
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1783
    functionDepth: 1
    functionLinenumber: 1783
    functionLinenumberEnd: 1795
    functionName: xmlSecNssKeyDataEcGetOidTagFromOid
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlStrcmp
    linkageType: ''
    returnType: SECOidTag
    signature: SECOidTag xmlSecNssKeyDataEcGetOidTagFromOid(const xmlChar * oid)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1812,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1813,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1814,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1817,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1819,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1819,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1823,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1825,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1825,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/pkikeys.c:1829,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1831,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1831,1
    - Dst: xmlSecNssKeyDataEcGetOidTagFromOid
      Src: /src/xmlsec/src/nss/pkikeys.c:1840,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1842,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1842,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/pkikeys.c:1843,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/pkikeys.c:1846,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1848,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1848,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/pkikeys.c:1849,1
    - Dst: SECITEM_AllocItem
      Src: /src/xmlsec/src/nss/pkikeys.c:1852,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1853,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1853,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_BYTE
      Src: /src/xmlsec/src/nss/pkikeys.c:1858,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1858,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nss/pkikeys.c:1859,1
    - Dst: SECITEM_CopyItem
      Src: /src/xmlsec/src/nss/pkikeys.c:1861,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1863,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1863,1
    - Dst: xmlSecNssGetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1868,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1870,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1870,1
    - Dst: PK11_ImportPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1875,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pkikeys.c:1877,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1877,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/pkikeys.c:1881,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1883,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1883,1
    - Dst: xmlSecNssPKIKeyDataAdoptKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1887,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1889,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1889,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/pkikeys.c:1900,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/pkikeys.c:1903,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pkikeys.c:1906,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/pkikeys.c:1909,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 93
    argCount: 2
    argNames:
    - id
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1798
    functionDepth: 3
    functionLinenumber: 1798
    functionLinenumberEnd: 1912
    functionName: xmlSecNssKeyDataEcRead
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - PK11_ImportPublicKey
    - xmlSecNssKeyDataEcGetOidTagFromOid
    - PK11_GetBestSlot
    - xmlSecKeyDataKlassGetName
    - PORT_ArenaZAlloc
    - SECITEM_AllocItem
    - SECKEY_DestroyPublicKey
    - xmlSecErrorsSafeString
    - xmlSecKeyDataDestroy
    - SECOID_FindOIDByTag
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_UINT_TO_BYTE
    - xmlSecKeyDataCreate
    - xmlSecInternalError
    - xmlSecNssGetBigNumValue
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecNssPKIKeyDataAdoptKey
    - xmlSecNssError2
    - PORT_FreeArena
    - xmlSecKeyDataGetName
    - memcpy
    - PORT_NewArena
    - PK11_FreeSlot
    - SECITEM_CopyItem
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecNssKeyDataEcRead(xmlSecKeyDataId id, xmlSecKeyValueEcPtr
      ecValue)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1921,1
    - Dst: SECOID_FindOID
      Src: /src/xmlsec/src/nss/pkikeys.c:1933,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - params
    argTypes:
    - SECKEYECParams*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1938
      start: 1915
    functionDepth: 1
    functionLinenumber: 1915
    functionLinenumberEnd: 1938
    functionName: xmlSecNssKeyDataEcGetOidTag
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECOID_FindOID
    linkageType: ''
    returnType: SECOidTag
    signature: SECOidTag xmlSecNssKeyDataEcGetOidTag(const SECKEYECParams *params)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1948,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1949,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1950,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/pkikeys.c:1950,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1951,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1952,1
    - Dst: xmlSecNssPKIKeyDataGetCtx
      Src: /src/xmlsec/src/nss/pkikeys.c:1954,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1955,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1956,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pkikeys.c:1957,1
    - Dst: SECKEY_GetPublicKeyType
      Src: /src/xmlsec/src/nss/pkikeys.c:1957,1
    - Dst: xmlSecNssKeyDataEcGetOidTag
      Src: /src/xmlsec/src/nss/pkikeys.c:1960,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1962,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1962,1
    - Dst: xmlSecNssKeyDataEcGetOidFromOidTag
      Src: /src/xmlsec/src/nss/pkikeys.c:1965,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/pkikeys.c:1967,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1967,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/nss/pkikeys.c:1971,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/nss/pkikeys.c:1973,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1973,1
    - Dst: xmlSecNssSetBigNumValue
      Src: /src/xmlsec/src/nss/pkikeys.c:1978,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pkikeys.c:1980,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/pkikeys.c:1980,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - id
    - data
    - ecValue
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyDataPtr
    - xmlSecKeyValueEcPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1986
      start: 1941
    functionDepth: 4
    functionLinenumber: 1941
    functionLinenumberEnd: 1986
    functionName: xmlSecNssKeyDataEcWrite
    functionSourceFile: /src/xmlsec/src/nss/pkikeys.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlSecInternalError
    - SECKEY_GetPublicKeyType
    - xmlSecNssKeyDataEcGetOidFromOidTag
    - xmlSecAssert2
    - xmlSecNssError2
    - xmlSecNssKeyDataEcGetOidTag
    - xmlSecNssPKIKeyDataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataKlassGetName
    - xmlSecStrdupError
    - xmlSecNssSetBigNumValue
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataEcWrite(xmlSecKeyDataId id, xmlSecKeyDataPtr data,
      xmlSecKeyValueEcPtr ecValue)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:84,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:90,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 102
    functionName: xmlSecNssKeyTransportCheckId
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportCheckId(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:111,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:111,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:112,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:112,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:114,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:115,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/keytrans.c:118,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/keytrans.c:143,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/nss/keytrans.c:148,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:150,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:151,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 157
    functionName: xmlSecNssKeyTransportInitialize
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssKeyTransportGetCtx
    - xmlSecBufferInitialize
    - xmlSecTransformGetName
    - xmlSecNssKeyTransportCheckId
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportInitialize(xmlSecTransformPtr transform)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/keytrans.c:163,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:163,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/keytrans.c:164,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:164,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:166,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/keytrans.c:167,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/keytrans.c:170,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/keytrans.c:175,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/nss/keytrans.c:180,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:185,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 159
    functionDepth: 2
    functionLinenumber: 159
    functionLinenumberEnd: 187
    functionName: xmlSecNssKeyTransportFinalize
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - SECKEY_DestroyPublicKey
    - xmlSecTransformCheckSize
    - SECKEY_DestroyPrivateKey
    - xmlSecNssKeyTransportGetCtx
    - xmlSecAssert
    - xmlSecBufferDestroy
    - xmlSecBufferFinalize
    - xmlSecNssKeyTransportCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyTransportFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:193,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:194,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:196,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 211
    functionName: xmlSecNssKeyTransportSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssKeyTransportGetCtx
    - xmlSecNssKeyTransportCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:220,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:221,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:223,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:225,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:227,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:227,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:230,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:230,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/keytrans.c:232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:234,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:234,1
    - Dst: xmlSecNssPKIKeyDataGetPubKey
      Src: /src/xmlsec/src/nss/keytrans.c:239,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:241,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/keytrans.c:241,1
    - Dst: xmlSecNssPKIKeyDataGetPrivKey
      Src: /src/xmlsec/src/nss/keytrans.c:246,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:248,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/keytrans.c:248,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 256
    functionName: xmlSecNssKeyTransportSetKey
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecNssPKIKeyDataGetPubKey
    - xmlSecAssert2
    - xmlSecNssKeyTransportGetCtx
    - xmlSecNssPKIKeyDataGetPrivKey
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - xmlSecKeyDataGetName
    - xmlSecNssKeyTransportCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:263,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:264,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:265,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:266,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:269,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/nss/keytrans.c:272,1
    - Dst: SECKEY_PublicKeyStrength
      Src: /src/xmlsec/src/nss/keytrans.c:277,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:279,1
    - Dst: PK11_SignatureLen
      Src: /src/xmlsec/src/nss/keytrans.c:285,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:287,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/keytrans.c:290,1
    - Dst: return
      Src: /src/xmlsec/src/nss/keytrans.c:290,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/keytrans.c:292,1
    - Dst: xmlSecBufferCreate
      Src: /src/xmlsec/src/nss/keytrans.c:297,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:299,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/keytrans.c:305,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:305,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:305,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:306,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:307,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/keytrans.c:311,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:311,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:312,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:313,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - transformCtx
    argTypes:
    - xmlSecNssKeyTransportCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 258
    functionDepth: 3
    functionLinenumber: 258
    functionLinenumberEnd: 318
    functionName: xmlSecNssKeyTransportCtxInit
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferCreate
    - xmlSecBufferRemoveHead
    - SECKEY_PublicKeyStrength
    - xmlSecAssert2
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecInternalError2
    - xmlSecBufferSetData
    - return
    - xmlSecBufferGetData
    - xmlSecBufferDestroy
    - xmlSecNssError
    - PK11_SignatureLen
    - xmlSecBufferGetSize
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyTransportCtxInit(xmlSecNssKeyTransportCtxPtr ctx,
      xmlSecBufferPtr in, xmlSecBufferPtr out,\n                             int encrypt,
      xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:324,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:325,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:326,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:327,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:328,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:330,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/nss/keytrans.c:333,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:333,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:333,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:334,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:335,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/keytrans.c:339,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:339,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:340,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - transformCtx
    argTypes:
    - xmlSecNssKeyTransportCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 320
    functionDepth: 3
    functionLinenumber: 320
    functionLinenumberEnd: 345
    functionName: xmlSecNssKeyTransportCtxUpdate
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyTransportCtxUpdate(xmlSecNssKeyTransportCtxPtr ctx,
      xmlSecBufferPtr  in, xmlSecBufferPtr out,\n                               int
      encrypt, xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:353,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:358,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:360,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_ULONG
      Src: /src/xmlsec/src/nss/keytrans.c:361,1
    - Dst: return
      Src: /src/xmlsec/src/nss/keytrans.c:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - oaepParams
    argTypes:
    - xmlSecNssKeyTransportCtxPtr
    - CK_RSA_PKCS_OAEP_PARAMS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 364
    functionName: xmlSecNssKeyTransportSetOaepParams
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportSetOaepParams(xmlSecNssKeyTransportCtxPtr
      ctx, CK_RSA_PKCS_OAEP_PARAMS* oaepParams)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:373,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:375,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/keytrans.c:378,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:380,1
    - Dst: PK11_ImportPublicKey
      Src: /src/xmlsec/src/nss/keytrans.c:384,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:386,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/keytrans.c:387,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/keytrans.c:393,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:401,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/keytrans.c:402,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/keytrans.c:406,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - ctx
    - oriskv
    argTypes:
    - xmlSecNssKeyTransportCtxPtr
    - SECItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 408
    functionName: xmlSecNssKeyTransportLoadSymKeyUsingPublicKeySlot
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - PK11_ImportPublicKey
    - xmlSecAssert2
    - PK11_GetBestSlot
    - xmlSecNssError
    - PK11_ImportSymKey
    - PK11_FreeSlot
    linkageType: ''
    returnType: PK11SymKey
    signature: 'PK11SymKey *

      xmlSecNssKeyTransportLoadSymKeyUsingPublicKeySlot(xmlSecNssKeyTransportCtxPtr
      ctx, SECItem* oriskv)'
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:421,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:422,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:423,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:424,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:425,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:426,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:428,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/nss/keytrans.c:431,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:431,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:431,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:432,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:433,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:436,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/keytrans.c:438,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:438,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:439,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:440,1
    - Dst: SECKEY_PublicKeyStrength
      Src: /src/xmlsec/src/nss/keytrans.c:447,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:449,1
    - Dst: PK11_SignatureLen
      Src: /src/xmlsec/src/nss/keytrans.c:455,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:457,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/keytrans.c:460,1
    - Dst: return
      Src: /src/xmlsec/src/nss/keytrans.c:460,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/keytrans.c:462,1
    - Dst: xmlSecBufferCreate
      Src: /src/xmlsec/src/nss/keytrans.c:467,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:469,1
    - Dst: xmlSecBufferGetMaxSize
      Src: /src/xmlsec/src/nss/keytrans.c:472,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:476,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/keytrans.c:477,1
    - Dst: xmlSecNssKeyTransportLoadSymKeyUsingPublicKeySlot
      Src: /src/xmlsec/src/nss/keytrans.c:483,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:485,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:490,1
    - Dst: PK11_PubWrapSymKey
      Src: /src/xmlsec/src/nss/keytrans.c:494,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:496,1
    - Dst: xmlSecNssKeyTransportSetOaepParams
      Src: /src/xmlsec/src/nss/keytrans.c:507,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:509,1
    - Dst: PK11_PubWrapSymKeyWithMechanism
      Src: /src/xmlsec/src/nss/keytrans.c:512,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:514,1
    - Dst: xmlSecInvalidTypeError
      Src: /src/xmlsec/src/nss/keytrans.c:520,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/keytrans.c:524,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:525,1
    - Dst: PK11_PubUnwrapSymKey
      Src: /src/xmlsec/src/nss/keytrans.c:534,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:536,1
    - Dst: xmlSecNssKeyTransportSetOaepParams
      Src: /src/xmlsec/src/nss/keytrans.c:547,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:549,1
    - Dst: PK11_PubUnwrapSymKeyWithMechanism
      Src: /src/xmlsec/src/nss/keytrans.c:553,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:555,1
    - Dst: xmlSecInvalidTypeError
      Src: /src/xmlsec/src/nss/keytrans.c:561,1
    - Dst: PK11_ExtractKeyValue
      Src: /src/xmlsec/src/nss/keytrans.c:566,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:567,1
    - Dst: PK11_GetKeyData
      Src: /src/xmlsec/src/nss/keytrans.c:571,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keytrans.c:573,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/keytrans.c:577,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:578,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/nss/keytrans.c:585,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/keytrans.c:585,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:585,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/keytrans.c:586,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:587,1
    - Dst: xmlSecBufferDestroy
      Src: /src/xmlsec/src/nss/keytrans.c:596,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/keytrans.c:598,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 144
    argCount: 5
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - transformCtx
    argTypes:
    - xmlSecNssKeyTransportCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 410
    functionDepth: 3
    functionLinenumber: 410
    functionLinenumberEnd: 601
    functionName: xmlSecNssKeyTransportCtxFinal
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecNssKeyTransportSetOaepParams
    - PK11_PubWrapSymKeyWithMechanism
    - return
    - PK11_PubUnwrapSymKeyWithMechanism
    - xmlSecBufferCreate
    - PK11_PubWrapSymKey
    - PK11_GetKeyData
    - xmlSecInvalidTypeError
    - xmlSecBufferSetData
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_ExtractKeyValue
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - xmlSecBufferDestroy
    - PK11_FreeSymKey
    - xmlSecBufferGetMaxSize
    - xmlSecNssKeyTransportLoadSymKeyUsingPublicKeySlot
    - xmlSecOtherError
    - SECKEY_PublicKeyStrength
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - PK11_SignatureLen
    - PK11_PubUnwrapSymKey
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyTransportCtxFinal(xmlSecNssKeyTransportCtxPtr ctx,
      xmlSecBufferPtr in, xmlSecBufferPtr out,\n                              int
      encrypt, xmlSecTransformCtxPtr transformCtx)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:610,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:610,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:611,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:611,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:612,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:613,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:615,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:617,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:618,1
    - Dst: xmlSecNssKeyTransportCtxInit
      Src: /src/xmlsec/src/nss/keytrans.c:632,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:634,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:635,1
    - Dst: xmlSecInvalidTransfromStatusError2
      Src: /src/xmlsec/src/nss/keytrans.c:641,1
    - Dst: xmlSecNssKeyTransportCtxUpdate
      Src: /src/xmlsec/src/nss/keytrans.c:647,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:649,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:650,1
    - Dst: xmlSecNssKeyTransportCtxFinal
      Src: /src/xmlsec/src/nss/keytrans.c:656,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:658,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:659,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/keytrans.c:665,1
    - Dst: xmlSecInvalidTransfromStatusError2
      Src: /src/xmlsec/src/nss/keytrans.c:666,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/keytrans.c:671,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 603
    functionDepth: 4
    functionLinenumber: 603
    functionLinenumberEnd: 676
    functionName: xmlSecNssKeyTransportExecute
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecNssKeyTransportCtxInit
    - xmlSecAssert2
    - xmlSecInvalidTransfromStatusError2
    - xmlSecNssKeyTransportGetCtx
    - xmlSecInvalidTransfromStatusError
    - xmlSecNssKeyTransportCtxFinal
    - xmlSecNssKeyTransportCtxUpdate
    - xmlSecBufferGetSize
    - xmlSecTransformGetName
    - xmlSecNssKeyTransportCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyTransportExecute(xmlSecTransformPtr transform, int
      last, xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 716
    functionDepth: 0
    functionLinenumber: 716
    functionLinenumberEnd: 719
    functionName: xmlSecNssTransformRsaPkcs1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPkcs1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 765
    functionName: xmlSecNssTransformRsaOaepGetKlass
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaOaepGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 801
    functionDepth: 0
    functionLinenumber: 801
    functionLinenumberEnd: 804
    functionName: xmlSecNssTransformRsaOaepEnc11GetKlass
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaOaepEnc11GetKlass(void)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:813,1
    - Dst: xmlSecNssKeyTransportCheckId
      Src: /src/xmlsec/src/nss/keytrans.c:813,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:814,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/keytrans.c:814,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:815,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/keytrans.c:816,1
    - Dst: xmlSecNssKeyTransportGetCtx
      Src: /src/xmlsec/src/nss/keytrans.c:818,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keytrans.c:819,1
    - Dst: xmlSecTransformRsaOaepParamsInitialize
      Src: /src/xmlsec/src/nss/keytrans.c:821,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:823,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:824,1
    - Dst: xmlSecTransformRsaOaepParamsRead
      Src: /src/xmlsec/src/nss/keytrans.c:828,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keytrans.c:830,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/keytrans.c:831,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:832,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/keytrans.c:841,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:842,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:848,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:854,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:860,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:866,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:872,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/nss/keytrans.c:877,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/keytrans.c:879,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:880,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/keytrans.c:889,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:890,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:895,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:901,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:907,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:913,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/keytrans.c:919,1
    - Dst: xmlSecInvalidTransfromError2
      Src: /src/xmlsec/src/nss/keytrans.c:924,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/keytrans.c:926,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:927,1
    - Dst: xmlSecBufferSwap
      Src: /src/xmlsec/src/nss/keytrans.c:932,1
    - Dst: xmlSecTransformRsaOaepParamsFinalize
      Src: /src/xmlsec/src/nss/keytrans.c:935,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 71
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 806
    functionDepth: 12
    functionLinenumber: 806
    functionLinenumberEnd: 937
    functionName: xmlSecNssRsaOaepNodeRead
    functionSourceFile: /src/xmlsec/src/nss/keytrans.c
    functionUses: 0
    functionsReached:
    - xmlSecOtherError
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidTransfromError2
    - xmlSecErrorsSafeString
    - xmlSecNssKeyTransportGetCtx
    - xmlSecBufferSwap
    - xmlSecTransformRsaOaepParamsFinalize
    - xmlSecTransformRsaOaepParamsInitialize
    - xmlStrcmp
    - xmlSecTransformGetName
    - xmlSecNssKeyTransportCheckId
    - xmlSecTransformRsaOaepParamsRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                         xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:89,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:90,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:91,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:93,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:94,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:96,1
    - Dst: PK11_GetIVLength
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:98,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:99,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:100,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:100,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:101,1
    - Dst: PK11_GenerateRandom
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:105,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:107,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:112,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:114,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:121,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:126,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:126,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:127,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:127,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:130,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:132,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:138,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:140,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:140,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:142,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_UINT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:144,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:144,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:146,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:148,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:152,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:155,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:156,1
    - Dst: PK11_CreateContextBySymKey
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:160,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:164,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:165,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:166,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:171,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:172,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 64
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecNssCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 174
    functionName: xmlSecNssCbcCipherCtxInit
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - return
    - PK11_GetBestSlot
    - PK11_GenerateRandom
    - xmlSecNssError
    - PK11_ImportSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecBufferRemoveHead
    - XMLSEC_SAFE_CAST_INT_TO_UINT
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecBufferAppend
    - PK11_FreeSymKey
    - PK11_GetIVLength
    - memset
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecNssError2
    - xmlSecBufferGetSize
    - PK11_CreateContextBySymKey
    - memcpy
    - PK11_FreeSlot
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssCbcCipherCtxInit(xmlSecNssCbcCipherCtxPtr ctx,\n    xmlSecBufferPtr
      in, xmlSecBufferPtr out,\n    int encrypt, const xmlChar* cipherName,\n    xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:190,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:191,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:192,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:193,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:194,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:195,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:196,1
    - Dst: PK11_GetBlockSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:199,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:200,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:200,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:202,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:203,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:219,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:221,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:226,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:227,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:228,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:228,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:229,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:229,1
    - Dst: PK11_CipherOp
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:230,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:232,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:235,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:235,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:236,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:239,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:241,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:247,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 49
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecNssCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 254
    functionName: xmlSecNssCbcCipherCtxUpdate
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecBufferRemoveHead
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - xmlSecInternalError2
    - PK11_CipherOp
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - xmlSecBufferSetMaxSize
    - xmlSecNssError
    - PK11_GetBlockSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssCbcCipherCtxUpdate(xmlSecNssCbcCipherCtxPtr ctx,\n    xmlSecBufferPtr
      in, xmlSecBufferPtr out,\n    int encrypt, const xmlChar* cipherName,\n    xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:276,1
    - Dst: PK11_GetBlockSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:279,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:280,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:280,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:282,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:286,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:289,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:291,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:295,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:302,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:302,1
    - Dst: PK11_GenerateRandom
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:303,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:310,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_BYTE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:311,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:311,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:315,1
    - Dst: xmlSecBufferSetMaxSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:321,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:323,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:328,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:329,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:330,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:330,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:331,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:331,1
    - Dst: PK11_CipherOp
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:333,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:335,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:338,1
    - Dst: return
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:339,1
    - Dst: PK11_Finalize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:341,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:343,1
    - Dst: xmlSecInvalidSizeLessThanError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:353,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:361,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:363,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:369,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:371,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 78
    argCount: 6
    argNames:
    - ctx
    - in
    - out
    - encrypt
    - cipherName
    - transformCtx
    argTypes:
    - xmlSecNssCbcCipherCtxPtr
    - xmlSecBufferPtr
    - xmlSecBufferPtr
    - int
    - xmlChar*
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 377
    functionName: xmlSecNssCbcCipherCtxFinal
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
    - return
    - PK11_GetBlockSize
    - PK11_GenerateRandom
    - xmlSecInvalidSizeError
    - PK11_Finalize
    - xmlSecBufferSetMaxSize
    - xmlSecNssError
    - xmlSecBufferRemoveHead
    - xmlSecAssert2
    - xmlSecInternalError2
    - PK11_CipherOp
    - xmlSecBufferGetData
    - xmlSecInvalidSizeLessThanError
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecNssError2
    - xmlSecBufferSetSize
    - xmlSecBufferGetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssCbcCipherCtxFinal(xmlSecNssCbcCipherCtxPtr ctx,\n    xmlSecBufferPtr
      in, xmlSecBufferPtr out,\n    int encrypt, const xmlChar* cipherName,\n    xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:406,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:412,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:413,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:414,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 421
    functionName: xmlSecNssCbcCipherCheckId
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCbcCipherCheckId(xmlSecTransformPtr transform)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:427,1
    - Dst: xmlSecNssCbcCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:428,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:428,1
    - Dst: xmlSecNssCbcCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:431,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:433,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:460,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 423
    functionDepth: 2
    functionLinenumber: 423
    functionLinenumberEnd: 465
    functionName: xmlSecNssCbcCipherInitialize
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecNssCbcCipherCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssCbcCipherGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCbcCipherInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:471,1
    - Dst: xmlSecNssCbcCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:471,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:472,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:472,1
    - Dst: xmlSecNssCbcCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:474,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:475,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:478,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 482
    functionName: xmlSecNssCbcCipherFinalize
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecNssCbcCipherCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecNssCbcCipherGetCtx
    - PK11_DestroyContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssCbcCipherFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:488,1
    - Dst: xmlSecNssCbcCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:488,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:489,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:490,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:490,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:491,1
    - Dst: xmlSecNssCbcCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:493,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:494,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 484
    functionDepth: 2
    functionLinenumber: 484
    functionLinenumberEnd: 506
    functionName: xmlSecNssCbcCipherSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssCbcCipherGetCtx
    - xmlSecTransformCheckSize
    - xmlSecNssCbcCipherCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCbcCipherSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:513,1
    - Dst: xmlSecNssCbcCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:513,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:514,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:515,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:515,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:516,1
    - Dst: xmlSecNssCbcCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:518,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:519,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:520,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:521,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:522,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:523,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:526,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:528,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:529,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:531,1
    - Dst: xmlSecInvalidKeyDataSizeError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:532,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:532,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:533,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:537,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:537,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:538,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:538,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 508
    functionDepth: 2
    functionLinenumber: 508
    functionLinenumberEnd: 542
    functionName: xmlSecNssCbcCipherSetKey
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecNssCbcCipherCheckId
    - xmlSecInvalidKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecNssCbcCipherGetCtx
    - memcpy
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCbcCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:550,1
    - Dst: xmlSecNssCbcCipherCheckId
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:551,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:552,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:552,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:553,1
    - Dst: xmlSecNssCbcCipherGetCtx
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:559,1
    - Dst: xmlSecNssCbcCipherCtxInit
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:567,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:569,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:571,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:572,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:577,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:578,1
    - Dst: xmlSecNssCbcCipherCtxUpdate
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:583,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:585,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:587,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:588,1
    - Dst: xmlSecNssCbcCipherCtxFinal
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:594,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:596,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:598,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:599,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:606,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:606,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:609,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/ciphers_cbc.c:611,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 544
    functionDepth: 4
    functionLinenumber: 544
    functionLinenumberEnd: 616
    functionName: xmlSecNssCbcCipherExecute
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached:
    - xmlSecNssCbcCipherCheckId
    - xmlSecNssCbcCipherCtxFinal
    - xmlSecInternalError
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssCbcCipherCtxUpdate
    - xmlSecTransformGetName
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecNssCbcCipherCtxInit
    - xmlSecNssCbcCipherGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCbcCipherExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 662
    functionName: xmlSecNssTransformAes128CbcGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes128CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: xmlSecNssTransformAes192CbcGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes192CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 740
    functionName: xmlSecNssTransformAes256CbcGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformAes256CbcGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 779
    functionDepth: 0
    functionLinenumber: 779
    functionLinenumberEnd: 782
    functionName: xmlSecNssTransformDes3CbcGetKlass
    functionSourceFile: /src/xmlsec/src/nss/ciphers_cbc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformDes3CbcGetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 85
    functionName: xmlSecNssPbkdf2CheckId
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2CheckId(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:92,1
    - Dst: xmlSecNssPbkdf2CheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:92,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:93,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:93,1
    - Dst: xmlSecNssPbkdf2GetCtx
      Src: /src/xmlsec/src/nss/pbkdf2.c:95,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:96,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/pbkdf2.c:99,1
    - Dst: xmlSecBufferInitialize
      Src: /src/xmlsec/src/nss/pbkdf2.c:101,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:103,1
    - Dst: xmlSecNssPbkdf2Finalize
      Src: /src/xmlsec/src/nss/pbkdf2.c:104,1
    - Dst: xmlSecTransformPbkdf2ParamsInitialize
      Src: /src/xmlsec/src/nss/pbkdf2.c:107,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:109,1
    - Dst: xmlSecNssPbkdf2Finalize
      Src: /src/xmlsec/src/nss/pbkdf2.c:110,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 87
    functionDepth: 2
    functionLinenumber: 87
    functionLinenumberEnd: 116
    functionName: xmlSecNssPbkdf2Initialize
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssPbkdf2CheckId
    - xmlSecTransformPbkdf2ParamsInitialize
    - xmlSecBufferInitialize
    - xmlSecNssPbkdf2Finalize
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pbkdf2.c:122,1
    - Dst: xmlSecNssPbkdf2CheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:122,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pbkdf2.c:123,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:123,1
    - Dst: xmlSecNssPbkdf2GetCtx
      Src: /src/xmlsec/src/nss/pbkdf2.c:125,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/pbkdf2.c:126,1
    - Dst: xmlSecBufferFinalize
      Src: /src/xmlsec/src/nss/pbkdf2.c:128,1
    - Dst: xmlSecTransformPbkdf2ParamsFinalize
      Src: /src/xmlsec/src/nss/pbkdf2.c:129,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/pbkdf2.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 132
    functionName: xmlSecNssPbkdf2Finalize
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 1
    functionsReached:
    - xmlSecNssPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecNssPbkdf2CheckId
    - xmlSecTransformPbkdf2ParamsFinalize
    - xmlSecAssert
    - xmlSecBufferFinalize
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssPbkdf2Finalize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:137,1
    - Dst: xmlSecNssPbkdf2CheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:137,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:138,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:138,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionName: xmlSecNssPbkdf2SetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssPbkdf2CheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:156,1
    - Dst: xmlSecNssPbkdf2CheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:158,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:158,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:159,1
    - Dst: xmlSecNssPbkdf2GetCtx
      Src: /src/xmlsec/src/nss/pbkdf2.c:161,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:162,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:163,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:163,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/pbkdf2.c:165,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:166,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/pbkdf2.c:168,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:169,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/pbkdf2.c:171,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:172,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/nss/pbkdf2.c:174,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/pbkdf2.c:174,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/pbkdf2.c:178,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:180,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/pbkdf2.c:180,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 147
    functionDepth: 3
    functionLinenumber: 147
    functionLinenumberEnd: 186
    functionName: xmlSecNssPbkdf2SetKey
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecNssPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssPbkdf2CheckId
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - xmlSecBufferGetSize
    - xmlSecKeyCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pbkdf2.c:194,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pbkdf2.c:196,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pbkdf2.c:198,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pbkdf2.c:200,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/pbkdf2.c:202,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/pbkdf2.c:205,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/pbkdf2.c:206,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 209
    functionName: xmlSecNssPbkdf2GetMacFromHref
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsSafeString
    - xmlStrcmp
    - xmlSecOtherError2
    linkageType: ''
    returnType: SECOidTag
    signature: SECOidTag xmlSecNssPbkdf2GetMacFromHref(const xmlChar* href)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:218,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/pbkdf2.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:219,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:220,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/pbkdf2.c:221,1
    - Dst: xmlSecNssPbkdf2GetCtx
      Src: /src/xmlsec/src/nss/pbkdf2.c:223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:224,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/nss/pbkdf2.c:227,1
    - Dst: xmlSecCheckNodeName
      Src: /src/xmlsec/src/nss/pbkdf2.c:228,1
    - Dst: xmlSecInvalidNodeError
      Src: /src/xmlsec/src/nss/pbkdf2.c:229,1
    - Dst: xmlSecTransformPbkdf2ParamsRead
      Src: /src/xmlsec/src/nss/pbkdf2.c:232,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:234,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/src/nss/pbkdf2.c:239,1
    - Dst: xmlSecUnexpectedNodeError
      Src: /src/xmlsec/src/nss/pbkdf2.c:241,1
    - Dst: xmlSecNssPbkdf2GetMacFromHref
      Src: /src/xmlsec/src/nss/pbkdf2.c:246,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:248,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/pbkdf2.c:248,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 211
    functionDepth: 12
    functionLinenumber: 211
    functionLinenumberEnd: 254
    functionName: xmlSecNssPbkdf2NodeRead
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecGetNextElementNode
    - xmlSecNssPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecCheckNodeName
    - xmlSecInternalError
    - xmlSecNssPbkdf2GetMacFromHref
    - xmlSecTransformPbkdf2ParamsRead
    - xmlSecInvalidNodeError
    - xmlSecTransformGetName
    - xmlSecUnexpectedNodeError
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssPbkdf2NodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                          xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:271,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:272,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:273,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:276,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/pbkdf2.c:277,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/pbkdf2.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:280,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:282,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/pbkdf2.c:283,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/pbkdf2.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:286,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/pbkdf2.c:288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:289,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/pbkdf2.c:291,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:292,1
    - Dst: PK11_CreatePBEV2AlgorithmID
      Src: /src/xmlsec/src/nss/pbkdf2.c:294,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pbkdf2.c:298,1
    - Dst: PK11_GetInternalSlot
      Src: /src/xmlsec/src/nss/pbkdf2.c:303,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pbkdf2.c:305,1
    - Dst: PK11_PBEKeyGen
      Src: /src/xmlsec/src/nss/pbkdf2.c:308,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pbkdf2.c:310,1
    - Dst: PK11_ExtractKeyValue
      Src: /src/xmlsec/src/nss/pbkdf2.c:315,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pbkdf2.c:317,1
    - Dst: PK11_GetKeyData
      Src: /src/xmlsec/src/nss/pbkdf2.c:321,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/pbkdf2.c:323,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/pbkdf2.c:327,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/pbkdf2.c:329,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/pbkdf2.c:339,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/pbkdf2.c:342,1
    - Dst: SECOID_DestroyAlgorithmID
      Src: /src/xmlsec/src/nss/pbkdf2.c:345,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 68
    argCount: 2
    argNames:
    - ctx
    - out
    argTypes:
    - xmlSecNssPbkdf2CtxPtr
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 256
    functionDepth: 3
    functionLinenumber: 256
    functionLinenumberEnd: 348
    functionName: xmlSecNssPbkdf2Derive
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - PK11_ExtractKeyValue
    - PK11_GetKeyData
    - xmlSecAssert2
    - xmlSecInternalError2
    - PK11_PBEKeyGen
    - SECOID_DestroyAlgorithmID
    - xmlSecBufferGetData
    - xmlSecBufferSetData
    - PK11_FreeSlot
    - xmlSecBufferGetSize
    - xmlSecNssError
    - PK11_FreeSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_CreatePBEV2AlgorithmID
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - PK11_GetInternalSlot
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2Derive(xmlSecNssPbkdf2CtxPtr ctx, xmlSecBufferPtr
      out)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:356,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/nss/pbkdf2.c:356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:357,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:358,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:359,1
    - Dst: xmlSecNssPbkdf2GetCtx
      Src: /src/xmlsec/src/nss/pbkdf2.c:364,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:365,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:366,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/pbkdf2.c:378,1
    - Dst: xmlSecInvalidSizeError
      Src: /src/xmlsec/src/nss/pbkdf2.c:382,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/pbkdf2.c:383,1
    - Dst: xmlSecNssPbkdf2Derive
      Src: /src/xmlsec/src/nss/pbkdf2.c:389,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/pbkdf2.c:391,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/pbkdf2.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/pbkdf2.c:400,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/pbkdf2.c:400,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/pbkdf2.c:402,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 350
    functionDepth: 4
    functionLinenumber: 350
    functionLinenumberEnd: 407
    functionName: xmlSecNssPbkdf2Execute
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssPbkdf2GetCtx
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInvalidSizeError
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecTransformIsValid
    - xmlSecNssPbkdf2Derive
    - xmlSecTransformGetName
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: int xmlSecNssPbkdf2Execute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionName: xmlSecNssTransformPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/nss/pbkdf2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: xmlSecNssTransformKWDes3GetKlass
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformKWDes3GetKlass(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:163,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:163,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:164,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:164,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:166,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:167,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/kw_des.c:168,1
    - Dst: xmlSecTransformKWDes3Initialize
      Src: /src/xmlsec/src/nss/kw_des.c:170,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:173,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_des.c:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 158
    functionDepth: 3
    functionLinenumber: 158
    functionLinenumberEnd: 177
    functionName: xmlSecNssKWDes3Initialize
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3Initialize
    - xmlSecTransformGetName
    - xmlSecNssKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWDes3Initialize(xmlSecTransformPtr transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_des.c:183,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:183,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_des.c:184,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:184,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:186,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/kw_des.c:187,1
    - Dst: xmlSecTransformKWDes3Finalize
      Src: /src/xmlsec/src/nss/kw_des.c:189,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/kw_des.c:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 191
    functionName: xmlSecNssKWDes3Finalize
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecTransformCheckSize
    - xmlSecAssert
    - xmlSecTransformKWDes3Finalize
    - xmlSecNssKWDes3GetCtx
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKWDes3Finalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:198,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:198,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:199,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:199,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:201,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:202,1
    - Dst: xmlSecTransformKWDes3SetKeyReq
      Src: /src/xmlsec/src/nss/kw_des.c:204,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:206,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_des.c:207,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 211
    functionName: xmlSecNssKWDes3SetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformKWDes3SetKeyReq
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformGetName
    - xmlSecNssKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWDes3SetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:218,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:218,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:219,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:219,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:222,1
    - Dst: xmlSecTransformKWDes3SetKey
      Src: /src/xmlsec/src/nss/kw_des.c:224,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:226,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_des.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 213
    functionDepth: 4
    functionLinenumber: 213
    functionLinenumberEnd: 230
    functionName: xmlSecNssKWDes3SetKey
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3SetKey
    - xmlSecTransformGetName
    - xmlSecNssKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:238,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:239,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:239,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/kw_des.c:240,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:243,1
    - Dst: xmlSecTransformKWDes3Execute
      Src: /src/xmlsec/src/nss/kw_des.c:244,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:246,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/kw_des.c:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 232
    functionDepth: 3
    functionLinenumber: 232
    functionLinenumberEnd: 250
    functionName: xmlSecNssKWDes3Execute
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformKWDes3Execute
    - xmlSecTransformGetName
    - xmlSecNssKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last,\n
      \                      xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/kw_des.c:266,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:267,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:268,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:269,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:270,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:271,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/kw_des.c:273,1
    - Dst: return
      Src: /src/xmlsec/src/nss/kw_des.c:273,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/kw_des.c:274,1
    - Dst: return
      Src: /src/xmlsec/src/nss/kw_des.c:274,1
    - Dst: PK11_CreateDigestContext
      Src: /src/xmlsec/src/nss/kw_des.c:277,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:279,1
    - Dst: PK11_DigestBegin
      Src: /src/xmlsec/src/nss/kw_des.c:283,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:285,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_des.c:286,1
    - Dst: PK11_DigestOp
      Src: /src/xmlsec/src/nss/kw_des.c:290,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:292,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_des.c:293,1
    - Dst: PK11_DigestFinal
      Src: /src/xmlsec/src/nss/kw_des.c:297,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:299,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_des.c:300,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_des.c:305,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 36
    argCount: 6
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 310
    functionName: xmlSecNssKWDes3Sha1
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - PK11_DigestFinal
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - PK11_CreateDigestContext
    - return
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_DigestBegin
    - PK11_DestroyContext
    - PK11_DigestOp
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3Sha1(xmlSecTransformPtr transform XMLSEC_ATTRIBUTE_UNUSED,\n
      \                   const xmlSecByte * in, xmlSecSize inSize,\n                    xmlSecByte
      * out, xmlSecSize outSize,\n                    xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/kw_des.c:319,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:320,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:321,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:322,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/kw_des.c:324,1
    - Dst: return
      Src: /src/xmlsec/src/nss/kw_des.c:324,1
    - Dst: PK11_GenerateRandom
      Src: /src/xmlsec/src/nss/kw_des.c:325,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 4
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 333
    functionName: xmlSecNssKWDes3GenerateRandom
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - return
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - PK11_GenerateRandom
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3GenerateRandom(xmlSecTransformPtr transform XMLSEC_ATTRIBUTE_UNUSED,\n
      \                             xmlSecByte * out, xmlSecSize outSize,\n                              xmlSecSize
      * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:344,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:344,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:345,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:345,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:346,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:347,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:348,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:350,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:352,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:355,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:356,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/kw_des.c:356,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:357,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/kw_des.c:357,1
    - Dst: xmlSecNssKWDes3Encrypt
      Src: /src/xmlsec/src/nss/kw_des.c:359,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/kw_des.c:359,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 335
    functionDepth: 2
    functionLinenumber: 335
    functionLinenumberEnd: 370
    functionName: xmlSecNssKWDes3BlockEncrypt
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecNssKWDes3Encrypt
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecNssKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3BlockEncrypt(xmlSecTransformPtr transform,\n                               const
      xmlSecByte * iv, xmlSecSize ivSize,\n                               const xmlSecByte
      * in, xmlSecSize inSize,\n                               xmlSecByte * out, xmlSecSize
      outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:381,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/kw_des.c:381,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:382,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/kw_des.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:385,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:386,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:387,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:388,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:389,1
    - Dst: xmlSecNssKWDes3GetCtx
      Src: /src/xmlsec/src/nss/kw_des.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:393,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/kw_des.c:393,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:394,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/kw_des.c:394,1
    - Dst: xmlSecNssKWDes3Encrypt
      Src: /src/xmlsec/src/nss/kw_des.c:396,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/kw_des.c:396,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/kw_des.c:402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 8
    argNames:
    - transform
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 372
    functionDepth: 2
    functionLinenumber: 372
    functionLinenumberEnd: 407
    functionName: xmlSecNssKWDes3BlockDecrypt
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecNssKWDes3Encrypt
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecBufferGetData
    - xmlSecBufferGetSize
    - xmlSecNssKWDes3GetCtx
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3BlockDecrypt(xmlSecTransformPtr transform,\n                               const
      xmlSecByte * iv, xmlSecSize ivSize,\n                               const xmlSecByte
      * in, xmlSecSize inSize,\n                               xmlSecByte * out, xmlSecSize
      outSize,\n                               xmlSecSize * outWritten)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:427,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:428,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:430,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:434,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/kw_des.c:435,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/kw_des.c:438,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:440,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/kw_des.c:445,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/kw_des.c:446,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:449,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/kw_des.c:454,1
    - Dst: PK11_ParamFromIV
      Src: /src/xmlsec/src/nss/kw_des.c:455,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:457,1
    - Dst: PK11_CreateContextBySymKey
      Src: /src/xmlsec/src/nss/kw_des.c:461,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:465,1
    - Dst: PK11_CipherOp
      Src: /src/xmlsec/src/nss/kw_des.c:472,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:474,1
    - Dst: PK11_Finalize
      Src: /src/xmlsec/src/nss/kw_des.c:478,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/kw_des.c:480,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/src/nss/kw_des.c:485,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/kw_des.c:490,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/kw_des.c:493,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/kw_des.c:496,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/kw_des.c:499,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 71
    argCount: 10
    argNames:
    - key
    - keySize
    - iv
    - ivSize
    - in
    - inSize
    - out
    - outSize
    - outWritten
    - enc
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecByte*
    - xmlSecSize
    - xmlSecSize*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 503
    functionName: xmlSecNssKWDes3Encrypt
    functionSourceFile: /src/xmlsec/src/nss/kw_des.c
    functionUses: 2
    functionsReached:
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecAssert2
    - PK11_CipherOp
    - PK11_Finalize
    - PK11_GetBestSlot
    - xmlSecNssError
    - PK11_ParamFromIV
    - PK11_FreeSymKey
    - PK11_CreateContextBySymKey
    - PK11_ImportSymKey
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - SECITEM_FreeItem
    - PK11_FreeSlot
    - PK11_DestroyContext
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,\n
      \                      const xmlSecByte *iv, xmlSecSize ivSize,\n                       const
      xmlSecByte *in, xmlSecSize inSize,\n                       xmlSecByte *out,
      xmlSecSize outSize,\n                       xmlSecSize * outWritten,\n                       int
      enc)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: NSS_InitReadWrite
      Src: /src/xmlsec/src/nss/app.c:87,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/app.c:89,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/app.c:91,1
    - Dst: NSS_NoDB_Init
      Src: /src/xmlsec/src/nss/app.c:95,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:97,1
    - Dst: PK11_ConfigurePKCS11
      Src: /src/xmlsec/src/nss/app.c:103,1
    - Dst: PORT_SetUCS2_ASCIIConversionFunction
      Src: /src/xmlsec/src/nss/app.c:110,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:111,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:112,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:113,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:114,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:115,1
    - Dst: SEC_PKCS12EnableCipher
      Src: /src/xmlsec/src/nss/app.c:116,1
    - Dst: SEC_PKCS12SetPreferredCipher
      Src: /src/xmlsec/src/nss/app.c:117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 120
    functionName: xmlSecNssAppInit
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - PK11_ConfigurePKCS11
    - SEC_PKCS12EnableCipher
    - PORT_SetUCS2_ASCIIConversionFunction
    - xmlSecErrorsSafeString
    - NSS_InitReadWrite
    - xmlSecNssError2
    - NSS_NoDB_Init
    - xmlSecNssError
    - SEC_PKCS12SetPreferredCipher
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppInit(const char* config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PK11_LogoutAll
      Src: /src/xmlsec/src/nss/app.c:137,1
    - Dst: NSS_Shutdown
      Src: /src/xmlsec/src/nss/app.c:138,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionName: xmlSecNssAppShutdown
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - PK11_LogoutAll
    - xmlSecNssError
    - NSS_Shutdown
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppShutdown(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:152,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/app.c:155,1
    - Dst: return
      Src: /src/xmlsec/src/nss/app.c:155,1
    - Dst: SECITEM_AllocItem
      Src: /src/xmlsec/src/nss/app.c:156,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:157,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:162,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nss/app.c:163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - contents
    - data
    - dataSize
    argTypes:
    - SECItem*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 167
    functionName: xmlSecNssAppCreateSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - memcpy
    - return
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - SECITEM_AllocItem
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppCreateSECItem(SECItem *contents, const xmlSecByte*
      data, xmlSecSize dataSize)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:178,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:179,1
    - Dst: PR_Open
      Src: /src/xmlsec/src/nss/app.c:181,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/app.c:183,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/app.c:184,1
    - Dst: PR_GetOpenFileInfo
      Src: /src/xmlsec/src/nss/app.c:188,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/app.c:190,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/app.c:191,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_UINT
      Src: /src/xmlsec/src/nss/app.c:194,1
    - Dst: SECITEM_AllocItem
      Src: /src/xmlsec/src/nss/app.c:197,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:198,1
    - Dst: PR_Read
      Src: /src/xmlsec/src/nss/app.c:202,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:204,1
    - Dst: PR_Close
      Src: /src/xmlsec/src/nss/app.c:211,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 2
    argNames:
    - contents
    - fn
    argTypes:
    - SECItem*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 215
    functionName: xmlSecNssAppReadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - PR_Close
    - XMLSEC_SAFE_CAST_INT_TO_UINT
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecNssError2
    - PR_Read
    - PR_GetOpenFileInfo
    - xmlSecNssError
    - PR_Open
    - SECITEM_FreeItem
    - SECITEM_AllocItem
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppReadSECItem(SECItem *contents, const char *fn)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:232,1
    - Dst: PORT_UCS2_UTF8Conversion
      Src: /src/xmlsec/src/nss/app.c:236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 7
    argNames:
    - toUnicode
    - inBuf
    - inBufLen
    - outBuf
    - maxOutBufLen
    - outBufLen
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - PRBool
    - unsigned char*
    - unsigned int
    - unsigned char*
    - unsigned int
    - unsigned int*
    - PRBool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 238
    functionName: xmlSecNssAppAscii2UCS2Conv
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - PORT_UCS2_UTF8Conversion
    - memset
    linkageType: ''
    returnType: PRBool
    signature: "PRBool xmlSecNssAppAscii2UCS2Conv(PRBool toUnicode,\n                           unsigned
      char *inBuf,\n                           unsigned int   inBufLen,\n                           unsigned
      char *outBuf,\n                           unsigned int   maxOutBufLen,\n                           unsigned
      int  *outBufLen,\n                           PRBool         swapBytes XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:251,1
    - Dst: CERT_MakeCANickname
      Src: /src/xmlsec/src/nss/app.c:255,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:257,1
    - Dst: PORT_ZNew
      Src: /src/xmlsec/src/nss/app.c:261,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:263,1
    - Dst: PORT_Free
      Src: /src/xmlsec/src/nss/app.c:264,1
    - Dst: PORT_Strlen
      Src: /src/xmlsec/src/nss/app.c:270,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - XMLSEC_ATTRIBUTE_UNUSED
    - cancel
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - SECItem*
    - PRBool*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 272
    functionName: xmlSecNssAppNicknameCollisionCallback
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - CERT_MakeCANickname
    - PORT_Free
    - PORT_ZNew
    - xmlSecNssError
    - PORT_Strlen
    linkageType: ''
    returnType: SECItem
    signature: "SECItem *\nxmlSecNssAppNicknameCollisionCallback(SECItem *old_nick
      XMLSEC_ATTRIBUTE_UNUSED,\n    PRBool *cancel, void *wincx XMLSEC_ATTRIBUTE_UNUSED\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:297,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/app.c:298,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:301,1
    - Dst: xmlSecNssAppReadSECItem
      Src: /src/xmlsec/src/nss/app.c:302,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:304,1
    - Dst: xmlSecNssAppKeyLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:308,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:310,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:311,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 6
    argNames:
    - filename
    - XMLSEC_ATTRIBUTE_UNUSED
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 288
    functionDepth: 2
    functionLinenumber: 288
    functionLinenumberEnd: 317
    functionName: xmlSecNssAppKeyLoadEx
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - UNREFERENCED_PARAMETER
    - xmlSecNssAppReadSECItem
    - xmlSecAssert2
    - xmlSecNssAppKeyLoadSECItem
    - SECITEM_FreeItem
    - memset
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppKeyLoadEx(const char *filename, xmlSecKeyDataType
      type XMLSEC_ATTRIBUTE_UNUSED, xmlSecKeyDataFormat format,\n    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:339,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:340,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:342,1
    - Dst: xmlSecNssAppCreateSECItem
      Src: /src/xmlsec/src/nss/app.c:343,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:345,1
    - Dst: xmlSecNssAppKeyLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:349,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:351,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:352,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - data
    - dataSize
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 332
    functionDepth: 2
    functionLinenumber: 332
    functionLinenumberEnd: 358
    functionName: xmlSecNssAppKeyLoadMemory
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppCreateSECItem
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssAppKeyLoadSECItem
    - SECITEM_FreeItem
    - memset
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize
      dataSize, xmlSecKeyDataFormat format,\n                    const char *pwd,
      void* pwdCallback, void* pwdCallbackCtx)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:378,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:379,1
    - Dst: xmlSecNssAppPkcs12LoadSECItem
      Src: /src/xmlsec/src/nss/app.c:384,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:386,1
    - Dst: xmlSecNssAppKeyFromCertLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:392,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:394,1
    - Dst: xmlSecNssAppDerKeyLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:400,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:402,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:407,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:408,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 5
    argNames:
    - secItem
    - format
    - pwd
    - pwdCallback
    - pwdCallbackCtx
    argTypes:
    - SECItem*
    - xmlSecKeyDataFormat
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 413
    functionName: xmlSecNssAppKeyLoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssAppKeyFromCertLoadSECItem
    - xmlSecAssert2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecNssAppDerKeyLoadSECItem
    - xmlSecNssAppPkcs12LoadSECItem
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppKeyLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat
      format,\n    const char *pwd, void* pwdCallback, void* pwdCallbackCtx\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:428,1
    - Dst: xmlSecNssGetInternalKeySlot
      Src: /src/xmlsec/src/nss/app.c:433,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:435,1
    - Dst: PK11_ImportDERPrivateKeyInfoAndReturnKey
      Src: /src/xmlsec/src/nss/app.c:448,1
    - Dst: SECKEY_DecodeDERSubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/app.c:453,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:455,1
    - Dst: SECKEY_ExtractPublicKey
      Src: /src/xmlsec/src/nss/app.c:459,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:461,1
    - Dst: xmlSecNssPKIAdoptKey
      Src: /src/xmlsec/src/nss/app.c:466,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:468,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/nss/app.c:474,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:476,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/app.c:480,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:482,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/app.c:483,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/app.c:493,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/app.c:496,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/app.c:499,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/nss/app.c:502,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/app.c:505,1
    - Dst: SECKEY_DestroySubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/app.c:508,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 69
    argCount: 1
    argNames:
    - secItem
    argTypes:
    - SECItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 415
    functionDepth: 4
    functionLinenumber: 415
    functionLinenumberEnd: 511
    functionName: xmlSecNssAppDerKeyLoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecNssGetInternalKeySlot
    - xmlSecInternalError
    - SECKEY_DestroyPublicKey
    - SECKEY_DestroySubjectPublicKeyInfo
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - PK11_ImportDERPrivateKeyInfoAndReturnKey
    - xmlSecKeyDataDestroy
    - xmlSecKeyCreate
    - xmlSecNssError
    - SECKEY_ExtractPublicKey
    - SECKEY_DecodeDERSubjectPublicKeyInfo
    - xmlSecKeyDataGetName
    - PK11_FreeSlot
    - xmlSecKeyDestroy
    - xmlSecNssPKIAdoptKey
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecNssAppDerKeyLoadSECItem(SECItem* secItem)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:524,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/app.c:527,1
    - Dst: xmlSecNssPKIKeyDataGetPubKey
      Src: /src/xmlsec/src/nss/app.c:532,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:534,1
    - Dst: SECKEY_EncodeDERSubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/app.c:537,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:539,1
    - Dst: CERT_ExtractPublicKey
      Src: /src/xmlsec/src/nss/app.c:544,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:546,1
    - Dst: SECKEY_EncodeDERSubjectPublicKeyInfo
      Src: /src/xmlsec/src/nss/app.c:549,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:551,1
    - Dst: SECITEM_CompareItem
      Src: /src/xmlsec/src/nss/app.c:556,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/app.c:566,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/app.c:569,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:572,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:575,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 2
    argNames:
    - key
    - cert
    argTypes:
    - xmlSecKeyPtr
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 514
    functionDepth: 2
    functionLinenumber: 514
    functionLinenumberEnd: 578
    functionName: xmlSecNssAppCheckCertMatchesKey
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - SECKEY_DestroyPublicKey
    - SECKEY_EncodeDERSubjectPublicKeyInfo
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecNssPKIKeyDataGetPubKey
    - xmlSecAssert2
    - CERT_ExtractPublicKey
    - xmlSecNssError
    - SECITEM_CompareItem
    - SECITEM_FreeItem
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppCheckCertMatchesKey(xmlSecKeyPtr key,  CERTCertificate
      * cert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:596,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:597,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:598,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:601,1
    - Dst: xmlSecNssAppReadSECItem
      Src: /src/xmlsec/src/nss/app.c:602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:604,1
    - Dst: xmlSecNssAppKeyCertLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:608,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:610,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:611,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:615,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 3
    argNames:
    - key
    - filename
    - format
    argTypes:
    - xmlSecKeyPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 591
    functionDepth: 2
    functionLinenumber: 591
    functionLinenumberEnd: 617
    functionName: xmlSecNssAppKeyCertLoad
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssAppReadSECItem
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppKeyCertLoadSECItem
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
      xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:635,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:636,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:637,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:640,1
    - Dst: xmlSecNssAppCreateSECItem
      Src: /src/xmlsec/src/nss/app.c:641,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:643,1
    - Dst: xmlSecNssAppKeyCertLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:647,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:649,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:650,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:654,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - key
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 630
    functionDepth: 2
    functionLinenumber: 630
    functionLinenumberEnd: 656
    functionName: xmlSecNssAppKeyCertLoadMemory
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppCreateSECItem
    - xmlSecInternalError
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppKeyCertLoadSECItem
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte*
      data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:676,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:677,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:678,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:679,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:680,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:681,1
    - Dst: xmlSecNssX509CertDerRead
      Src: /src/xmlsec/src/nss/app.c:687,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:687,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:689,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:690,1
    - Dst: xmlSecNssX509CertPemRead
      Src: /src/xmlsec/src/nss/app.c:695,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:695,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:697,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:698,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:703,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:704,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:707,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/nss/app.c:710,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:712,1
    - Dst: xmlSecNssKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/nss/app.c:717,1
    - Dst: xmlSecNssAppCheckCertMatchesKey
      Src: /src/xmlsec/src/nss/app.c:718,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:720,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/app.c:728,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:730,1
    - Dst: xmlSecNssKeyDataX509AdoptCert
      Src: /src/xmlsec/src/nss/app.c:734,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:736,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/app.c:747,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 3
    argNames:
    - key
    - secItem
    - format
    argTypes:
    - xmlSecKeyPtr
    - SECItem*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 668
    functionDepth: 4
    functionLinenumber: 668
    functionLinenumberEnd: 750
    functionName: xmlSecNssAppKeyCertLoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecKeyEnsureData
    - CERT_GetDefaultCertDB
    - xmlSecNssAppCheckCertMatchesKey
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecNssX509CertDerRead
    - xmlSecNssKeyDataX509GetKeyCert
    - xmlSecNssX509CertPemRead
    - xmlSecNssKeyDataX509AdoptCert
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppKeyCertLoadSECItem(xmlSecKeyPtr key, SECItem* secItem,
      xmlSecKeyDataFormat format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:773,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:776,1
    - Dst: xmlSecNssAppReadSECItem
      Src: /src/xmlsec/src/nss/app.c:777,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:779,1
    - Dst: xmlSecNssAppPkcs12LoadSECItem
      Src: /src/xmlsec/src/nss/app.c:783,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:785,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:786,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - filename
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - char*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 765
    functionDepth: 2
    functionLinenumber: 765
    functionLinenumberEnd: 792
    functionName: xmlSecNssAppPkcs12Load
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssAppReadSECItem
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppPkcs12LoadSECItem
    - memset
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppPkcs12Load(const char *filename, const char
      *pwd,\n                       void *pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n                       void*
      pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:816,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:818,1
    - Dst: xmlSecNssAppCreateSECItem
      Src: /src/xmlsec/src/nss/app.c:819,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:821,1
    - Dst: xmlSecNssAppPkcs12LoadSECItem
      Src: /src/xmlsec/src/nss/app.c:825,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:827,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:828,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:832,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 5
    argNames:
    - data
    - dataSize
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 808
    functionDepth: 2
    functionLinenumber: 808
    functionLinenumberEnd: 834
    functionName: xmlSecNssAppPkcs12LoadMemory
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppCreateSECItem
    - xmlSecInternalError
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppPkcs12LoadSECItem
    - memset
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppPkcs12LoadMemory(const xmlSecByte* data,
      xmlSecSize dataSize, const char *pwd,\n                       void *pwdCallback
      XMLSEC_ATTRIBUTE_UNUSED,\n                       void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:873,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:878,1
    - Dst: xmlSecNssGetInternalKeySlot
      Src: /src/xmlsec/src/nss/app.c:883,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:885,1
    - Dst: strlen
      Src: /src/xmlsec/src/nss/app.c:890,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
      Src: /src/xmlsec/src/nss/app.c:891,1
    - Dst: SECITEM_AllocItem
      Src: /src/xmlsec/src/nss/app.c:893,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:894,1
    - Dst: PORT_UCS2_ASCIIConversion
      Src: /src/xmlsec/src/nss/app.c:898,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:901,1
    - Dst: SEC_PKCS12DecoderStart
      Src: /src/xmlsec/src/nss/app.c:905,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:908,1
    - Dst: SEC_PKCS12DecoderUpdate
      Src: /src/xmlsec/src/nss/app.c:912,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:914,1
    - Dst: SEC_PKCS12DecoderVerify
      Src: /src/xmlsec/src/nss/app.c:918,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:920,1
    - Dst: SEC_PKCS12DecoderValidateBags
      Src: /src/xmlsec/src/nss/app.c:924,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:926,1
    - Dst: SEC_PKCS12DecoderImportBags
      Src: /src/xmlsec/src/nss/app.c:930,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:932,1
    - Dst: SEC_PKCS12DecoderGetCerts
      Src: /src/xmlsec/src/nss/app.c:936,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:938,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/app.c:942,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:944,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/app.c:948,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/app.c:948,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/app.c:948,1
    - Dst: PK11_FindKeyByAnyCert
      Src: /src/xmlsec/src/nss/app.c:950,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/app.c:957,1
    - Dst: CERT_ExtractPublicKey
      Src: /src/xmlsec/src/nss/app.c:962,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:964,1
    - Dst: xmlSecNssPKIAdoptKey
      Src: /src/xmlsec/src/nss/app.c:967,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:969,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/app.c:976,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:978,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/app.c:982,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:984,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/app.c:989,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:991,1
    - Dst: xmlSecNssKeyDataX509AdoptCert
      Src: /src/xmlsec/src/nss/app.c:994,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:996,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1005,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/nss/app.c:1010,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1012,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/app.c:1015,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1017,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/nss/app.c:1022,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1024,1
    - Dst: SEC_PKCS12DecoderIterateInit
      Src: /src/xmlsec/src/nss/app.c:1030,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/app.c:1032,1
    - Dst: SEC_PKCS12DecoderIterateNext
      Src: /src/xmlsec/src/nss/app.c:1036,1
    - Dst: xmlSecKeySetNameEx
      Src: /src/xmlsec/src/nss/app.c:1038,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1040,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/app.c:1055,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/nss/app.c:1058,1
    - Dst: SEC_PKCS12DecoderFinish
      Src: /src/xmlsec/src/nss/app.c:1061,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1063,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/app.c:1065,1
    - Dst: CERT_DestroyCertList
      Src: /src/xmlsec/src/nss/app.c:1068,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/app.c:1071,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/app.c:1074,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/app.c:1077,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/app.c:1080,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 194
    argCount: 4
    argNames:
    - secItem
    - pwd
    - pwdCallback XMLSEC_ATTRIBUTE_UNUSED
    - pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - SECItem*
    - char*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1084
      start: 850
    functionDepth: 4
    functionLinenumber: 850
    functionLinenumberEnd: 1084
    functionName: xmlSecNssAppPkcs12LoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 3
    functionsReached:
    - strlen
    - SEC_PKCS12DecoderUpdate
    - PK11_FindKeyByAnyCert
    - SEC_PKCS12DecoderIterateInit
    - SEC_PKCS12DecoderIterateNext
    - CERT_DupCertificate
    - SECITEM_FreeItem
    - xmlSecNssKeyDataX509AdoptCert
    - SECITEM_AllocItem
    - SEC_PKCS12DecoderValidateBags
    - CERT_DestroyCertList
    - xmlSecNssGetInternalKeySlot
    - SECKEY_DestroyPublicKey
    - xmlSecKeySetNameEx
    - SEC_PKCS12DecoderImportBags
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecKeyDataDestroy
    - SEC_PKCS12DecoderGetCerts
    - xmlSecNssError
    - SEC_PKCS12DecoderFinish
    - xmlSecKeyDataCreate
    - XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
    - CERT_DestroyCertificate
    - xmlSecKeyDestroy
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - CERT_ExtractPublicKey
    - xmlSecKeyAdoptData
    - CERT_LIST_HEAD
    - PORT_UCS2_ASCIIConversion
    - CERT_LIST_END
    - memset
    - SEC_PKCS12DecoderVerify
    - xmlSecKeyCreate
    - CERT_LIST_NEXT
    - PK11_FreeSlot
    - SEC_PKCS12DecoderStart
    - xmlSecNssPKIAdoptKey
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const
      char *pwd,\n                       void *pwdCallback XMLSEC_ATTRIBUTE_UNUSED,\n
      \                      void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1104,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1105,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1106,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1107,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1108,1
    - Dst: xmlSecNssX509CertDerRead
      Src: /src/xmlsec/src/nss/app.c:1113,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:1113,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1115,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1116,1
    - Dst: xmlSecNssX509CertPemRead
      Src: /src/xmlsec/src/nss/app.c:1121,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:1121,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1123,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1124,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:1129,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1130,1
    - Dst: xmlSecNssX509CertGetKey
      Src: /src/xmlsec/src/nss/app.c:1135,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1137,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/nss/app.c:1142,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1144,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/app.c:1147,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1149,1
    - Dst: xmlSecKeyEnsureData
      Src: /src/xmlsec/src/nss/app.c:1155,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1157,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/app.c:1160,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1162,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/nss/app.c:1173,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/app.c:1176,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/app.c:1179,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 74
    argCount: 2
    argNames:
    - secItem
    - format
    argTypes:
    - SECItem*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1095
    functionDepth: 4
    functionLinenumber: 1095
    functionLinenumberEnd: 1182
    functionName: xmlSecNssAppKeyFromCertLoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 1
    functionsReached:
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecNssX509CertGetKey
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecKeyEnsureData
    - CERT_GetDefaultCertDB
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecKeyCreate
    - xmlSecKeyDataDestroy
    - xmlSecNssX509CertDerRead
    - xmlSecNssX509CertPemRead
    - xmlSecKeyDestroy
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat
      format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1205,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:1208,1
    - Dst: xmlSecNssAppReadSECItem
      Src: /src/xmlsec/src/nss/app.c:1209,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1211,1
    - Dst: xmlSecNssAppKeysMngrCertLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:1215,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1217,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1218,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1224
      start: 1196
    functionDepth: 2
    functionLinenumber: 1196
    functionLinenumberEnd: 1224
    functionName: xmlSecNssAppKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssAppReadSECItem
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppKeysMngrCertLoadSECItem
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char
      *filename,\n                             xmlSecKeyDataFormat format,\n                             xmlSecKeyDataType
      type)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1246,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1247,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1248,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:1250,1
    - Dst: xmlSecNssAppCreateSECItem
      Src: /src/xmlsec/src/nss/app.c:1251,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1253,1
    - Dst: xmlSecNssAppKeysMngrCertLoadSECItem
      Src: /src/xmlsec/src/nss/app.c:1257,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1259,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1260,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 5
    argNames:
    - mngr
    - data
    - dataSize
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1239
    functionDepth: 2
    functionLinenumber: 1239
    functionLinenumberEnd: 1266
    functionName: xmlSecNssAppKeysMngrCertLoadMemory
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppCreateSECItem
    - xmlSecInternalError
    - xmlSecAssert2
    - SECITEM_FreeItem
    - xmlSecNssAppKeysMngrCertLoadSECItem
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data,\n                             xmlSecSize dataSize, xmlSecKeyDataFormat
      format,\n                             xmlSecKeyDataType type)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1288,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1289,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1290,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1291,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1292,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1293,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/app.c:1295,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1297,1
    - Dst: xmlSecNssX509CertDerRead
      Src: /src/xmlsec/src/nss/app.c:1303,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:1303,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1305,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1306,1
    - Dst: xmlSecNssX509CertPemRead
      Src: /src/xmlsec/src/nss/app.c:1311,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/app.c:1311,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1313,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1314,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:1319,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1320,1
    - Dst: xmlSecNssX509StoreAdoptCert
      Src: /src/xmlsec/src/nss/app.c:1324,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1326,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/app.c:1327,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 4
    argNames:
    - mngr
    - secItem
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - SECItem*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1332
      start: 1280
    functionDepth: 3
    functionLinenumber: 1280
    functionLinenumberEnd: 1332
    functionName: xmlSecNssAppKeysMngrCertLoadSECItem
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - CERT_GetDefaultCertDB
    - xmlSecNssX509CertDerRead
    - xmlSecNssX509CertPemRead
    - xmlSecNssX509StoreAdoptCert
    - xmlSecKeysMngrGetDataStore
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssAppKeysMngrCertLoadSECItem(xmlSecKeysMngrPtr mngr, SECItem*
      secItem,\n                             xmlSecKeyDataFormat format,\n                             xmlSecKeyDataType
      type)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1352,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1353,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/app.c:1355,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1357,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:1362,1
    - Dst: xmlSecNssAppReadSECItem
      Src: /src/xmlsec/src/nss/app.c:1363,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1365,1
    - Dst: xmlSecNssX509CrlDerRead
      Src: /src/xmlsec/src/nss/app.c:1372,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1374,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1375,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1376,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:1381,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1382,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1383,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1386,1
    - Dst: xmlSecNssX509StoreAdoptCrl
      Src: /src/xmlsec/src/nss/app.c:1389,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1391,1
    - Dst: SEC_DestroyCrl
      Src: /src/xmlsec/src/nss/app.c:1392,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1399
      start: 1344
    functionDepth: 3
    functionLinenumber: 1344
    functionLinenumberEnd: 1399
    functionName: xmlSecNssAppKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecNssAppReadSECItem
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecNssX509StoreAdoptCrl
    - xmlSecNssX509CrlDerRead
    - SEC_DestroyCrl
    - SECITEM_FreeItem
    - xmlSecKeysMngrGetDataStore
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char
      *filename, xmlSecKeyDataFormat format)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1419,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1420,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1421,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/app.c:1423,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1425,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/app.c:1429,1
    - Dst: xmlSecNssAppCreateSECItem
      Src: /src/xmlsec/src/nss/app.c:1430,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1432,1
    - Dst: xmlSecNssX509CrlDerRead
      Src: /src/xmlsec/src/nss/app.c:1439,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1441,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1442,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1443,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/app.c:1448,1
    - Dst: XMLSEC_ENUM_CAST
      Src: /src/xmlsec/src/nss/app.c:1449,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1450,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/app.c:1453,1
    - Dst: xmlSecNssX509StoreAdoptCrl
      Src: /src/xmlsec/src/nss/app.c:1456,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1458,1
    - Dst: SEC_DestroyCrl
      Src: /src/xmlsec/src/nss/app.c:1459,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 38
    argCount: 4
    argNames:
    - mngr
    - data
    - dataSize
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1466
      start: 1412
    functionDepth: 3
    functionLinenumber: 1412
    functionLinenumberEnd: 1466
    functionName: xmlSecNssAppKeysMngrCrlLoadMemory
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppCreateSECItem
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - XMLSEC_ENUM_CAST
    - xmlSecOtherError2
    - xmlSecNssX509StoreAdoptCrl
    - xmlSecNssX509CrlDerRead
    - SEC_DestroyCrl
    - SECITEM_FreeItem
    - xmlSecKeysMngrGetDataStore
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppKeysMngrCrlLoadMemory(xmlSecKeysMngrPtr mngr, const
      xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1484,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/nss/app.c:1487,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/nss/app.c:1490,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1492,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/src/nss/app.c:1496,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1498,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/nss/app.c:1499,1
    - Dst: xmlSecNssKeysMngrInit
      Src: /src/xmlsec/src/nss/app.c:1504,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1506,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1480
    functionDepth: 2
    functionLinenumber: 1480
    functionLinenumberEnd: 1512
    functionName: xmlSecNssAppDefaultKeysMngrInit
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssKeysMngrInit
    - xmlSecKeysMngrGetKeysStore
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1530,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/nss/app.c:1532,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1534,1
    - Dst: xmlSecNssKeysStoreAdoptKey
      Src: /src/xmlsec/src/nss/app.c:1538,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1540,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - key
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1545
      start: 1524
    functionDepth: 2
    functionLinenumber: 1524
    functionLinenumberEnd: 1545
    functionName: xmlSecNssAppDefaultKeysMngrAdoptKey
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeysMngrGetKeysStore
    - xmlSecInternalError
    - xmlSecNssKeysStoreAdoptKey
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1568,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1569,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1570,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/app.c:1572,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1574,1
    - Dst: xmlSecNssX509StoreVerifyKey
      Src: /src/xmlsec/src/nss/app.c:1578,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1582,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1583,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1584,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/nss/app.c:1586,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - mngr
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeysMngrPtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1563
    functionDepth: 3
    functionLinenumber: 1563
    functionLinenumberEnd: 1590
    functionName: xmlSecNssAppDefaultKeysMngrVerifyKey
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecNssX509StoreVerifyKey
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr
      key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1607,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1608,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/nss/app.c:1610,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1612,1
    - Dst: xmlSecNssKeysStoreLoad
      Src: /src/xmlsec/src/nss/app.c:1616,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1618,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/app.c:1619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mngr
    - uri
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1624
      start: 1602
    functionDepth: 2
    functionLinenumber: 1602
    functionLinenumberEnd: 1624
    functionName: xmlSecNssAppDefaultKeysMngrLoad
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecNssKeysStoreLoad
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char*
      uri)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1641,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/app.c:1642,1
    - Dst: xmlSecKeysMngrGetKeysStore
      Src: /src/xmlsec/src/nss/app.c:1644,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/app.c:1646,1
    - Dst: xmlSecNssKeysStoreSave
      Src: /src/xmlsec/src/nss/app.c:1650,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/app.c:1652,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/app.c:1653,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1636
    functionDepth: 2
    functionLinenumber: 1636
    functionLinenumberEnd: 1658
    functionName: xmlSecNssAppDefaultKeysMngrSave
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached:
    - xmlSecNssKeysStoreSave
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecKeysMngrGetKeysStore
    linkageType: ''
    returnType: int
    signature: int xmlSecNssAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char*
      filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1667
    functionDepth: 0
    functionLinenumber: 1667
    functionLinenumberEnd: 1671
    functionName: xmlSecNssAppGetDefaultPwdCallback
    functionSourceFile: /src/xmlsec/src/nss/app.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecNssAppGetDefaultPwdCallback(void)'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: xmlSecNssKeyDataX509GetKlass
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataX509GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:206,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:206,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:208,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:209,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 212
    functionName: xmlSecNssKeyDataX509GetKeyCert
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssKeyDataX509GetKeyCert(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:218,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:218,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 224
    functionName: xmlSecNssKeyDataX509GetCerts
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: CERTCertList
    signature: 'CERTCertList *

      xmlSecNssKeyDataX509GetCerts(xmlSecKeyDataPtr data)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:230,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:230,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:232,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 236
    functionName: xmlSecNssKeyDataX509GetCrls
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: xmlSecNssX509CrlNodePtr
    signature: xmlSecNssX509CrlNodePtr xmlSecNssKeyDataX509GetCrls(xmlSecKeyDataPtr
      data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:242,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:243,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509.c:248,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509.c:248,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509.c:248,1
    - Dst: CERT_CompareCerts
      Src: /src/xmlsec/src/nss/x509.c:249,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - cert
    argTypes:
    - xmlSecNssX509DataCtxPtr
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 254
    functionName: xmlSecNssKeyDataX509FindCertInternal
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - CERT_CompareCerts
    - xmlSecAssert2
    - CERT_LIST_HEAD
    - CERT_LIST_NEXT
    - CERT_LIST_END
    linkageType: ''
    returnType: CERTCertListNode
    signature: 'CERTCertListNode *

      xmlSecNssKeyDataX509FindCertInternal(xmlSecNssX509DataCtxPtr ctx, CERTCertificate*
      cert)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:261,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:262,1
    - Dst: CERT_NewCertList
      Src: /src/xmlsec/src/nss/x509.c:265,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:267,1
    - Dst: xmlSecNssKeyDataX509FindCertInternal
      Src: /src/xmlsec/src/nss/x509.c:273,1
    - Dst: CERT_RemoveCertListNode
      Src: /src/xmlsec/src/nss/x509.c:275,1
    - Dst: CERT_AddCertToListHead
      Src: /src/xmlsec/src/nss/x509.c:281,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:283,1
    - Dst: CERT_AddCertToListTail
      Src: /src/xmlsec/src/nss/x509.c:287,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:289,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - cert
    - isKeyCert
    argTypes:
    - xmlSecNssX509DataCtxPtr
    - CERTCertificate*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 256
    functionDepth: 2
    functionLinenumber: 256
    functionLinenumberEnd: 297
    functionName: xmlSecNssKeyDataX509AddCertInternal
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - CERT_NewCertList
    - CERT_RemoveCertListNode
    - xmlSecAssert2
    - CERT_AddCertToListTail
    - CERT_AddCertToListHead
    - xmlSecNssKeyDataX509FindCertInternal
    - xmlSecNssError
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509AddCertInternal(xmlSecNssX509DataCtxPtr ctx,
      CERTCertificate* cert, int isKeyCert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:314,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:314,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:315,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:317,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:318,1
    - Dst: CERT_CompareCerts
      Src: /src/xmlsec/src/nss/x509.c:321,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:322,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:325,1
    - Dst: xmlSecNssKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/nss/x509.c:327,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:329,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 309
    functionDepth: 3
    functionLinenumber: 309
    functionLinenumberEnd: 336
    functionName: xmlSecNssKeyDataX509AdoptKeyCert
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 3
    functionsReached:
    - CERT_CompareCerts
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataX509AddCertInternal
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, CERTCertificate*
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:351,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:351,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:352,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:355,1
    - Dst: CERT_CompareCerts
      Src: /src/xmlsec/src/nss/x509.c:358,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:359,1
    - Dst: xmlSecNssKeyDataX509AddCertInternal
      Src: /src/xmlsec/src/nss/x509.c:362,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - data
    - cert
    argTypes:
    - xmlSecKeyDataPtr
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 347
    functionDepth: 3
    functionLinenumber: 347
    functionLinenumberEnd: 363
    functionName: xmlSecNssKeyDataX509AdoptCert
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 2
    functionsReached:
    - CERT_CompareCerts
    - xmlSecAssert2
    - xmlSecNssX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataX509AddCertInternal
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509AdoptCert(xmlSecKeyDataPtr data, CERTCertificate*
      cert)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:380,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:380,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:382,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:383,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:384,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:385,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509.c:389,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509.c:389,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509.c:389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 398
    functionName: xmlSecNssKeyDataX509GetCert
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssX509DataGetCtx
    - xmlSecKeyDataCheckId
    - CERT_LIST_HEAD
    - CERT_LIST_NEXT
    - CERT_LIST_END
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssKeyDataX509GetCert(xmlSecKeyDataPtr data, xmlSecSize pos)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:412,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:412,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:414,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 417
    functionName: xmlSecNssKeyDataX509GetCertsSize
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssKeyDataX509GetCertsSize(xmlSecKeyDataPtr data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:433,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:434,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:436,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:437,1
    - Dst: xmlSecNssX509CrlListAdoptCrl
      Src: /src/xmlsec/src/nss/x509.c:439,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:441,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - crl
    argTypes:
    - xmlSecKeyDataPtr
    - CERTSignedCrl*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 447
    functionName: xmlSecNssKeyDataX509AdoptCrl
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssX509CrlListAdoptCrl
    - xmlSecNssX509DataGetCtx
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, CERTSignedCrl*
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:464,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:464,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:465,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:466,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:468,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - data
    - pos
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 479
    functionName: xmlSecNssKeyDataX509GetCrl
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: CERTSignedCrl
    signature: 'CERTSignedCrl *

      xmlSecNssKeyDataX509GetCrl(xmlSecKeyDataPtr data, xmlSecSize pos)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:493,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:493,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:495,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 489
    functionDepth: 1
    functionLinenumber: 489
    functionLinenumberEnd: 499
    functionName: xmlSecNssKeyDataX509GetCrlsSize
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssKeyDataX509GetCrlsSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:505,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:505,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:507,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:508,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509.c:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 512
    functionName: xmlSecNssKeyDataX509Initialize
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecNssX509DataGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509Initialize(xmlSecKeyDataPtr data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:518,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:518,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:520,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:521,1
    - Dst: CERT_DestroyCertList
      Src: /src/xmlsec/src/nss/x509.c:524,1
    - Dst: xmlSecNssX509CrlListDestroy
      Src: /src/xmlsec/src/nss/x509.c:528,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509.c:532,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 514
    functionDepth: 1
    functionLinenumber: 514
    functionLinenumberEnd: 533
    functionName: xmlSecNssKeyDataX509Finalize
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - CERT_DestroyCertList
    - xmlSecNssX509DataGetCtx
    - xmlSecAssert
    - xmlSecKeyDataCheckId
    - xmlSecNssX509CrlListDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataX509Finalize(xmlSecKeyDataPtr data)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:540,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:540,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:541,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:541,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:543,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:544,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:548,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:549,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:551,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509.c:558,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509.c:558,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509.c:558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:559,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/x509.c:560,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:562,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/x509.c:568,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:570,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:571,1
    - Dst: xmlSecNssKeyDataX509AdoptCert
      Src: /src/xmlsec/src/nss/x509.c:575,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:577,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:578,1
    - Dst: xmlSecNssX509CrlListDuplicate
      Src: /src/xmlsec/src/nss/x509.c:588,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:590,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 535
    functionDepth: 4
    functionLinenumber: 535
    functionLinenumberEnd: 598
    functionName: xmlSecNssKeyDataX509Duplicate
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssX509DataGetCtx
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecNssX509CrlListDuplicate
    - xmlSecNssError
    - xmlSecKeyDataCheckId
    - CERT_LIST_HEAD
    - CERT_DupCertificate
    - CERT_LIST_NEXT
    - xmlSecNssKeyDataX509AdoptCert
    - CERT_LIST_END
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:607,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:608,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:609,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:610,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/x509.c:612,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:614,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:614,1
    - Dst: xmlSecKeyDataX509XmlRead
      Src: /src/xmlsec/src/nss/x509.c:618,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:620,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:620,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:621,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/x509.c:626,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:627,1
    - Dst: xmlSecNssVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/nss/x509.c:631,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:633,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:633,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:634,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:638,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 601
    functionDepth: 5
    functionLinenumber: 601
    functionLinenumberEnd: 645
    functionName: xmlSecNssKeyDataX509XmlRead
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecNssVerifyAndAdoptX509KeyData
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecAssert2
    - xmlSecKeyDataDestroy
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecKeyDataX509XmlRead
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                           xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:654,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:655,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:656,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:657,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/nss/x509.c:660,1
    - Dst: xmlSecNssKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/nss/x509.c:668,1
    - Dst: xmlSecNssKeyDataX509GetCrlsSize
      Src: /src/xmlsec/src/nss/x509.c:669,1
    - Dst: xmlSecKeyDataX509XmlWrite
      Src: /src/xmlsec/src/nss/x509.c:671,1
    - Dst: xmlSecBase64GetDefaultLineSize
      Src: /src/xmlsec/src/nss/x509.c:672,1
    - Dst: xmlSecInternalError3
      Src: /src/xmlsec/src/nss/x509.c:675,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 647
    functionDepth: 13
    functionLinenumber: 647
    functionLinenumberEnd: 684
    functionName: xmlSecNssKeyDataX509XmlWrite
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError3
    - xmlSecNssKeyDataX509GetCertsSize
    - xmlSecAssert2
    - xmlSecNssKeyDataX509GetCrlsSize
    - xmlSecBase64GetDefaultLineSize
    - xmlSecKeyDataX509XmlWrite
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyGetData
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:691,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:691,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:692,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:694,1
    - Dst: xmlSecNssKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/nss/x509.c:695,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:697,1
    - Dst: xmlSecNssX509CertDebugDump
      Src: /src/xmlsec/src/nss/x509.c:698,1
    - Dst: xmlSecNssKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/nss/x509.c:701,1
    - Dst: xmlSecNssKeyDataX509GetCert
      Src: /src/xmlsec/src/nss/x509.c:703,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:705,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:706,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:710,1
    - Dst: xmlSecNssX509CertDebugDump
      Src: /src/xmlsec/src/nss/x509.c:711,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 686
    functionDepth: 2
    functionLinenumber: 686
    functionLinenumberEnd: 715
    functionName: xmlSecNssKeyDataX509DebugDump
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecNssKeyDataX509GetCertsSize
    - xmlSecNssKeyDataX509GetCert
    - xmlSecInternalError2
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataX509GetKeyCert
    - fprintf
    - xmlSecNssX509CertDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:722,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:722,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:723,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:725,1
    - Dst: xmlSecNssKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/nss/x509.c:726,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:728,1
    - Dst: xmlSecNssX509CertDebugXmlDump
      Src: /src/xmlsec/src/nss/x509.c:729,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:730,1
    - Dst: xmlSecNssKeyDataX509GetCertsSize
      Src: /src/xmlsec/src/nss/x509.c:733,1
    - Dst: xmlSecNssKeyDataX509GetCert
      Src: /src/xmlsec/src/nss/x509.c:735,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:737,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:738,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:742,1
    - Dst: xmlSecNssX509CertDebugXmlDump
      Src: /src/xmlsec/src/nss/x509.c:743,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:744,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:748,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 717
    functionDepth: 2
    functionLinenumber: 717
    functionLinenumberEnd: 749
    functionName: xmlSecNssKeyDataX509DebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecNssKeyDataX509GetCertsSize
    - xmlSecNssKeyDataX509GetCert
    - xmlSecInternalError2
    - xmlSecAssert
    - xmlSecKeyDataGetName
    - xmlSecNssX509CertDebugXmlDump
    - xmlSecKeyDataCheckId
    - xmlSecNssKeyDataX509GetKeyCert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE*
      output)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:760,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:761,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:761,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:762,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:763,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509.c:766,1
    - Dst: xmlSecNssX509CertDerRead
      Src: /src/xmlsec/src/nss/x509.c:767,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509.c:767,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/x509.c:768,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509.c:769,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:772,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:772,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509.c:776,1
    - Dst: xmlSecNssX509CrlDerRead
      Src: /src/xmlsec/src/nss/x509.c:777,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/x509.c:777,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509.c:778,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:780,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:780,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/x509.c:791,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:793,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:793,1
    - Dst: xmlSecNssX509StoreFindCertByValue
      Src: /src/xmlsec/src/nss/x509.c:801,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/x509.c:803,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:803,1
    - Dst: xmlSecNssKeyDataX509AdoptCert
      Src: /src/xmlsec/src/nss/x509.c:810,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:812,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:812,1
    - Dst: xmlSecNssKeyDataX509AdoptCrl
      Src: /src/xmlsec/src/nss/x509.c:818,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:820,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:820,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:832,1
    - Dst: SEC_DestroyCrl
      Src: /src/xmlsec/src/nss/x509.c:835,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 4
    argNames:
    - data
    - x509Value
    - keysMngr
    - flags
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeysMngrPtr
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 752
    functionDepth: 4
    functionLinenumber: 752
    functionLinenumberEnd: 838
    functionName: xmlSecNssKeyDataX509Read
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - CERT_DestroyCertificate
    - xmlSecInternalError
    - xmlSecAssert2
    - CERT_GetDefaultCertDB
    - xmlSecBufferGetData
    - xmlSecNssX509CrlDerRead
    - xmlSecNssKeyDataX509AdoptCrl
    - xmlSecBufferGetSize
    - xmlSecNssX509CertDerRead
    - xmlSecKeyDataCheckId
    - xmlSecNssX509StoreFindCertByValue
    - SEC_DestroyCrl
    - xmlSecKeyDataGetName
    - xmlSecNssKeyDataX509AdoptCert
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataX509Read(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n                         xmlSecKeysMngrPtr keysMngr, unsigned int
      flags)"
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:849,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:850,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:850,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:851,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:852,1
    - Dst: xmlSecNssKeyDataX509GetCert
      Src: /src/xmlsec/src/nss/x509.c:858,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:860,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:861,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/nss/x509.c:865,1
    - Dst: xmlSecNssX509SECItemWrite
      Src: /src/xmlsec/src/nss/x509.c:866,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:868,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:869,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/nss/x509.c:874,1
    - Dst: CERT_FindSubjectKeyIDExtension
      Src: /src/xmlsec/src/nss/x509.c:878,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:880,1
    - Dst: xmlSecNssX509SECItemWrite
      Src: /src/xmlsec/src/nss/x509.c:884,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:886,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:887,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/x509.c:889,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/x509.c:892,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/nss/x509.c:894,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:895,1
    - Dst: xmlSecNssX509NameWrite
      Src: /src/xmlsec/src/nss/x509.c:897,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:899,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:900,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/nss/x509.c:905,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:906,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:907,1
    - Dst: xmlSecNssX509NameWrite
      Src: /src/xmlsec/src/nss/x509.c:909,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:911,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:912,1
    - Dst: xmlSecNssASN1IntegerWrite
      Src: /src/xmlsec/src/nss/x509.c:916,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:918,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:919,1
    - Dst: XMLSEC_X509DATA_HAS_EMPTY_NODE
      Src: /src/xmlsec/src/nss/x509.c:924,1
    - Dst: xmlSecNssX509DigestWrite
      Src: /src/xmlsec/src/nss/x509.c:925,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:927,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:928,1
    - Dst: xmlSecNssKeyDataX509GetCrl
      Src: /src/xmlsec/src/nss/x509.c:936,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:938,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:939,1
    - Dst: xmlSecNssX509SECItemWrite
      Src: /src/xmlsec/src/nss/x509.c:945,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:947,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:948,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 80
    argCount: 4
    argNames:
    - data
    - x509Value
    - content
    - context
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyX509DataValuePtr
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 843
    functionDepth: 2
    functionLinenumber: 843
    functionLinenumberEnd: 961
    functionName: xmlSecNssKeyDataX509Write
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - XMLSEC_X509DATA_HAS_EMPTY_NODE
    - xmlSecNssX509DigestWrite
    - xmlSecAssert2
    - xmlSecNssKeyDataX509GetCert
    - xmlSecInternalError2
    - xmlSecNssKeyDataX509GetCrl
    - xmlSecNssASN1IntegerWrite
    - xmlSecNssError
    - xmlSecKeyDataCheckId
    - xmlSecNssX509SECItemWrite
    - CERT_FindSubjectKeyIDExtension
    - xmlSecKeyDataGetName
    - SECITEM_FreeItem
    - xmlSecNssX509NameWrite
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataX509Write(xmlSecKeyDataPtr data, xmlSecKeyX509DataValuePtr
      x509Value,\n                          int content, void* context)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:975,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/x509.c:975,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:976,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:977,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:978,1
    - Dst: xmlSecNssX509DataGetCtx
      Src: /src/xmlsec/src/nss/x509.c:980,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:981,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:982,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/x509.c:984,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/x509.c:990,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:992,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:992,1
    - Dst: xmlSecNssX509StoreVerify
      Src: /src/xmlsec/src/nss/x509.c:995,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/x509.c:999,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:999,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/x509.c:1008,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1010,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1010,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/x509.c:1013,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1015,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1015,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:1016,1
    - Dst: xmlSecNssX509CertGetKey
      Src: /src/xmlsec/src/nss/x509.c:1022,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1024,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1024,1
    - Dst: xmlSecKeyReqMatchKeyValue
      Src: /src/xmlsec/src/nss/x509.c:1027,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1028,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1028,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:1029,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/x509.c:1032,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1034,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1034,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:1035,1
    - Dst: CERT_GetCertTimes
      Src: /src/xmlsec/src/nss/x509.c:1041,1
    - Dst: xmlSecNssX509CertGetTime
      Src: /src/xmlsec/src/nss/x509.c:1043,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1045,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1045,1
    - Dst: xmlSecNssX509CertGetTime
      Src: /src/xmlsec/src/nss/x509.c:1048,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1050,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1050,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/nss/x509.c:1060,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1062,1
    - Dst: xmlSecKeyDataGetName
      Src: /src/xmlsec/src/nss/x509.c:1062,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 74
    argCount: 3
    argNames:
    - key
    - data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyPtr
    - xmlSecKeyDataPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 964
    functionDepth: 4
    functionLinenumber: 964
    functionLinenumberEnd: 1068
    functionName: xmlSecNssVerifyAndAdoptX509KeyData
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - CERT_DupCertificate
    - xmlSecKeyGetValue
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecKeyDataDestroy
    - xmlSecNssError
    - CERT_GetCertTimes
    - xmlSecNssX509CertGetTime
    - CERT_DestroyCertificate
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyAdoptData
    - xmlSecKeysMngrGetDataStore
    - xmlSecOtherError
    - xmlSecNssX509CertGetKey
    - xmlSecNssX509StoreVerify
    - xmlSecNssX509DataGetCtx
    - xmlSecKeyReqMatchKeyValue
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataGetName
    linkageType: ''
    returnType: int
    signature: int xmlSecNssVerifyAndAdoptX509KeyData(xmlSecKeyPtr key, xmlSecKeyDataPtr
      data,  xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1076,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1077,1
    - Dst: LL_UI2L
      Src: /src/xmlsec/src/nss/x509.c:1083,1
    - Dst: LL_DIV
      Src: /src/xmlsec/src/nss/x509.c:1084,1
    - Dst: LL_L2UI
      Src: /src/xmlsec/src/nss/x509.c:1085,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - t
    - res
    argTypes:
    - PRTime*
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1090
      start: 1070
    functionDepth: 1
    functionLinenumber: 1070
    functionLinenumberEnd: 1090
    functionName: xmlSecNssX509CertGetTime
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - LL_L2UI
    - LL_UI2L
    - LL_DIV
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509CertGetTime(PRTime* t, time_t* res)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1106,1
    - Dst: CERT_ExtractPublicKey
      Src: /src/xmlsec/src/nss/x509.c:1108,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1110,1
    - Dst: PK11_FindKeyByAnyCert
      Src: /src/xmlsec/src/nss/x509.c:1115,1
    - Dst: xmlSecNssPKIAdoptKey
      Src: /src/xmlsec/src/nss/x509.c:1117,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1119,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/x509.c:1120,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/x509.c:1122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - cert
    argTypes:
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1128
      start: 1100
    functionDepth: 3
    functionLinenumber: 1100
    functionLinenumberEnd: 1128
    functionName: xmlSecNssX509CertGetKey
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 2
    functionsReached:
    - SECKEY_DestroyPublicKey
    - xmlSecInternalError
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - PK11_FindKeyByAnyCert
    - CERT_ExtractPublicKey
    - xmlSecNssError
    - xmlSecNssPKIAdoptKey
    linkageType: ''
    returnType: xmlSecKeyDataPtr
    signature: xmlSecKeyDataPtr xmlSecNssX509CertGetKey(CERTCertificate* cert)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1132,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1133,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/x509.c:1138,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509.c:1140,1
    - Dst: xmlSecBufferEmpty
      Src: /src/xmlsec/src/nss/x509.c:1145,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - secItem
    - buf
    argTypes:
    - SECItem*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1130
    functionDepth: 3
    functionLinenumber: 1130
    functionLinenumberEnd: 1148
    functionName: xmlSecNssX509SECItemWrite
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecBufferEmpty
    - xmlSecInternalError2
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509SECItemWrite(SECItem* secItem, xmlSecBufferPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1155,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1157,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/x509.c:1160,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509.c:1160,1
    - Dst: __CERT_NewTempCertificate
      Src: /src/xmlsec/src/nss/x509.c:1163,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - handle
    - buf
    - size
    argTypes:
    - CERTCertDBHandle*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1150
    functionDepth: 1
    functionLinenumber: 1150
    functionLinenumberEnd: 1170
    functionName: xmlSecNssX509CertDerRead
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 4
    functionsReached:
    - xmlSecAssert2
    - return
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - __CERT_NewTempCertificate
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509CertDerRead(CERTCertDBHandle *handle, xmlSecByte* buf, xmlSecSize
      size)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1180,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/x509.c:1183,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509.c:1183,1
    - Dst: xmlSecNssGetInternalKeySlot
      Src: /src/xmlsec/src/nss/x509.c:1188,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1190,1
    - Dst: PK11_ImportCRL
      Src: /src/xmlsec/src/nss/x509.c:1198,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1201,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/x509.c:1202,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/x509.c:1206,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 3
    argNames:
    - buf
    - size
    - flags
    argTypes:
    - xmlSecByte*
    - xmlSecSize
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1172
    functionDepth: 1
    functionLinenumber: 1172
    functionLinenumberEnd: 1208
    functionName: xmlSecNssX509CrlDerRead
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecNssGetInternalKeySlot
    - xmlSecInternalError
    - xmlSecAssert2
    - PK11_ImportCRL
    - return
    - xmlSecNssError
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_FreeSlot
    linkageType: ''
    returnType: CERTSignedCrl
    signature: 'CERTSignedCrl *

      xmlSecNssX509CrlDerRead(xmlSecByte* buf, xmlSecSize size, unsigned int flags)'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1221,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1222,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1223,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1224,1
    - Dst: SECITEM_CopyItem
      Src: /src/xmlsec/src/nss/x509.c:1226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - arg
    - certs
    - numcerts
    argTypes:
    - void*
    - SECItem**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1216
    functionDepth: 1
    functionLinenumber: 1216
    functionLinenumberEnd: 1227
    functionName: xmlSecNssX509CertReadCallback
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECITEM_CopyItem
    linkageType: ''
    returnType: SECStatus
    signature: SECStatus xmlSecNssX509CertReadCallback(void *arg, SECItem **certs,
      int numcerts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1237,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1238,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1239,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/x509.c:1241,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509.c:1241,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/x509.c:1243,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1245,1
    - Dst: CERT_DecodeCertPackage
      Src: /src/xmlsec/src/nss/x509.c:1249,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1251,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/x509.c:1252,1
    - Dst: __CERT_NewTempCertificate
      Src: /src/xmlsec/src/nss/x509.c:1256,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1258,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/x509.c:1259,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/x509.c:1264,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - handle
    - buf
    - size
    argTypes:
    - CERTCertDBHandle*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1230
    functionDepth: 1
    functionLinenumber: 1230
    functionLinenumberEnd: 1266
    functionName: xmlSecNssX509CertPemRead
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 3
    functionsReached:
    - xmlSecAssert2
    - CERT_DecodeCertPackage
    - return
    - PORT_FreeArena
    - xmlSecNssError
    - PORT_NewArena
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - __CERT_NewTempCertificate
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509CertPemRead(CERTCertDBHandle *handle, xmlSecByte* buf, xmlSecSize
      size)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1273,1
    - Dst: CERT_NameToAscii
      Src: /src/xmlsec/src/nss/x509.c:1275,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1277,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/nss/x509.c:1281,1
    - Dst: PORT_Free
      Src: /src/xmlsec/src/nss/x509.c:1284,1
    - Dst: PORT_Free
      Src: /src/xmlsec/src/nss/x509.c:1287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - nm
    argTypes:
    - CERTName*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1268
    functionDepth: 2
    functionLinenumber: 1268
    functionLinenumberEnd: 1289
    functionName: xmlSecNssX509NameWrite
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - PORT_Free
    - xmlSecAssert2
    - xmlSecNssError
    - CERT_NameToAscii
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecNssX509NameWrite(CERTName* nm)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1302,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1303,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1304,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1310,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/src/nss/x509.c:1316,1
    - Dst: xmlSecMallocError
      Src: /src/xmlsec/src/nss/x509.c:1318,1
    - Dst: PR_snprintf
      Src: /src/xmlsec/src/nss/x509.c:1322,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - num
    argTypes:
    - SECItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1295
    functionDepth: 1
    functionLinenumber: 1295
    functionLinenumberEnd: 1324
    functionName: xmlSecNssASN1IntegerWrite
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlMalloc
    - PR_snprintf
    - xmlSecMallocError
    linkageType: ''
    returnType: xmlChar
    signature: 'xmlChar *

      xmlSecNssASN1IntegerWrite(SECItem *num)'
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1335,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1338,1
    - Dst: xmlSecNssX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/nss/x509.c:1342,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1344,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/x509.c:1348,1
    - Dst: xmlSecNssError3
      Src: /src/xmlsec/src/nss/x509.c:1350,1
    - Dst: PK11_HashBuf
      Src: /src/xmlsec/src/nss/x509.c:1354,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/x509.c:1356,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/x509.c:1361,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1363,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - cert
    - algorithm
    - buf
    argTypes:
    - CERTCertificate*
    - xmlChar*
    - xmlSecBufferPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1326
    functionDepth: 3
    functionLinenumber: 1326
    functionLinenumberEnd: 1369
    functionName: xmlSecNssX509DigestWrite
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecNssX509GetDigestFromAlgorithm
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssError2
    - xmlSecBufferSetData
    - PK11_HashBuf
    - xmlSecNssError3
    - HASH_ResultLenByOidTag
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509DigestWrite(CERTCertificate* cert, const xmlChar*
      algorithm, xmlSecBufferPtr buf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:1376,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:1377,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1379,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1380,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1385,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1387,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1390,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - CERTCertificate*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1371
    functionDepth: 1
    functionLinenumber: 1371
    functionLinenumberEnd: 1391
    functionName: xmlSecNssX509CertDebugDump
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecNssX509CertDebugDump(CERTCertificate* cert, FILE* output)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:1399,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509.c:1400,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1402,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1404,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1406,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1408,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1410,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1414,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1416,1
    - Dst: fprintf
      Src: /src/xmlsec/src/nss/x509.c:1419,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - cert
    - output
    argTypes:
    - CERTCertificate*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1420
      start: 1394
    functionDepth: 1
    functionLinenumber: 1394
    functionLinenumberEnd: 1420
    functionName: xmlSecNssX509CertDebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecNssX509CertDebugXmlDump(CERTCertificate* cert, FILE* output)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1429,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1432,1
    - Dst: SEC_DupCrl
      Src: /src/xmlsec/src/nss/x509.c:1434,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1436,1
    - Dst: xmlSecNssX509CrlListDestroy
      Src: /src/xmlsec/src/nss/x509.c:1437,1
    - Dst: xmlSecNssX509CrlListAdoptCrl
      Src: /src/xmlsec/src/nss/x509.c:1441,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1443,1
    - Dst: SEC_DestroyCrl
      Src: /src/xmlsec/src/nss/x509.c:1444,1
    - Dst: xmlSecNssX509CrlListDestroy
      Src: /src/xmlsec/src/nss/x509.c:1445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - head
    argTypes:
    - xmlSecNssX509CrlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1422
    functionDepth: 1
    functionLinenumber: 1422
    functionLinenumberEnd: 1453
    functionName: xmlSecNssX509CrlListDuplicate
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecNssX509CrlListAdoptCrl
    - xmlSecNssError
    - SEC_DestroyCrl
    - SEC_DupCrl
    - xmlSecNssX509CrlListDestroy
    linkageType: ''
    returnType: xmlSecNssX509CrlNodePtr
    signature: xmlSecNssX509CrlNodePtr xmlSecNssX509CrlListDuplicate(xmlSecNssX509CrlNodePtr
      head)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SEC_DestroyCrl
      Src: /src/xmlsec/src/nss/x509.c:1461,1
    - Dst: PR_Free
      Src: /src/xmlsec/src/nss/x509.c:1462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - head
    argTypes:
    - xmlSecNssX509CrlNodePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1465
    functionName: xmlSecNssX509CrlListDestroy
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 2
    functionsReached:
    - SEC_DestroyCrl
    - PR_Free
    linkageType: ''
    returnType: void
    signature: void xmlSecNssX509CrlListDestroy(xmlSecNssX509CrlNodePtr head)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1471,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1472,1
    - Dst: PR_Malloc
      Src: /src/xmlsec/src/nss/x509.c:1474,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509.c:1476,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509.c:1480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - head
    - crl
    argTypes:
    - xmlSecNssX509CrlNodePtr*
    - CERTSignedCrl*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1467
    functionDepth: 1
    functionLinenumber: 1467
    functionLinenumberEnd: 1485
    functionName: xmlSecNssX509CrlListAdoptCrl
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssError
    - PR_Malloc
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509CrlListAdoptCrl(xmlSecNssX509CrlNodePtr * head, CERTSignedCrl*
      crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1544
    functionDepth: 0
    functionLinenumber: 1544
    functionLinenumberEnd: 1547
    functionName: xmlSecNssKeyDataRawX509CertGetKlass
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataRawX509CertGetKlass(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1557,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1558,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1559,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1560,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509.c:1561,1
    - Dst: xmlSecNssX509CertDerRead
      Src: /src/xmlsec/src/nss/x509.c:1563,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509.c:1563,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1565,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/x509.c:1569,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1571,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:1571,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:1572,1
    - Dst: xmlSecNssKeyDataX509AdoptCert
      Src: /src/xmlsec/src/nss/x509.c:1576,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1578,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:1578,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/x509.c:1579,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:1580,1
    - Dst: xmlSecNssVerifyAndAdoptX509KeyData
      Src: /src/xmlsec/src/nss/x509.c:1585,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509.c:1587,1
    - Dst: xmlSecKeyDataKlassGetName
      Src: /src/xmlsec/src/nss/x509.c:1587,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:1588,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/x509.c:1592,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 37
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1599
      start: 1549
    functionDepth: 5
    functionLinenumber: 1549
    functionLinenumberEnd: 1599
    functionName: xmlSecNssKeyDataRawX509CertBinRead
    functionSourceFile: /src/xmlsec/src/nss/x509.c
    functionUses: 0
    functionsReached:
    - xmlSecNssVerifyAndAdoptX509KeyData
    - xmlSecInternalError
    - xmlSecAssert2
    - CERT_GetDefaultCertDB
    - xmlSecKeyDataDestroy
    - xmlSecNssX509CertDerRead
    - xmlSecKeyDataKlassGetName
    - xmlSecKeyDataCreate
    - xmlSecNssKeyDataX509AdoptCert
    - CERT_DestroyCertificate
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr
      key,\n                                    const xmlSecByte* buf, xmlSecSize
      bufSize,\n                                    xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: xmlSecNssX509StoreGetKlass
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataStoreId
    signature: xmlSecKeyDataStoreId xmlSecNssX509StoreGetKlass(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecBase64DecodeInPlace
      Src: /src/xmlsec/src/nss/x509vfy.c:137,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509vfy.c:139,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:140,1
    - Dst: xmlSecNssX509StoreFindCert_ex
      Src: /src/xmlsec/src/nss/x509vfy.c:144,1
    - Dst: xmlSecNssX509StoreFindCert_ex
      Src: /src/xmlsec/src/nss/x509vfy.c:147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 6
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 128
    functionDepth: 4
    functionLinenumber: 128
    functionLinenumberEnd: 151
    functionName: xmlSecNssX509StoreFindCert
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecBase64DecodeInPlace
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecNssX509StoreFindCert_ex
    linkageType: ''
    returnType: CERTCertificate
    signature: "CERTCertificate *\nxmlSecNssX509StoreFindCert(xmlSecKeyDataStorePtr
      store, xmlChar *subjectName,\n                                xmlChar *issuerName,
      xmlChar *issuerSerial,\n                                xmlChar *ski, xmlSecKeyInfoCtx*
      keyInfoCtx)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:179,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:180,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:180,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/x509vfy.c:181,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:183,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:184,1
    - Dst: xmlSecNssX509FindCertCtxInitialize
      Src: /src/xmlsec/src/nss/x509vfy.c:188,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:193,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:194,1
    - Dst: xmlSecNssX509FindCert
      Src: /src/xmlsec/src/nss/x509vfy.c:198,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 7
    argNames:
    - store
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    - keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 203
    functionName: xmlSecNssX509StoreFindCert_ex
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - xmlSecNssX509FindCert
    - xmlSecNssX509FindCertCtxInitialize
    - xmlSecNssX509FindCertCtxFinalize
    linkageType: ''
    returnType: CERTCertificate
    signature: "CERTCertificate *\nxmlSecNssX509StoreFindCert_ex(xmlSecKeyDataStorePtr
      store, xmlChar *subjectName,\n                                xmlChar *issuerName,
      xmlChar *issuerSerial,\n                                 xmlSecByte * ski, xmlSecSize
      skiSize,\n                                 xmlSecKeyInfoCtx* keyInfoCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:213,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:213,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:214,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:216,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:217,1
    - Dst: xmlSecNssX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/nss/x509vfy.c:221,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:223,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:224,1
    - Dst: xmlSecNssX509FindCert
      Src: /src/xmlsec/src/nss/x509vfy.c:228,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:231,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - store
    - x509Value
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 233
    functionName: xmlSecNssX509StoreFindCertByValue
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecNssX509FindCertCtxInitializeFromValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - xmlSecNssX509FindCert
    - xmlSecNssX509FindCertCtxFinalize
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509StoreFindCertByValue(xmlSecKeyDataStorePtr store, xmlSecKeyX509DataValuePtr
      x509Value)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:245,1
    - Dst: SECITEM_CompareItem
      Src: /src/xmlsec/src/nss/x509vfy.c:252,1
    - Dst: DER_DecodeTimeChoice
      Src: /src/xmlsec/src/nss/x509vfy.c:262,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:264,1
    - Dst: xmlSecNssX509CertGetTime
      Src: /src/xmlsec/src/nss/x509vfy.c:267,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:269,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - cert
    - crl
    - keyInfoCtx
    argTypes:
    - CERTCertificate*
    - CERTSignedCrl*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 284
    functionName: xmlSecNssX509StoreCheckIfCertIsRevoked
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - DER_DecodeTimeChoice
    - xmlSecNssError
    - SECITEM_CompareItem
    - xmlSecNssX509CertGetTime
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreCheckIfCertIsRevoked(CERTCertificate* cert, CERTSignedCrl*
      crl, xmlSecKeyInfoCtx* keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:293,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:294,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:295,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:297,1
    - Dst: SECITEM_CompareItem
      Src: /src/xmlsec/src/nss/x509vfy.c:304,1
    - Dst: DER_DecodeTimeChoice
      Src: /src/xmlsec/src/nss/x509vfy.c:309,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:311,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 4
    argNames:
    - x509StoreCtx
    - cert
    - res
    - keyInfoCtx
    argTypes:
    - xmlSecNssX509StoreCtxPtr
    - CERTCertificate*
    - CERTSignedCrl**
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 286
    functionDepth: 1
    functionLinenumber: 286
    functionLinenumberEnd: 324
    functionName: xmlSecNssX509StoreFindBestCrl
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssError
    - SECITEM_CompareItem
    - DER_DecodeTimeChoice
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreFindBestCrl(xmlSecNssX509StoreCtxPtr x509StoreCtx,
      CERTCertificate* cert, CERTSignedCrl ** res, xmlSecKeyInfoCtx* keyInfoCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:338,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:339,1
    - Dst: CERT_NewCertList
      Src: /src/xmlsec/src/nss/x509vfy.c:341,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:343,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509vfy.c:347,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509vfy.c:347,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509vfy.c:347,1
    - Dst: xmlSecNssX509StoreFindBestCrl
      Src: /src/xmlsec/src/nss/x509vfy.c:354,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:356,1
    - Dst: xmlSecNssX509StoreCheckIfCertIsRevoked
      Src: /src/xmlsec/src/nss/x509vfy.c:360,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:362,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/x509vfy.c:371,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:373,1
    - Dst: CERT_AddCertToListTail
      Src: /src/xmlsec/src/nss/x509vfy.c:376,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:378,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 4
    argNames:
    - x509StoreCtx
    - certs
    - res
    - keyInfoCtx
    argTypes:
    - xmlSecNssX509StoreCtxPtr
    - CERTCertList*
    - CERTCertList**
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 326
    functionDepth: 3
    functionLinenumber: 326
    functionLinenumberEnd: 385
    functionName: xmlSecNssX509StoreRemoveRevokedCerts
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - CERT_NewCertList
    - xmlSecAssert2
    - CERT_AddCertToListTail
    - xmlSecNssX509StoreFindBestCrl
    - xmlSecNssError
    - xmlSecNssX509StoreCheckIfCertIsRevoked
    - CERT_LIST_HEAD
    - CERT_DupCertificate
    - CERT_LIST_NEXT
    - CERT_LIST_END
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssX509StoreRemoveRevokedCerts(xmlSecNssX509StoreCtxPtr
      x509StoreCtx, CERTCertList* certs,\n    CERTCertList** res, xmlSecKeyInfoCtx*
      keyInfoCtx\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:391,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:392,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509vfy.c:394,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509vfy.c:394,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509vfy.c:394,1
    - Dst: SECITEM_CompareItem
      Src: /src/xmlsec/src/nss/x509vfy.c:399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - cert
    - certs
    argTypes:
    - CERTCertificate*
    - CERTCertList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 404
    functionName: xmlSecNssX509StoreFindChildCert
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - SECITEM_CompareItem
    - CERT_LIST_HEAD
    - CERT_LIST_NEXT
    - CERT_LIST_END
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509StoreFindChildCert(CERTCertificate* cert, CERTCertList* certs)'
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:415,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:416,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:417,1
    - Dst: LL_UI2L
      Src: /src/xmlsec/src/nss/x509vfy.c:426,1
    - Dst: LL_MUL
      Src: /src/xmlsec/src/nss/x509vfy.c:429,1
    - Dst: PR_Now
      Src: /src/xmlsec/src/nss/x509vfy.c:431,1
    - Dst: CERT_VerifyCertificate
      Src: /src/xmlsec/src/nss/x509vfy.c:436,1
    - Dst: PORT_GetError
      Src: /src/xmlsec/src/nss/x509vfy.c:444,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/x509vfy.c:449,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:451,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/x509vfy.c:454,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:456,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/x509vfy.c:459,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:461,1
    - Dst: xmlSecOtherError3
      Src: /src/xmlsec/src/nss/x509vfy.c:464,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:466,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - handle
    - cert
    - keyInfoCtx
    argTypes:
    - CERTCertDBHandle*
    - CERTCertificate*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 471
    functionName: xmlSecNssX509StoreVerifyCert
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - PR_Now
    - LL_MUL
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - LL_UI2L
    - xmlSecOtherError2
    - PORT_GetError
    - xmlSecOtherError3
    - CERT_VerifyCertificate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreVerifyCert(CERTCertDBHandle *handle, CERTCertificate*
      cert, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:496,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:496,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:497,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:498,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:500,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:501,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/nss/x509vfy.c:504,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:506,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:506,1
    - Dst: xmlSecNssKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/nss/x509vfy.c:509,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:511,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:511,1
    - Dst: xmlSecNssX509StoreVerifyCert
      Src: /src/xmlsec/src/nss/x509vfy.c:515,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509vfy.c:515,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:517,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:517,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 3
    argNames:
    - store
    - key
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - xmlSecKeyPtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 489
    functionDepth: 3
    functionLinenumber: 489
    functionLinenumberEnd: 525
    functionName: xmlSecNssX509StoreVerifyKey
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - CERT_GetDefaultCertDB
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - xmlSecNssX509StoreVerifyCert
    - xmlSecNssKeyDataX509GetKeyCert
    - xmlSecKeyGetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreVerifyKey(xmlSecKeyDataStorePtr store, xmlSecKeyPtr
      key, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:546,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:546,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:547,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:548,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:550,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:551,1
    - Dst: xmlSecNssX509StoreRemoveRevokedCerts
      Src: /src/xmlsec/src/nss/x509vfy.c:559,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:561,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:561,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509vfy.c:567,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509vfy.c:567,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509vfy.c:567,1
    - Dst: xmlSecNssX509StoreFindChildCert
      Src: /src/xmlsec/src/nss/x509vfy.c:572,1
    - Dst: xmlSecNssX509StoreVerifyCert
      Src: /src/xmlsec/src/nss/x509vfy.c:577,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509vfy.c:577,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:579,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:579,1
    - Dst: CERT_DestroyCertList
      Src: /src/xmlsec/src/nss/x509vfy.c:598,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 3
    argNames:
    - store
    - certs
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataStorePtr
    - CERTCertList*
    - xmlSecKeyInfoCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 537
    functionDepth: 4
    functionLinenumber: 537
    functionLinenumberEnd: 601
    functionName: xmlSecNssX509StoreVerify
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecNssX509StoreFindChildCert
    - CERT_DestroyCertList
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - CERT_GetDefaultCertDB
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - xmlSecNssX509StoreRemoveRevokedCerts
    - xmlSecNssX509StoreVerifyCert
    - CERT_LIST_HEAD
    - CERT_LIST_NEXT
    - CERT_LIST_END
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs, xmlSecKeyInfoCtx*
      keyInfoCtx)'
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:618,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:618,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:619,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:621,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:622,1
    - Dst: CERT_NewCertList
      Src: /src/xmlsec/src/nss/x509vfy.c:625,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:627,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:627,1
    - Dst: CERT_AddCertToListTail
      Src: /src/xmlsec/src/nss/x509vfy.c:632,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:634,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:634,1
    - Dst: CERT_DecodeTrustString
      Src: /src/xmlsec/src/nss/x509vfy.c:643,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:645,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:645,1
    - Dst: CERT_ChangeCertTrust
      Src: /src/xmlsec/src/nss/x509vfy.c:648,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509vfy.c:648,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:650,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:650,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 3
    argNames:
    - store
    - cert
    - type
    argTypes:
    - xmlSecKeyDataStorePtr
    - CERTCertificate*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 656
    functionName: xmlSecNssX509StoreAdoptCert
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - CERT_NewCertList
    - CERT_DecodeTrustString
    - xmlSecAssert2
    - CERT_AddCertToListTail
    - xmlSecKeyDataStoreGetName
    - CERT_GetDefaultCertDB
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - xmlSecNssError
    - CERT_ChangeCertTrust
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreAdoptCert(xmlSecKeyDataStorePtr store, CERTCertificate*
      cert, xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:673,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:673,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:674,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:676,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:677,1
    - Dst: xmlSecNssX509CrlListAdoptCrl
      Src: /src/xmlsec/src/nss/x509vfy.c:679,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:681,1
    - Dst: xmlSecKeyDataStoreGetName
      Src: /src/xmlsec/src/nss/x509vfy.c:681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - store
    - crl
    argTypes:
    - xmlSecKeyDataStorePtr
    - CERTSignedCrl*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 668
    functionDepth: 2
    functionLinenumber: 668
    functionLinenumberEnd: 685
    functionName: xmlSecNssX509StoreAdoptCrl
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreGetName
    - xmlSecNssX509CrlListAdoptCrl
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreAdoptCrl(xmlSecKeyDataStorePtr store, CERTSignedCrl
      * crl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:690,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:690,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:692,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:693,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 698
    functionName: xmlSecNssX509StoreInitialize
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509StoreGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509StoreInitialize(xmlSecKeyDataStorePtr store)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509vfy.c:703,1
    - Dst: xmlSecKeyDataStoreCheckId
      Src: /src/xmlsec/src/nss/x509vfy.c:703,1
    - Dst: xmlSecNssX509StoreGetCtx
      Src: /src/xmlsec/src/nss/x509vfy.c:705,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509vfy.c:706,1
    - Dst: CERT_DestroyCertList
      Src: /src/xmlsec/src/nss/x509vfy.c:709,1
    - Dst: xmlSecNssX509CrlListDestroy
      Src: /src/xmlsec/src/nss/x509vfy.c:713,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:717,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyDataStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 700
    functionDepth: 1
    functionLinenumber: 700
    functionLinenumberEnd: 718
    functionName: xmlSecNssX509StoreFinalize
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - CERT_DestroyCertList
    - xmlSecAssert
    - xmlSecNssX509StoreGetCtx
    - xmlSecKeyDataStoreCheckId
    - xmlSecNssX509CrlListDestroy
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssX509StoreFinalize(xmlSecKeyDataStorePtr store)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:732,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/src/nss/x509vfy.c:739,1
    - Dst: xmlSecStrdupError
      Src: /src/xmlsec/src/nss/x509vfy.c:741,1
    - Dst: xmlStrstr
      Src: /src/xmlsec/src/nss/x509vfy.c:744,1
    - Dst: memcpy
      Src: /src/xmlsec/src/nss/x509vfy.c:745,1
    - Dst: CERT_AsciiToName
      Src: /src/xmlsec/src/nss/x509vfy.c:748,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/x509vfy.c:750,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:750,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/nss/x509vfy.c:751,1
    - Dst: xmlFree
      Src: /src/xmlsec/src/nss/x509vfy.c:755,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 726
    functionDepth: 2
    functionLinenumber: 726
    functionLinenumberEnd: 757
    functionName: xmlSecNssGetCertName
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlSecAssert2
    - CERT_AsciiToName
    - xmlSecErrorsSafeString
    - xmlSecNssError2
    - xmlStrstr
    - xmlSecStrdupError
    - memcpy
    linkageType: ''
    returnType: CERTName
    signature: 'CERTName *

      xmlSecNssGetCertName(const xmlChar * name)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:766,1
    - Dst: CERT_LIST_HEAD
      Src: /src/xmlsec/src/nss/x509vfy.c:774,1
    - Dst: CERT_LIST_END
      Src: /src/xmlsec/src/nss/x509vfy.c:775,1
    - Dst: CERT_LIST_NEXT
      Src: /src/xmlsec/src/nss/x509vfy.c:777,1
    - Dst: xmlSecNssX509FindCertCtxMatch
      Src: /src/xmlsec/src/nss/x509vfy.c:779,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:781,1
    - Dst: CERT_DupCertificate
      Src: /src/xmlsec/src/nss/x509vfy.c:784,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:786,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/x509vfy.c:795,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:797,1
    - Dst: CERT_FindCertByName
      Src: /src/xmlsec/src/nss/x509vfy.c:803,1
    - Dst: CERT_FindCertByIssuerAndSN
      Src: /src/xmlsec/src/nss/x509vfy.c:808,1
    - Dst: CERT_FindCertBySubjectKeyID
      Src: /src/xmlsec/src/nss/x509vfy.c:813,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - certsList
    - findCertCtx
    argTypes:
    - CERTCertList*
    - xmlSecNssX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 818
    functionName: xmlSecNssX509FindCert
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecInternalError
    - CERT_DupCertificate
    - CERT_FindCertByName
    - xmlSecAssert2
    - CERT_GetDefaultCertDB
    - xmlSecNssError
    - CERT_FindCertBySubjectKeyID
    - CERT_LIST_HEAD
    - xmlSecNssX509FindCertCtxMatch
    - CERT_LIST_NEXT
    - CERT_LIST_END
    - CERT_FindCertByIssuerAndSN
    linkageType: ''
    returnType: CERTCertificate
    signature: 'CERTCertificate *

      xmlSecNssX509FindCert(CERTCertList* certsList, xmlSecNssX509FindCertCtxPtr findCertCtx)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:828,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:829,1
    - Dst: PORT_ArenaAlloc
      Src: /src/xmlsec/src/nss/x509vfy.c:851,1
    - Dst: PORT_Memcpy
      Src: /src/xmlsec/src/nss/x509vfy.c:857,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_INT
      Src: /src/xmlsec/src/nss/x509vfy.c:858,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509vfy.c:858,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 3
    argNames:
    - arena
    - it
    - ui
    argTypes:
    - PLArenaPool*
    - SECItem*
    - PRUint64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 861
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 861
    functionName: xmlSecNssNumToItem
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - return
    - PORT_Memcpy
    - XMLSEC_SAFE_CAST_UINT_TO_INT
    - PORT_ArenaAlloc
    linkageType: ''
    returnType: int
    signature: int xmlSecNssNumToItem(PLArenaPool *arena, SECItem *it, PRUint64 ui)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:870,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:871,1
    - Dst: xmlSecNssX509FindCertCtxInitializeFromValue
      Src: /src/xmlsec/src/nss/x509vfy.c:873,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:875,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:876,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/src/nss/x509vfy.c:880,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/src/nss/x509vfy.c:887,1
    - Dst: xmlSecKeyGetData
      Src: /src/xmlsec/src/nss/x509vfy.c:891,1
    - Dst: xmlSecNssKeyDataX509GetKeyCert
      Src: /src/xmlsec/src/nss/x509vfy.c:895,1
    - Dst: xmlSecNssX509FindCertCtxMatch
      Src: /src/xmlsec/src/nss/x509vfy.c:901,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:903,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:904,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:913,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 2
    argNames:
    - keysList
    - x509Value
    argTypes:
    - xmlSecPtrListPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 863
    functionDepth: 3
    functionLinenumber: 863
    functionLinenumberEnd: 915
    functionName: xmlSecNssX509FindKeyByValue
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 0
    functionsReached:
    - xmlSecNssX509FindCertCtxInitializeFromValue
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecPtrListGetItem
    - xmlSecNssKeyDataX509GetKeyCert
    - xmlSecNssX509FindCertCtxMatch
    - xmlSecKeyGetData
    - xmlSecNssX509FindCertCtxFinalize
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecNssX509FindKeyByValue(xmlSecPtrListPtr keysList,
      xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/x509vfy.c:929,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:930,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:936,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:942,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:948,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:954,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:960,1
    - Dst: xmlSecOtherError2
      Src: /src/xmlsec/src/nss/x509vfy.c:966,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:967,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - href
    argTypes:
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 922
    functionDepth: 1
    functionLinenumber: 922
    functionLinenumberEnd: 970
    functionName: xmlSecNssX509GetDigestFromAlgorithm
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlStrcmp
    - xmlSecErrorsSafeString
    - xmlSecOtherError2
    linkageType: ''
    returnType: SECOidTag
    signature: SECOidTag xmlSecNssX509GetDigestFromAlgorithm(const xmlChar* href)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:980,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:982,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/x509vfy.c:988,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509vfy.c:988,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/x509vfy.c:991,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:993,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:994,1
    - Dst: xmlSecNssGetCertName
      Src: /src/xmlsec/src/nss/x509vfy.c:1000,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509vfy.c:1002,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:1003,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1004,1
    - Dst: SEC_ASN1EncodeItem
      Src: /src/xmlsec/src/nss/x509vfy.c:1007,1
    - Dst: SEC_ASN1_GET
      Src: /src/xmlsec/src/nss/x509vfy.c:1007,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/x509vfy.c:1009,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:1010,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1011,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:1018,1
    - Dst: xmlSecNssGetCertName
      Src: /src/xmlsec/src/nss/x509vfy.c:1020,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/x509vfy.c:1022,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:1023,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1024,1
    - Dst: SEC_ASN1EncodeItem
      Src: /src/xmlsec/src/nss/x509vfy.c:1027,1
    - Dst: SEC_ASN1_GET
      Src: /src/xmlsec/src/nss/x509vfy.c:1027,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/x509vfy.c:1029,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/x509vfy.c:1030,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1031,1
    - Dst: PR_sscanf
      Src: /src/xmlsec/src/nss/x509vfy.c:1039,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:1040,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1041,1
    - Dst: xmlSecNssNumToItem
      Src: /src/xmlsec/src/nss/x509vfy.c:1044,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:1046,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1047,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 59
    argCount: 6
    argNames:
    - ctx
    - subjectName
    - issuerName
    - issuerSerial
    - ski
    - skiSize
    argTypes:
    - xmlSecNssX509FindCertCtxPtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 973
    functionDepth: 3
    functionLinenumber: 973
    functionLinenumberEnd: 1055
    functionName: xmlSecNssX509FindCertCtxInitialize
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecInternalError2
    - xmlSecNssNumToItem
    - xmlSecNssError2
    - SEC_ASN1EncodeItem
    - return
    - xmlSecNssError
    - xmlSecNssGetCertName
    - SEC_ASN1_GET
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PORT_NewArena
    - xmlSecNssX509FindCertCtxFinalize
    - PR_sscanf
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssX509FindCertCtxInitialize(xmlSecNssX509FindCertCtxPtr
      ctx,\n    const xmlChar *subjectName,\n    const xmlChar *issuerName, const
      xmlChar *issuerSerial,\n    xmlSecByte * ski, xmlSecSize skiSize\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:1061,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:1062,1
    - Dst: xmlSecNssX509FindCertCtxInitialize
      Src: /src/xmlsec/src/nss/x509vfy.c:1064,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/x509vfy.c:1067,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509vfy.c:1067,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:1070,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1071,1
    - Dst: xmlSecBufferIsEmpty
      Src: /src/xmlsec/src/nss/x509vfy.c:1075,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/x509vfy.c:1078,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/x509vfy.c:1079,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/x509vfy.c:1080,1
    - Dst: return
      Src: /src/xmlsec/src/nss/x509vfy.c:1080,1
    - Dst: xmlSecNssX509GetDigestFromAlgorithm
      Src: /src/xmlsec/src/nss/x509vfy.c:1082,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/x509vfy.c:1084,1
    - Dst: xmlSecNssX509FindCertCtxFinalize
      Src: /src/xmlsec/src/nss/x509vfy.c:1085,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - x509Value
    argTypes:
    - xmlSecNssX509FindCertCtxPtr
    - xmlSecKeyX509DataValuePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1057
    functionDepth: 4
    functionLinenumber: 1057
    functionLinenumberEnd: 1091
    functionName: xmlSecNssX509FindCertCtxInitializeFromValue
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecNssX509GetDigestFromAlgorithm
    - xmlSecInternalError
    - xmlSecBufferIsEmpty
    - xmlSecAssert2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferGetSize
    - xmlSecNssX509FindCertCtxInitialize
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecNssX509FindCertCtxFinalize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509FindCertCtxInitializeFromValue(xmlSecNssX509FindCertCtxPtr
      ctx, xmlSecKeyX509DataValuePtr x509Value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/x509vfy.c:1095,1
    - Dst: CERT_DestroyName
      Src: /src/xmlsec/src/nss/x509vfy.c:1098,1
    - Dst: CERT_DestroyName
      Src: /src/xmlsec/src/nss/x509vfy.c:1101,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/x509vfy.c:1104,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:1106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecNssX509FindCertCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1093
    functionDepth: 1
    functionLinenumber: 1093
    functionLinenumberEnd: 1107
    functionName: xmlSecNssX509FindCertCtxFinalize
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 5
    functionsReached:
    - PORT_FreeArena
    - xmlSecAssert
    - CERT_DestroyName
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssX509FindCertCtxFinalize(xmlSecNssX509FindCertCtxPtr ctx)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:1114,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/x509vfy.c:1115,1
    - Dst: SECITEM_ItemsAreEqual
      Src: /src/xmlsec/src/nss/x509vfy.c:1120,1
    - Dst: SECITEM_ItemsAreEqual
      Src: /src/xmlsec/src/nss/x509vfy.c:1132,1
    - Dst: SECITEM_ItemsAreEqual
      Src: /src/xmlsec/src/nss/x509vfy.c:1133,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/x509vfy.c:1147,1
    - Dst: CERT_FindSubjectKeyIDExtension
      Src: /src/xmlsec/src/nss/x509vfy.c:1148,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/x509vfy.c:1150,1
    - Dst: memcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:1154,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/x509vfy.c:1156,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/x509vfy.c:1159,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/x509vfy.c:1173,1
    - Dst: xmlSecNssError3
      Src: /src/xmlsec/src/nss/x509vfy.c:1175,1
    - Dst: PK11_HashBuf
      Src: /src/xmlsec/src/nss/x509vfy.c:1179,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/x509vfy.c:1181,1
    - Dst: memcmp
      Src: /src/xmlsec/src/nss/x509vfy.c:1186,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 48
    argCount: 2
    argNames:
    - ctx
    - cert
    argTypes:
    - xmlSecNssX509FindCertCtxPtr
    - CERTCertificate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1110
    functionDepth: 1
    functionLinenumber: 1110
    functionLinenumberEnd: 1197
    functionName: xmlSecNssX509FindCertCtxMatch
    functionSourceFile: /src/xmlsec/src/nss/x509vfy.c
    functionUses: 2
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssError2
    - SECITEM_ItemsAreEqual
    - PK11_HashBuf
    - xmlSecNssError
    - memcmp
    - CERT_FindSubjectKeyIDExtension
    - xmlSecNssError3
    - SECITEM_FreeItem
    - HASH_ResultLenByOidTag
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssX509FindCertCtxMatch(xmlSecNssX509FindCertCtxPtr ctx,
      CERTCertificate* cert)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:91,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:97,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:103,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:109,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:115,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:121,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:127,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 134
    functionName: xmlSecNssHmacCheckId
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssHmacCheckId(xmlSecTransformPtr transform)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:140,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:140,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:141,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:141,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:143,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:144,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/hmac.c:145,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:148,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:154,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:160,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:166,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:172,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:178,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/hmac.c:184,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/hmac.c:191,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 195
    functionName: xmlSecNssHmacInitialize
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssHmacCheckId
    - xmlSecNssHmacGetCtx
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssHmacInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/hmac.c:201,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:201,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/hmac.c:202,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:202,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:204,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/hmac.c:205,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/hmac.c:208,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/hmac.c:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 211
    functionName: xmlSecNssHmacFinalize
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecNssHmacCheckId
    - xmlSecAssert
    - xmlSecNssHmacGetCtx
    - PK11_DestroyContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssHmacFinalize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:219,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:219,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:220,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:220,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:221,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/hmac.c:222,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:224,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:225,1
    - Dst: xmlSecTransformHmacReadOutputBitsSize
      Src: /src/xmlsec/src/nss/hmac.c:227,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/hmac.c:229,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:230,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:233,1
    - Dst: XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
      Src: /src/xmlsec/src/nss/hmac.c:233,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - transform
    - node
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlNodePtr
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 236
    functionName: xmlSecNssHmacNodeRead
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssHmacCheckId
    - xmlSecNssHmacGetCtx
    - xmlSecTransformGetName
    - XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
    - xmlSecTransformHmacReadOutputBitsSize
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr
      node,\n                      xmlSecTransformCtxPtr transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:243,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:243,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:246,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:246,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:248,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 260
    functionName: xmlSecNssHmacSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssHmacGetCtx
    - xmlSecTransformCheckSize
    - xmlSecNssHmacCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:273,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:273,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:274,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:275,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:275,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:276,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:279,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:280,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:281,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/hmac.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:284,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/hmac.c:284,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/hmac.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:287,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/hmac.c:289,1
    - Dst: xmlSecInvalidZeroKeyDataSizeError
      Src: /src/xmlsec/src/nss/hmac.c:291,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:291,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/hmac.c:295,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/hmac.c:296,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/hmac.c:297,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/hmac.c:298,1
    - Dst: return
      Src: /src/xmlsec/src/nss/hmac.c:298,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:298,1
    - Dst: PK11_GetBestSlot
      Src: /src/xmlsec/src/nss/hmac.c:300,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:302,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:302,1
    - Dst: PK11_ImportSymKey
      Src: /src/xmlsec/src/nss/hmac.c:306,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:309,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:309,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/hmac.c:310,1
    - Dst: PK11_CreateContextBySymKey
      Src: /src/xmlsec/src/nss/hmac.c:314,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:316,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:316,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/hmac.c:317,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/hmac.c:318,1
    - Dst: PK11_FreeSymKey
      Src: /src/xmlsec/src/nss/hmac.c:322,1
    - Dst: PK11_FreeSlot
      Src: /src/xmlsec/src/nss/hmac.c:323,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 43
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 325
    functionName: xmlSecNssHmacSetKey
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - return
    - PK11_GetBestSlot
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecInvalidZeroKeyDataSizeError
    - xmlSecKeyGetValue
    - xmlSecNssError
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_ImportSymKey
    - xmlSecAssert2
    - xmlSecBufferGetData
    - PK11_FreeSymKey
    - xmlSecNssHmacGetCtx
    - memset
    - xmlSecTransformCheckSize
    - xmlSecNssHmacCheckId
    - xmlSecBufferGetSize
    - xmlSecKeyDataCheckId
    - PK11_CreateContextBySymKey
    - PK11_FreeSlot
    linkageType: ''
    returnType: int
    signature: int xmlSecNssHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:334,1
    - Dst: xmlSecTransformIsValid
      Src: /src/xmlsec/src/nss/hmac.c:334,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:335,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:336,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:337,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:338,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/src/nss/hmac.c:339,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:341,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:342,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:343,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:344,1
    - Dst: xmlSecTransformHmacVerify
      Src: /src/xmlsec/src/nss/hmac.c:347,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/hmac.c:349,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 360
    functionName: xmlSecNssHmacVerify
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecInternalError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecTransformHmacVerify
    - xmlSecTransformIsValid
    - xmlSecNssHmacGetCtx
    - xmlSecTransformGetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssHmacVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:369,1
    - Dst: xmlSecNssHmacCheckId
      Src: /src/xmlsec/src/nss/hmac.c:369,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:370,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:371,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/hmac.c:371,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:372,1
    - Dst: xmlSecNssHmacGetCtx
      Src: /src/xmlsec/src/nss/hmac.c:374,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:375,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:376,1
    - Dst: PK11_DigestBegin
      Src: /src/xmlsec/src/nss/hmac.c:382,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:384,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:384,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/hmac.c:393,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/hmac.c:397,1
    - Dst: return
      Src: /src/xmlsec/src/nss/hmac.c:397,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:397,1
    - Dst: PK11_DigestOp
      Src: /src/xmlsec/src/nss/hmac.c:398,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/hmac.c:398,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:400,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:400,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/hmac.c:404,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/hmac.c:406,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:407,1
    - Dst: PK11_DigestFinal
      Src: /src/xmlsec/src/nss/hmac.c:416,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/hmac.c:418,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:418,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:421,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_SIZE
      Src: /src/xmlsec/src/nss/hmac.c:422,1
    - Dst: return
      Src: /src/xmlsec/src/nss/hmac.c:422,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:422,1
    - Dst: xmlSecTransformHmacWriteOutput
      Src: /src/xmlsec/src/nss/hmac.c:431,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/hmac.c:433,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/hmac.c:433,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/hmac.c:441,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/hmac.c:441,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/hmac.c:443,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 61
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 448
    functionName: xmlSecNssHmacExecute
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached:
    - return
    - PK11_DigestFinal
    - xmlSecTransformHmacWriteOutput
    - xmlSecNssError
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_DigestOp
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecNssHmacGetCtx
    - xmlSecTransformCheckSize
    - XMLSEC_SAFE_CAST_UINT_TO_SIZE
    - xmlSecNssHmacCheckId
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - PK11_DigestBegin
    linkageType: ''
    returnType: int
    signature: int xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr
      transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 494
    functionName: xmlSecNssTransformHmacRipemd160GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacRipemd160GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: xmlSecNssTransformHmacMd5GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionName: xmlSecNssTransformHmacSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: xmlSecNssTransformHmacSha224GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 678
    functionName: xmlSecNssTransformHmacSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 721
    functionDepth: 0
    functionLinenumber: 721
    functionLinenumberEnd: 724
    functionName: xmlSecNssTransformHmacSha384GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 767
    functionDepth: 0
    functionLinenumber: 767
    functionLinenumberEnd: 770
    functionName: xmlSecNssTransformHmacSha512GetKlass
    functionSourceFile: /src/xmlsec/src/nss/hmac.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformHmacSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: xmlSecNssSymKeyDataCheckId
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNssSymKeyDataCheckId(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:77,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:77,1
    - Dst: xmlSecKeyDataBinaryValueInitialize
      Src: /src/xmlsec/src/nss/symkeys.c:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 75
    functionDepth: 3
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionName: xmlSecNssSymKeyDataInitialize
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueInitialize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSymKeyDataInitialize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:84,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:84,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:85,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:85,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:86,1
    - Dst: xmlSecKeyDataBinaryValueDuplicate
      Src: /src/xmlsec/src/nss/symkeys.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 82
    functionDepth: 3
    functionLinenumber: 82
    functionLinenumberEnd: 89
    functionName: xmlSecNssSymKeyDataDuplicate
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueDuplicate
    - xmlSecNssSymKeyDataCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr
      src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/symkeys.c:93,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:93,1
    - Dst: xmlSecKeyDataBinaryValueFinalize
      Src: /src/xmlsec/src/nss/symkeys.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 91
    functionDepth: 3
    functionLinenumber: 91
    functionLinenumberEnd: 96
    functionName: xmlSecNssSymKeyDataFinalize
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueFinalize
    linkageType: ''
    returnType: void
    signature: void xmlSecNssSymKeyDataFinalize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:101,1
    - Dst: xmlSecNssSymKeyDataKlassCheck
      Src: /src/xmlsec/src/nss/symkeys.c:101,1
    - Dst: xmlSecKeyDataBinaryValueXmlRead
      Src: /src/xmlsec/src/nss/symkeys.c:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 11
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: xmlSecNssSymKeyDataXmlRead
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlRead
    - xmlSecNssSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssSymKeyDataXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                              xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:109,1
    - Dst: xmlSecNssSymKeyDataKlassCheck
      Src: /src/xmlsec/src/nss/symkeys.c:109,1
    - Dst: xmlSecKeyDataBinaryValueXmlWrite
      Src: /src/xmlsec/src/nss/symkeys.c:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - id
    - key
    - node
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlNodePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 106
    functionDepth: 9
    functionLinenumber: 106
    functionLinenumberEnd: 112
    functionName: xmlSecNssSymKeyDataXmlWrite
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueXmlWrite
    - xmlSecNssSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssSymKeyDataXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                                   xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:118,1
    - Dst: xmlSecNssSymKeyDataKlassCheck
      Src: /src/xmlsec/src/nss/symkeys.c:118,1
    - Dst: xmlSecKeyDataBinaryValueBinRead
      Src: /src/xmlsec/src/nss/symkeys.c:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 3
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: xmlSecNssSymKeyDataBinRead
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinRead
    - xmlSecNssSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssSymKeyDataBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                                   const xmlSecByte* buf, xmlSecSize bufSize,\n
      \                                   xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:127,1
    - Dst: xmlSecNssSymKeyDataKlassCheck
      Src: /src/xmlsec/src/nss/symkeys.c:127,1
    - Dst: xmlSecKeyDataBinaryValueBinWrite
      Src: /src/xmlsec/src/nss/symkeys.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - id
    - key
    - buf
    - bufSize
    - keyInfoCtx
    argTypes:
    - xmlSecKeyDataId
    - xmlSecKeyPtr
    - xmlSecByte**
    - xmlSecSize*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 123
    functionDepth: 3
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionName: xmlSecNssSymKeyDataBinWrite
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataBinaryValueBinWrite
    - xmlSecNssSymKeyDataKlassCheck
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssSymKeyDataBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,\n
      \                                   xmlSecByte** buf, xmlSecSize* bufSize,\n
      \                                   xmlSecKeyInfoCtxPtr keyInfoCtx)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:136,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:136,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:137,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:139,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:140,1
    - Dst: xmlSecNssGenerateRandom
      Src: /src/xmlsec/src/nss/symkeys.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - data
    - sizeBits
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecSize
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 132
    functionDepth: 2
    functionLinenumber: 132
    functionLinenumberEnd: 143
    functionName: xmlSecNssSymKeyDataGenerate
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecNssGenerateRandom
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSymKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,
      xmlSecKeyDataType type XMLSEC_ATTRIBUTE_UNUSED)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:149,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:149,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:151,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:152,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/symkeys.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 155
    functionName: xmlSecNssSymKeyDataGetType
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssSymKeyDataCheckId
    - xmlSecBufferGetSize
    - xmlSecKeyDataBinaryValueGetBuffer
    linkageType: ''
    returnType: xmlSecKeyDataType
    signature: xmlSecKeyDataType xmlSecNssSymKeyDataGetType(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:159,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:159,1
    - Dst: xmlSecKeyDataBinaryValueGetSize
      Src: /src/xmlsec/src/nss/symkeys.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecKeyDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionName: xmlSecNssSymKeyDataGetSize
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetSize
    linkageType: ''
    returnType: xmlSecSize
    signature: xmlSecSize xmlSecNssSymKeyDataGetSize(xmlSecKeyDataPtr data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/symkeys.c:166,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:166,1
    - Dst: xmlSecKeyDataBinaryValueDebugDump
      Src: /src/xmlsec/src/nss/symkeys.c:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 164
    functionDepth: 3
    functionLinenumber: 164
    functionLinenumberEnd: 169
    functionName: xmlSecNssSymKeyDataDebugDump
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugDump
    linkageType: ''
    returnType: void
    signature: void xmlSecNssSymKeyDataDebugDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/symkeys.c:173,1
    - Dst: xmlSecNssSymKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:173,1
    - Dst: xmlSecKeyDataBinaryValueDebugXmlDump
      Src: /src/xmlsec/src/nss/symkeys.c:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - data
    - output
    argTypes:
    - xmlSecKeyDataPtr
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 171
    functionDepth: 3
    functionLinenumber: 171
    functionLinenumberEnd: 176
    functionName: xmlSecNssSymKeyDataDebugXmlDump
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNssSymKeyDataCheckId
    - xmlSecKeyDataBinaryValueDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecNssSymKeyDataDebugXmlDump(xmlSecKeyDataPtr data, FILE* output)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - klass
    argTypes:
    - xmlSecKeyDataKlass*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 205
    functionName: xmlSecNssSymKeyDataKlassCheck
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSymKeyDataKlassCheck(xmlSecKeyDataKlass* klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionName: xmlSecNssKeyDataAesGetKlass
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataAesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:277,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:277,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:278,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:279,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:281,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:282,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/symkeys.c:284,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 273
    functionDepth: 3
    functionLinenumber: 273
    functionLinenumberEnd: 285
    functionName: xmlSecNssKeyDataAesSet
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataAesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionName: xmlSecNssKeyDataDesGetKlass
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataDesGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:358,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:358,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:359,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:360,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:362,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:363,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/symkeys.c:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 354
    functionDepth: 3
    functionLinenumber: 354
    functionLinenumberEnd: 366
    functionName: xmlSecNssKeyDataDesSet
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataDesSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 421
    functionDepth: 0
    functionLinenumber: 421
    functionLinenumberEnd: 424
    functionName: xmlSecNssKeyDataHmacGetKlass
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataHmacGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:440,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:440,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:441,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:442,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:444,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:445,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/symkeys.c:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 436
    functionDepth: 3
    functionLinenumber: 436
    functionLinenumberEnd: 448
    functionName: xmlSecNssKeyDataHmacSet
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataHmacSet(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 506
    functionName: xmlSecNssKeyDataPbkdf2GetKlass
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyDataId
    signature: xmlSecKeyDataId xmlSecNssKeyDataPbkdf2GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:522,1
    - Dst: xmlSecKeyDataCheckId
      Src: /src/xmlsec/src/nss/symkeys.c:522,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:524,1
    - Dst: xmlSecKeyDataBinaryValueGetBuffer
      Src: /src/xmlsec/src/nss/symkeys.c:526,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/symkeys.c:527,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/symkeys.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - data
    - buf
    - bufSize
    argTypes:
    - xmlSecKeyDataPtr
    - xmlSecByte*
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 518
    functionDepth: 3
    functionLinenumber: 518
    functionLinenumberEnd: 530
    functionName: xmlSecNssKeyDataPbkdf2Set
    functionSourceFile: /src/xmlsec/src/nss/symkeys.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataCheckId
    - xmlSecKeyDataBinaryValueGetBuffer
    - xmlSecBufferSetData
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeyDataPbkdf2Set(xmlSecKeyDataPtr data, const xmlSecByte*
      buf, xmlSecSize bufSize)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:94,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:99,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:107,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:112,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:117,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:122,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:127,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:136,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:142,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:148,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:154,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:160,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:166,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:172,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:178,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:184,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:190,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:196,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 204
    functionName: xmlSecNssSignatureCheckId
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureCheckId(xmlSecTransformPtr transform)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:210,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:211,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:211,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:212,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:213,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/signatures.c:215,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:219,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:226,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:236,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:243,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:250,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:257,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:264,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:275,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:283,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:290,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:297,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:304,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:311,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:320,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/signatures.c:325,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:331,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/signatures.c:336,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:342,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/signatures.c:347,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:353,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/signatures.c:358,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/signatures.c:364,1
    - Dst: HASH_ResultLenByOidTag
      Src: /src/xmlsec/src/nss/signatures.c:369,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/signatures.c:377,1
    - Dst: PORT_NewArena
      Src: /src/xmlsec/src/nss/signatures.c:381,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:383,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:383,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 103
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 389
    functionName: xmlSecNssSignatureInitialize
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecNssSignatureGetCtx
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssError
    - xmlSecTransformGetName
    - PORT_NewArena
    - xmlSecNssSignatureCheckId
    - HASH_ResultLenByOidTag
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureInitialize(xmlSecTransformPtr transform)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/signatures.c:395,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:395,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/signatures.c:396,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:396,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/signatures.c:397,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:399,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/signatures.c:400,1
    - Dst: SGN_DestroyContext
      Src: /src/xmlsec/src/nss/signatures.c:403,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/signatures.c:405,1
    - Dst: VFY_DestroyContext
      Src: /src/xmlsec/src/nss/signatures.c:408,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/signatures.c:410,1
    - Dst: PORT_FreeArena
      Src: /src/xmlsec/src/nss/signatures.c:415,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/signatures.c:418,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 391
    functionDepth: 2
    functionLinenumber: 391
    functionLinenumberEnd: 419
    functionName: xmlSecNssSignatureFinalize
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecNssSignatureGetCtx
    - SECKEY_DestroyPublicKey
    - xmlSecTransformCheckSize
    - SECKEY_DestroyPrivateKey
    - PORT_FreeArena
    - xmlSecAssert
    - VFY_DestroyContext
    - xmlSecNssSignatureCheckId
    - SGN_DestroyContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssSignatureFinalize(xmlSecTransformPtr transform)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:431,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:432,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:433,1
    - Dst: PORT_Memset
      Src: /src/xmlsec/src/nss/signatures.c:435,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/signatures.c:438,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:440,1
    - Dst: SECOID_SetAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:443,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:445,1
    - Dst: PORT_Memset
      Src: /src/xmlsec/src/nss/signatures.c:450,1
    - Dst: SECOID_SetAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:451,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:453,1
    - Dst: SEC_ASN1EncodeItem
      Src: /src/xmlsec/src/nss/signatures.c:456,1
    - Dst: SEC_ASN1_GET
      Src: /src/xmlsec/src/nss/signatures.c:456,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:458,1
    - Dst: PORT_ArenaZAlloc
      Src: /src/xmlsec/src/nss/signatures.c:462,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:464,1
    - Dst: SECOID_SetAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:467,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:469,1
    - Dst: XMLSEC_SAFE_CAST_UINT_TO_LONG
      Src: /src/xmlsec/src/nss/signatures.c:474,1
    - Dst: return
      Src: /src/xmlsec/src/nss/signatures.c:474,1
    - Dst: SEC_ASN1EncodeInteger
      Src: /src/xmlsec/src/nss/signatures.c:475,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:477,1
    - Dst: SEC_ASN1EncodeItem
      Src: /src/xmlsec/src/nss/signatures.c:482,1
    - Dst: SEC_ASN1_GET
      Src: /src/xmlsec/src/nss/signatures.c:482,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:484,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 48
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecNssSignatureCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 490
    functionName: xmlSecNssSignatureCreatePssParams
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_UINT_TO_LONG
    - PORT_Memset
    - xmlSecAssert2
    - SEC_ASN1EncodeInteger
    - SEC_ASN1EncodeItem
    - return
    - xmlSecNssError
    - SECOID_SetAlgorithmID
    - PORT_ArenaZAlloc
    - SEC_ASN1_GET
    linkageType: ''
    returnType: SECItem
    signature: 'SECItem *

      xmlSecNssSignatureCreatePssParams(xmlSecNssSignatureCtxPtr ctx)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:497,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:498,1
    - Dst: xmlSecNssSignatureCreatePssParams
      Src: /src/xmlsec/src/nss/signatures.c:500,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:502,1
    - Dst: PORT_Memset
      Src: /src/xmlsec/src/nss/signatures.c:506,1
    - Dst: SECOID_SetAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:507,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:509,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - xmlSecNssSignatureCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 492
    functionDepth: 2
    functionLinenumber: 492
    functionLinenumberEnd: 515
    functionName: xmlSecNssSignatureCreatePssAlgId
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - PORT_Memset
    - xmlSecInternalError
    - xmlSecNssSignatureCreatePssParams
    - xmlSecAssert2
    - SECOID_SetAlgorithmID
    - xmlSecNssError
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureCreatePssAlgId(xmlSecNssSignatureCtxPtr ctx)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:523,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:523,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:524,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:525,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:525,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:526,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:528,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:529,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:530,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:531,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:532,1
    - Dst: xmlSecKeyCheckId
      Src: /src/xmlsec/src/nss/signatures.c:532,1
    - Dst: xmlSecKeyGetValue
      Src: /src/xmlsec/src/nss/signatures.c:534,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:535,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/signatures.c:539,1
    - Dst: xmlSecNssPKIKeyDataGetPrivKey
      Src: /src/xmlsec/src/nss/signatures.c:541,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:543,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:543,1
    - Dst: xmlSecNssSignatureCreatePssAlgId
      Src: /src/xmlsec/src/nss/signatures.c:548,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:550,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:550,1
    - Dst: SGN_NewContextWithAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:554,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:556,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:556,1
    - Dst: SGN_NewContext
      Src: /src/xmlsec/src/nss/signatures.c:560,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:562,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:562,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/signatures.c:568,1
    - Dst: xmlSecNssPKIKeyDataGetPubKey
      Src: /src/xmlsec/src/nss/signatures.c:570,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:572,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:573,1
    - Dst: xmlSecNssSignatureCreatePssAlgId
      Src: /src/xmlsec/src/nss/signatures.c:578,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:580,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:580,1
    - Dst: VFY_CreateContextWithAlgorithmID
      Src: /src/xmlsec/src/nss/signatures.c:584,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:591,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:591,1
    - Dst: VFY_CreateContext
      Src: /src/xmlsec/src/nss/signatures.c:595,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:601,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:601,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 68
    argCount: 2
    argNames:
    - transform
    - key
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 517
    functionDepth: 3
    functionLinenumber: 517
    functionLinenumberEnd: 608
    functionName: xmlSecNssSignatureSetKey
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecNssSignatureGetCtx
    - SECKEY_DestroyPublicKey
    - xmlSecInternalError
    - xmlSecKeyGetValue
    - xmlSecTransformCheckSize
    - xmlSecNssPKIKeyDataGetPubKey
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - SGN_NewContextWithAlgorithmID
    - xmlSecNssPKIKeyDataGetPrivKey
    - xmlSecNssSignatureCreatePssAlgId
    - xmlSecNssError
    - xmlSecKeyCheckId
    - xmlSecTransformGetName
    - VFY_CreateContextWithAlgorithmID
    - xmlSecNssSignatureCheckId
    - SGN_NewContext
    - VFY_CreateContext
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr
      key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:614,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:614,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:615,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:616,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:616,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:617,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:619,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:620,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - transform
    - keyReq
    argTypes:
    - xmlSecTransformPtr
    - xmlSecKeyReqPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 610
    functionDepth: 2
    functionLinenumber: 610
    functionLinenumberEnd: 632
    functionName: xmlSecNssSignatureSetKeyReq
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssSignatureGetCtx
    - xmlSecNssSignatureCheckId
    - xmlSecTransformCheckSize
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr
      keyReq)
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - alg
    argTypes:
    - SECOidTag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 653
    functionName: xmlSecNssSignatureAlgorithmEncoded
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureAlgorithmEncoded(SECOidTag alg)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:663,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:663,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:664,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:665,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:665,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:666,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:667,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:668,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:670,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:671,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/signatures.c:674,1
    - Dst: return
      Src: /src/xmlsec/src/nss/signatures.c:674,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:674,1
    - Dst: xmlSecNssSignatureAlgorithmEncoded
      Src: /src/xmlsec/src/nss/signatures.c:676,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/signatures.c:681,1
    - Dst: DSAU_EncodeDerSigWithLen
      Src: /src/xmlsec/src/nss/signatures.c:682,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:684,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:685,1
    - Dst: VFY_EndWithSignature
      Src: /src/xmlsec/src/nss/signatures.c:688,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:689,1
    - Dst: VFY_EndWithSignature
      Src: /src/xmlsec/src/nss/signatures.c:691,1
    - Dst: PORT_GetError
      Src: /src/xmlsec/src/nss/signatures.c:695,1
    - Dst: xmlSecOtherError
      Src: /src/xmlsec/src/nss/signatures.c:696,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:697,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:701,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:702,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 655
    functionDepth: 2
    functionLinenumber: 655
    functionLinenumberEnd: 709
    functionName: xmlSecNssSignatureVerify
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecNssSignatureGetCtx
    - xmlSecOtherError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - DSAU_EncodeDerSigWithLen
    - PORT_GetError
    - return
    - xmlSecNssError
    - VFY_EndWithSignature
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - SECITEM_FreeItem
    - xmlSecNssSignatureCheckId
    - xmlSecNssSignatureAlgorithmEncoded
    - memset
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssSignatureVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:718,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:719,1
    - Dst: DSAU_DecodeDerSig
      Src: /src/xmlsec/src/nss/signatures.c:723,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:725,1
    - Dst: PK11_SignatureLen
      Src: /src/xmlsec/src/nss/signatures.c:736,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:738,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_UINT
      Src: /src/xmlsec/src/nss/signatures.c:741,1
    - Dst: return
      Src: /src/xmlsec/src/nss/signatures.c:741,1
    - Dst: DSAU_DecodeDerSigToLen
      Src: /src/xmlsec/src/nss/signatures.c:743,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:745,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/signatures.c:750,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - signature
    argTypes:
    - xmlSecNssSignatureCtxPtr
    - SECItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 712
    functionDepth: 1
    functionLinenumber: 712
    functionLinenumberEnd: 755
    functionName: xmlSecNssSignatureDecode
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - XMLSEC_SAFE_CAST_INT_TO_UINT
    - xmlSecAssert2
    - xmlSecInternalError2
    - DSAU_DecodeDerSig
    - return
    - xmlSecNssError
    - PK11_SignatureLen
    - DSAU_DecodeDerSigToLen
    linkageType: ''
    returnType: SECItem
    signature: 'SECItem *

      xmlSecNssSignatureDecode(xmlSecNssSignatureCtxPtr ctx, SECItem* signature)'
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:766,1
    - Dst: xmlSecNssSignatureCheckId
      Src: /src/xmlsec/src/nss/signatures.c:766,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:767,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:768,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/signatures.c:768,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:769,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:771,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:772,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/signatures.c:776,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/signatures.c:777,1
    - Dst: xmlSecNssSignatureGetCtx
      Src: /src/xmlsec/src/nss/signatures.c:779,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:780,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:782,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:783,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:785,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:786,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:790,1
    - Dst: SGN_Begin
      Src: /src/xmlsec/src/nss/signatures.c:793,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:795,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:796,1
    - Dst: VFY_Begin
      Src: /src/xmlsec/src/nss/signatures.c:800,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:802,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:803,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:813,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/signatures.c:815,1
    - Dst: return
      Src: /src/xmlsec/src/nss/signatures.c:815,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:815,1
    - Dst: SGN_Update
      Src: /src/xmlsec/src/nss/signatures.c:817,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/signatures.c:817,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:819,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:820,1
    - Dst: VFY_Update
      Src: /src/xmlsec/src/nss/signatures.c:824,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/signatures.c:824,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:826,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:827,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/signatures.c:832,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:834,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:835,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:841,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/signatures.c:843,1
    - Dst: SGN_End
      Src: /src/xmlsec/src/nss/signatures.c:844,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/signatures.c:846,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:847,1
    - Dst: xmlSecNssSignatureAlgorithmEncoded
      Src: /src/xmlsec/src/nss/signatures.c:851,1
    - Dst: xmlSecNssSignatureDecode
      Src: /src/xmlsec/src/nss/signatures.c:855,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/signatures.c:857,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:858,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:859,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/signatures.c:863,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/signatures.c:865,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:866,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:868,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:872,1
    - Dst: xmlSecBufferSetData
      Src: /src/xmlsec/src/nss/signatures.c:875,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/signatures.c:877,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/signatures.c:878,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:880,1
    - Dst: SECITEM_FreeItem
      Src: /src/xmlsec/src/nss/signatures.c:886,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/signatures.c:894,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/signatures.c:894,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/signatures.c:896,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 101
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 757
    functionDepth: 3
    functionLinenumber: 757
    functionLinenumberEnd: 901
    functionName: xmlSecNssSignatureExecute
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached:
    - xmlSecNssSignatureGetCtx
    - return
    - SECITEM_FreeItem
    - xmlSecBufferSetData
    - xmlSecNssError
    - VFY_Update
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - xmlSecNssSignatureAlgorithmEncoded
    - xmlSecBufferRemoveHead
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecInternalError2
    - SGN_Begin
    - xmlSecBufferGetData
    - memset
    - xmlSecTransformCheckSize
    - SGN_End
    - SGN_Update
    - VFY_Begin
    - xmlSecInvalidTransfromStatusError
    - xmlSecBufferGetSize
    - xmlSecNssSignatureDecode
    - xmlSecNssSignatureCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 948
    functionName: xmlSecNssTransformDsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformDsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 992
    functionDepth: 0
    functionLinenumber: 992
    functionLinenumberEnd: 995
    functionName: xmlSecNssTransformDsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformDsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1042
    functionDepth: 0
    functionLinenumber: 1042
    functionLinenumberEnd: 1045
    functionName: xmlSecNssTransformEcdsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformEcdsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1089
    functionDepth: 0
    functionLinenumber: 1089
    functionLinenumberEnd: 1092
    functionName: xmlSecNssTransformEcdsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformEcdsaSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1139
      start: 1136
    functionDepth: 0
    functionLinenumber: 1136
    functionLinenumberEnd: 1139
    functionName: xmlSecNssTransformEcdsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformEcdsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1183
    functionDepth: 0
    functionLinenumber: 1183
    functionLinenumberEnd: 1186
    functionName: xmlSecNssTransformEcdsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformEcdsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1230
    functionDepth: 0
    functionLinenumber: 1230
    functionLinenumberEnd: 1233
    functionName: xmlSecNssTransformEcdsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformEcdsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1280
    functionDepth: 0
    functionLinenumber: 1280
    functionLinenumberEnd: 1283
    functionName: xmlSecNssTransformRsaMd5GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1328
    functionDepth: 0
    functionLinenumber: 1328
    functionLinenumberEnd: 1331
    functionName: xmlSecNssTransformRsaSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1375
    functionDepth: 0
    functionLinenumber: 1375
    functionLinenumberEnd: 1378
    functionName: xmlSecNssTransformRsaSha224GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1421
    functionDepth: 0
    functionLinenumber: 1421
    functionLinenumberEnd: 1424
    functionName: xmlSecNssTransformRsaSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1468
    functionDepth: 0
    functionLinenumber: 1468
    functionLinenumberEnd: 1471
    functionName: xmlSecNssTransformRsaSha384GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1515
    functionDepth: 0
    functionLinenumber: 1515
    functionLinenumberEnd: 1518
    functionName: xmlSecNssTransformRsaSha512GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1567
      start: 1564
    functionDepth: 0
    functionLinenumber: 1564
    functionLinenumberEnd: 1567
    functionName: xmlSecNssTransformRsaPssSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPssSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1611
    functionDepth: 0
    functionLinenumber: 1611
    functionLinenumberEnd: 1614
    functionName: xmlSecNssTransformRsaPssSha224GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPssSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1660
      start: 1657
    functionDepth: 0
    functionLinenumber: 1657
    functionLinenumberEnd: 1660
    functionName: xmlSecNssTransformRsaPssSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPssSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1704
    functionDepth: 0
    functionLinenumber: 1704
    functionLinenumberEnd: 1707
    functionName: xmlSecNssTransformRsaPssSha384GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPssSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1751
    functionDepth: 0
    functionLinenumber: 1751
    functionLinenumberEnd: 1754
    functionName: xmlSecNssTransformRsaPssSha512GetKlass
    functionSourceFile: /src/xmlsec/src/nss/signatures.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformRsaPssSha512GetKlass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:74,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:80,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:86,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:92,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:98,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 110
    functionName: xmlSecNssDigestCheckId
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssDigestCheckId(xmlSecTransformPtr transform)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:116,1
    - Dst: xmlSecNssDigestCheckId
      Src: /src/xmlsec/src/nss/digests.c:116,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:117,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/digests.c:117,1
    - Dst: xmlSecNssDigestGetCtx
      Src: /src/xmlsec/src/nss/digests.c:119,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:120,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/digests.c:123,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:126,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:127,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:132,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:133,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:138,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:139,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:144,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:145,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:150,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:151,1
    - Dst: xmlSecTransformCheckId
      Src: /src/xmlsec/src/nss/digests.c:156,1
    - Dst: SECOID_FindOIDByTag
      Src: /src/xmlsec/src/nss/digests.c:157,1
    - Dst: xmlSecInvalidTransfromError
      Src: /src/xmlsec/src/nss/digests.c:162,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/digests.c:167,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:167,1
    - Dst: PK11_CreateDigestContext
      Src: /src/xmlsec/src/nss/digests.c:171,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/digests.c:173,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 38
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 178
    functionName: xmlSecNssDigestInitialize
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckId
    - xmlSecInvalidTransfromError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - PK11_CreateDigestContext
    - xmlSecNssDigestCheckId
    - SECOID_FindOIDByTag
    - xmlSecNssError
    - xmlSecNssDigestGetCtx
    - xmlSecTransformGetName
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecNssDigestInitialize(xmlSecTransformPtr transform)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/digests.c:184,1
    - Dst: xmlSecNssDigestCheckId
      Src: /src/xmlsec/src/nss/digests.c:184,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/digests.c:185,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/digests.c:185,1
    - Dst: xmlSecNssDigestGetCtx
      Src: /src/xmlsec/src/nss/digests.c:187,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/digests.c:188,1
    - Dst: PK11_DestroyContext
      Src: /src/xmlsec/src/nss/digests.c:191,1
    - Dst: memset
      Src: /src/xmlsec/src/nss/digests.c:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - transform
    argTypes:
    - xmlSecTransformPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 194
    functionName: xmlSecNssDigestFinalize
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecTransformCheckSize
    - xmlSecNssDigestCheckId
    - xmlSecAssert
    - xmlSecNssDigestGetCtx
    - PK11_DestroyContext
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecNssDigestFinalize(xmlSecTransformPtr transform)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:202,1
    - Dst: xmlSecNssDigestCheckId
      Src: /src/xmlsec/src/nss/digests.c:202,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:203,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:204,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/digests.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:207,1
    - Dst: xmlSecNssDigestGetCtx
      Src: /src/xmlsec/src/nss/digests.c:209,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:211,1
    - Dst: xmlSecInvalidSizeDataError2
      Src: /src/xmlsec/src/nss/digests.c:214,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:216,1
    - Dst: memcmp
      Src: /src/xmlsec/src/nss/digests.c:221,1
    - Dst: xmlSecInvalidDataError
      Src: /src/xmlsec/src/nss/digests.c:222,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - transform
    - data
    - dataSize
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - xmlSecByte*
    - xmlSecSize
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 230
    functionName: xmlSecNssDigestVerify
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached:
    - xmlSecInvalidDataError
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecNssDigestCheckId
    - memcmp
    - xmlSecNssDigestGetCtx
    - xmlSecTransformGetName
    - xmlSecInvalidSizeDataError2
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssDigestVerify(xmlSecTransformPtr transform,\n                        const
      xmlSecByte* data, xmlSecSize dataSize,\n                        xmlSecTransformCtxPtr
      transformCtx)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:239,1
    - Dst: xmlSecNssDigestCheckId
      Src: /src/xmlsec/src/nss/digests.c:239,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:240,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:241,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:242,1
    - Dst: xmlSecTransformCheckSize
      Src: /src/xmlsec/src/nss/digests.c:242,1
    - Dst: xmlSecNssDigestGetCtx
      Src: /src/xmlsec/src/nss/digests.c:244,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:245,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:246,1
    - Dst: PK11_DigestBegin
      Src: /src/xmlsec/src/nss/digests.c:252,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/digests.c:254,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:254,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/digests.c:263,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_UINT
      Src: /src/xmlsec/src/nss/digests.c:267,1
    - Dst: return
      Src: /src/xmlsec/src/nss/digests.c:267,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:267,1
    - Dst: PK11_DigestOp
      Src: /src/xmlsec/src/nss/digests.c:268,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/digests.c:268,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/digests.c:270,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:270,1
    - Dst: xmlSecBufferRemoveHead
      Src: /src/xmlsec/src/nss/digests.c:274,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/digests.c:276,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:277,1
    - Dst: PK11_DigestFinal
      Src: /src/xmlsec/src/nss/digests.c:285,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/digests.c:287,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:290,1
    - Dst: xmlSecBufferAppend
      Src: /src/xmlsec/src/nss/digests.c:294,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/digests.c:296,1
    - Dst: xmlSecTransformGetName
      Src: /src/xmlsec/src/nss/digests.c:296,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/digests.c:305,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/src/nss/digests.c:305,1
    - Dst: xmlSecInvalidTransfromStatusError
      Src: /src/xmlsec/src/nss/digests.c:307,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 58
    argCount: 3
    argNames:
    - transform
    - last
    - transformCtx
    argTypes:
    - xmlSecTransformPtr
    - int
    - xmlSecTransformCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 232
    functionDepth: 3
    functionLinenumber: 232
    functionLinenumberEnd: 312
    functionName: xmlSecNssDigestExecute
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached:
    - PK11_DigestFinal
    - xmlSecBufferRemoveHead
    - xmlSecTransformCheckSize
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecBufferGetData
    - xmlSecNssDigestCheckId
    - return
    - xmlSecInvalidTransfromStatusError
    - xmlSecNssError
    - xmlSecBufferGetSize
    - xmlSecNssDigestGetCtx
    - xmlSecBufferAppend
    - xmlSecTransformGetName
    - XMLSEC_SAFE_CAST_SIZE_TO_UINT
    - PK11_DigestBegin
    - PK11_DigestOp
    linkageType: ''
    returnType: int
    signature: int xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last,
      xmlSecTransformCtxPtr transformCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: xmlSecNssTransformMd5GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformMd5GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 408
    functionName: xmlSecNssTransformSha1GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformSha1GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 456
    functionName: xmlSecNssTransformSha224GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformSha224GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionName: xmlSecNssTransformSha256GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformSha256GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 550
    functionDepth: 0
    functionLinenumber: 550
    functionLinenumberEnd: 553
    functionName: xmlSecNssTransformSha384GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformSha384GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 601
    functionName: xmlSecNssTransformSha512GetKlass
    functionSourceFile: /src/xmlsec/src/nss/digests.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecTransformId
    signature: xmlSecTransformId xmlSecNssTransformSha512GetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: xmlSecNssKeysStoreGetKlass
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId xmlSecNssKeysStoreGetKlass(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:112,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:112,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:113,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:115,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:116,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:117,1
    - Dst: xmlSecSimpleKeysStoreAdoptKey
      Src: /src/xmlsec/src/nss/keysstore.c:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - store
    - key
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 108
    functionDepth: 3
    functionLinenumber: 108
    functionLinenumberEnd: 120
    functionName: xmlSecNssKeysStoreAdoptKey
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssKeysStoreGetCtx
    - xmlSecSimpleKeysStoreAdoptKey
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecSimpleKeysStoreLoad_ex
      Src: /src/xmlsec/src/nss/keysstore.c:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - store
    - uri
    - XMLSEC_ATTRIBUTE_UNUSED
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 15
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: xmlSecNssKeysStoreLoad
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecSimpleKeysStoreLoad_ex
    linkageType: ''
    returnType: int
    signature: "int xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,\n
      \                           xmlSecKeysMngrPtr keysMngr XMLSEC_ATTRIBUTE_UNUSED)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:153,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:153,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:154,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:156,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:157,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:158,1
    - Dst: xmlSecSimpleKeysStoreSave
      Src: /src/xmlsec/src/nss/keysstore.c:160,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - store
    - filename
    - type
    argTypes:
    - xmlSecKeyStorePtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 149
    functionDepth: 12
    functionLinenumber: 149
    functionLinenumberEnd: 161
    functionName: xmlSecNssKeysStoreSave
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecNssKeysStoreGetCtx
    - xmlSecKeyStoreCheckId
    - xmlSecSimpleKeysStoreSave
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeysStoreSave(xmlSecKeyStorePtr store, const char *filename,
      xmlSecKeyDataType type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:167,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:167,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:169,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:170,1
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/src/nss/keysstore.c:172,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:174,1
    - Dst: xmlSecKeyStoreGetName
      Src: /src/xmlsec/src/nss/keysstore.c:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 180
    functionName: xmlSecNssKeysStoreInitialize
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecKeyStoreGetName
    - xmlSecNssKeysStoreGetCtx
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeysStoreInitialize(xmlSecKeyStorePtr store)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/keysstore.c:186,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:186,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:188,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/keysstore.c:189,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/src/nss/keysstore.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - store
    argTypes:
    - xmlSecKeyStorePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 192
    functionName: xmlSecNssKeysStoreFinalize
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - xmlSecNssKeysStoreGetCtx
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCheckId
    linkageType: ''
    returnType: void
    signature: void xmlSecNssKeysStoreFinalize(xmlSecKeyStorePtr store)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:207,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:207,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:208,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:210,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:211,1
    - Dst: xmlSecKeyStoreFindKey
      Src: /src/xmlsec/src/nss/keysstore.c:213,1
    - Dst: CERT_FindCertByNickname
      Src: /src/xmlsec/src/nss/keysstore.c:232,1
    - Dst: CERT_GetDefaultCertDB
      Src: /src/xmlsec/src/nss/keysstore.c:232,1
    - Dst: CERT_ExtractPublicKey
      Src: /src/xmlsec/src/nss/keysstore.c:238,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keysstore.c:240,1
    - Dst: PK11_FindKeyByAnyCert
      Src: /src/xmlsec/src/nss/keysstore.c:246,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/keysstore.c:248,1
    - Dst: xmlSecNssPKIAdoptKey
      Src: /src/xmlsec/src/nss/keysstore.c:253,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:255,1
    - Dst: xmlSecKeyCreate
      Src: /src/xmlsec/src/nss/keysstore.c:261,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:263,1
    - Dst: xmlSecKeyDataCreate
      Src: /src/xmlsec/src/nss/keysstore.c:268,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:270,1
    - Dst: xmlSecNssKeyDataX509AdoptKeyCert
      Src: /src/xmlsec/src/nss/keysstore.c:274,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:276,1
    - Dst: xmlSecKeySetValue
      Src: /src/xmlsec/src/nss/keysstore.c:282,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:284,1
    - Dst: xmlSecKeyAdoptData
      Src: /src/xmlsec/src/nss/keysstore.c:289,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:291,1
    - Dst: CERT_DestroyCertificate
      Src: /src/xmlsec/src/nss/keysstore.c:302,1
    - Dst: SECKEY_DestroyPublicKey
      Src: /src/xmlsec/src/nss/keysstore.c:305,1
    - Dst: SECKEY_DestroyPrivateKey
      Src: /src/xmlsec/src/nss/keysstore.c:308,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/keysstore.c:311,1
    - Dst: xmlSecKeyDataDestroy
      Src: /src/xmlsec/src/nss/keysstore.c:314,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/src/nss/keysstore.c:317,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 100
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 194
    functionDepth: 4
    functionLinenumber: 194
    functionLinenumberEnd: 321
    functionName: xmlSecNssKeysStoreFindKey
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 0
    functionsReached:
    - PK11_FindKeyByAnyCert
    - CERT_FindCertByNickname
    - SECKEY_DestroyPublicKey
    - xmlSecNssKeyDataX509AdoptKeyCert
    - xmlSecKeyDataDestroy
    - xmlSecNssError
    - xmlSecKeyDataCreate
    - xmlSecKeyDestroy
    - CERT_DestroyCertificate
    - xmlSecKeySetValue
    - xmlSecInternalError
    - xmlSecAssert2
    - SECKEY_DestroyPrivateKey
    - CERT_ExtractPublicKey
    - xmlSecKeyAdoptData
    - xmlSecKeyStoreCheckId
    - xmlSecKeyStoreFindKey
    - xmlSecNssKeysStoreGetCtx
    - CERT_GetDefaultCertDB
    - xmlSecKeyCreate
    - xmlSecNssPKIAdoptKey
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecNssKeysStoreFindKey(xmlSecKeyStorePtr store, const
      xmlChar* name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:332,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:332,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:333,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:334,1
    - Dst: xmlSecNssKeysStoreGetCtx
      Src: /src/xmlsec/src/nss/keysstore.c:336,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:337,1
    - Dst: xmlSecSimpleKeysStoreGetKeys
      Src: /src/xmlsec/src/nss/keysstore.c:339,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:341,1
    - Dst: xmlSecNssX509FindKeyByValue
      Src: /src/xmlsec/src/nss/keysstore.c:345,1
    - Dst: xmlSecKeyDuplicate
      Src: /src/xmlsec/src/nss/keysstore.c:352,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/keysstore.c:354,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:360,1
    - Dst: xmlSecKeyStoreCheckId
      Src: /src/xmlsec/src/nss/keysstore.c:360,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:361,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/keysstore.c:362,1
    - Dst: xmlSecNotImplementedError
      Src: /src/xmlsec/src/nss/keysstore.c:364,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - store
    - x509Data
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlSecKeyX509DataValuePtr
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 323
    functionDepth: 5
    functionLinenumber: 323
    functionLinenumberEnd: 367
    functionName: xmlSecNssKeysStoreFindKeyFromX509Data
    functionSourceFile: /src/xmlsec/src/nss/keysstore.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecKeyStoreCheckId
    - xmlSecAssert2
    - xmlSecNotImplementedError
    - xmlSecNssKeysStoreGetCtx
    - xmlSecKeyDuplicate
    - xmlSecSimpleKeysStoreGetKeys
    - xmlSecNssX509FindKeyByValue
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: "xmlSecKeyPtr xmlSecNssKeysStoreFindKeyFromX509Data(xmlSecKeyStorePtr
      store, xmlSecKeyX509DataValuePtr x509Data,\n    xmlSecKeyInfoCtxPtr keyInfoCtx\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NSS_GetAlgorithmPolicy
      Src: /src/xmlsec/src/nss/crypto.c:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - alg
    argTypes:
    - SECOidTag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionName: xmlSecNssCryptoCheckAlgorithm
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - NSS_GetAlgorithmPolicy
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCryptoCheckAlgorithm(SECOidTag alg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PK11_MechanismToAlgtag
      Src: /src/xmlsec/src/nss/crypto.c:68,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - type
    argTypes:
    - CK_MECHANISM_TYPE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 73
    functionName: xmlSecNssCryptoCheckMechanism
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - PK11_MechanismToAlgtag
    - xmlSecNssCryptoCheckAlgorithm
    linkageType: ''
    returnType: int
    signature: int xmlSecNssCryptoCheckMechanism(CK_MECHANISM_TYPE type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/src/nss/crypto.c:91,1
    - Dst: xmlSecNssAppGetDefaultPwdCallback
      Src: /src/xmlsec/src/nss/crypto.c:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 85
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 362
    functionName: xmlSecCryptoGetFunctions_nss
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecNssAppGetDefaultPwdCallback
    - memset
    linkageType: ''
    returnType: xmlSecCryptoDLFunctionsPtr
    signature: xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_nss(void)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/src/nss/crypto.c:367,1
    - Dst: SECOID_Init
      Src: /src/xmlsec/src/nss/crypto.c:370,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/crypto.c:372,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:378,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:381,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:384,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:389,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:392,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:397,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:400,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:403,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:409,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:413,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:413,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:418,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:421,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:426,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:429,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:432,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:435,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:438,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:443,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:446,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:449,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:452,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:455,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:458,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:461,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:466,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:471,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:475,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:479,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:482,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:485,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:488,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:492,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:492,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:495,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:495,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:498,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:498,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:501,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:501,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:504,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:504,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:508,1
    - Dst: xmlSecNssCryptoCheckMechanism
      Src: /src/xmlsec/src/nss/crypto.c:512,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:519,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:522,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:525,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:528,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:531,1
    - Dst: xmlSecNssCryptoCheckAlgorithm
      Src: /src/xmlsec/src/nss/crypto.c:536,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 140
    argCount: 1
    argNames:
    - functions
    argTypes:
    - xmlSecCryptoDLFunctionsPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 539
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 539
    functionName: xmlSecNssUpdateAvailableCryptoTransforms
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - SECOID_Init
    - xmlSecNssCryptoCheckMechanism
    - xmlSecAssert
    - xmlSecNssError
    - xmlSecNssCryptoCheckAlgorithm
    linkageType: ''
    returnType: void
    signature: void xmlSecNssUpdateAvailableCryptoTransforms(xmlSecCryptoDLFunctionsPtr
      functions)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCheckVersionExact
      Src: /src/xmlsec/src/nss/crypto.c:551,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/crypto.c:552,1
    - Dst: xmlSecErrorsSetCallback
      Src: /src/xmlsec/src/nss/crypto.c:557,1
    - Dst: xmlSecNssUpdateAvailableCryptoTransforms
      Src: /src/xmlsec/src/nss/crypto.c:560,1
    - Dst: xmlSecCryptoGetFunctions_nss
      Src: /src/xmlsec/src/nss/crypto.c:560,1
    - Dst: xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
      Src: /src/xmlsec/src/nss/crypto.c:563,1
    - Dst: xmlSecCryptoGetFunctions_nss
      Src: /src/xmlsec/src/nss/crypto.c:563,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/crypto.c:564,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 548
    functionDepth: 3
    functionLinenumber: 548
    functionLinenumberEnd: 569
    functionName: xmlSecNssInit
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecInternalError
    - xmlSecErrorsSetCallback
    - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
    - xmlSecNssUpdateAvailableCryptoTransforms
    - xmlSecCheckVersionExact
    - xmlSecCryptoGetFunctions_nss
    linkageType: ''
    returnType: int
    signature: int xmlSecNssInit (void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionName: xmlSecNssShutdown
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecNssShutdown(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/crypto.c:596,1
    - Dst: xmlSecKeysMngrGetDataStore
      Src: /src/xmlsec/src/nss/crypto.c:599,1
    - Dst: xmlSecKeyDataStoreCreate
      Src: /src/xmlsec/src/nss/crypto.c:602,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/crypto.c:604,1
    - Dst: xmlSecKeysMngrAdoptDataStore
      Src: /src/xmlsec/src/nss/crypto.c:608,1
    - Dst: xmlSecInternalError
      Src: /src/xmlsec/src/nss/crypto.c:610,1
    - Dst: xmlSecKeyDataStoreDestroy
      Src: /src/xmlsec/src/nss/crypto.c:611,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/crypto.c:617,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 591
    functionDepth: 3
    functionLinenumber: 591
    functionLinenumberEnd: 622
    functionName: xmlSecNssKeysMngrInit
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecInternalError
    - xmlSecAssert2
    - xmlSecKeyDataStoreCreate
    - xmlSecKeyDataStoreDestroy
    - xmlSecKeysMngrAdoptDataStore
    - xmlSecKeysMngrGetDataStore
    linkageType: ''
    returnType: int
    signature: int xmlSecNssKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: PK11_GetInternalKeySlot
      Src: /src/xmlsec/src/nss/crypto.c:637,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/crypto.c:639,1
    - Dst: PK11_NeedUserInit
      Src: /src/xmlsec/src/nss/crypto.c:643,1
    - Dst: PK11_InitPin
      Src: /src/xmlsec/src/nss/crypto.c:644,1
    - Dst: xmlSecNssError
      Src: /src/xmlsec/src/nss/crypto.c:646,1
    - Dst: PK11_IsLoggedIn
      Src: /src/xmlsec/src/nss/crypto.c:651,1
    - Dst: PK11_Authenticate
      Src: /src/xmlsec/src/nss/crypto.c:652,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/crypto.c:654,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/src/nss/crypto.c:655,1
    - Dst: PK11_GetTokenName
      Src: /src/xmlsec/src/nss/crypto.c:655,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 661
    functionName: xmlSecNssGetInternalKeySlot
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 3
    functionsReached:
    - PK11_Authenticate
    - PK11_NeedUserInit
    - PK11_IsLoggedIn
    - PK11_InitPin
    - xmlSecErrorsSafeString
    - xmlSecNssError2
    - PK11_GetTokenName
    - PK11_GetInternalKeySlot
    - xmlSecNssError
    linkageType: ''
    returnType: PK11SlotInfo
    signature: 'PK11SlotInfo *

      xmlSecNssGetInternalKeySlot(void)'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/crypto.c:678,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/src/nss/crypto.c:679,1
    - Dst: xmlSecBufferSetSize
      Src: /src/xmlsec/src/nss/crypto.c:681,1
    - Dst: xmlSecInternalError2
      Src: /src/xmlsec/src/nss/crypto.c:683,1
    - Dst: XMLSEC_SAFE_CAST_SIZE_TO_INT
      Src: /src/xmlsec/src/nss/crypto.c:689,1
    - Dst: return
      Src: /src/xmlsec/src/nss/crypto.c:689,1
    - Dst: PK11_GenerateRandom
      Src: /src/xmlsec/src/nss/crypto.c:690,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/src/nss/crypto.c:690,1
    - Dst: xmlSecNssError2
      Src: /src/xmlsec/src/nss/crypto.c:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - buffer
    - size
    argTypes:
    - xmlSecBufferPtr
    - xmlSecSize
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 697
      start: 672
    functionDepth: 2
    functionLinenumber: 672
    functionLinenumberEnd: 697
    functionName: xmlSecNssGenerateRandom
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 1
    functionsReached:
    - xmlSecAssert2
    - xmlSecInternalError2
    - xmlSecNssError2
    - xmlSecBufferGetData
    - return
    - xmlSecBufferSetSize
    - XMLSEC_SAFE_CAST_SIZE_TO_INT
    - PK11_GenerateRandom
    linkageType: ''
    returnType: int
    signature: int xmlSecNssGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecErrorsDefaultCallback
      Src: /src/xmlsec/src/nss/crypto.c:715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - file
    - line
    - func
    - errorObject
    - errorSubject
    - reason
    - msg
    argTypes:
    - char*
    - int
    - char*
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 711
    functionDepth: 2
    functionLinenumber: 711
    functionLinenumberEnd: 716
    functionName: xmlSecNssErrorsDefaultCallback
    functionSourceFile: /src/xmlsec/src/nss/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecErrorsDefaultCallback
    linkageType: ''
    returnType: void
    signature: "void xmlSecNssErrorsDefaultCallback(const char* file, int line, const
      char* func,\n                                const char* errorObject, const
      char* errorSubject,\n                                int reason, const char*
      msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 26
    functionName: UNREFERENCED_PARAMETER
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 97
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UNREFERENCED_PARAMETER(param)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/apps/crypto.c:30,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:31,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/apps/crypto.c:34,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - config
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 40
    functionName: xmlSecAppCryptoInit
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlSecCryptoAppInit
    - xmlSecCryptoInit
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoInit(const char* config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/apps/crypto.c:44,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:45,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/apps/crypto.c:49,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionName: xmlSecAppCryptoShutdown
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlSecCryptoAppShutdown
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoShutdown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:58,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/apps/crypto.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mngr
    argTypes:
    - xmlSecKeysMngrPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 61
    functionName: xmlSecAppCryptoSimpleKeysMngrInit
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecCryptoAppDefaultKeysMngrInit
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrInit(xmlSecKeysMngrPtr mngr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:65,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:66,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrLoad
      Src: /src/xmlsec/apps/crypto.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - mngr
    - filename
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 69
    functionName: xmlSecAppCryptoSimpleKeysMngrLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecCryptoAppDefaultKeysMngrLoad
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrLoad(xmlSecKeysMngrPtr mngr, const
      char *filename)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:73,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:74,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrSave
      Src: /src/xmlsec/apps/crypto.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - mngr
    - filename
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionName: xmlSecAppCryptoSimpleKeysMngrSave
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecCryptoAppDefaultKeysMngrSave
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrSave(xmlSecKeysMngrPtr mngr, const
      char *filename, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:82,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:83,1
    - Dst: xmlSecCryptoAppKeysMngrCertLoad
      Src: /src/xmlsec/apps/crypto.c:87,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:91,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:92,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - mngr
    - filename
    - format
    - type
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 97
    functionName: xmlSecAppCryptoSimpleKeysMngrCertLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - fprintf
    - xmlSecCryptoAppKeysMngrCertLoad
    - UNREFERENCED_PARAMETER
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCryptoSimpleKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,
      const char *filename,\n                                      xmlSecKeyDataFormat
      format, xmlSecKeyDataType type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:102,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:103,1
    - Dst: xmlSecCryptoAppKeysMngrCrlLoad
      Src: /src/xmlsec/apps/crypto.c:107,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:111,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - mngr
    - filename
    - format
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - xmlSecKeyDataFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 116
    functionName: xmlSecAppCryptoSimpleKeysMngrCrlLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - fprintf
    - UNREFERENCED_PARAMETER
    - xmlSecCryptoAppKeysMngrCrlLoad
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const
      char *filename, xmlSecKeyDataFormat format)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:128,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:129,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:130,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/apps/crypto.c:133,1
    - Dst: xmlSecCryptoAppGetDefaultPwdCallback
      Src: /src/xmlsec/apps/crypto.c:133,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:135,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:136,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/apps/crypto.c:141,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:143,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:144,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:145,1
    - Dst: strlen
      Src: /src/xmlsec/apps/crypto.c:151,1
    - Dst: strlen
      Src: /src/xmlsec/apps/crypto.c:151,1
    - Dst: xmlSecCryptoAppKeyCertLoad
      Src: /src/xmlsec/apps/crypto.c:152,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:154,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:155,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:156,1
    - Dst: strlen
      Src: /src/xmlsec/apps/crypto.c:161,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:163,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      Src: /src/xmlsec/apps/crypto.c:170,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:172,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:173,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:174,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:177,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:178,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:179,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/apps/crypto.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:186,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:187,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 8
    argNames:
    - mngr
    - files
    - pwd
    - name
    - type
    - format
    - keyInfoCtx
    - verifyKey
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - xmlSecKeyInfoCtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 118
    functionDepth: 4
    functionLinenumber: 118
    functionLinenumberEnd: 192
    functionName: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - strlen
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecCryptoAppGetDefaultPwdCallback
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecCryptoAppKeyLoadEx
    - fprintf
    - xmlSecCryptoAppDefaultKeysMngrVerifyKey
    - xmlSecCryptoAppKeyCertLoad
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad(xmlSecKeysMngrPtr
      mngr,\n    const char* files, const char* pwd, const char* name,\n    xmlSecKeyDataType
      type, xmlSecKeyDataFormat format,\n    xmlSecKeyInfoCtxPtr keyInfoCtx, int verifyKey\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:204,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:205,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:206,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:207,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/apps/crypto.c:210,1
    - Dst: xmlSecCryptoAppGetDefaultPwdCallback
      Src: /src/xmlsec/apps/crypto.c:211,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:213,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:214,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/apps/crypto.c:219,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:221,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:222,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:223,1
    - Dst: strlen
      Src: /src/xmlsec/apps/crypto.c:230,1
    - Dst: xmlSecCryptoAppKeyCertLoad
      Src: /src/xmlsec/apps/crypto.c:231,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:233,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:234,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:235,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:240,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:243,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:244,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      Src: /src/xmlsec/apps/crypto.c:250,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:252,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:253,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:254,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:257,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:258,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:259,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/apps/crypto.c:265,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:267,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:268,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 52
    argCount: 10
    argNames:
    - mngr
    - engineAndKeyId
    - certFiles
    - pwd
    - name
    - type
    - keyFormat
    - certFormat
    - keyInfoCtx
    - verifyKey
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    - char*
    - char*
    - xmlSecKeyDataType
    - xmlSecKeyDataFormat
    - xmlSecKeyDataFormat
    - xmlSecKeyInfoCtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 194
    functionDepth: 4
    functionLinenumber: 194
    functionLinenumberEnd: 273
    functionName: xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - strlen
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecCryptoAppGetDefaultPwdCallback
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecCryptoAppKeyLoadEx
    - fprintf
    - xmlSecCryptoAppDefaultKeysMngrVerifyKey
    - xmlSecCryptoAppKeyCertLoad
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad(xmlSecKeysMngrPtr
      mngr,\n    const char* engineAndKeyId, const char* certFiles,\n    const char*
      pwd, const char* name,\n    xmlSecKeyDataType type, xmlSecKeyDataFormat keyFormat,
      xmlSecKeyDataFormat certFormat,\n    xmlSecKeyInfoCtxPtr keyInfoCtx, int verifyKey\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:283,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:284,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:285,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/apps/crypto.c:287,1
    - Dst: xmlSecCryptoAppGetDefaultPwdCallback
      Src: /src/xmlsec/apps/crypto.c:288,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:290,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:291,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/apps/crypto.c:296,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:298,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:299,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:300,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      Src: /src/xmlsec/apps/crypto.c:306,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:308,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:309,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:310,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:313,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:314,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:315,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/apps/crypto.c:320,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:322,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:323,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:329,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:330,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:331,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:333,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:334,1
    - Dst: UNREFERENCED_PARAMETER
      Src: /src/xmlsec/apps/crypto.c:335,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:337,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 6
    argNames:
    - mngr
    - filename
    - pwd
    - name
    - keyInfoCtx
    - verifyKey
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    - char*
    - xmlSecKeyInfoCtxPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 275
    functionDepth: 4
    functionLinenumber: 275
    functionLinenumberEnd: 340
    functionName: xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - UNREFERENCED_PARAMETER
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecCryptoAppGetDefaultPwdCallback
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecCryptoAppKeyLoadEx
    - fprintf
    - xmlSecCryptoAppDefaultKeysMngrVerifyKey
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad(xmlSecKeysMngrPtr mngr,
      const char *filename, const char* pwd,\n    const char *name, xmlSecKeyInfoCtxPtr
      keyInfoCtx, int verifyKey\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:348,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:349,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:350,1
    - Dst: xmlSecKeyDataIdListFindByName
      Src: /src/xmlsec/apps/crypto.c:353,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/apps/crypto.c:353,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:355,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:356,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/apps/crypto.c:360,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:362,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:363,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/apps/crypto.c:367,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:369,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:370,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:371,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/apps/crypto.c:376,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:378,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:379,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - mngr
    - keyKlass
    - filename
    - name
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 342
    functionDepth: 6
    functionLinenumber: 342
    functionLinenumberEnd: 384
    functionName: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecKeyDataIdsGet
    - xmlSecErrorsSafeString
    - xmlSecKeyReadBinaryFile
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecKeyDataIdListFindByName
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad(xmlSecKeysMngrPtr mngr,
      const char* keyKlass, const char *filename, const char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:392,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:393,1
    - Dst: xmlSecAppCryptoKeyGenerate
      Src: /src/xmlsec/apps/crypto.c:395,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:397,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:398,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/apps/crypto.c:402,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:404,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:405,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - mngr
    - keyKlassAndSize
    - name
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 387
    functionDepth: 4
    functionLinenumber: 387
    functionLinenumberEnd: 409
    functionName: xmlSecAppCryptoSimpleKeysMngrKeyGenerate
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - xmlSecAppCryptoKeyGenerate
    - xmlSecErrorsSafeString
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - fprintf
    - xmlSecKeyDestroy
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCryptoSimpleKeysMngrKeyGenerate(xmlSecKeysMngrPtr mngr,
      const char* keyKlassAndSize, const char* name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/crypto.c:419,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/apps/crypto.c:421,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:423,1
    - Dst: strchr
      Src: /src/xmlsec/apps/crypto.c:428,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:430,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:431,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/crypto.c:432,1
    - Dst: atoi
      Src: /src/xmlsec/apps/crypto.c:436,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:438,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:439,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/crypto.c:440,1
    - Dst: xmlSecKeyGenerateByName
      Src: /src/xmlsec/apps/crypto.c:444,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:446,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:447,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/crypto.c:448,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/apps/crypto.c:452,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/crypto.c:454,1
    - Dst: xmlSecErrorsSafeString
      Src: /src/xmlsec/apps/crypto.c:455,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/apps/crypto.c:456,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/crypto.c:457,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/crypto.c:461,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 35
    argCount: 3
    argNames:
    - keyKlassAndSize
    - name
    - type
    argTypes:
    - char*
    - char*
    - xmlSecKeyDataType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 411
    functionDepth: 6
    functionLinenumber: 411
    functionLinenumberEnd: 463
    functionName: xmlSecAppCryptoKeyGenerate
    functionSourceFile: /src/xmlsec/apps/crypto.c
    functionUses: 1
    functionsReached:
    - xmlStrdup
    - xmlFree
    - xmlSecAssert2
    - xmlSecErrorsSafeString
    - xmlSecKeyGenerateByName
    - xmlSecKeyDestroy
    - strchr
    - atoi
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr xmlSecAppCryptoKeyGenerate(const char* keyKlassAndSize,
      const char* name, xmlSecKeyDataType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1167
    functionDepth: 0
    functionLinenumber: 1167
    functionLinenumberEnd: 1168
    functionName: xmlSecAppPrintUsage
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecAppPrintUsage()
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1256,1
    - Dst: _CrtSetDbgFlag
      Src: /src/xmlsec/apps/xmlsec.c:1257,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/apps/xmlsec.c:1263,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1265,1
    - Dst: memset
      Src: /src/xmlsec/apps/xmlsec.c:1269,1
    - Dst: xmlSecWin32ConvertTstrToUtf8
      Src: /src/xmlsec/apps/xmlsec.c:1271,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1273,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1283,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1284,1
    - Dst: xmlSecAppParseCommand
      Src: /src/xmlsec/apps/xmlsec.c:1287,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1289,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1290,1
    - Dst: xmlSecAppPrintHelp
      Src: /src/xmlsec/apps/xmlsec.c:1297,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1301,1
    - Dst: xmlSecGetDefaultCrypto
      Src: /src/xmlsec/apps/xmlsec.c:1301,1
    - Dst: xmlSecAppCmdLineParamsListParse
      Src: /src/xmlsec/apps/xmlsec.c:1307,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1309,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1310,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1315,1
    - Dst: xmlSecAppPrintHelp
      Src: /src/xmlsec/apps/xmlsec.c:1316,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1328,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1329,1
    - Dst: xmlSecAppExecute
      Src: /src/xmlsec/apps/xmlsec.c:1338,1
    - Dst: xmlSecAppCmdLineParamsListClean
      Src: /src/xmlsec/apps/xmlsec.c:1348,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1363,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/xmlsec.c:1365,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/xmlsec.c:1366,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/xmlsec.c:1367,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/xmlsec.c:1369,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/xmlsec.c:1370,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/xmlsec.c:1371,1
    - Dst: _CrtDumpMemoryLeaks
      Src: /src/xmlsec/apps/xmlsec.c:1372,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1373,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1376,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 105
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1242
    functionDepth: 4
    functionLinenumber: 1242
    functionLinenumberEnd: 1380
    functionName: main
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppExecute
    - xmlSecAppParseCommand
    - xmlSecAppCmdLineParamsListClean
    - xmlSecGetDefaultCrypto
    - _CrtSetReportFile
    - xmlMalloc
    - xmlSecAppPrintHelp
    - xmlSecWin32ConvertTstrToUtf8
    - xmlSecAppCmdLineParamsListParse
    - _CrtSetReportMode
    - _CrtDumpMemoryLeaks
    - fprintf
    - xmlSecAppPrintUsage
    - _CrtSetDbgFlag
    - memset
    linkageType: ''
    returnType: int
    signature: int main(int argc, const char **argv)
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:1391,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:1393,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1398,1
    - Dst: xmlSecGetDefaultCrypto
      Src: /src/xmlsec/apps/xmlsec.c:1398,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1399,1
    - Dst: xmlSecAppInit
      Src: /src/xmlsec/apps/xmlsec.c:1404,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1405,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1406,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1411,1
    - Dst: xmlSecSetExternalEntityLoader
      Src: /src/xmlsec/apps/xmlsec.c:1414,1
    - Dst: xmlSecParserGetDefaultOptions
      Src: /src/xmlsec/apps/xmlsec.c:1416,1
    - Dst: xmlSecParserSetDefaultOptions
      Src: /src/xmlsec/apps/xmlsec.c:1418,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1423,1
    - Dst: xmlSecErrorsDefaultCallbackEnableOutput
      Src: /src/xmlsec/apps/xmlsec.c:1424,1
    - Dst: xmlSecErrorsDefaultCallbackEnableOutput
      Src: /src/xmlsec/apps/xmlsec.c:1426,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1430,1
    - Dst: xmlSecErrorsPrintCryptoLibraryLogOnExitSet
      Src: /src/xmlsec/apps/xmlsec.c:1431,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1436,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1437,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1439,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1440,1
    - Dst: xmlSecBase64SetDefaultLineSize
      Src: /src/xmlsec/apps/xmlsec.c:1443,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1447,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1448,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1450,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1451,1
    - Dst: xmlSecTransformCtxSetDefaultBinaryChunkSize
      Src: /src/xmlsec/apps/xmlsec.c:1454,1
    - Dst: xmlSecAppLoadKeys
      Src: /src/xmlsec/apps/xmlsec.c:1458,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1459,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1460,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1465,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1466,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1468,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:1472,1
    - Dst: xmlSecAppListKeyData
      Src: /src/xmlsec/apps/xmlsec.c:1478,1
    - Dst: xmlSecAppCheckKeyData
      Src: /src/xmlsec/apps/xmlsec.c:1482,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1483,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1486,1
    - Dst: xmlSecAppListTransforms
      Src: /src/xmlsec/apps/xmlsec.c:1491,1
    - Dst: xmlSecAppCheckTransform
      Src: /src/xmlsec/apps/xmlsec.c:1495,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1496,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1499,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrSave
      Src: /src/xmlsec/apps/xmlsec.c:1505,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1506,1
    - Dst: xmlSecAppSignFile
      Src: /src/xmlsec/apps/xmlsec.c:1514,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1515,1
    - Dst: xmlSecAppVerifyFile
      Src: /src/xmlsec/apps/xmlsec.c:1522,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1523,1
    - Dst: xmlSecAppSignTmpl
      Src: /src/xmlsec/apps/xmlsec.c:1530,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1531,1
    - Dst: xmlSecAppEncryptFile
      Src: /src/xmlsec/apps/xmlsec.c:1541,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1542,1
    - Dst: xmlSecAppDecryptFile
      Src: /src/xmlsec/apps/xmlsec.c:1549,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1550,1
    - Dst: xmlSecAppEncryptTmpl
      Src: /src/xmlsec/apps/xmlsec.c:1557,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1558,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1566,1
    - Dst: xmlSecAppPrintUsage
      Src: /src/xmlsec/apps/xmlsec.c:1567,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1573,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1574,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1577,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1579,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/apps/xmlsec.c:1587,1
    - Dst: xmlSecAppShutdown
      Src: /src/xmlsec/apps/xmlsec.c:1590,1
    CyclomaticComplexity: 63
    EdgeCount: 63
    ICount: 168
    argCount: 3
    argNames:
    - command
    - utf8_argv
    - argc
    argTypes:
    - xmlSecAppCommand
    - char**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1592
      start: 1383
    functionDepth: 3
    functionLinenumber: 1383
    functionLinenumberEnd: 1592
    functionName: xmlSecAppExecute
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecErrorsDefaultCallbackEnableOutput
    - xmlSecAppEncryptTmpl
    - xmlSecAppCmdLineParamGetInt
    - xmlSecParserGetDefaultOptions
    - xmlSecAppSignTmpl
    - xmlSecAppInit
    - xmlSecAppCheckKeyData
    - xmlSecAppEncryptFile
    - xmlSecAppCmdLineParamGetString
    - xmlSecKeysMngrDestroy
    - xmlSecAppListKeyData
    - xmlSecParserSetDefaultOptions
    - xmlSecAppListTransforms
    - xmlSecBase64SetDefaultLineSize
    - strcmp
    - fprintf
    - xmlSecAppCmdLineParamIsSet
    - xmlSecGetDefaultCrypto
    - xmlSecAppCryptoSimpleKeysMngrSave
    - xmlSecSetExternalEntityLoader
    - xmlSecAppVerifyFile
    - xmlSecAppLoadKeys
    - xmlSecAppSignFile
    - xmlSecAppCheckTransform
    - xmlSecTransformCtxSetDefaultBinaryChunkSize
    - xmlSecAppDecryptFile
    - xmlSecAppPrintUsage
    - xmlSecErrorsPrintCryptoLibraryLogOnExitSet
    - xmlSecAppShutdown
    linkageType: ''
    returnType: int
    signature: int xmlSecAppExecute(xmlSecAppCommand command, const char** utf8_argv,
      int argc)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1603,1
    - Dst: xmlSecDSigCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:1607,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1608,1
    - Dst: xmlSecAppPrepareDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1612,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1613,1
    - Dst: xmlSecAppXmlDataCreate
      Src: /src/xmlsec/apps/xmlsec.c:1618,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1620,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1626,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/apps/xmlsec.c:1627,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1631,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:1641,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1651,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/apps/xmlsec.c:1651,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1653,1
    - Dst: xmlSecDSigCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:1653,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1657,1
    - Dst: xmlSecAppPrintDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1658,1
    - Dst: xmlSecDSigCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:1660,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:1662,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 52
    argCount: 2
    argNames:
    - inputFileName
    - outputFileNameTmpl
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1595
    functionDepth: 9
    functionLinenumber: 1595
    functionLinenumberEnd: 1665
    functionName: xmlSecAppSignFile
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - clock
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppXmlDataDestroy
    - xmlSecDSigCtxGetStatusString
    - xmlSecDSigCtxInitialize
    - xmlSecDSigCtxSign
    - xmlSecDSigCtxFinalize
    - xmlSecAppPrintDSigCtx
    - xmlSecDSigCtxGetFailureReasonString
    - xmlSecAppXmlDataCreate
    - xmlSecAppPrepareDSigCtx
    - fprintf
    - xmlSecAppWriteResult
    linkageType: ''
    returnType: int
    signature: int xmlSecAppSignFile(const char* inputFileName, const char* outputFileNameTmpl)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1675,1
    - Dst: xmlSecDSigCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:1679,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1680,1
    - Dst: xmlSecAppPrepareDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1683,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1684,1
    - Dst: xmlSecAppXmlDataCreate
      Src: /src/xmlsec/apps/xmlsec.c:1689,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1691,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1696,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/apps/xmlsec.c:1697,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1701,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1712,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/apps/xmlsec.c:1712,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1714,1
    - Dst: xmlSecDSigCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:1714,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1718,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/apps/xmlsec.c:1723,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/apps/xmlsec.c:1725,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1727,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1734,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/apps/xmlsec.c:1737,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/apps/xmlsec.c:1739,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1741,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1748,1
    - Dst: xmlSecAppPrintDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1751,1
    - Dst: xmlSecDSigCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:1753,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:1755,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 71
    argCount: 1
    argNames:
    - inputFileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1758
      start: 1667
    functionDepth: 3
    functionLinenumber: 1667
    functionLinenumberEnd: 1758
    functionName: xmlSecAppVerifyFile
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - clock
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppXmlDataDestroy
    - xmlSecDSigCtxGetStatusString
    - xmlSecDSigCtxInitialize
    - xmlSecPtrListGetItem
    - xmlSecDSigCtxFinalize
    - xmlSecAppPrintDSigCtx
    - xmlSecDSigCtxGetFailureReasonString
    - xmlSecAppXmlDataCreate
    - xmlSecAppPrepareDSigCtx
    - fprintf
    - xmlSecDSigCtxVerify
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int xmlSecAppVerifyFile(const char* inputFileName)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecDSigCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:1769,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1770,1
    - Dst: xmlSecAppPrepareDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1773,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1774,1
    - Dst: xmlNewDoc
      Src: /src/xmlsec/apps/xmlsec.c:1779,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1781,1
    - Dst: xmlSecTmplSignatureCreate
      Src: /src/xmlsec/apps/xmlsec.c:1785,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1788,1
    - Dst: xmlDocSetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1791,1
    - Dst: xmlSecTmplSignatureGetSignMethodNode
      Src: /src/xmlsec/apps/xmlsec.c:1794,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1794,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1796,1
    - Dst: xmlSecTmplTransformAddHmacOutputLength
      Src: /src/xmlsec/apps/xmlsec.c:1799,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1800,1
    - Dst: xmlSecTmplSignatureAddReference
      Src: /src/xmlsec/apps/xmlsec.c:1804,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1804,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1808,1
    - Dst: xmlSecTmplReferenceAddTransform
      Src: /src/xmlsec/apps/xmlsec.c:1812,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1814,1
    - Dst: xmlSecTmplTransformAddXPath2
      Src: /src/xmlsec/apps/xmlsec.c:1818,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1820,1
    - Dst: xmlSecTmplSignatureAddObject
      Src: /src/xmlsec/apps/xmlsec.c:1824,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1824,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1827,1
    - Dst: xmlNodeSetContent
      Src: /src/xmlsec/apps/xmlsec.c:1830,1
    - Dst: xmlSecTmplSignatureEnsureKeyInfo
      Src: /src/xmlsec/apps/xmlsec.c:1833,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1833,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1835,1
    - Dst: xmlSecTmplKeyInfoAddKeyName
      Src: /src/xmlsec/apps/xmlsec.c:1838,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1839,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1844,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/apps/xmlsec.c:1845,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:1845,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:1849,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:1859,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1869,1
    - Dst: xmlSecDSigCtxGetStatusString
      Src: /src/xmlsec/apps/xmlsec.c:1869,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1871,1
    - Dst: xmlSecDSigCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:1871,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1875,1
    - Dst: xmlSecAppPrintDSigCtx
      Src: /src/xmlsec/apps/xmlsec.c:1876,1
    - Dst: xmlSecDSigCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:1878,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/apps/xmlsec.c:1880,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 101
    argCount: 1
    argNames:
    - outputFileNameTmpl
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1761
    functionDepth: 9
    functionLinenumber: 1761
    functionLinenumberEnd: 1883
    functionName: xmlSecAppSignTmpl
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecTmplKeyInfoAddKeyName
    - xmlSecTmplSignatureAddObject
    - xmlDocSetRootElement
    - xmlSecDSigCtxInitialize
    - xmlSecTmplSignatureCreate
    - xmlSecDSigCtxSign
    - xmlSecDSigCtxFinalize
    - xmlSecDSigCtxGetFailureReasonString
    - fprintf
    - xmlSecTmplSignatureAddReference
    - xmlSecAppWriteResult
    - xmlDocGetRootElement
    - xmlSecTmplTransformAddHmacOutputLength
    - xmlSecAppCmdLineParamIsSet
    - xmlNewDoc
    - xmlSecTmplReferenceAddTransform
    - xmlSecDSigCtxGetStatusString
    - xmlSecAppPrepareDSigCtx
    - xmlSecTmplTransformAddXPath2
    - xmlNodeSetContent
    - xmlSecAppPrintDSigCtx
    - xmlSecTmplSignatureEnsureKeyInfo
    - xmlSecTmplSignatureGetSignMethodNode
    - clock
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSecAppSignTmpl(const char* outputFileNameTmpl)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1889,1
    - Dst: xmlSecAppPrepareKeyInfoCtx
      Src: /src/xmlsec/apps/xmlsec.c:1894,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1895,1
    - Dst: xmlSecAppPrepareKeyInfoCtx
      Src: /src/xmlsec/apps/xmlsec.c:1898,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1899,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:1903,1
    - Dst: xmlSecAppCryptoKeyGenerate
      Src: /src/xmlsec/apps/xmlsec.c:1904,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:1904,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1907,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:1908,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1914,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1917,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1922,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1926,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1931,1
    - Dst: xmlSecTransformHmacGetMinOutputBitsSize
      Src: /src/xmlsec/apps/xmlsec.c:1932,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:1934,1
    - Dst: xmlSecTransformHmacSetMinOutputBitsSize
      Src: /src/xmlsec/apps/xmlsec.c:1935,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:1939,1
    - Dst: xmlSecAppGetUriType
      Src: /src/xmlsec/apps/xmlsec.c:1940,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:1941,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1943,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:1944,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1950
      start: 1886
    functionDepth: 7
    functionLinenumber: 1886
    functionLinenumberEnd: 1950
    functionName: xmlSecAppPrepareDSigCtx
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 3
    functionsReached:
    - xmlSecAppCmdLineParamGetString
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppCmdLineParamGetInt
    - xmlSecAppCryptoKeyGenerate
    - xmlSecTransformHmacSetMinOutputBitsSize
    - xmlSecTransformHmacGetMinOutputBitsSize
    - xmlSecAppGetUriType
    - xmlSecAppCmdLineParamGetStringList
    - fprintf
    - xmlSecAppPrepareKeyInfoCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecAppPrepareDSigCtx(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1959,1
    - Dst: xmlSecDSigCtxDebugDump
      Src: /src/xmlsec/apps/xmlsec.c:1960,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:1963,1
    - Dst: xmlSecDSigCtxDebugXmlDump
      Src: /src/xmlsec/apps/xmlsec.c:1964,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1952
    functionDepth: 3
    functionLinenumber: 1952
    functionLinenumberEnd: 1966
    functionName: xmlSecAppPrintDSigCtx
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 3
    functionsReached:
    - xmlSecAppCmdLineParamIsSet
    - xmlSecDSigCtxDebugDump
    - xmlSecDSigCtxDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecAppPrintDSigCtx(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1981,1
    - Dst: xmlSecEncCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:1985,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1986,1
    - Dst: xmlSecAppPrepareEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:1989,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1990,1
    - Dst: xmlSecParseFile
      Src: /src/xmlsec/apps/xmlsec.c:1995,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:1997,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/apps/xmlsec.c:2001,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:2001,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2003,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2008,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2010,1
    - Dst: xmlSecEncCtxUriEncrypt
      Src: /src/xmlsec/apps/xmlsec.c:2011,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2011,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2012,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2013,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2016,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2017,1
    - Dst: xmlSecAppXmlDataCreate
      Src: /src/xmlsec/apps/xmlsec.c:2019,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2019,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2021,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2022,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2027,1
    - Dst: xmlSecEncCtxXmlEncrypt
      Src: /src/xmlsec/apps/xmlsec.c:2028,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2029,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2030,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2033,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2035,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2042,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2046,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2055,1
    - Dst: xmlSecEncCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:2055,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2059,1
    - Dst: xmlSecAppPrintEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:2060,1
    - Dst: xmlSecEncCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:2062,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2065,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/apps/xmlsec.c:2068,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 84
    argCount: 2
    argNames:
    - inputFileName
    - outputFileNameTmpl
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 1971
    functionDepth: 14
    functionLinenumber: 1971
    functionLinenumberEnd: 2071
    functionName: xmlSecAppEncryptFile
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecEncCtxUriEncrypt
    - xmlSecAppCmdLineParamGetString
    - xmlSecParseFile
    - xmlSecAppCmdLineParamIsSet
    - xmlSecEncCtxFinalize
    - xmlSecFindNode
    - xmlSecEncCtxInitialize
    - xmlSecAppXmlDataDestroy
    - xmlSecAppWriteResult
    - xmlSecEncCtxGetFailureReasonString
    - xmlSecAppPrepareEncCtx
    - xmlSecEncCtxXmlEncrypt
    - xmlSecAppXmlDataCreate
    - xmlSecAppPrintEncCtx
    - clock
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSecAppEncryptFile(const char* inputFileName, const char* outputFileNameTmpl)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2081,1
    - Dst: xmlSecEncCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:2085,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2086,1
    - Dst: xmlSecAppPrepareEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:2089,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2090,1
    - Dst: xmlSecAppXmlDataCreate
      Src: /src/xmlsec/apps/xmlsec.c:2095,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2097,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2101,1
    - Dst: xmlSecEncCtxDecrypt
      Src: /src/xmlsec/apps/xmlsec.c:2102,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2103,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2106,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2111,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2115,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2124,1
    - Dst: xmlSecEncCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:2124,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2128,1
    - Dst: xmlSecAppPrintEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:2129,1
    - Dst: xmlSecEncCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:2131,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2134,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 54
    argCount: 2
    argNames:
    - inputFileName
    - outputFileNameTmpl
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2137
      start: 2073
    functionDepth: 4
    functionLinenumber: 2073
    functionLinenumberEnd: 2137
    functionName: xmlSecAppDecryptFile
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppXmlDataDestroy
    - xmlSecEncCtxFinalize
    - xmlSecEncCtxInitialize
    - xmlSecEncCtxDecrypt
    - xmlSecEncCtxGetFailureReasonString
    - xmlSecAppPrepareEncCtx
    - xmlSecAppXmlDataCreate
    - xmlSecAppPrintEncCtx
    - clock
    - fprintf
    - xmlSecAppWriteResult
    linkageType: ''
    returnType: int
    signature: int xmlSecAppDecryptFile(const char* inputFileName, const char* outputFileNameTmpl)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecEncCtxInitialize
      Src: /src/xmlsec/apps/xmlsec.c:2149,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2150,1
    - Dst: xmlSecAppPrepareEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:2153,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2154,1
    - Dst: xmlNewDoc
      Src: /src/xmlsec/apps/xmlsec.c:2159,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2161,1
    - Dst: xmlSecTmplEncDataCreate
      Src: /src/xmlsec/apps/xmlsec.c:2165,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2168,1
    - Dst: xmlDocSetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:2171,1
    - Dst: xmlSecTmplEncDataEnsureCipherValue
      Src: /src/xmlsec/apps/xmlsec.c:2173,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:2173,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2174,1
    - Dst: xmlSecTmplEncDataEnsureKeyInfo
      Src: /src/xmlsec/apps/xmlsec.c:2179,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:2179,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2181,1
    - Dst: xmlSecTmplKeyInfoAddKeyName
      Src: /src/xmlsec/apps/xmlsec.c:2184,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2185,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2190,1
    - Dst: xmlSecEncCtxBinaryEncrypt
      Src: /src/xmlsec/apps/xmlsec.c:2191,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:2191,1
    - Dst: xmlSecStrlen
      Src: /src/xmlsec/apps/xmlsec.c:2192,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2193,1
    - Dst: clock
      Src: /src/xmlsec/apps/xmlsec.c:2196,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2201,1
    - Dst: xmlSecAppWriteResult
      Src: /src/xmlsec/apps/xmlsec.c:2205,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2214,1
    - Dst: xmlSecEncCtxGetFailureReasonString
      Src: /src/xmlsec/apps/xmlsec.c:2214,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2218,1
    - Dst: xmlSecAppPrintEncCtx
      Src: /src/xmlsec/apps/xmlsec.c:2219,1
    - Dst: xmlSecEncCtxFinalize
      Src: /src/xmlsec/apps/xmlsec.c:2221,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/apps/xmlsec.c:2223,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 73
    argCount: 1
    argNames:
    - outputFileNameTmpl
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2140
    functionDepth: 9
    functionLinenumber: 2140
    functionLinenumberEnd: 2226
    functionName: xmlSecAppEncryptTmpl
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecEncCtxFinalize
    - xmlSecEncCtxGetFailureReasonString
    - xmlSecTmplKeyInfoAddKeyName
    - xmlSecStrlen
    - xmlDocSetRootElement
    - xmlSecAppPrepareEncCtx
    - xmlSecAppPrintEncCtx
    - fprintf
    - xmlSecAppWriteResult
    - xmlDocGetRootElement
    - xmlSecTmplEncDataCreate
    - xmlSecAppCmdLineParamIsSet
    - xmlNewDoc
    - xmlSecTmplEncDataEnsureKeyInfo
    - xmlSecTmplEncDataEnsureCipherValue
    - xmlSecEncCtxBinaryEncrypt
    - xmlSecEncCtxInitialize
    - clock
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int xmlSecAppEncryptTmpl(const char* outputFileNameTmpl)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2232,1
    - Dst: xmlSecAppPrepareKeyInfoCtx
      Src: /src/xmlsec/apps/xmlsec.c:2237,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2238,1
    - Dst: xmlSecAppPrepareKeyInfoCtx
      Src: /src/xmlsec/apps/xmlsec.c:2241,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2242,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2246,1
    - Dst: xmlSecAppCryptoKeyGenerate
      Src: /src/xmlsec/apps/xmlsec.c:2247,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2247,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2250,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2251,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2256,1
    - Dst: xmlSecAppGetUriType
      Src: /src/xmlsec/apps/xmlsec.c:2257,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2258,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2260,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2261,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2229
    functionDepth: 7
    functionLinenumber: 2229
    functionLinenumberEnd: 2266
    functionName: xmlSecAppPrepareEncCtx
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 3
    functionsReached:
    - xmlSecAppCmdLineParamGetString
    - xmlSecAppCryptoKeyGenerate
    - xmlSecAppGetUriType
    - xmlSecAppCmdLineParamGetStringList
    - fprintf
    - xmlSecAppPrepareKeyInfoCtx
    linkageType: ''
    returnType: int
    signature: int xmlSecAppPrepareEncCtx(xmlSecEncCtxPtr encCtx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2275,1
    - Dst: xmlSecEncCtxDebugDump
      Src: /src/xmlsec/apps/xmlsec.c:2276,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2279,1
    - Dst: xmlSecEncCtxDebugXmlDump
      Src: /src/xmlsec/apps/xmlsec.c:2280,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - encCtx
    argTypes:
    - xmlSecEncCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2268
    functionDepth: 4
    functionLinenumber: 2268
    functionLinenumberEnd: 2282
    functionName: xmlSecAppPrintEncCtx
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 3
    functionsReached:
    - xmlSecEncCtxDebugDump
    - xmlSecAppCmdLineParamIsSet
    - xmlSecEncCtxDebugXmlDump
    linkageType: ''
    returnType: void
    signature: void xmlSecAppPrintEncCtx(xmlSecEncCtxPtr encCtx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2288,1
    - Dst: xmlSecKeyDataIdListDebugDump
      Src: /src/xmlsec/apps/xmlsec.c:2289,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/apps/xmlsec.c:2289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2290
      start: 2286
    functionDepth: 3
    functionLinenumber: 2286
    functionLinenumberEnd: 2290
    functionName: xmlSecAppListKeyData
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlSecKeyDataIdListDebugDump
    - xmlSecKeyDataIdsGet
    linkageType: ''
    returnType: void
    signature: void xmlSecAppListKeyData(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecKeyDataIdListFindByName
      Src: /src/xmlsec/apps/xmlsec.c:2294,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/apps/xmlsec.c:2294,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2292
    functionDepth: 3
    functionLinenumber: 2292
    functionLinenumberEnd: 2298
    functionName: xmlSecAppCheckKeyData
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecKeyDataIdsGet
    - xmlSecKeyDataIdListFindByName
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCheckKeyData(const char * name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2302,1
    - Dst: xmlSecTransformIdListDebugDump
      Src: /src/xmlsec/apps/xmlsec.c:2303,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/apps/xmlsec.c:2303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2304
      start: 2300
    functionDepth: 3
    functionLinenumber: 2300
    functionLinenumberEnd: 2304
    functionName: xmlSecAppListTransforms
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlSecTransformIdListDebugDump
    - xmlSecTransformIdsGet
    linkageType: ''
    returnType: void
    signature: void xmlSecAppListTransforms(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecTransformIdListFindByName
      Src: /src/xmlsec/apps/xmlsec.c:2308,1
    - Dst: xmlSecTransformIdsGet
      Src: /src/xmlsec/apps/xmlsec.c:2308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2312
      start: 2306
    functionDepth: 3
    functionLinenumber: 2306
    functionLinenumberEnd: 2312
    functionName: xmlSecAppCheckTransform
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecTransformIdsGet
    - xmlSecTransformIdListFindByName
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCheckTransform(const char * name)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2322,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2327,1
    - Dst: xmlSecAppCmdLineParamGetTime
      Src: /src/xmlsec/apps/xmlsec.c:2328,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2330,1
    - Dst: xmlSecAppCmdLineParamGetTime
      Src: /src/xmlsec/apps/xmlsec.c:2331,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2333,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2336,1
    - Dst: xmlSecAppCmdLineParamGetInt
      Src: /src/xmlsec/apps/xmlsec.c:2337,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2339,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2342,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2347,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2354,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:2359,1
    - Dst: xmlSecKeyDataIdListFindByName
      Src: /src/xmlsec/apps/xmlsec.c:2360,1
    - Dst: xmlSecKeyDataIdsGet
      Src: /src/xmlsec/apps/xmlsec.c:2360,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2362,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/apps/xmlsec.c:2365,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2367,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2374,1
    - Dst: xmlSecAppGetUriType
      Src: /src/xmlsec/apps/xmlsec.c:2375,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2376,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2378,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2379,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2385,1
    - Dst: xmlSecAppGetUriType
      Src: /src/xmlsec/apps/xmlsec.c:2386,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2387,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2389,1
    - Dst: xmlSecAppCmdLineParamGetStringList
      Src: /src/xmlsec/apps/xmlsec.c:2390,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 59
    argCount: 1
    argNames:
    - keyInfoCtx
    argTypes:
    - xmlSecKeyInfoCtxPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2396
      start: 2314
    functionDepth: 3
    functionLinenumber: 2314
    functionLinenumberEnd: 2396
    functionName: xmlSecAppPrepareKeyInfoCtx
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 2
    functionsReached:
    - xmlSecAppCmdLineParamIsSet
    - strlen
    - xmlSecAppCmdLineParamGetInt
    - xmlSecKeyDataIdsGet
    - xmlSecAppCmdLineParamGetTime
    - xmlSecAppGetUriType
    - xmlSecAppCmdLineParamGetStringList
    - xmlSecKeyDataIdListFindByName
    - xmlSecPtrListAdd
    - fprintf
    linkageType: ''
    returnType: int
    signature: int xmlSecAppPrepareKeyInfoCtx(xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 60
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2406,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/apps/xmlsec.c:2411,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2413,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrInit
      Src: /src/xmlsec/apps/xmlsec.c:2416,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2417,1
    - Dst: xmlSecKeyInfoCtxCreate
      Src: /src/xmlsec/apps/xmlsec.c:2422,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2424,1
    - Dst: xmlSecAppPrepareKeyInfoCtx
      Src: /src/xmlsec/apps/xmlsec.c:2427,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2429,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2430,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2435,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2442,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2443,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyGenerate
      Src: /src/xmlsec/apps/xmlsec.c:2445,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2446,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2447,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2463,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2464,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCertLoad
      Src: /src/xmlsec/apps/xmlsec.c:2466,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2469,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2471,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2477,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2478,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCertLoad
      Src: /src/xmlsec/apps/xmlsec.c:2480,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2483,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2485,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2493,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2494,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCertLoad
      Src: /src/xmlsec/apps/xmlsec.c:2496,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2499,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2501,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2507,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2508,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCertLoad
      Src: /src/xmlsec/apps/xmlsec.c:2510,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2513,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2515,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2523,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2524,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCrlLoad
      Src: /src/xmlsec/apps/xmlsec.c:2526,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2528,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2530,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2536,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2537,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrCrlLoad
      Src: /src/xmlsec/apps/xmlsec.c:2539,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2541,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2543,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2556,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2557,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrLoad
      Src: /src/xmlsec/apps/xmlsec.c:2559,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2560,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2561,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2573,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2575,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2577,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2579,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2585,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2587,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2594,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2596,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2598,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2600,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2606,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2608,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2615,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2617,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2619,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2621,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2627,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2629,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2636,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2638,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2640,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2642,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2648,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2650,1
    - Dst: xmlSecAppCmdLineParamIsSet
      Src: /src/xmlsec/apps/xmlsec.c:2657,1
    - Dst: xmlSecImportSetPersistKey
      Src: /src/xmlsec/apps/xmlsec.c:2658,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2662,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2663,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2665,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2667,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2671,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2673,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2681,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2683,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2685,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2687,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2693,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2695,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2703,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2704,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2709,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:2711,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2712,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2719,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2721,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2733,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2735,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2737,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2739,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2745,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2747,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2754,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2756,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2758,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2760,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2766,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2768,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2775,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2777,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2779,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2781,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2787,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2789,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2797,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2798,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2803,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:2805,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2806,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2813,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2815,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2824,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2826,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2828,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2830,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2836,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2838,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2845,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2847,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
      Src: /src/xmlsec/apps/xmlsec.c:2849,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:2851,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2857,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2859,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2875,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2877,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2879,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2881,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2883,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2893,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2895,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2897,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2899,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2901,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2911,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2913,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2915,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2917,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2919,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2929,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2931,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2933,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2935,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2937,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2947,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2949,1
    - Dst: xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
      Src: /src/xmlsec/apps/xmlsec.c:2951,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2953,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2955,1
    - Dst: xmlSecKeyInfoCtxDestroy
      Src: /src/xmlsec/apps/xmlsec.c:2963,1
    CyclomaticComplexity: 87
    EdgeCount: 87
    ICount: 345
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2398
    functionDepth: 7
    functionLinenumber: 2398
    functionLinenumberEnd: 2965
    functionName: xmlSecAppLoadKeys
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad
    - xmlSecKeysMngrCreate
    - xmlSecAppCmdLineParamIsSet
    - xmlSecAppCryptoSimpleKeysMngrCrlLoad
    - xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
    - xmlSecAppCmdLineParamGetString
    - xmlSecImportSetPersistKey
    - xmlSecAppCryptoSimpleKeysMngrKeyGenerate
    - xmlSecKeyInfoCtxDestroy
    - xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad
    - strlen
    - xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
    - xmlSecAppCryptoSimpleKeysMngrCertLoad
    - xmlSecAppCryptoSimpleKeysMngrInit
    - xmlSecAppCryptoSimpleKeysMngrLoad
    - fprintf
    - xmlSecAppPrepareKeyInfoCtx
    - xmlSecKeyInfoCtxCreate
    linkageType: ''
    returnType: int
    signature: int xmlSecAppLoadKeys(void)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:2982,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2984,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/apps/xmlsec.c:2994,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/xmlsec.c:2994,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:2996,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/apps/xmlsec.c:3000,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/xmlsec.c:3000,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3002,1
    - Dst: xmlStrncasecmp
      Src: /src/xmlsec/apps/xmlsec.c:3006,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/xmlsec.c:3006,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3008,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3014
      start: 2970
    functionDepth: 1
    functionLinenumber: 2970
    functionLinenumberEnd: 3014
    functionName: xmlSecAppInputMatchCallback
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - fprintf
    - xmlStrncasecmp
    - xmlStrlen
    - strcmp
    linkageType: ''
    returnType: int
    signature: int xmlSecAppInputMatchCallback(char const* filename)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3028,1
    - Dst: fopen_s
      Src: /src/xmlsec/apps/xmlsec.c:3031,1
    - Dst: fopen
      Src: /src/xmlsec/apps/xmlsec.c:3033,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3036,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3040,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3046
      start: 3016
    functionDepth: 0
    functionLinenumber: 3016
    functionLinenumberEnd: 3046
    functionName: xmlSecAppInputOpenCallback
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - fprintf
    - fopen
    - fopen_s
    - strcmp
    linkageType: ''
    returnType: void
    signature: 'void *

      xmlSecAppInputOpenCallback(char const* filename)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: feof
      Src: /src/xmlsec/apps/xmlsec.c:3056,1
    - Dst: fread
      Src: /src/xmlsec/apps/xmlsec.c:3059,1
    - Dst: ferror
      Src: /src/xmlsec/apps/xmlsec.c:3060,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - context
    - buffer
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3064
      start: 3048
    functionDepth: 0
    functionLinenumber: 3048
    functionLinenumberEnd: 3064
    functionName: xmlSecAppInputReadCallback
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - ferror
    - fread
    - feof
    linkageType: ''
    returnType: int
    signature: int xmlSecAppInputReadCallback(void* context, char* buffer, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/xmlsec/apps/xmlsec.c:3073,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3078,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - context
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3081
      start: 3066
    functionDepth: 0
    functionLinenumber: 3066
    functionLinenumberEnd: 3081
    functionName: xmlSecAppInputCloseCallback
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - fprintf
    - fclose
    linkageType: ''
    returnType: int
    signature: int xmlSecAppInputCloseCallback(void* context)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: xmlInitParser
      Src: /src/xmlsec/apps/xmlsec.c:3100,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3106,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3107,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3108,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3109,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3110,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3111,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3112,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/apps/xmlsec.c:3116,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3118,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/apps/xmlsec.c:3121,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3122,1
    - Dst: xmlSecIORegisterCallbacks
      Src: /src/xmlsec/apps/xmlsec.c:3127,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3132,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/apps/xmlsec.c:3137,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3138,1
    - Dst: xmlSecGetDefaultCrypto
      Src: /src/xmlsec/apps/xmlsec.c:3142,1
    - Dst: xmlSecAppCryptoInit
      Src: /src/xmlsec/apps/xmlsec.c:3149,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3149,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3154
      start: 3090
    functionDepth: 7
    functionLinenumber: 3090
    functionLinenumberEnd: 3154
    functionName: xmlSecAppInit
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecIORegisterCallbacks
    - xmlSecAppCmdLineParamGetString
    - xsltNewSecurityPrefs
    - xmlSecGetDefaultCrypto
    - xmlSecCryptoDLLoadLibrary
    - xmlSecAppCryptoInit
    - xsltSetSecurityPrefs
    - xmlSecInit
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    linkageType: ''
    returnType: int
    signature: int xmlSecAppInit(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAppCryptoShutdown
      Src: /src/xmlsec/apps/xmlsec.c:3163,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3164,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/apps/xmlsec.c:3168,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3169,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/apps/xmlsec.c:3174,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/apps/xmlsec.c:3175,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/apps/xmlsec.c:3177,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3178
      start: 3156
    functionDepth: 4
    functionLinenumber: 3156
    functionLinenumberEnd: 3178
    functionName: xmlSecAppShutdown
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - xsltCleanupGlobals
    - xmlCleanupParser
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - xmlSecAppCryptoShutdown
    - fprintf
    linkageType: ''
    returnType: void
    signature: void xmlSecAppShutdown(void)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3192,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/apps/xmlsec.c:3197,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3199,1
    - Dst: memset
      Src: /src/xmlsec/apps/xmlsec.c:3202,1
    - Dst: xmlSecParseFile
      Src: /src/xmlsec/apps/xmlsec.c:3205,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3207,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3209,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3214,1
    - Dst: xmlParseDTD
      Src: /src/xmlsec/apps/xmlsec.c:3217,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3217,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3219,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3220,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3221,1
    - Dst: memset
      Src: /src/xmlsec/apps/xmlsec.c:3225,1
    - Dst: xmlValidateDtd
      Src: /src/xmlsec/apps/xmlsec.c:3227,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3233,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3235,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/apps/xmlsec.c:3240,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3242,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3243,1
    - Dst: strrchr
      Src: /src/xmlsec/apps/xmlsec.c:3246,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/apps/xmlsec.c:3256,1
    - Dst: xmlSecAppAddIDAttr
      Src: /src/xmlsec/apps/xmlsec.c:3258,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3259,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3260,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3261,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/apps/xmlsec.c:3264,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3267,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3275,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3277,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/apps/xmlsec.c:3282,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3286,1
    - Dst: xmlGetID
      Src: /src/xmlsec/apps/xmlsec.c:3289,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3289,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3291,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3292,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3293,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3297,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/apps/xmlsec.c:3301,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3301,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3303,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3304,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3305,1
    - Dst: strrchr
      Src: /src/xmlsec/apps/xmlsec.c:3308,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/apps/xmlsec.c:3317,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:3317,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3319,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3321,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3322,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3325,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3326,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:3333,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3335,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3336,1
    - Dst: xmlXPathNewContext
      Src: /src/xmlsec/apps/xmlsec.c:3340,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3342,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3343,1
    - Dst: xmlXPathRegisterNs
      Src: /src/xmlsec/apps/xmlsec.c:3350,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3352,1
    - Dst: xmlXPathFreeContext
      Src: /src/xmlsec/apps/xmlsec.c:3353,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3354,1
    - Dst: xmlXPathEval
      Src: /src/xmlsec/apps/xmlsec.c:3360,1
    - Dst: xmlSecAppCmdLineParamGetString
      Src: /src/xmlsec/apps/xmlsec.c:3360,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3362,1
    - Dst: xmlXPathFreeContext
      Src: /src/xmlsec/apps/xmlsec.c:3363,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3364,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3369,1
    - Dst: xmlXPathFreeObject
      Src: /src/xmlsec/apps/xmlsec.c:3370,1
    - Dst: xmlXPathFreeContext
      Src: /src/xmlsec/apps/xmlsec.c:3371,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3372,1
    - Dst: xmlXPathFreeContext
      Src: /src/xmlsec/apps/xmlsec.c:3377,1
    - Dst: xmlXPathFreeObject
      Src: /src/xmlsec/apps/xmlsec.c:3378,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/apps/xmlsec.c:3381,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3383,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3384,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/apps/xmlsec.c:3390,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3392,1
    - Dst: xmlSecAppXmlDataDestroy
      Src: /src/xmlsec/apps/xmlsec.c:3394,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 162
    argCount: 3
    argNames:
    - filename
    - defStartNodeName
    - defStartNodeNs
    argTypes:
    - char*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3402
      start: 3180
    functionDepth: 20
    functionLinenumber: 3180
    functionLinenumberEnd: 3402
    functionName: xmlSecAppXmlDataCreate
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 4
    functionsReached:
    - xmlStrdup
    - xmlXPathFreeObject
    - xmlSecAppCmdLineParamGetString
    - xmlSecGetNextElementNode
    - xmlFree
    - xmlSecAddIDs
    - xmlXPathNewContext
    - xmlMalloc
    - fprintf
    - xmlDocGetRootElement
    - xmlSecAppAddIDAttr
    - xmlSecParseFile
    - xmlValidateDtd
    - xmlGetID
    - memset
    - xmlXPathFreeContext
    - strrchr
    - xmlSecAppXmlDataDestroy
    - xmlSecFindNode
    - xmlXPathRegisterNs
    - xmlXPathEval
    - xmlParseDTD
    linkageType: ''
    returnType: xmlSecAppXmlDataPtr
    signature: xmlSecAppXmlDataPtr xmlSecAppXmlDataCreate(const char* filename, const
      xmlChar* defStartNodeName, const xmlChar* defStartNodeNs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3407,1
    - Dst: xmlFreeDtd
      Src: /src/xmlsec/apps/xmlsec.c:3411,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/apps/xmlsec.c:3414,1
    - Dst: memset
      Src: /src/xmlsec/apps/xmlsec.c:3416,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3417,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - data
    argTypes:
    - xmlSecAppXmlDataPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3418
      start: 3404
    functionDepth: 3
    functionLinenumber: 3404
    functionLinenumberEnd: 3418
    functionName: xmlSecAppXmlDataDestroy
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 5
    functionsReached:
    - xmlFree
    - xmlFreeDtd
    - fprintf
    - xmlFreeDoc
    - memset
    linkageType: ''
    returnType: void
    signature: void xmlSecAppXmlDataDestroy(xmlSecAppXmlDataPtr data)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3430,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3430,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3435,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3435,1
    - Dst: strncmp
      Src: /src/xmlsec/apps/xmlsec.c:3440,1
    - Dst: strncmp
      Src: /src/xmlsec/apps/xmlsec.c:3440,1
    - Dst: xmlSecAppParseCommand
      Src: /src/xmlsec/apps/xmlsec.c:3443,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3450,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3450,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3455,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3455,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3461,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3461,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3467,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3467,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3473,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3473,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3479,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3479,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3488,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3488,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3498,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3498,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3508,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3508,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3522,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3522,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3532,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3532,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3543,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3543,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 76
    argCount: 3
    argNames:
    - cmd
    - cmdLineTopics
    - subCommand
    argTypes:
    - char*
    - xmlSecAppCmdLineParamTopic*
    - xmlSecAppCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3559
      start: 3420
    functionDepth: 1
    functionLinenumber: 3420
    functionLinenumberEnd: 3559
    functionName: xmlSecAppParseCommand
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 2
    functionsReached:
    - strncmp
    - xmlSecAppParseCommand
    - strcmp
    linkageType: ''
    returnType: xmlSecAppCommand
    signature: xmlSecAppCommand xmlSecAppParseCommand(const char* cmd, xmlSecAppCmdLineParamTopic*
      cmdLineTopics, xmlSecAppCommand* subCommand)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3565,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3566,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3569,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3572,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3575,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3578,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3581,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3584,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3587,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3590,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3593,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3596,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3599,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3602,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3605,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3609,1
    - Dst: xmlSecAppCmdLineParamsListPrint
      Src: /src/xmlsec/apps/xmlsec.c:3610,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3611,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3613,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3614,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 2
    argNames:
    - command
    - topics
    argTypes:
    - xmlSecAppCommand
    - xmlSecAppCmdLineParamTopic
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3615
      start: 3561
    functionDepth: 1
    functionLinenumber: 3561
    functionLinenumberEnd: 3615
    functionName: xmlSecAppPrintHelp
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 1
    functionsReached:
    - fprintf
    - xmlSecAppCmdLineParamsListPrint
    linkageType: ''
    returnType: void
    signature: void xmlSecAppPrintHelp(xmlSecAppCommand command, xmlSecAppCmdLineParamTopic
      topics)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3622,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3624,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3626,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3628,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3631,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:3634,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3637
      start: 3617
    functionDepth: 0
    functionLinenumber: 3617
    functionLinenumberEnd: 3637
    functionName: xmlSecAppGetUriType
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 3
    functionsReached:
    - fprintf
    - strlen
    - strcmp
    linkageType: ''
    returnType: xmlSecTransformUriType
    signature: xmlSecTransformUriType xmlSecAppGetUriType(const char* string)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: xmlFindCharEncodingHandler
      Src: /src/xmlsec/apps/xmlsec.c:3645,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/xmlsec.c:3651,1
    - Dst: xmlOutputBufferCreateFile
      Src: /src/xmlsec/apps/xmlsec.c:3652,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3654,1
    - Dst: xmlOutputBufferCreateFilename
      Src: /src/xmlsec/apps/xmlsec.c:3658,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3660,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - filename
    - encoding
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3665
      start: 3639
    functionDepth: 6
    functionLinenumber: 3639
    functionLinenumberEnd: 3665
    functionName: xmlSecAppOpenFile
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - strcmp
    - xmlFindCharEncodingHandler
    - xmlOutputBufferCreateFile
    - fprintf
    - xmlOutputBufferCreateFilename
    linkageType: ''
    returnType: xmlOutputBufferPtr
    signature: xmlOutputBufferPtr xmlSecAppOpenFile(const char* filename, const char*
      encoding)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strstr
      Src: /src/xmlsec/apps/xmlsec.c:3687,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/apps/xmlsec.c:3689,1
    - Dst: xmlStrdup
      Src: /src/xmlsec/apps/xmlsec.c:3693,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3695,1
    - Dst: basename
      Src: /src/xmlsec/apps/xmlsec.c:3700,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3702,1
    - Dst: strrchr
      Src: /src/xmlsec/apps/xmlsec.c:3705,1
    - Dst: _splitpath_s
      Src: /src/xmlsec/apps/xmlsec.c:3712,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:3712,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3714,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:3720,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:3720,1
    - Dst: xmlMalloc
      Src: /src/xmlsec/apps/xmlsec.c:3721,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3723,1
    - Dst: memset
      Src: /src/xmlsec/apps/xmlsec.c:3726,1
    - Dst: memcpy
      Src: /src/xmlsec/apps/xmlsec.c:3730,1
    - Dst: strlen
      Src: /src/xmlsec/apps/xmlsec.c:3732,1
    - Dst: strcat
      Src: /src/xmlsec/apps/xmlsec.c:3736,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3738,1
    - Dst: strcat_s
      Src: /src/xmlsec/apps/xmlsec.c:3742,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3744,1
    - Dst: strcat
      Src: /src/xmlsec/apps/xmlsec.c:3751,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3753,1
    - Dst: strcat_s
      Src: /src/xmlsec/apps/xmlsec.c:3757,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3759,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3767,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 73
    argCount: 2
    argNames:
    - inputFileName
    - outputFileNameTmpl
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3770
      start: 3668
    functionDepth: 2
    functionLinenumber: 3668
    functionLinenumberEnd: 3770
    functionName: xmlSecAppGetOutputFilename
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 0
    functionsReached:
    - xmlStrdup
    - strrchr
    - strlen
    - xmlFree
    - strcat
    - _splitpath_s
    - memcpy
    - xmlMalloc
    - strcat_s
    - basename
    - fprintf
    - strstr
    - memset
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecAppGetOutputFilename(const char* inputFileName, const char* outputFileNameTmpl)'
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAppGetOutputFilename
      Src: /src/xmlsec/apps/xmlsec.c:3780,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3782,1
    - Dst: xmlSecAppOpenFile
      Src: /src/xmlsec/apps/xmlsec.c:3788,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3790,1
    - Dst: xmlSaveFileTo
      Src: /src/xmlsec/apps/xmlsec.c:3798,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3800,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/apps/xmlsec.c:3801,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/apps/xmlsec.c:3805,1
    - Dst: xmlOutputBufferWrite
      Src: /src/xmlsec/apps/xmlsec.c:3806,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/apps/xmlsec.c:3806,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/apps/xmlsec.c:3806,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3808,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/apps/xmlsec.c:3809,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/apps/xmlsec.c:3812,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3814,1
    - Dst: xmlOutputBufferClose
      Src: /src/xmlsec/apps/xmlsec.c:3815,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 5
    argNames:
    - inputFileName
    - outputFileNameTmpl
    - doc
    - buffer
    - encoding
    argTypes:
    - char*
    - char*
    - xmlDocPtr
    - xmlSecBufferPtr
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3821
      start: 3772
    functionDepth: 7
    functionLinenumber: 3772
    functionLinenumberEnd: 3821
    functionName: xmlSecAppWriteResult
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 5
    functionsReached:
    - xmlFree
    - xmlOutputBufferWrite
    - xmlSaveFileTo
    - xmlSecBufferGetData
    - xmlSecAppGetOutputFilename
    - xmlOutputBufferClose
    - xmlSecBufferGetSize
    - fprintf
    - xmlSecAppOpenFile
    linkageType: ''
    returnType: int
    signature: int xmlSecAppWriteResult(const char* inputFileName, const char* outputFileNameTmpl,
      xmlDocPtr doc, xmlSecBufferPtr buffer, const xmlChar* encoding)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/apps/xmlsec.c:3834,1
    - Dst: xmlSecAppAddIDAttr
      Src: /src/xmlsec/apps/xmlsec.c:3836,1
    - Dst: xmlSecGetNextElementNode
      Src: /src/xmlsec/apps/xmlsec.c:3839,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/apps/xmlsec.c:3843,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/apps/xmlsec.c:3848,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/apps/xmlsec.c:3854,1
    - Dst: xmlNodeListGetString
      Src: /src/xmlsec/apps/xmlsec.c:3863,1
    - Dst: xmlGetID
      Src: /src/xmlsec/apps/xmlsec.c:3869,1
    - Dst: xmlAddID
      Src: /src/xmlsec/apps/xmlsec.c:3871,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/xmlsec.c:3873,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3874,1
    - Dst: xmlFree
      Src: /src/xmlsec/apps/xmlsec.c:3877,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 4
    argNames:
    - node
    - attrName
    - nodeName
    - nsHref
    argTypes:
    - xmlNodePtr
    - xmlChar*
    - xmlChar*
    - xmlChar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3879
      start: 3823
    functionDepth: 8
    functionLinenumber: 3823
    functionLinenumberEnd: 3879
    functionName: xmlSecAppAddIDAttr
    functionSourceFile: /src/xmlsec/apps/xmlsec.c
    functionUses: 2
    functionsReached:
    - xmlSecAppAddIDAttr
    - xmlSecGetNextElementNode
    - xmlStrEqual
    - xmlFree
    - xmlAddID
    - xmlNodeListGetString
    - fprintf
    - xmlGetID
    linkageType: ''
    returnType: int
    signature: int xmlSecAppAddIDAttr(xmlNodePtr node, const xmlChar* attrName, const
      xmlChar* nodeName, const xmlChar* nsHref)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - param
    argTypes:
    - xmlSecAppCmdLineParamPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: xmlSecAppCmdLineParamIsSet
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCmdLineParamIsSet(xmlSecAppCmdLineParamPtr param)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - param
    argTypes:
    - xmlSecAppCmdLineParamPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 59
    functionName: xmlSecAppCmdLineParamGetString
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 7
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecAppCmdLineParamGetString(xmlSecAppCmdLineParamPtr param)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - param
    argTypes:
    - xmlSecAppCmdLineParamPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: xmlSecAppCmdLineParamGetStringList
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 3
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: char
    signature: 'char *

      xmlSecAppCmdLineParamGetStringList(xmlSecAppCmdLineParamPtr param)'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - param
    - def
    argTypes:
    - xmlSecAppCmdLineParamPtr
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: xmlSecAppCmdLineParamGetInt
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 3
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCmdLineParamGetInt(xmlSecAppCmdLineParamPtr param, int
      def)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - param
    - def
    argTypes:
    - xmlSecAppCmdLineParamPtr
    - time_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionName: xmlSecAppCmdLineParamGetTime
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: time_t
    signature: time_t xmlSecAppCmdLineParamGetTime(xmlSecAppCmdLineParamPtr param,
      time_t def)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:96,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:97,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/cmdline.c:99,1
    - Dst: xmlSecAppCmdLineParamsListFind
      Src: /src/xmlsec/apps/cmdline.c:100,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:102,1
    - Dst: xmlSecAppCmdLineParamRead
      Src: /src/xmlsec/apps/cmdline.c:106,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:108,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/cmdline.c:116,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:117,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 5
    argNames:
    - params
    - topics
    - argv
    - argc
    - pos
    argTypes:
    - xmlSecAppCmdLineParamPtr*
    - xmlSecAppCmdLineParamTopic
    - char**
    - int
    - int
    assertStmts:
    - condition: (params != NULL)
      pos:
        line_end: 95
        line_start: 95
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (argv != NULL)
      pos:
        line_end: 96
        line_start: 96
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 124
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 124
    functionName: xmlSecAppCmdLineParamsListParse
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - strcmp
    - xmlSecAppCmdLineParamRead
    - assert
    - fprintf
    - xmlSecAppCmdLineParamsListFind
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCmdLineParamsListParse(xmlSecAppCmdLineParamPtr* params,\n
      \                               xmlSecAppCmdLineParamTopic topics,\n                                const
      char** argv, int argc, int pos)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:131,1
    - Dst: xmlSecAppCmdLineValueDestroy
      Src: /src/xmlsec/apps/cmdline.c:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - params
    argTypes:
    - xmlSecAppCmdLineParamPtr*
    assertStmts:
    - condition: (params != NULL)
      pos:
        line_end: 130
        line_start: 130
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 140
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 140
    functionName: xmlSecAppCmdLineParamsListClean
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - xmlSecAppCmdLineValueDestroy
    - assert
    linkageType: ''
    returnType: void
    signature: void xmlSecAppCmdLineParamsListClean(xmlSecAppCmdLineParamPtr* params)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:148,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:149,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - params
    - topics
    - output
    argTypes:
    - xmlSecAppCmdLineParamPtr*
    - xmlSecAppCmdLineParamTopic
    - FILE*
    assertStmts:
    - condition: (params != NULL)
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (output != NULL)
      pos:
        line_end: 148
        line_start: 148
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 156
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 156
    functionName: xmlSecAppCmdLineParamsListPrint
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - fprintf
    - assert
    linkageType: ''
    returnType: void
    signature: "void xmlSecAppCmdLineParamsListPrint(xmlSecAppCmdLineParamPtr* params,\n
      \                               xmlSecAppCmdLineParamTopic topics,\n                                FILE*
      output)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:162,1
    - Dst: malloc
      Src: /src/xmlsec/apps/cmdline.c:163,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:165,1
    - Dst: memset
      Src: /src/xmlsec/apps/cmdline.c:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - param
    - pos
    argTypes:
    - xmlSecAppCmdLineParamPtr
    - int
    assertStmts:
    - condition: (param != NULL)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 174
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 174
    functionName: xmlSecAppCmdLineValueCreate
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 0
    functionsReached:
    - fprintf
    - memset
    - malloc
    - assert
    linkageType: ''
    returnType: xmlSecAppCmdLineValuePtr
    signature: xmlSecAppCmdLineValuePtr xmlSecAppCmdLineValueCreate(xmlSecAppCmdLineParamPtr
      param, int pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:178,1
    - Dst: free
      Src: /src/xmlsec/apps/cmdline.c:181,1
    - Dst: free
      Src: /src/xmlsec/apps/cmdline.c:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - xmlSecAppCmdLineValuePtr
    assertStmts:
    - condition: (value != NULL)
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 184
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 184
    functionName: xmlSecAppCmdLineValueDestroy
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - free
    - assert
    linkageType: ''
    returnType: void
    signature: void xmlSecAppCmdLineValueDestroy(xmlSecAppCmdLineValuePtr value)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:189,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:190,1
    - Dst: strlen
      Src: /src/xmlsec/apps/cmdline.c:193,1
    - Dst: strncmp
      Src: /src/xmlsec/apps/cmdline.c:194,1
    - Dst: strcmp
      Src: /src/xmlsec/apps/cmdline.c:201,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - argvParam
    - paramName
    - canHaveNameString
    argTypes:
    - char*
    - char*
    - int
    assertStmts:
    - condition: (argvParam != NULL)
      pos:
        line_end: 188
        line_start: 188
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (paramName != NULL)
      pos:
        line_end: 189
        line_start: 189
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 205
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 205
    functionName: xmlSecAppCmdLineMatchParam
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    - strcmp
    - assert
    linkageType: ''
    returnType: int
    signature: "int xmlSecAppCmdLineMatchParam(const char* argvParam, const char*
      paramName,\n                           int canHaveNameString)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:213,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:214,1
    - Dst: xmlSecAppCmdLineMatchParam
      Src: /src/xmlsec/apps/cmdline.c:222,1
    - Dst: xmlSecAppCmdLineMatchParam
      Src: /src/xmlsec/apps/cmdline.c:227,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 3
    argNames:
    - params
    - topics
    - name
    argTypes:
    - xmlSecAppCmdLineParamPtr*
    - xmlSecAppCmdLineParamTopic
    - char*
    assertStmts:
    - condition: (params != NULL)
      pos:
        line_end: 212
        line_start: 212
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (name != NULL)
      pos:
        line_end: 213
        line_start: 213
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 234
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 234
    functionName: xmlSecAppCmdLineParamsListFind
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - xmlSecAppCmdLineMatchParam
    - assert
    linkageType: ''
    returnType: xmlSecAppCmdLineParamPtr
    signature: "xmlSecAppCmdLineParamPtr xmlSecAppCmdLineParamsListFind(xmlSecAppCmdLineParamPtr*
      params, xmlSecAppCmdLineParamTopic topics,\n                                const
      char* name)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:242,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:243,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:244,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:253,1
    - Dst: xmlSecAppCmdLineValueCreate
      Src: /src/xmlsec/apps/cmdline.c:258,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:260,1
    - Dst: assert
      Src: /src/xmlsec/apps/cmdline.c:264,1
    - Dst: strchr
      Src: /src/xmlsec/apps/cmdline.c:272,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:284,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:291,1
    - Dst: malloc
      Src: /src/xmlsec/apps/cmdline.c:296,1
    - Dst: strlen
      Src: /src/xmlsec/apps/cmdline.c:296,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:298,1
    - Dst: strlen
      Src: /src/xmlsec/apps/cmdline.c:299,1
    - Dst: memset
      Src: /src/xmlsec/apps/cmdline.c:302,1
    - Dst: strlen
      Src: /src/xmlsec/apps/cmdline.c:302,1
    - Dst: memcpy
      Src: /src/xmlsec/apps/cmdline.c:303,1
    - Dst: strlen
      Src: /src/xmlsec/apps/cmdline.c:303,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:314,1
    - Dst: XMLSEC_SCANF
      Src: /src/xmlsec/apps/cmdline.c:318,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:319,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:325,1
    - Dst: xmlSecAppCmdLineTimeParamRead
      Src: /src/xmlsec/apps/cmdline.c:329,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:330,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:336,1
    - Dst: xmlSecAppCmdLineTimeParamRead
      Src: /src/xmlsec/apps/cmdline.c:340,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:341,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 97
    argCount: 4
    argNames:
    - param
    - argv
    - argc
    - pos
    argTypes:
    - xmlSecAppCmdLineParamPtr
    - char**
    - int
    - int
    assertStmts:
    - condition: (pos < argc)
      pos:
        line_end: 243
        line_start: 243
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (param != NULL)
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (argv != NULL)
      pos:
        line_end: 242
        line_start: 242
        source_file: /src/xmlsec/apps/cmdline.c
    - condition: (prev->next == NULL)
      pos:
        line_end: 263
        line_start: 263
        source_file: /src/xmlsec/apps/cmdline.c
    constantsTouched: []
    func_position:
      end: 347
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 347
    functionName: xmlSecAppCmdLineParamRead
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - xmlSecAppCmdLineValueCreate
    - strlen
    - XMLSEC_SCANF
    - xmlSecAppCmdLineTimeParamRead
    - memcpy
    - malloc
    - strchr
    - assert
    - fprintf
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCmdLineParamRead(xmlSecAppCmdLineParamPtr param, const
      char** argv, int argc, int pos)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: mktime
      Src: /src/xmlsec/apps/cmdline.c:360,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:362,1
    - Dst: gmtime
      Src: /src/xmlsec/apps/cmdline.c:365,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:367,1
    - Dst: mktime
      Src: /src/xmlsec/apps/cmdline.c:372,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/cmdline.c:374,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - timeptr
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 380
    functionName: xmlSecAppGetGmtTime
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 0
    functionsReached:
    - mktime
    - fprintf
    - gmtime
    linkageType: ''
    returnType: time_t
    signature: time_t xmlSecAppGetGmtTime(struct tm* timeptr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/xmlsec/apps/cmdline.c:391,1
    - Dst: XMLSEC_SCANF
      Src: /src/xmlsec/apps/cmdline.c:393,1
    - Dst: XMLSEC_MKGMTIME
      Src: /src/xmlsec/apps/cmdline.c:413,1
    - Dst: mktime
      Src: /src/xmlsec/apps/cmdline.c:415,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 21
    argCount: 3
    argNames:
    - str
    - t
    - is_gmt_time
    argTypes:
    - char*
    - time_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 418
    functionName: xmlSecAppCmdLineTimeParamRead
    functionSourceFile: /src/xmlsec/apps/cmdline.c
    functionUses: 1
    functionsReached:
    - mktime
    - XMLSEC_MKGMTIME
    - XMLSEC_SCANF
    - memset
    linkageType: ''
    returnType: int
    signature: int xmlSecAppCmdLineTimeParamRead(const char* str, time_t* t, int is_gmt_time)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:37,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:42,1
    - Dst: test_base64
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:44,1
    - Dst: test_xmlSecX509EscapedStringRead
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:47,1
    - Dst: test_xmlSecX509AttrValueStringRead
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:50,1
    - Dst: test_xmlSecX509NameRead
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:53,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:60,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:63,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:69,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:70,1
    - Dst: _CrtSetReportMode
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:71,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:73,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:74,1
    - Dst: _CrtSetReportFile
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:75,1
    - Dst: _CrtDumpMemoryLeaks
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:76,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 80
    functionName: main
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - test_xmlSecX509NameRead
    - test_base64
    - _CrtSetReportFile
    - test_xmlSecX509AttrValueStringRead
    - test_xmlSecX509EscapedStringRead
    - _CrtSetReportMode
    - _CrtDumpMemoryLeaks
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int argc, const char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:90,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionName: testGroupStart
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testGroupStart(const char * name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:100,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 110
    functionName: testGroupFinished
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - fprintf
    linkageType: ''
    returnType: int
    signature: int testGroupFinished(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:113,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionName: testStart
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testStart(const char * name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: testFinishedSuccess
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testFinishedSuccess(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: testFinishedFailure
    functionSourceFile: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testFinishedFailure(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:37,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:38,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:40,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:42,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:43,1
    - Dst: xmlSecX509EscapedStringRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:48,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:50,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:51,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:57,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:58,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:59,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:63,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:64,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:65,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 6
    argNames:
    - name
    - str
    - delim
    - ingoreTrailingSpaces
    - expectedIn
    - expectedOut
    argTypes:
    - char*
    - char*
    - char
    - int
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 21
    functionDepth: 2
    functionLinenumber: 21
    functionLinenumberEnd: 71
    functionName: test_xmlSecX509EscapedStringRead_success
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecX509EscapedStringRead
    - testFinishedFailure
    - xmlSecAssert
    - xmlStrcmp
    - testFinishedSuccess
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509EscapedStringRead_success(\n    const char * name,\n
      \   const char * str,\n    const char delim,\n    int ingoreTrailingSpaces,\n
      \   const char* expectedIn,\n    const char* expectedOut\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:87,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:89,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:91,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:92,1
    - Dst: xmlSecX509EscapedStringRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:97,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:99,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:100,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - name
    - str
    - delim
    - ingoreTrailingSpaces
    argTypes:
    - char*
    - char*
    - char
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 73
    functionDepth: 2
    functionLinenumber: 73
    functionLinenumberEnd: 106
    functionName: test_xmlSecX509EscapedStringRead_failure
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - xmlSecX509EscapedStringRead
    - testFinishedFailure
    - xmlSecAssert
    - testFinishedSuccess
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509EscapedStringRead_failure(\n    const char * name,\n
      \   const char * str,\n    const char delim,\n    int ingoreTrailingSpaces\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testGroupStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:112,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:115,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:116,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:117,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:118,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:119,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:120,1
    - Dst: test_xmlSecX509EscapedStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:121,1
    - Dst: test_xmlSecX509EscapedStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:124,1
    - Dst: test_xmlSecX509EscapedStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:125,1
    - Dst: test_xmlSecX509EscapedStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:126,1
    - Dst: testGroupFinished
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 109
    functionDepth: 3
    functionLinenumber: 109
    functionLinenumberEnd: 130
    functionName: test_xmlSecX509EscapedStringRead
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 1
    functionsReached:
    - testGroupFinished
    - test_xmlSecX509EscapedStringRead_success
    - testGroupStart
    - test_xmlSecX509EscapedStringRead_failure
    linkageType: ''
    returnType: int
    signature: int test_xmlSecX509EscapedStringRead(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:152,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:153,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:155,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:157,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:158,1
    - Dst: xmlSecX509AttrValueStringRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:163,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:165,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:166,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:172,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:173,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:174,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:177,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:178,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:179,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:183,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:184,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:189,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 7
    argNames:
    - name
    - str
    - delim
    - ingoreTrailingSpaces
    - expectedIn
    - expectedOut
    - expectedType
    argTypes:
    - char*
    - char*
    - char
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 134
    functionDepth: 3
    functionLinenumber: 134
    functionLinenumberEnd: 190
    functionName: test_xmlSecX509AttrValueStringRead_success
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - testFinishedFailure
    - xmlSecAssert
    - xmlStrcmp
    - xmlSecX509AttrValueStringRead
    - testFinishedSuccess
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509AttrValueStringRead_success(\n    const char *
      name,\n    const char * str,\n    const char delim,\n    int ingoreTrailingSpaces,\n
      \   const char* expectedIn,\n    const char* expectedOut,\n    int expectedType\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:207,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:209,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:211,1
    - Dst: XMLSEC_SAFE_CAST_INT_TO_SIZE
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:212,1
    - Dst: xmlSecX509AttrValueStringRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:217,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:219,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:220,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - name
    - str
    - delim
    - ingoreTrailingSpaces
    argTypes:
    - char*
    - char*
    - char
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 226
    functionName: test_xmlSecX509AttrValueStringRead_failure
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlStrlen
    - XMLSEC_SAFE_CAST_INT_TO_SIZE
    - testFinishedFailure
    - xmlSecAssert
    - testFinishedSuccess
    - xmlSecX509AttrValueStringRead
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509AttrValueStringRead_failure(\n    const char *
      name,\n    const char * str,\n    const char delim,\n    int ingoreTrailingSpaces\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testGroupStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:232,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:235,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:236,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:237,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:238,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:239,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:240,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:241,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:242,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:243,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:244,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:245,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:246,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:247,1
    - Dst: test_xmlSecX509AttrValueStringRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:248,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:251,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:252,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:253,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:254,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:255,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:256,1
    - Dst: test_xmlSecX509AttrValueStringRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:257,1
    - Dst: testGroupFinished
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 229
    functionDepth: 4
    functionLinenumber: 229
    functionLinenumberEnd: 261
    functionName: test_xmlSecX509AttrValueStringRead
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 1
    functionsReached:
    - testGroupFinished
    - test_xmlSecX509AttrValueStringRead_success
    - test_xmlSecX509AttrValueStringRead_failure
    - testGroupStart
    linkageType: ''
    returnType: int
    signature: int test_xmlSecX509AttrValueStringRead(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:285,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:286,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:287,1
    - Dst: xmlSecAssert2
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:290,1
    - Dst: strcpy_s
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:293,1
    - Dst: strcpy_s
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:294,1
    - Dst: strncpy
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:296,1
    - Dst: strncpy
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:299,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 5
    argNames:
    - name
    - value
    - valueSize
    - type
    - context
    argTypes:
    - xmlChar*
    - xmlChar*
    - xmlSecSize
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 307
    functionName: test_xmlSecX509NameReadCallback
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - xmlSecAssert2
    - strncpy
    - strcpy_s
    linkageType: ''
    returnType: int
    signature: "int test_xmlSecX509NameReadCallback(\n    const xmlChar * name,\n
      \   const xmlChar * value,\n    xmlSecSize valueSize,\n    int type,\n    void
      * context\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:326,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:327,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:329,1
    - Dst: memset
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:331,1
    - Dst: xmlSecX509NameRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:332,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:334,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:335,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:341,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:342,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:345,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:346,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:347,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:350,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:351,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:352,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:355,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:356,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:356,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:357,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:361,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:362,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:365,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:366,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:367,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:370,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:371,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:372,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:375,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:376,1
    - Dst: xmlStrlen
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:376,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:377,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:381,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:382,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:387,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 10
    argNames:
    - name
    - str
    - replacements
    - expectedCount
    - name0
    - value0
    - type0
    - name1
    - value1
    - type1
    argTypes:
    - char*
    - char*
    - xmlSecx509NameReplacements*
    - int
    - char*
    - char*
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 310
    functionDepth: 4
    functionLinenumber: 310
    functionLinenumberEnd: 388
    functionName: test_xmlSecX509NameRead_success
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlStrlen
    - testFinishedFailure
    - xmlSecAssert
    - xmlStrcmp
    - testFinishedSuccess
    - fprintf
    - xmlSecX509NameRead
    - memset
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509NameRead_success(\n    const char * name,\n    const
      char * str,\n    xmlSecx509NameReplacements * replacements,\n    int expectedCount,\n
      \   const char * name0,\n    const char * value0,\n    int type0,\n    const
      char * name1,\n    const char * value1,\n    int type1\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:400,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:402,1
    - Dst: memset
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:404,1
    - Dst: xmlSecX509NameRead
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:408,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:410,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:411,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:416,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - name
    - str
    - replacements
    - fail_callback
    argTypes:
    - char*
    - char*
    - xmlSecx509NameReplacements*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 390
    functionDepth: 4
    functionLinenumber: 390
    functionLinenumberEnd: 417
    functionName: test_xmlSecX509NameRead_failure
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - testFinishedFailure
    - xmlSecAssert
    - testFinishedSuccess
    - fprintf
    - xmlSecX509NameRead
    - memset
    linkageType: ''
    returnType: void
    signature: "void test_xmlSecX509NameRead_failure(\n    const char * name,\n    const
      char * str,\n    xmlSecx509NameReplacements *replacements,\n    int fail_callback\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testGroupStart
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:429,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:432,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:433,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:434,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:435,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:436,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:437,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:438,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:439,1
    - Dst: test_xmlSecX509NameRead_success
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:440,1
    - Dst: test_xmlSecX509NameRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:443,1
    - Dst: test_xmlSecX509NameRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:444,1
    - Dst: test_xmlSecX509NameRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:445,1
    - Dst: test_xmlSecX509NameRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:446,1
    - Dst: test_xmlSecX509NameRead_failure
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:447,1
    - Dst: testGroupFinished
      Src: /src/xmlsec/apps/unit_tests/x509_unit_tests.c:450,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 425
    functionDepth: 5
    functionLinenumber: 425
    functionLinenumberEnd: 451
    functionName: test_xmlSecX509NameRead
    functionSourceFile: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    functionUses: 1
    functionsReached:
    - test_xmlSecX509NameRead_failure
    - testGroupFinished
    - testGroupStart
    - test_xmlSecX509NameRead_success
    linkageType: ''
    returnType: int
    signature: int test_xmlSecX509NameRead(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:41,1
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:42,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:44,1
    - Dst: xmlSecBase64Decode_ex
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:46,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:48,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:49,1
    - Dst: xmlSecBase64Encode
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:53,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:55,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:56,1
    - Dst: xmlStrcmp
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:61,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:62,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:63,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:68,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 4
    argNames:
    - name
    - str
    - columns
    - expected
    argTypes:
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 29
    functionDepth: 3
    functionLinenumber: 29
    functionLinenumberEnd: 69
    functionName: test_base64_success
    functionSourceFile: /src/xmlsec/apps/unit_tests/base64_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - xmlSecBase64Encode
    - testFinishedFailure
    - xmlSecAssert
    - xmlStrcmp
    - testFinishedSuccess
    - xmlSecBase64Decode_ex
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_base64_success(\n    const char * name,\n    const char
      * str,\n    int columns,\n    const char * expected\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecAssert
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:80,1
    - Dst: testStart
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:82,1
    - Dst: xmlSecBase64Decode_ex
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:84,1
    - Dst: fprintf
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:86,1
    - Dst: testFinishedFailure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:87,1
    - Dst: testFinishedSuccess
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - name
    - str
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 71
    functionDepth: 3
    functionLinenumber: 71
    functionLinenumberEnd: 93
    functionName: test_base64_failure
    functionSourceFile: /src/xmlsec/apps/unit_tests/base64_unit_tests.c
    functionUses: 0
    functionsReached:
    - testStart
    - testFinishedFailure
    - xmlSecAssert
    - testFinishedSuccess
    - xmlSecBase64Decode_ex
    - fprintf
    linkageType: ''
    returnType: void
    signature: "void test_base64_failure(\n    const char * name,\n    const char
      * str\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testGroupStart
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:98,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:101,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:102,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:103,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:104,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:105,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:106,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:107,1
    - Dst: test_base64_success
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:108,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:111,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:112,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:113,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:114,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:115,1
    - Dst: test_base64_failure
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:116,1
    - Dst: testGroupFinished
      Src: /src/xmlsec/apps/unit_tests/base64_unit_tests.c:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 96
    functionDepth: 4
    functionLinenumber: 96
    functionLinenumberEnd: 120
    functionName: test_base64
    functionSourceFile: /src/xmlsec/apps/unit_tests/base64_unit_tests.c
    functionUses: 1
    functionsReached:
    - testGroupFinished
    - test_base64_failure
    - testGroupStart
    - test_base64_success
    linkageType: ''
    returnType: int
    signature: int test_base64(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - list
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: xmlSecPtrListGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/list.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecPtrListGetName(list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - list
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: xmlSecPtrListIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/list.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecPtrListIsValid(list)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - list
    - ','
    - dataId
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: xmlSecPtrListCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/list.h
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecPtrListCheckId(list, dataId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - klass
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: xmlSecPtrListKlassGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/list.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecPtrListKlassGetName(klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - store
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: xmlSecKeyStoreGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysmngr.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyStoreGetName(store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - store
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionName: xmlSecKeyStoreIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/keysmngr.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyStoreIsValid(store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - store
    - ','
    - storeId
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionName: xmlSecKeyStoreCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/keysmngr.h
    functionUses: 38
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyStoreCheckId(store, storeId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - store
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionName: xmlSecKeyStoreCheckSize
    functionSourceFile: /src/xmlsec/include/xmlsec/keysmngr.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyStoreCheckSize(store, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - klass
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 260
    functionDepth: 0
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionName: xmlSecKeyStoreKlassGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysmngr.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyStoreKlassGetName(klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - node
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: xmlSecNodeGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 28
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecNodeGetName(node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionName: xmlSecIsHex
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecIsHex(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: xmlSecGetHex
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecGetHex(ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ch
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 152
    functionName: xmlSecFromHex
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecFromHex(ch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ch1
    - ','
    - ch2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: xmlSecFromHex2
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecFromHex2(ch1, ch2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - vv
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionName: xmlSecToHex
    functionSourceFile: /src/xmlsec/include/xmlsec/xmltree.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecToHex(vv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionName: xmlSecTransformGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/transforms.h
    functionUses: 270
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformGetName(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - transform
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 524
    functionName: xmlSecTransformIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/transforms.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformIsValid(transform)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - transform
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 536
    functionName: xmlSecTransformCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/transforms.h
    functionUses: 183
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformCheckId(transform, i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - transform
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 545
    functionDepth: 0
    functionLinenumber: 545
    functionLinenumberEnd: 548
    functionName: xmlSecTransformCheckSize
    functionSourceFile: /src/xmlsec/include/xmlsec/transforms.h
    functionUses: 352
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformCheckSize(transform, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - klass
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 849
    functionDepth: 0
    functionLinenumber: 849
    functionLinenumberEnd: 851
    functionName: xmlSecTransformKlassGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/transforms.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecTransformKlassGetName(klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionName: xmlSecKeyDataGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 115
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataGetName(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - data
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 340
    functionName: xmlSecKeyDataIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 76
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataIsValid(data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - data
    - ','
    - dataId
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionName: xmlSecKeyDataCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 386
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataCheckId(data, dataId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - data
    - ','
    - usg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 362
    functionName: xmlSecKeyDataCheckUsage
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataCheckUsage(data, usg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - data
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 373
    functionName: xmlSecKeyDataCheckSize
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 63
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataCheckSize(data, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - klass
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 598
    functionName: xmlSecKeyDataKlassGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 98
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataKlassGetName(klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - store
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 689
    functionDepth: 0
    functionLinenumber: 689
    functionLinenumberEnd: 692
    functionName: xmlSecKeyDataStoreGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataStoreGetName(store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - store
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 702
    functionName: xmlSecKeyDataStoreIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataStoreIsValid(store)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - store
    - ','
    - storeId
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 712
    functionName: xmlSecKeyDataStoreCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 46
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataStoreCheckId(store, storeId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - store
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 723
    functionName: xmlSecKeyDataStoreCheckSize
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataStoreCheckSize(store, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - klass
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 789
    functionDepth: 0
    functionLinenumber: 789
    functionLinenumberEnd: 791
    functionName: xmlSecKeyDataStoreKlassGetName
    functionSourceFile: /src/xmlsec/include/xmlsec/keysdata.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyDataStoreKlassGetName(klass)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - param
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 673
    functionName: UNREFERENCED_PARAMETER
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 101
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UNREFERENCED_PARAMETER(param)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - func_type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 705
    functionName: XMLSEC_PTR_TO_FUNC_IMPL
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_PTR_TO_FUNC_IMPL(func_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func_type
    - ','
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 715
    functionName: XMLSEC_PTR_TO_FUNC
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_PTR_TO_FUNC(func_type, ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - func_type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 733
    functionName: XMLSEC_FUNC_TO_PTR_IMPL
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_FUNC_TO_PTR_IMPL(func_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func_type
    - ','
    - func
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 743
    functionName: XMLSEC_FUNC_TO_PTR
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_FUNC_TO_PTR(func_type, func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - content
    - ','
    - flag
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 803
    functionName: XMLSEC_X509DATA_HAS_EMPTY_NODE
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_X509DATA_HAS_EMPTY_NODE(content, flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - content
    - ','
    - flag
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 804
    functionName: XMLSEC_X509DATA_HAS_NON_EMPTY_NODE
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_X509DATA_HAS_NON_EMPTY_NODE(content, flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - content
    - ','
    - flag
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 804
    functionDepth: 0
    functionLinenumber: 804
    functionLinenumberEnd: 805
    functionName: XMLSEC_X509DATA_HAS_NODE
    functionSourceFile: /src/xmlsec/include/xmlsec/private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: XMLSEC_X509DATA_HAS_NODE(content, flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - key
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 267
    functionName: xmlSecKeyIsValid
    functionSourceFile: /src/xmlsec/include/xmlsec/keys.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyIsValid(key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - key
    - ','
    - keyId
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 277
    functionName: xmlSecKeyCheckId
    functionSourceFile: /src/xmlsec/include/xmlsec/keys.h
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecKeyCheckId(key, keyId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionName: xmlSecErrorsSafeString
    functionSourceFile: /src/xmlsec/include/xmlsec/errors.h
    functionUses: 167
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecErrorsSafeString(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - p
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 542
    functionName: xmlSecAssert
    functionSourceFile: /src/xmlsec/include/xmlsec/errors.h
    functionUses: 339
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecAssert( p )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - p
    - ','
    - ret
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 550
    functionDepth: 0
    functionLinenumber: 550
    functionLinenumberEnd: 559
    functionName: xmlSecAssert2
    functionSourceFile: /src/xmlsec/include/xmlsec/errors.h
    functionUses: 1733
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecAssert2( p, ret )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: xmlSecCheckVersionExact
    functionSourceFile: /src/xmlsec/include/xmlsec/xmlsec.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecCheckVersionExact()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: xmlSecCheckVersion
    functionSourceFile: /src/xmlsec/include/xmlsec/xmlsec.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xmlSecCheckVersion()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign4.c:52,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:55,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:56,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/sign4.c:61,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:69,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:70,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:71,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:72,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:73,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/sign4.c:77,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:78,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/sign4.c:83,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:84,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/sign4.c:94,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:95,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/sign4.c:103,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:104,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/sign4.c:109,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:110,1
    - Dst: sign_file
      Src: /src/xmlsec/examples/sign4.c:114,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/sign4.c:119,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/sign4.c:122,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/sign4.c:125,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/sign4.c:129,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/sign4.c:130,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/sign4.c:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/xmlsec/examples/sign4.c
    constantsTouched: []
    func_position:
      end: 135
      start: 46
    functionDepth: 7
    functionLinenumber: 46
    functionLinenumberEnd: 135
    functionName: main
    functionSourceFile: /src/xmlsec/examples/sign4.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    - sign_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign4.c:162,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign4.c:163,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign4.c:164,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign4.c:165,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/sign4.c:168,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign4.c:169,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:170,1
    - Dst: xmlSecTmplSignatureCreate
      Src: /src/xmlsec/examples/sign4.c:175,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:177,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/examples/sign4.c:182,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign4.c:182,1
    - Dst: strlen
      Src: /src/xmlsec/examples/sign4.c:185,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:186,1
    - Dst: sprintf
      Src: /src/xmlsec/examples/sign4.c:189,1
    - Dst: xmlSecTmplSignatureAddReference
      Src: /src/xmlsec/examples/sign4.c:191,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:194,1
    - Dst: xmlSecTmplSignatureEnsureKeyInfo
      Src: /src/xmlsec/examples/sign4.c:199,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:201,1
    - Dst: xmlSecTmplKeyInfoAddX509Data
      Src: /src/xmlsec/examples/sign4.c:205,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:207,1
    - Dst: xmlSecTmplX509DataAddSubjectName
      Src: /src/xmlsec/examples/sign4.c:211,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:212,1
    - Dst: xmlSecTmplX509DataAddCertificate
      Src: /src/xmlsec/examples/sign4.c:216,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:217,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/examples/sign4.c:222,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/sign4.c:225,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:227,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/sign4.c:232,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:234,1
    - Dst: xmlSecCryptoAppKeyCertLoad
      Src: /src/xmlsec/examples/sign4.c:239,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:240,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/sign4.c:245,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:246,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/examples/sign4.c:251,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign4.c:252,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/sign4.c:257,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/sign4.c:265,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/sign4.c:269,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 91
    argCount: 4
    argNames:
    - xml_file
    - id_attr
    - key_file
    - cert_file
    argTypes:
    - char*
    - char*
    - char*
    - char*
    assertStmts:
    - condition: (id_attr)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/sign4.c
    - condition: (key_file)
      pos:
        line_end: 163
        line_start: 163
        source_file: /src/xmlsec/examples/sign4.c
    - condition: (cert_file)
      pos:
        line_end: 164
        line_start: 164
        source_file: /src/xmlsec/examples/sign4.c
    - condition: (xml_file)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/sign4.c
    constantsTouched: []
    func_position:
      end: 272
      start: 150
    functionDepth: 14
    functionLinenumber: 150
    functionLinenumberEnd: 272
    functionName: sign_file
    functionSourceFile: /src/xmlsec/examples/sign4.c
    functionUses: 1
    functionsReached:
    - strlen
    - xmlSecTmplX509DataAddCertificate
    - xmlSecTmplX509DataAddSubjectName
    - xmlSecCryptoAppKeyLoadEx
    - xmlSecTmplKeyInfoAddX509Data
    - xmlSecAddIDs
    - xmlSecDSigCtxCreate
    - xmlSecTmplSignatureCreate
    - xmlSecDSigCtxSign
    - xmlAddChild
    - fprintf
    - xmlSecTmplSignatureAddReference
    - xmlDocGetRootElement
    - xmlSecCryptoAppKeyCertLoad
    - xmlSecKeySetName
    - assert
    - xmlSecDSigCtxDestroy
    - sprintf
    - xmlReadFile
    - xmlDocDump
    - xmlSecTmplSignatureEnsureKeyInfo
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int sign_file(const char* xml_file, const char* id_attr, const char*
      key_file, const char* cert_file)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign3.c:53,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:56,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:57,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/sign3.c:62,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:69,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:70,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:71,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:72,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:73,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:74,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/sign3.c:78,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:79,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/sign3.c:84,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:85,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/sign3.c:95,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:96,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/sign3.c:104,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:105,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/sign3.c:110,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:111,1
    - Dst: sign_file
      Src: /src/xmlsec/examples/sign3.c:115,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/sign3.c:120,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/sign3.c:123,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/sign3.c:126,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/sign3.c:130,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/sign3.c:131,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/sign3.c:133,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/xmlsec/examples/sign3.c
    constantsTouched: []
    func_position:
      end: 136
      start: 47
    functionDepth: 7
    functionLinenumber: 47
    functionLinenumberEnd: 136
    functionName: main
    functionSourceFile: /src/xmlsec/examples/sign3.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    - sign_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign3.c:160,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign3.c:161,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign3.c:162,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/sign3.c:165,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign3.c:166,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:167,1
    - Dst: xmlSecTmplSignatureCreate
      Src: /src/xmlsec/examples/sign3.c:172,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:175,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/examples/sign3.c:180,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign3.c:180,1
    - Dst: xmlSecTmplSignatureAddReference
      Src: /src/xmlsec/examples/sign3.c:183,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:186,1
    - Dst: xmlSecTmplReferenceAddTransform
      Src: /src/xmlsec/examples/sign3.c:191,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:192,1
    - Dst: xmlSecTmplSignatureEnsureKeyInfo
      Src: /src/xmlsec/examples/sign3.c:197,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:199,1
    - Dst: xmlSecTmplKeyInfoAddX509Data
      Src: /src/xmlsec/examples/sign3.c:203,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:205,1
    - Dst: xmlSecTmplX509DataAddSubjectName
      Src: /src/xmlsec/examples/sign3.c:209,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:210,1
    - Dst: xmlSecTmplX509DataAddCertificate
      Src: /src/xmlsec/examples/sign3.c:214,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:215,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/sign3.c:220,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:222,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/sign3.c:227,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:229,1
    - Dst: xmlSecCryptoAppKeyCertLoad
      Src: /src/xmlsec/examples/sign3.c:234,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:235,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/sign3.c:240,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:241,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/examples/sign3.c:246,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign3.c:247,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/sign3.c:252,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/sign3.c:260,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/sign3.c:264,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 88
    argCount: 3
    argNames:
    - xml_file
    - key_file
    - cert_file
    argTypes:
    - char*
    - char*
    - char*
    assertStmts:
    - condition: (cert_file)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/sign3.c
    - condition: (key_file)
      pos:
        line_end: 160
        line_start: 160
        source_file: /src/xmlsec/examples/sign3.c
    - condition: (xml_file)
      pos:
        line_end: 159
        line_start: 159
        source_file: /src/xmlsec/examples/sign3.c
    constantsTouched: []
    func_position:
      end: 267
      start: 150
    functionDepth: 14
    functionLinenumber: 150
    functionLinenumberEnd: 267
    functionName: sign_file
    functionSourceFile: /src/xmlsec/examples/sign3.c
    functionUses: 2
    functionsReached:
    - xmlSecTmplX509DataAddCertificate
    - xmlSecTmplX509DataAddSubjectName
    - xmlSecCryptoAppKeyLoadEx
    - xmlSecTmplKeyInfoAddX509Data
    - xmlSecDSigCtxCreate
    - xmlSecTmplSignatureCreate
    - xmlSecDSigCtxSign
    - xmlAddChild
    - fprintf
    - xmlSecTmplSignatureAddReference
    - xmlDocGetRootElement
    - xmlSecCryptoAppKeyCertLoad
    - xmlSecKeySetName
    - xmlSecTmplReferenceAddTransform
    - assert
    - xmlSecDSigCtxDestroy
    - xmlReadFile
    - xmlDocDump
    - xmlSecTmplSignatureEnsureKeyInfo
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int sign_file(const char* xml_file, const char* key_file, const char*
      cert_file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt3.c:50,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:53,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:54,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/decrypt3.c:59,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:69,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:70,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:71,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/decrypt3.c:75,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:76,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/decrypt3.c:81,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:82,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/decrypt3.c:92,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:93,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/decrypt3.c:101,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:102,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/decrypt3.c:107,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:108,1
    - Dst: create_files_keys_mngr
      Src: /src/xmlsec/examples/decrypt3.c:113,1
    - Dst: decrypt_file
      Src: /src/xmlsec/examples/decrypt3.c:118,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt3.c:119,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt3.c:124,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/decrypt3.c:127,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/decrypt3.c:130,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/decrypt3.c:133,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/decrypt3.c:137,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/decrypt3.c:138,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/decrypt3.c:140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/xmlsec/examples/decrypt3.c
    constantsTouched: []
    func_position:
      end: 143
      start: 43
    functionDepth: 7
    functionLinenumber: 43
    functionLinenumberEnd: 143
    functionName: main
    functionSourceFile: /src/xmlsec/examples/decrypt3.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - create_files_keys_mngr
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - decrypt_file
    - assert
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt3.c:162,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt3.c:163,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/decrypt3.c:166,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt3.c:167,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:168,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/decrypt3.c:173,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt3.c:173,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:175,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/decrypt3.c:180,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:182,1
    - Dst: xmlSecEncCtxDecrypt
      Src: /src/xmlsec/examples/decrypt3.c:187,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:188,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:194,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/decrypt3.c:195,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:197,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt3.c:198,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt3.c:199,1
    - Dst: fwrite
      Src: /src/xmlsec/examples/decrypt3.c:200,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt3.c:200,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt3.c:202,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:206,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/decrypt3.c:214,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/decrypt3.c:218,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 2
    argNames:
    - mngr
    - enc_file
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts:
    - condition: (mngr)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/decrypt3.c
    - condition: (enc_file)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/decrypt3.c
    constantsTouched: []
    func_position:
      end: 221
      start: 155
    functionDepth: 14
    functionLinenumber: 155
    functionLinenumberEnd: 221
    functionName: decrypt_file
    functionSourceFile: /src/xmlsec/examples/decrypt3.c
    functionUses: 1
    functionsReached:
    - xmlSecFindNode
    - xmlSecEncCtxDecrypt
    - fwrite
    - xmlSecEncCtxCreate
    - xmlSecBufferGetData
    - xmlSecEncCtxDestroy
    - xmlReadFile
    - xmlDocDump
    - xmlSecBufferGetSize
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int decrypt_file(xmlSecKeysMngrPtr mngr, const char* enc_file)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: xmlSecKeyStoreCreate
      Src: /src/xmlsec/examples/decrypt3.c:237,1
    - Dst: files_keys_store_get_klass
      Src: /src/xmlsec/examples/decrypt3.c:237,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:239,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/decrypt3.c:244,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:246,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/examples/decrypt3.c:247,1
    - Dst: xmlSecKeysMngrAdoptKeysStore
      Src: /src/xmlsec/examples/decrypt3.c:252,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:253,1
    - Dst: xmlSecKeyStoreDestroy
      Src: /src/xmlsec/examples/decrypt3.c:254,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt3.c:255,1
    - Dst: xmlSecCryptoKeysMngrInit
      Src: /src/xmlsec/examples/decrypt3.c:260,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:261,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt3.c:262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 231
    functionDepth: 3
    functionLinenumber: 231
    functionLinenumberEnd: 269
    functionName: create_files_keys_mngr
    functionSourceFile: /src/xmlsec/examples/decrypt3.c
    functionUses: 1
    functionsReached:
    - xmlSecKeysMngrAdoptKeysStore
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoKeysMngrInit
    - files_keys_store_get_klass
    - fprintf
    - xmlSecKeyStoreDestroy
    - xmlSecKeyStoreCreate
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr create_files_keys_mngr(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionName: files_keys_store_get_klass
    functionSourceFile: /src/xmlsec/examples/decrypt3.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: xmlSecKeyStoreId
    signature: xmlSecKeyStoreId files_keys_store_get_klass(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt3.c:324,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt3.c:325,1
    - Dst: isalnum
      Src: /src/xmlsec/examples/decrypt3.c:338,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/decrypt3.c:345,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:347,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/examples/decrypt3.c:352,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:354,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/decrypt3.c:360,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt3.c:361,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/decrypt3.c:362,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 3
    argNames:
    - store
    - name
    - keyInfoCtx
    argTypes:
    - xmlSecKeyStorePtr
    - xmlChar*
    - xmlSecKeyInfoCtxPtr
    assertStmts:
    - condition: (store)
      pos:
        line_end: 323
        line_start: 323
        source_file: /src/xmlsec/examples/decrypt3.c
    - condition: (keyInfoCtx)
      pos:
        line_end: 324
        line_start: 324
        source_file: /src/xmlsec/examples/decrypt3.c
    constantsTouched: []
    func_position:
      end: 367
      start: 319
    functionDepth: 6
    functionLinenumber: 319
    functionLinenumberEnd: 367
    functionName: files_keys_store_find_key
    functionSourceFile: /src/xmlsec/examples/decrypt3.c
    functionUses: 0
    functionsReached:
    - xmlSecKeyReadBinaryFile
    - xmlSecKeyDestroy
    - xmlSecCryptoAppKeyLoadEx
    - isalnum
    - assert
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeyPtr
    signature: xmlSecKeyPtr files_keys_store_find_key(xmlSecKeyStorePtr store, const
      xmlChar* name, xmlSecKeyInfoCtxPtr keyInfoCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:49,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:52,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:53,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/verify3.c:58,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:69,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:70,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/verify3.c:74,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:75,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/verify3.c:80,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:81,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/verify3.c:91,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:92,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/verify3.c:100,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:101,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/verify3.c:106,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:107,1
    - Dst: load_trusted_certs
      Src: /src/xmlsec/examples/verify3.c:112,1
    - Dst: verify_file
      Src: /src/xmlsec/examples/verify3.c:118,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify3.c:119,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify3.c:124,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/verify3.c:127,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/verify3.c:130,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/verify3.c:133,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/verify3.c:137,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/verify3.c:138,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/verify3.c:140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/xmlsec/examples/verify3.c
    constantsTouched: []
    func_position:
      end: 143
      start: 42
    functionDepth: 7
    functionLinenumber: 42
    functionLinenumberEnd: 143
    functionName: main
    functionSourceFile: /src/xmlsec/examples/verify3.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - assert
    - load_trusted_certs
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - verify_file
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:162,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:163,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/verify3.c:169,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:171,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/verify3.c:174,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:175,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify3.c:176,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:181,1
    - Dst: xmlSecCryptoAppKeysMngrCertLoad
      Src: /src/xmlsec/examples/verify3.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:185,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify3.c:186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - files
    - files_size
    argTypes:
    - char**
    - int
    assertStmts:
    - condition: (files)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/verify3.c
    - condition: (files_size > 0)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/verify3.c
    - condition: (files[i])
      pos:
        line_end: 180
        line_start: 180
        source_file: /src/xmlsec/examples/verify3.c
    constantsTouched: []
    func_position:
      end: 192
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 192
    functionName: load_trusted_certs
    functionSourceFile: /src/xmlsec/examples/verify3.c
    functionUses: 1
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppKeysMngrCertLoad
    - assert
    - fprintf
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_trusted_certs(char** files, int files_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:210,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:211,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/verify3.c:214,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify3.c:215,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:216,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/verify3.c:221,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify3.c:221,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:223,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/verify3.c:228,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:230,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/examples/verify3.c:235,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:236,1
    - Dst: verify_signature_results
      Src: /src/xmlsec/examples/verify3.c:241,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:242,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:244,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/verify3.c:253,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/verify3.c:257,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - mngr
    - xml_file
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts:
    - condition: (mngr)
      pos:
        line_end: 209
        line_start: 209
        source_file: /src/xmlsec/examples/verify3.c
    - condition: (xml_file)
      pos:
        line_end: 210
        line_start: 210
        source_file: /src/xmlsec/examples/verify3.c
    constantsTouched: []
    func_position:
      end: 260
      start: 203
    functionDepth: 14
    functionLinenumber: 203
    functionLinenumberEnd: 260
    functionName: verify_file
    functionSourceFile: /src/xmlsec/examples/verify3.c
    functionUses: 1
    functionsReached:
    - verify_signature_results
    - xmlSecDSigCtxVerify
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlReadFile
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int verify_file(xmlSecKeysMngrPtr mngr, const char* xml_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify3.c:276,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:280,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify3.c:286,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:287,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/examples/verify3.c:290,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:292,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify3.c:297,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:298,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify3.c:304,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:305,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify3.c:313,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts:
    - condition: (dsigCtx)
      pos:
        line_end: 275
        line_start: 275
        source_file: /src/xmlsec/examples/verify3.c
    constantsTouched: []
    func_position:
      end: 321
      start: 271
    functionDepth: 2
    functionLinenumber: 271
    functionLinenumberEnd: 321
    functionName: verify_signature_results
    functionSourceFile: /src/xmlsec/examples/verify3.c
    functionUses: 1
    functionsReached:
    - xmlStrEqual
    - xmlSecPtrListGetItem
    - assert
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_signature_results(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt1.c:47,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:50,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:51,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/encrypt1.c:56,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:62,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:67,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:68,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/encrypt1.c:72,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:73,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/encrypt1.c:78,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:79,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/encrypt1.c:89,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:90,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/encrypt1.c:98,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:99,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/encrypt1.c:104,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:105,1
    - Dst: encrypt_file
      Src: /src/xmlsec/examples/encrypt1.c:109,1
    - Dst: strlen
      Src: /src/xmlsec/examples/encrypt1.c:109,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/encrypt1.c:114,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/encrypt1.c:117,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/encrypt1.c:120,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/encrypt1.c:124,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/encrypt1.c:125,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/encrypt1.c:127,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/xmlsec/examples/encrypt1.c
    constantsTouched: []
    func_position:
      end: 130
      start: 40
    functionDepth: 7
    functionLinenumber: 40
    functionLinenumberEnd: 130
    functionName: main
    functionSourceFile: /src/xmlsec/examples/encrypt1.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - strlen
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - encrypt_file
    - assert
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt1.c:152,1
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt1.c:153,1
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt1.c:154,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/encrypt1.c:157,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt1.c:158,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:159,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/encrypt1.c:164,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt1.c:164,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:166,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/encrypt1.c:171,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:173,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/examples/encrypt1.c:178,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:180,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/encrypt1.c:185,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:186,1
    - Dst: xmlSecEncCtxBinaryEncrypt
      Src: /src/xmlsec/examples/encrypt1.c:191,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt1.c:192,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/encrypt1.c:197,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/encrypt1.c:206,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/encrypt1.c:210,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 4
    argNames:
    - tmpl_file
    - key_file
    - data
    - dataSize
    argTypes:
    - char*
    - char*
    - unsigned char*
    - size_t
    assertStmts:
    - condition: (key_file)
      pos:
        line_end: 152
        line_start: 152
        source_file: /src/xmlsec/examples/encrypt1.c
    - condition: (tmpl_file)
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/xmlsec/examples/encrypt1.c
    - condition: (data)
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/xmlsec/examples/encrypt1.c
    constantsTouched: []
    func_position:
      end: 213
      start: 144
    functionDepth: 14
    functionLinenumber: 144
    functionLinenumberEnd: 213
    functionName: encrypt_file
    functionSourceFile: /src/xmlsec/examples/encrypt1.c
    functionUses: 1
    functionsReached:
    - xmlSecEncCtxBinaryEncrypt
    - xmlSecFindNode
    - xmlSecKeyReadBinaryFile
    - xmlSecEncCtxDestroy
    - xmlSecEncCtxCreate
    - xmlReadFile
    - xmlDocDump
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: "int encrypt_file(const char* tmpl_file, const char* key_file,\n             const
      unsigned char* data, size_t dataSize)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt2.c:48,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:51,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:52,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/encrypt2.c:57,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:68,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:69,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/encrypt2.c:73,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:74,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/encrypt2.c:79,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:80,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/encrypt2.c:90,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:91,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/encrypt2.c:99,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:100,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/encrypt2.c:105,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:106,1
    - Dst: encrypt_file
      Src: /src/xmlsec/examples/encrypt2.c:110,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/encrypt2.c:115,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/encrypt2.c:118,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/encrypt2.c:121,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/encrypt2.c:125,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/encrypt2.c:126,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/encrypt2.c:128,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/xmlsec/examples/encrypt2.c
    constantsTouched: []
    func_position:
      end: 131
      start: 42
    functionDepth: 7
    functionLinenumber: 42
    functionLinenumberEnd: 131
    functionName: main
    functionSourceFile: /src/xmlsec/examples/encrypt2.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - encrypt_file
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt2.c:151,1
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt2.c:152,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/encrypt2.c:155,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt2.c:156,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:157,1
    - Dst: xmlSecTmplEncDataCreate
      Src: /src/xmlsec/examples/encrypt2.c:163,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:166,1
    - Dst: xmlSecTmplEncDataEnsureCipherValue
      Src: /src/xmlsec/examples/encrypt2.c:171,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:172,1
    - Dst: xmlSecTmplEncDataEnsureKeyInfo
      Src: /src/xmlsec/examples/encrypt2.c:177,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:179,1
    - Dst: xmlSecTmplKeyInfoAddKeyName
      Src: /src/xmlsec/examples/encrypt2.c:183,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:184,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/encrypt2.c:189,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:191,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/examples/encrypt2.c:196,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:198,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/encrypt2.c:203,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:204,1
    - Dst: xmlSecEncCtxXmlEncrypt
      Src: /src/xmlsec/examples/encrypt2.c:209,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt2.c:209,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt2.c:210,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/encrypt2.c:218,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/encrypt2.c:227,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/examples/encrypt2.c:231,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/encrypt2.c:235,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 68
    argCount: 2
    argNames:
    - xml_file
    - key_file
    argTypes:
    - char*
    - char*
    assertStmts:
    - condition: (xml_file)
      pos:
        line_end: 150
        line_start: 150
        source_file: /src/xmlsec/examples/encrypt2.c
    - condition: (key_file)
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/xmlsec/examples/encrypt2.c
    constantsTouched: []
    func_position:
      end: 238
      start: 143
    functionDepth: 14
    functionLinenumber: 143
    functionLinenumberEnd: 238
    functionName: encrypt_file
    functionSourceFile: /src/xmlsec/examples/encrypt2.c
    functionUses: 2
    functionsReached:
    - xmlSecTmplEncDataEnsureKeyInfo
    - xmlSecTmplEncDataEnsureCipherValue
    - xmlSecKeyReadBinaryFile
    - xmlSecEncCtxDestroy
    - xmlSecEncCtxCreate
    - xmlSecTmplKeyInfoAddKeyName
    - xmlSecEncCtxXmlEncrypt
    - xmlReadFile
    - xmlDocDump
    - assert
    - xmlSecKeySetName
    - fprintf
    - xmlFreeDoc
    - xmlDocGetRootElement
    - xmlFreeNode
    - xmlSecTmplEncDataCreate
    linkageType: ''
    returnType: int
    signature: int encrypt_file(const char* xml_file, const char* key_file)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign1.c:46,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:49,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:50,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/sign1.c:55,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:61,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:62,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:66,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:67,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/sign1.c:71,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:72,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/sign1.c:77,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:78,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/sign1.c:88,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:89,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/sign1.c:97,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:98,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/sign1.c:103,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:104,1
    - Dst: sign_file
      Src: /src/xmlsec/examples/sign1.c:108,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/sign1.c:113,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/sign1.c:116,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/sign1.c:119,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/sign1.c:123,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/sign1.c:124,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/sign1.c:126,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/xmlsec/examples/sign1.c
    constantsTouched: []
    func_position:
      end: 129
      start: 40
    functionDepth: 7
    functionLinenumber: 40
    functionLinenumberEnd: 129
    functionName: main
    functionSourceFile: /src/xmlsec/examples/sign1.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    - sign_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign1.c:147,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign1.c:148,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/sign1.c:151,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign1.c:152,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:153,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/sign1.c:158,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign1.c:158,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:160,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/sign1.c:165,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:167,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/sign1.c:172,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:174,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/sign1.c:179,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:180,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/examples/sign1.c:185,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign1.c:186,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/sign1.c:191,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/sign1.c:199,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/sign1.c:203,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 2
    argNames:
    - tmpl_file
    - key_file
    argTypes:
    - char*
    - char*
    assertStmts:
    - condition: (tmpl_file)
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/xmlsec/examples/sign1.c
    - condition: (key_file)
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/xmlsec/examples/sign1.c
    constantsTouched: []
    func_position:
      end: 206
      start: 140
    functionDepth: 14
    functionLinenumber: 140
    functionLinenumberEnd: 206
    functionName: sign_file
    functionSourceFile: /src/xmlsec/examples/sign1.c
    functionUses: 3
    functionsReached:
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlSecDSigCtxSign
    - xmlReadFile
    - xmlSecCryptoAppKeyLoadEx
    - xmlDocDump
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: int sign_file(const char* tmpl_file, const char* key_file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:47,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:50,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:51,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/decrypt2.c:56,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:62,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:67,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:68,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/decrypt2.c:73,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:74,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/decrypt2.c:79,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:80,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/decrypt2.c:90,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:91,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/decrypt2.c:99,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:100,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/decrypt2.c:105,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:106,1
    - Dst: load_des_keys
      Src: /src/xmlsec/examples/decrypt2.c:111,1
    - Dst: decrypt_file
      Src: /src/xmlsec/examples/decrypt2.c:116,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:117,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:122,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/decrypt2.c:125,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/decrypt2.c:128,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/decrypt2.c:131,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/decrypt2.c:135,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/decrypt2.c:136,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/decrypt2.c:138,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/xmlsec/examples/decrypt2.c
    constantsTouched: []
    func_position:
      end: 141
      start: 40
    functionDepth: 7
    functionLinenumber: 40
    functionLinenumberEnd: 141
    functionName: main
    functionSourceFile: /src/xmlsec/examples/decrypt2.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - decrypt_file
    - assert
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - load_des_keys
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:161,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:162,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/decrypt2.c:168,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:170,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/decrypt2.c:173,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:174,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:175,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:180,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/examples/decrypt2.c:183,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:185,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:186,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/decrypt2.c:191,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:192,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/decrypt2.c:193,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:194,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/examples/decrypt2.c:201,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:202,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/decrypt2.c:203,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/decrypt2.c:204,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - files
    - files_size
    argTypes:
    - char**
    - int
    assertStmts:
    - condition: (files)
      pos:
        line_end: 160
        line_start: 160
        source_file: /src/xmlsec/examples/decrypt2.c
    - condition: (files[i])
      pos:
        line_end: 179
        line_start: 179
        source_file: /src/xmlsec/examples/decrypt2.c
    - condition: (files_size > 0)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/decrypt2.c
    constantsTouched: []
    func_position:
      end: 210
      start: 155
    functionDepth: 6
    functionLinenumber: 155
    functionLinenumberEnd: 210
    functionName: load_des_keys
    functionSourceFile: /src/xmlsec/examples/decrypt2.c
    functionUses: 1
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecKeyReadBinaryFile
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - assert
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_des_keys(char** files, int files_size)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:229,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt2.c:230,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/decrypt2.c:233,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt2.c:234,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:235,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/decrypt2.c:240,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt2.c:240,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:242,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/decrypt2.c:247,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:249,1
    - Dst: xmlSecEncCtxDecrypt
      Src: /src/xmlsec/examples/decrypt2.c:254,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:255,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:261,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/decrypt2.c:262,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:264,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt2.c:265,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt2.c:266,1
    - Dst: fwrite
      Src: /src/xmlsec/examples/decrypt2.c:267,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt2.c:267,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt2.c:269,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt2.c:273,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/decrypt2.c:281,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/decrypt2.c:285,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 2
    argNames:
    - mngr
    - enc_file
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts:
    - condition: (mngr)
      pos:
        line_end: 228
        line_start: 228
        source_file: /src/xmlsec/examples/decrypt2.c
    - condition: (enc_file)
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/xmlsec/examples/decrypt2.c
    constantsTouched: []
    func_position:
      end: 288
      start: 222
    functionDepth: 14
    functionLinenumber: 222
    functionLinenumberEnd: 288
    functionName: decrypt_file
    functionSourceFile: /src/xmlsec/examples/decrypt2.c
    functionUses: 2
    functionsReached:
    - xmlSecFindNode
    - xmlSecEncCtxDecrypt
    - fwrite
    - xmlSecEncCtxCreate
    - xmlSecBufferGetData
    - xmlSecEncCtxDestroy
    - xmlReadFile
    - xmlDocDump
    - xmlSecBufferGetSize
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int decrypt_file(xmlSecKeysMngrPtr mngr, const char* enc_file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:49,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:52,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:53,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/verify4.c:58,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:69,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:70,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/verify4.c:74,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:75,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/verify4.c:80,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:81,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/verify4.c:91,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:92,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/verify4.c:100,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:101,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/verify4.c:106,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:107,1
    - Dst: load_trusted_certs
      Src: /src/xmlsec/examples/verify4.c:112,1
    - Dst: verify_file
      Src: /src/xmlsec/examples/verify4.c:118,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify4.c:119,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify4.c:124,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/verify4.c:127,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/verify4.c:130,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/verify4.c:133,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/verify4.c:137,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/verify4.c:138,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/verify4.c:140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/xmlsec/examples/verify4.c
    constantsTouched: []
    func_position:
      end: 143
      start: 42
    functionDepth: 7
    functionLinenumber: 42
    functionLinenumberEnd: 143
    functionName: main
    functionSourceFile: /src/xmlsec/examples/verify4.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - assert
    - load_trusted_certs
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - verify_file
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:162,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:163,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/verify4.c:169,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:171,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/verify4.c:174,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:175,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify4.c:176,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:181,1
    - Dst: xmlSecCryptoAppKeysMngrCertLoad
      Src: /src/xmlsec/examples/verify4.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:185,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify4.c:186,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - files
    - files_size
    argTypes:
    - char**
    - int
    assertStmts:
    - condition: (files)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/verify4.c
    - condition: (files_size > 0)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/verify4.c
    - condition: (files[i])
      pos:
        line_end: 180
        line_start: 180
        source_file: /src/xmlsec/examples/verify4.c
    constantsTouched: []
    func_position:
      end: 192
      start: 157
    functionDepth: 3
    functionLinenumber: 157
    functionLinenumberEnd: 192
    functionName: load_trusted_certs
    functionSourceFile: /src/xmlsec/examples/verify4.c
    functionUses: 2
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppKeysMngrCertLoad
    - assert
    - fprintf
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_trusted_certs(char** files, int files_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:212,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:213,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:214,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/verify4.c:217,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify4.c:218,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:219,1
    - Dst: xmlSecAddIDs
      Src: /src/xmlsec/examples/verify4.c:224,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/verify4.c:227,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify4.c:227,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:229,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/verify4.c:234,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:236,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/examples/verify4.c:241,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:242,1
    - Dst: verify_signature_results
      Src: /src/xmlsec/examples/verify4.c:247,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:248,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:250,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/verify4.c:259,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/verify4.c:263,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - mngr
    - xml_file
    - id_attr
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    assertStmts:
    - condition: (id_attr)
      pos:
        line_end: 213
        line_start: 213
        source_file: /src/xmlsec/examples/verify4.c
    - condition: (xml_file)
      pos:
        line_end: 212
        line_start: 212
        source_file: /src/xmlsec/examples/verify4.c
    - condition: (mngr)
      pos:
        line_end: 211
        line_start: 211
        source_file: /src/xmlsec/examples/verify4.c
    constantsTouched: []
    func_position:
      end: 266
      start: 204
    functionDepth: 14
    functionLinenumber: 204
    functionLinenumberEnd: 266
    functionName: verify_file
    functionSourceFile: /src/xmlsec/examples/verify4.c
    functionUses: 2
    functionsReached:
    - verify_signature_results
    - xmlSecDSigCtxVerify
    - xmlSecAddIDs
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlReadFile
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int verify_file(xmlSecKeysMngrPtr mngr, const char* xml_file, const
      char* id_attr)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:284,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify4.c:285,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:289,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify4.c:295,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:296,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/examples/verify4.c:299,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:301,1
    - Dst: strlen
      Src: /src/xmlsec/examples/verify4.c:306,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:307,1
    - Dst: sprintf
      Src: /src/xmlsec/examples/verify4.c:310,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify4.c:312,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:313,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify4.c:321,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - dsigCtx
    - id_attr
    argTypes:
    - xmlSecDSigCtxPtr
    - char*
    assertStmts:
    - condition: (dsigCtx)
      pos:
        line_end: 283
        line_start: 283
        source_file: /src/xmlsec/examples/verify4.c
    - condition: (id_attr)
      pos:
        line_end: 284
        line_start: 284
        source_file: /src/xmlsec/examples/verify4.c
    constantsTouched: []
    func_position:
      end: 329
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 329
    functionName: verify_signature_results
    functionSourceFile: /src/xmlsec/examples/verify4.c
    functionUses: 2
    functionsReached:
    - xmlStrEqual
    - strlen
    - xmlSecPtrListGetItem
    - sprintf
    - assert
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_signature_results(xmlSecDSigCtxPtr dsigCtx, const char*
      id_attr)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign2.c:49,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:52,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:53,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/sign2.c:58,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:69,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:70,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/sign2.c:74,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:75,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/sign2.c:80,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:81,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/sign2.c:91,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:92,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/sign2.c:100,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:101,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/sign2.c:106,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:107,1
    - Dst: sign_file
      Src: /src/xmlsec/examples/sign2.c:111,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/sign2.c:116,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/sign2.c:119,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/sign2.c:122,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/sign2.c:126,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/sign2.c:127,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/sign2.c:129,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/xmlsec/examples/sign2.c
    constantsTouched: []
    func_position:
      end: 132
      start: 43
    functionDepth: 7
    functionLinenumber: 43
    functionLinenumberEnd: 132
    functionName: main
    functionSourceFile: /src/xmlsec/examples/sign2.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    - sign_file
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/sign2.c:153,1
    - Dst: assert
      Src: /src/xmlsec/examples/sign2.c:154,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/sign2.c:157,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign2.c:158,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:159,1
    - Dst: xmlSecTmplSignatureCreate
      Src: /src/xmlsec/examples/sign2.c:164,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:167,1
    - Dst: xmlAddChild
      Src: /src/xmlsec/examples/sign2.c:172,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/sign2.c:172,1
    - Dst: xmlSecTmplSignatureAddReference
      Src: /src/xmlsec/examples/sign2.c:175,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:178,1
    - Dst: xmlSecTmplReferenceAddTransform
      Src: /src/xmlsec/examples/sign2.c:183,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:184,1
    - Dst: xmlSecTmplSignatureEnsureKeyInfo
      Src: /src/xmlsec/examples/sign2.c:189,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:191,1
    - Dst: xmlSecTmplKeyInfoAddKeyName
      Src: /src/xmlsec/examples/sign2.c:195,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:196,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/sign2.c:201,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:203,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/sign2.c:208,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:210,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/sign2.c:215,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:216,1
    - Dst: xmlSecDSigCtxSign
      Src: /src/xmlsec/examples/sign2.c:221,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/sign2.c:222,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/sign2.c:227,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/sign2.c:235,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/sign2.c:239,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 71
    argCount: 2
    argNames:
    - xml_file
    - key_file
    argTypes:
    - char*
    - char*
    assertStmts:
    - condition: (key_file)
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/xmlsec/examples/sign2.c
    - condition: (xml_file)
      pos:
        line_end: 152
        line_start: 152
        source_file: /src/xmlsec/examples/sign2.c
    constantsTouched: []
    func_position:
      end: 242
      start: 144
    functionDepth: 14
    functionLinenumber: 144
    functionLinenumberEnd: 242
    functionName: sign_file
    functionSourceFile: /src/xmlsec/examples/sign2.c
    functionUses: 4
    functionsReached:
    - xmlSecDSigCtxCreate
    - xmlSecDSigCtxDestroy
    - xmlSecTmplSignatureCreate
    - xmlSecDSigCtxSign
    - xmlSecTmplKeyInfoAddKeyName
    - xmlAddChild
    - xmlReadFile
    - xmlSecCryptoAppKeyLoadEx
    - xmlSecTmplReferenceAddTransform
    - xmlSecTmplSignatureEnsureKeyInfo
    - assert
    - xmlDocDump
    - fprintf
    - xmlSecTmplSignatureAddReference
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: int sign_file(const char* xml_file, const char* key_file)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt1.c:44,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:47,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:48,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/decrypt1.c:53,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:59,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:60,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:61,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:62,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:64,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/decrypt1.c:65,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/decrypt1.c:70,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:71,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/decrypt1.c:76,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:77,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/decrypt1.c:87,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:88,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/decrypt1.c:96,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:97,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/decrypt1.c:102,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:103,1
    - Dst: decrypt_file
      Src: /src/xmlsec/examples/decrypt1.c:107,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/decrypt1.c:112,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/decrypt1.c:115,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/decrypt1.c:118,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/decrypt1.c:122,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/decrypt1.c:124,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/xmlsec/examples/decrypt1.c
    constantsTouched: []
    func_position:
      end: 127
      start: 38
    functionDepth: 7
    functionLinenumber: 38
    functionLinenumberEnd: 127
    functionName: main
    functionSourceFile: /src/xmlsec/examples/decrypt1.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltSetSecurityPrefs
    - xmlSecInit
    - decrypt_file
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt1.c:146,1
    - Dst: assert
      Src: /src/xmlsec/examples/decrypt1.c:147,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/decrypt1.c:150,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt1.c:151,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:152,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/decrypt1.c:157,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/decrypt1.c:157,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:159,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/decrypt1.c:164,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:166,1
    - Dst: xmlSecKeyReadBinaryFile
      Src: /src/xmlsec/examples/decrypt1.c:171,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:173,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/decrypt1.c:178,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:179,1
    - Dst: xmlSecEncCtxDecrypt
      Src: /src/xmlsec/examples/decrypt1.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:185,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:191,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/decrypt1.c:192,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:194,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt1.c:195,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt1.c:196,1
    - Dst: fwrite
      Src: /src/xmlsec/examples/decrypt1.c:197,1
    - Dst: xmlSecBufferGetData
      Src: /src/xmlsec/examples/decrypt1.c:197,1
    - Dst: xmlSecBufferGetSize
      Src: /src/xmlsec/examples/decrypt1.c:199,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/decrypt1.c:203,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/decrypt1.c:211,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/decrypt1.c:215,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 57
    argCount: 2
    argNames:
    - enc_file
    - key_file
    argTypes:
    - char*
    - char*
    assertStmts:
    - condition: (key_file)
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/xmlsec/examples/decrypt1.c
    - condition: (enc_file)
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/xmlsec/examples/decrypt1.c
    constantsTouched: []
    func_position:
      end: 218
      start: 139
    functionDepth: 14
    functionLinenumber: 139
    functionLinenumberEnd: 218
    functionName: decrypt_file
    functionSourceFile: /src/xmlsec/examples/decrypt1.c
    functionUses: 3
    functionsReached:
    - xmlSecFindNode
    - xmlSecKeyReadBinaryFile
    - xmlSecEncCtxDecrypt
    - fwrite
    - xmlSecEncCtxCreate
    - xmlSecBufferGetData
    - xmlSecEncCtxDestroy
    - xmlReadFile
    - xmlDocDump
    - xmlSecBufferGetSize
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: int decrypt_file(const char* enc_file, const char* key_file)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:48,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:51,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:52,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/verify2.c:57,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:65,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:68,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:69,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/verify2.c:73,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:74,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/verify2.c:79,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:80,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/verify2.c:90,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:91,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/verify2.c:99,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:100,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/verify2.c:105,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:106,1
    - Dst: load_keys
      Src: /src/xmlsec/examples/verify2.c:111,1
    - Dst: verify_file
      Src: /src/xmlsec/examples/verify2.c:117,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:118,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:123,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/verify2.c:126,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/verify2.c:129,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/verify2.c:132,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/verify2.c:136,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/verify2.c:137,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/verify2.c:139,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/xmlsec/examples/verify2.c
    constantsTouched: []
    func_position:
      end: 142
      start: 40
    functionDepth: 7
    functionLinenumber: 40
    functionLinenumberEnd: 142
    functionName: main
    functionSourceFile: /src/xmlsec/examples/verify2.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - assert
    - load_keys
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - verify_file
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:162,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:163,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/verify2.c:169,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:171,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/verify2.c:174,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:175,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:176,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:181,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/verify2.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:186,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:187,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/verify2.c:192,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:193,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/verify2.c:194,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:195,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/examples/verify2.c:202,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:203,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/verify2.c:204,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify2.c:205,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - files
    - files_size
    argTypes:
    - char**
    - int
    assertStmts:
    - condition: (files[i])
      pos:
        line_end: 180
        line_start: 180
        source_file: /src/xmlsec/examples/verify2.c
    - condition: (files)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/xmlsec/examples/verify2.c
    - condition: (files_size > 0)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/verify2.c
    constantsTouched: []
    func_position:
      end: 211
      start: 156
    functionDepth: 4
    functionLinenumber: 156
    functionLinenumberEnd: 211
    functionName: load_keys
    functionSourceFile: /src/xmlsec/examples/verify2.c
    functionUses: 1
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecCryptoAppKeyLoadEx
    - assert
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_keys(char** files, int files_size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:229,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:230,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/verify2.c:233,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify2.c:234,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:235,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/verify2.c:240,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify2.c:240,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:242,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/verify2.c:247,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:249,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/examples/verify2.c:254,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:255,1
    - Dst: verify_signature_results
      Src: /src/xmlsec/examples/verify2.c:260,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:261,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:263,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/verify2.c:272,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/verify2.c:276,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - mngr
    - xml_file
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts:
    - condition: (mngr)
      pos:
        line_end: 228
        line_start: 228
        source_file: /src/xmlsec/examples/verify2.c
    - condition: (xml_file)
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/xmlsec/examples/verify2.c
    constantsTouched: []
    func_position:
      end: 279
      start: 222
    functionDepth: 14
    functionLinenumber: 222
    functionLinenumberEnd: 279
    functionName: verify_file
    functionSourceFile: /src/xmlsec/examples/verify2.c
    functionUses: 3
    functionsReached:
    - verify_signature_results
    - xmlSecDSigCtxVerify
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlReadFile
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    linkageType: ''
    returnType: int
    signature: int verify_file(xmlSecKeysMngrPtr mngr, const char* xml_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify2.c:296,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:300,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify2.c:306,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:307,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/examples/verify2.c:310,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:312,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify2.c:317,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:318,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify2.c:324,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:325,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify2.c:333,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts:
    - condition: (dsigCtx)
      pos:
        line_end: 295
        line_start: 295
        source_file: /src/xmlsec/examples/verify2.c
    constantsTouched: []
    func_position:
      end: 341
      start: 291
    functionDepth: 2
    functionLinenumber: 291
    functionLinenumberEnd: 341
    functionName: verify_signature_results
    functionSourceFile: /src/xmlsec/examples/verify2.c
    functionUses: 3
    functionsReached:
    - xmlStrEqual
    - xmlSecPtrListGetItem
    - assert
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_signature_results(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:57,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:60,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:61,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/verify-saml.c:66,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:72,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:73,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:74,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:75,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:76,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:77,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:78,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/verify-saml.c:82,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:83,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/verify-saml.c:88,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:89,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/verify-saml.c:99,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:100,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/verify-saml.c:108,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:109,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/verify-saml.c:114,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:115,1
    - Dst: load_trusted_certs
      Src: /src/xmlsec/examples/verify-saml.c:120,1
    - Dst: verify_file
      Src: /src/xmlsec/examples/verify-saml.c:126,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify-saml.c:127,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify-saml.c:132,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/verify-saml.c:135,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/verify-saml.c:138,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/verify-saml.c:141,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/verify-saml.c:145,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/verify-saml.c:146,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/verify-saml.c:148,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/xmlsec/examples/verify-saml.c
    constantsTouched: []
    func_position:
      end: 151
      start: 50
    functionDepth: 7
    functionLinenumber: 50
    functionLinenumberEnd: 151
    functionName: main
    functionSourceFile: /src/xmlsec/examples/verify-saml.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - assert
    - load_trusted_certs
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - verify_file
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:170,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:171,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/verify-saml.c:177,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:179,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/verify-saml.c:182,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:183,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify-saml.c:184,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:189,1
    - Dst: xmlSecCryptoAppKeysMngrCertLoad
      Src: /src/xmlsec/examples/verify-saml.c:192,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:193,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/verify-saml.c:194,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - files
    - files_size
    argTypes:
    - char**
    - int
    assertStmts:
    - condition: (files)
      pos:
        line_end: 169
        line_start: 169
        source_file: /src/xmlsec/examples/verify-saml.c
    - condition: (files_size > 0)
      pos:
        line_end: 170
        line_start: 170
        source_file: /src/xmlsec/examples/verify-saml.c
    - condition: (files[i])
      pos:
        line_end: 188
        line_start: 188
        source_file: /src/xmlsec/examples/verify-saml.c
    constantsTouched: []
    func_position:
      end: 200
      start: 165
    functionDepth: 3
    functionLinenumber: 165
    functionLinenumberEnd: 200
    functionName: load_trusted_certs
    functionSourceFile: /src/xmlsec/examples/verify-saml.c
    functionUses: 3
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppKeysMngrCertLoad
    - assert
    - fprintf
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_trusted_certs(char** files, int files_size)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:218,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:219,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/verify-saml.c:222,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify-saml.c:223,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:224,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/verify-saml.c:229,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify-saml.c:229,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:231,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/verify-saml.c:236,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:238,1
    - Dst: xmlSecDSigCtxEnableSignatureTransform
      Src: /src/xmlsec/examples/verify-saml.c:246,1
    - Dst: xmlSecDSigCtxEnableSignatureTransform
      Src: /src/xmlsec/examples/verify-saml.c:247,1
    - Dst: xmlSecDSigCtxEnableSignatureTransform
      Src: /src/xmlsec/examples/verify-saml.c:248,1
    - Dst: xmlSecDSigCtxEnableSignatureTransform
      Src: /src/xmlsec/examples/verify-saml.c:249,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:251,1
    - Dst: xmlSecDSigCtxEnableReferenceTransform
      Src: /src/xmlsec/examples/verify-saml.c:254,1
    - Dst: xmlSecDSigCtxEnableReferenceTransform
      Src: /src/xmlsec/examples/verify-saml.c:255,1
    - Dst: xmlSecDSigCtxEnableReferenceTransform
      Src: /src/xmlsec/examples/verify-saml.c:256,1
    - Dst: xmlSecDSigCtxEnableReferenceTransform
      Src: /src/xmlsec/examples/verify-saml.c:257,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:259,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/examples/verify-saml.c:264,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:265,1
    - Dst: xmlSecPtrListAdd
      Src: /src/xmlsec/examples/verify-saml.c:268,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:269,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/examples/verify-saml.c:274,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:275,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify-saml.c:281,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:283,1
    - Dst: verify_signature_results
      Src: /src/xmlsec/examples/verify-saml.c:288,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:289,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:291,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/verify-saml.c:300,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/verify-saml.c:304,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 67
    argCount: 2
    argNames:
    - mngr
    - xml_file
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    assertStmts:
    - condition: (xml_file)
      pos:
        line_end: 218
        line_start: 218
        source_file: /src/xmlsec/examples/verify-saml.c
    - condition: (mngr)
      pos:
        line_end: 217
        line_start: 217
        source_file: /src/xmlsec/examples/verify-saml.c
    constantsTouched: []
    func_position:
      end: 307
      start: 211
    functionDepth: 14
    functionLinenumber: 211
    functionLinenumberEnd: 307
    functionName: verify_file
    functionSourceFile: /src/xmlsec/examples/verify-saml.c
    functionUses: 4
    functionsReached:
    - verify_signature_results
    - xmlSecDSigCtxEnableReferenceTransform
    - xmlSecDSigCtxVerify
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlSecDSigCtxEnableSignatureTransform
    - xmlSecPtrListAdd
    - xmlReadFile
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_file(xmlSecKeysMngrPtr mngr, const char* xml_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify-saml.c:324,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:328,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify-saml.c:334,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:335,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/examples/verify-saml.c:338,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:340,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify-saml.c:345,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:346,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify-saml.c:352,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:353,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify-saml.c:361,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts:
    - condition: (dsigCtx)
      pos:
        line_end: 323
        line_start: 323
        source_file: /src/xmlsec/examples/verify-saml.c
    constantsTouched: []
    func_position:
      end: 369
      start: 319
    functionDepth: 2
    functionLinenumber: 319
    functionLinenumberEnd: 369
    functionName: verify_signature_results
    functionSourceFile: /src/xmlsec/examples/verify-saml.c
    functionUses: 4
    functionsReached:
    - xmlStrEqual
    - xmlSecPtrListGetItem
    - assert
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_signature_results(xmlSecDSigCtxPtr dsigCtx)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt3.c:51,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:54,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:55,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/encrypt3.c:60,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:66,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:67,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:68,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:69,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:70,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:71,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:72,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/encrypt3.c:76,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:77,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/encrypt3.c:82,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:83,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/encrypt3.c:93,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:94,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/encrypt3.c:102,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:103,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/encrypt3.c:108,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:109,1
    - Dst: load_rsa_keys
      Src: /src/xmlsec/examples/encrypt3.c:114,1
    - Dst: encrypt_file
      Src: /src/xmlsec/examples/encrypt3.c:120,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:121,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:126,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/encrypt3.c:129,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/encrypt3.c:132,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/encrypt3.c:135,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/encrypt3.c:139,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/encrypt3.c:140,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/encrypt3.c:142,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/xmlsec/examples/encrypt3.c
    constantsTouched: []
    func_position:
      end: 145
      start: 44
    functionDepth: 7
    functionLinenumber: 44
    functionLinenumberEnd: 145
    functionName: main
    functionSourceFile: /src/xmlsec/examples/encrypt3.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - load_rsa_keys
    - xmlCleanupParser
    - xsltSetSecurityPrefs
    - xmlInitParser
    - xmlSecCheckVersion
    - xmlSecKeysMngrDestroy
    - xmlSecCryptoAppShutdown
    - fprintf
    - xmlSecCryptoAppInit
    - xsltNewSecurityPrefs
    - xmlSecShutdown
    - xsltFreeSecurityPrefs
    - encrypt_file
    - assert
    - xsltCleanupGlobals
    - xmlSecCryptoDLLoadLibrary
    - xmlSecInit
    - xmlSecCryptoInit
    - xmlSecCryptoShutdown
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt3.c:163,1
    - Dst: xmlSecKeysMngrCreate
      Src: /src/xmlsec/examples/encrypt3.c:169,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:171,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrInit
      Src: /src/xmlsec/examples/encrypt3.c:174,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:175,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:176,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/encrypt3.c:181,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:183,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:184,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/encrypt3.c:189,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:190,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/encrypt3.c:191,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:192,1
    - Dst: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      Src: /src/xmlsec/examples/encrypt3.c:199,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:200,1
    - Dst: xmlSecKeyDestroy
      Src: /src/xmlsec/examples/encrypt3.c:201,1
    - Dst: xmlSecKeysMngrDestroy
      Src: /src/xmlsec/examples/encrypt3.c:202,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 1
    argNames:
    - key_file
    argTypes:
    - char*
    assertStmts:
    - condition: (key_file)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/xmlsec/examples/encrypt3.c
    constantsTouched: []
    func_position:
      end: 207
      start: 158
    functionDepth: 4
    functionLinenumber: 158
    functionLinenumberEnd: 207
    functionName: load_rsa_keys
    functionSourceFile: /src/xmlsec/examples/encrypt3.c
    functionUses: 1
    functionsReached:
    - xmlSecKeysMngrCreate
    - xmlSecKeysMngrDestroy
    - xmlSecKeyDestroy
    - xmlSecCryptoAppDefaultKeysMngrInit
    - xmlSecCryptoAppDefaultKeysMngrAdoptKey
    - xmlSecCryptoAppKeyLoadEx
    - assert
    - fprintf
    - xmlSecKeySetName
    linkageType: ''
    returnType: xmlSecKeysMngrPtr
    signature: xmlSecKeysMngrPtr load_rsa_keys(char* key_file)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt3.c:230,1
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt3.c:231,1
    - Dst: assert
      Src: /src/xmlsec/examples/encrypt3.c:232,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/encrypt3.c:235,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt3.c:236,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:237,1
    - Dst: xmlSecTmplEncDataCreate
      Src: /src/xmlsec/examples/encrypt3.c:243,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:246,1
    - Dst: xmlSecTmplEncDataEnsureCipherValue
      Src: /src/xmlsec/examples/encrypt3.c:251,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:252,1
    - Dst: xmlSecTmplEncDataEnsureKeyInfo
      Src: /src/xmlsec/examples/encrypt3.c:257,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:259,1
    - Dst: xmlSecTmplKeyInfoAddEncryptedKey
      Src: /src/xmlsec/examples/encrypt3.c:264,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:268,1
    - Dst: xmlSecTmplEncDataEnsureCipherValue
      Src: /src/xmlsec/examples/encrypt3.c:273,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:274,1
    - Dst: xmlSecTmplEncDataEnsureKeyInfo
      Src: /src/xmlsec/examples/encrypt3.c:279,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:281,1
    - Dst: xmlSecTmplKeyInfoAddKeyName
      Src: /src/xmlsec/examples/encrypt3.c:286,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:287,1
    - Dst: xmlSecEncCtxCreate
      Src: /src/xmlsec/examples/encrypt3.c:292,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:294,1
    - Dst: xmlSecKeyGenerate
      Src: /src/xmlsec/examples/encrypt3.c:299,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:301,1
    - Dst: xmlSecEncCtxXmlEncrypt
      Src: /src/xmlsec/examples/encrypt3.c:306,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/encrypt3.c:306,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/encrypt3.c:307,1
    - Dst: xmlDocDump
      Src: /src/xmlsec/examples/encrypt3.c:315,1
    - Dst: xmlSecEncCtxDestroy
      Src: /src/xmlsec/examples/encrypt3.c:324,1
    - Dst: xmlFreeNode
      Src: /src/xmlsec/examples/encrypt3.c:328,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/encrypt3.c:332,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    argCount: 3
    argNames:
    - mngr
    - xml_file
    - key_name
    argTypes:
    - xmlSecKeysMngrPtr
    - char*
    - char*
    assertStmts:
    - condition: (mngr)
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/xmlsec/examples/encrypt3.c
    - condition: (key_name)
      pos:
        line_end: 231
        line_start: 231
        source_file: /src/xmlsec/examples/encrypt3.c
    - condition: (xml_file)
      pos:
        line_end: 230
        line_start: 230
        source_file: /src/xmlsec/examples/encrypt3.c
    constantsTouched: []
    func_position:
      end: 335
      start: 220
    functionDepth: 14
    functionLinenumber: 220
    functionLinenumberEnd: 335
    functionName: encrypt_file
    functionSourceFile: /src/xmlsec/examples/encrypt3.c
    functionUses: 3
    functionsReached:
    - xmlSecTmplEncDataEnsureKeyInfo
    - xmlSecTmplEncDataEnsureCipherValue
    - xmlSecKeyGenerate
    - xmlSecEncCtxDestroy
    - xmlSecEncCtxCreate
    - xmlSecTmplKeyInfoAddKeyName
    - xmlSecTmplKeyInfoAddEncryptedKey
    - xmlReadFile
    - xmlSecEncCtxXmlEncrypt
    - xmlDocDump
    - assert
    - fprintf
    - xmlFreeDoc
    - xmlDocGetRootElement
    - xmlFreeNode
    - xmlSecTmplEncDataCreate
    linkageType: ''
    returnType: int
    signature: int encrypt_file(xmlSecKeysMngrPtr mngr, const char* xml_file, const
      char* key_name)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify1.c:45,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:48,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:49,1
    - Dst: xmlInitParser
      Src: /src/xmlsec/examples/verify1.c:54,1
    - Dst: xsltNewSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:60,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:61,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:62,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:63,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:64,1
    - Dst: xsltSetSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:65,1
    - Dst: xsltSetDefaultSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:66,1
    - Dst: xmlSecInit
      Src: /src/xmlsec/examples/verify1.c:70,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:71,1
    - Dst: xmlSecCheckVersion
      Src: /src/xmlsec/examples/verify1.c:76,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:77,1
    - Dst: xmlSecCryptoDLLoadLibrary
      Src: /src/xmlsec/examples/verify1.c:87,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:88,1
    - Dst: xmlSecCryptoAppInit
      Src: /src/xmlsec/examples/verify1.c:96,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:97,1
    - Dst: xmlSecCryptoInit
      Src: /src/xmlsec/examples/verify1.c:102,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:103,1
    - Dst: verify_file
      Src: /src/xmlsec/examples/verify1.c:107,1
    - Dst: xmlSecCryptoShutdown
      Src: /src/xmlsec/examples/verify1.c:112,1
    - Dst: xmlSecCryptoAppShutdown
      Src: /src/xmlsec/examples/verify1.c:115,1
    - Dst: xmlSecShutdown
      Src: /src/xmlsec/examples/verify1.c:118,1
    - Dst: xsltFreeSecurityPrefs
      Src: /src/xmlsec/examples/verify1.c:122,1
    - Dst: xsltCleanupGlobals
      Src: /src/xmlsec/examples/verify1.c:123,1
    - Dst: xmlCleanupParser
      Src: /src/xmlsec/examples/verify1.c:125,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argv)
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/xmlsec/examples/verify1.c
    constantsTouched: []
    func_position:
      end: 128
      start: 39
    functionDepth: 7
    functionLinenumber: 39
    functionLinenumberEnd: 128
    functionName: main
    functionSourceFile: /src/xmlsec/examples/verify1.c
    functionUses: 0
    functionsReached:
    - xsltSetDefaultSecurityPrefs
    - xmlSecCryptoShutdown
    - xsltCleanupGlobals
    - xsltNewSecurityPrefs
    - xmlCleanupParser
    - xmlSecCryptoDLLoadLibrary
    - xmlSecCryptoAppShutdown
    - xmlSecShutdown
    - xmlSecCryptoInit
    - xsltFreeSecurityPrefs
    - xsltSetSecurityPrefs
    - xmlSecInit
    - verify_file
    - assert
    - xmlInitParser
    - fprintf
    - xmlSecCheckVersion
    - xmlSecCryptoAppInit
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify1.c:146,1
    - Dst: assert
      Src: /src/xmlsec/examples/verify1.c:147,1
    - Dst: xmlReadFile
      Src: /src/xmlsec/examples/verify1.c:150,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify1.c:151,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:152,1
    - Dst: xmlSecFindNode
      Src: /src/xmlsec/examples/verify1.c:157,1
    - Dst: xmlDocGetRootElement
      Src: /src/xmlsec/examples/verify1.c:157,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:159,1
    - Dst: xmlSecDSigCtxCreate
      Src: /src/xmlsec/examples/verify1.c:164,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:166,1
    - Dst: xmlSecCryptoAppKeyLoadEx
      Src: /src/xmlsec/examples/verify1.c:171,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:173,1
    - Dst: xmlSecKeySetName
      Src: /src/xmlsec/examples/verify1.c:178,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:179,1
    - Dst: xmlSecDSigCtxVerify
      Src: /src/xmlsec/examples/verify1.c:184,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:185,1
    - Dst: verify_signature_results
      Src: /src/xmlsec/examples/verify1.c:190,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:191,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:193,1
    - Dst: xmlSecDSigCtxDestroy
      Src: /src/xmlsec/examples/verify1.c:202,1
    - Dst: xmlFreeDoc
      Src: /src/xmlsec/examples/verify1.c:206,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 2
    argNames:
    - xml_file
    - key_file
    argTypes:
    - char*
    - char*
    assertStmts:
    - condition: (key_file)
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/xmlsec/examples/verify1.c
    - condition: (xml_file)
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/xmlsec/examples/verify1.c
    constantsTouched: []
    func_position:
      end: 209
      start: 139
    functionDepth: 14
    functionLinenumber: 139
    functionLinenumberEnd: 209
    functionName: verify_file
    functionSourceFile: /src/xmlsec/examples/verify1.c
    functionUses: 5
    functionsReached:
    - verify_signature_results
    - xmlSecDSigCtxVerify
    - xmlSecDSigCtxCreate
    - xmlSecFindNode
    - xmlSecDSigCtxDestroy
    - xmlReadFile
    - xmlSecCryptoAppKeyLoadEx
    - assert
    - fprintf
    - xmlDocGetRootElement
    - xmlFreeDoc
    - xmlSecKeySetName
    linkageType: ''
    returnType: int
    signature: int verify_file(const char* xml_file, const char* key_file)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/xmlsec/examples/verify1.c:225,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:229,1
    - Dst: xmlSecPtrListGetSize
      Src: /src/xmlsec/examples/verify1.c:235,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:236,1
    - Dst: xmlSecPtrListGetItem
      Src: /src/xmlsec/examples/verify1.c:239,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:241,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify1.c:246,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:247,1
    - Dst: xmlStrEqual
      Src: /src/xmlsec/examples/verify1.c:253,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:254,1
    - Dst: fprintf
      Src: /src/xmlsec/examples/verify1.c:262,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - dsigCtx
    argTypes:
    - xmlSecDSigCtxPtr
    assertStmts:
    - condition: (dsigCtx)
      pos:
        line_end: 224
        line_start: 224
        source_file: /src/xmlsec/examples/verify1.c
    constantsTouched: []
    func_position:
      end: 270
      start: 220
    functionDepth: 2
    functionLinenumber: 220
    functionLinenumberEnd: 270
    functionName: verify_signature_results
    functionSourceFile: /src/xmlsec/examples/verify1.c
    functionUses: 5
    functionsReached:
    - xmlStrEqual
    - xmlSecPtrListGetItem
    - assert
    - fprintf
    - xmlSecPtrListGetSize
    linkageType: ''
    returnType: int
    signature: int verify_signature_results(xmlSecDSigCtxPtr dsigCtx)
Fuzzer filename: /src/libxslt/tests/fuzz/xslt.c
Fuzzing method: LLVMFuzzerTestOneInput
included-header-files:
- xmlsec/mscrypto/certkeys.h
- xmlsec/nss/crypto.h
- csp_calg.h
- cast_helpers.h
- openssl/store.h
- libexslt/exsltconfig.h
- xmlsec/x509.h
- libxslt/xsltInternals.h
- attributes.h
- libxslt/xsltconfig.h
- private/string.h
- libxslt/templates.h
- libxml/HTMLparser.h
- config.h
- security.h
- xmlsec/mscng/crypto.h
- libexslt/libexslt.h
- xmlsec/xmltree.h
- libxml/tree.h
- xmlsec/mscrypto/keysstore.h
- private/io.h
- stdarg.h
- p12plcy.h
- xpath.c
- dl.h
- schema.c
- xmlsec/nss/x509.h
- trio.h
- ntstatus.h
- xmlsec/mscrypto/x509.h
- libxml/xmlstring.h
- libxml/nanohttp.h
- locale.h
- xmlsec/xmlsec.h
- libxml/catalog.h
- prmem.h
- stddef.h
- xmlsec/base64.h
- ../src/x509_helpers.h
- gnutls/abstract.h
- libxml/SAX2.h
- hasht.h
- fcntl.h
- nspr.h
- xmlsec/gnutls/app.h
- openssl/x509v3.h
- libxslt.h
- prinit.h
- xmlsec/gnutls/symbols.h
- ../keysdata_helpers.h
- xmlsec/openssl/symbols.h
- xmlsec/nss/pkikeys.h
- openssl/ui.h
- Python.h
- preproc.h
- openssl/evp.h
- libxml/xmlreader.h
- libxslt/xsltlocale.h
- unicode/ucol.h
- openssl/x509_vfy.h
- libxml.h
- private/entities.h
- xmlsec/xmlenc.h
- libxslt/transform.h
- libgen.h
- libxml/threads.h
- winnls.h
- xmlsec/mscrypto/app.h
- xsltlocale.h
- xmlsec/mscrypto/crypto.h
- xmlsec/strings.h
- libxml/uri.h
- keyhi.h
- varargs.h
- readline/history.h
- ../cast_helpers.h
- win32config.h
- csp_oid.h
- openssl/param_build.h
- cryptohi.h
- keys.h
- sys/random.h
- openssl/core_names.h
- libxml/xmlregexp.h
- openssl/rsa.h
- libxslt/pattern.h
- ../errors_helpers.h
- xmlsec/openssl/app.h
- sys/types.h
- openssl/pem.h
- private/memory.h
- openssl_compat.h
- pthread.h
- sys/time.h
- sys/stat.h
- private/xinclude.h
- pratom.h
- sechash.h
- reader.c
- libxslt/xslt.h
- xslt.h
- xmlsec-mingw.h
- libxml/xmlschemastypes.h
- libxml/nanoftp.h
- openssl/x509.h
- crypto.h
- bcrypt.h
- xmlsec/nss/symbols.h
- xsltexports.h
- unistd.h
- libxslt/attributes.h
- libxml/xmlsave.h
- libxslt/extensions.h
- libxml/chvalid.h
- extensions.h
- openssl/engine.h
- iconv.h
- libxslt/numbersInternals.h
- exsltexports.h
- libxml/parser.h
- xmlsec/bn.h
- xmlsec/keys.h
- openssl/hmac.h
- xmlsec/gnutls/x509.h
- private/tree.h
- xmlsec/xmldsig.h
- xmlsec/openssl/keysstore.h
- openssl/sha.h
- extra.h
- wincrypt.h
- libxml/xpath.h
- assert.h
- xmlsec/mscng/certkeys.h
- xmlsec/gnutls/crypto.h
- libxml/encoding.h
- keysdata_helpers.h
- fileobject.h
- xsltutils.h
- limits.h
- xmlsec/nss/app.h
- libxml/xmlexports.h
- private/enc.h
- libxml2-py.h
- ncrypt.h
- openssl/ecdsa.h
- libxml/xmlversion.h
- libxslt/extra.h
- documents.h
- private/error.h
- xmlsec_unit_tests.h
- xinclude.c
- libxml/c14n.h
- exslt.h
- readline/readline.h
- xmlsec/templates.h
- openssl/objects.h
- private/globals.h
- html.c
- libxml/HTMLtree.h
- stdlib.h
- libxml/debugXML.h
- codegen/ranges.inc
- ../../libxml.h
- regexp.c
- openssl/pkcs12.h
- libxml/entities.h
- gnutls/crypto.h
- openssl/err.h
- openssl/crypto.h
- imports.h
- libxslt/preproc.h
- unicode/ucnv.h
- openssl/asn1.h
- libxslt/security.h
- openssl/kdf.h
- private/lint.h
- crtdbg.h
- globals.h
- xmlsec/app.h
- openssl/rand.h
- libxml/DOCBparser.h
- templates.h
- libxslt/xsltutils.h
- libxml/xmlmemory.h
- cmdline.h
- glob.h
- pk11pqg.h
- timsort.h
- valid.c
- private/save.h
- libxml/xpointer.h
- gnutls/x509.h
- time.h
- codegen/escape.inc
- xmlsec/gcrypt/crypto.h
- libxml/schematron.h
- string.h
- libxml/xmlautomata.h
- openssl/bio.h
- libxml/pattern.h
- ctype.h
- libxslt/namespaces.h
- xmlsec/mscng/x509.h
- dlfcn.h
- pk11pub.h
- asn1.h
- private/dict.h
- libxslt/documents.h
- transform_helpers.h
- pattern.h
- ansidecl.h
- certdb.h
- secoidt.h
- libxml/valid.h
- xmlsec/mscng/app.h
- xmlsec/openssl/evp.h
- xsltInternals.h
- openssl/provider.h
- transform.h
- ltdl.h
- openssl/conf.h
- libxml/hash.h
- ../transform_helpers.h
- xmlsec/gcrypt/app.h
- libxml/xmlwriter.h
- nss.h
- secder.h
- xmlsec/buffer.h
- xmlsec/nodeset.h
- xmlsec/nss/keysstore.h
- libxml/dict.h
- math.h
- libxml_wrap.h
- xmlsec/version.h
- xlocale.h
- x509_helpers.h
- xmlsec/list.h
- xmlsec/errors.h
- libxml/xmlIO.h
- libxml/list.h
- xmlsec/exports.h
- libxml/relaxng.h
- sys/select.h
- sys/timeb.h
- pkcs12.h
- xml.c
- private/html.h
- variables.h
- libxml/parserInternals.h
- prtypes.h
- openssl/bn.h
- triodef.h
- private.h
- io.h
- xmlsec/private.h
- xmlsec/keysmngr.h
- ../kw_aes_des.h
- stdint.h
- openssl/aes.h
- xmlsec/dl.h
- xmlsec/membuf.h
- xmlsec/keysdata.h
- private/parser.h
- errors_helpers.h
- gnutls/pkcs12.h
- libexslt/exslt.h
- secerr.h
- uri.c
- ../x509_helpers.h
- libxml/xmlschemas.h
- private/xpath.h
- libxml/schemasInternals.h
- libxml/xinclude.h
- fuzz.h
- libxml/xlink.h
- xmlsec/openssl/x509.h
- libxml/xpathInternals.h
- openssl/des.h
- private/buf.h
- xmlsec/gcrypt/symbols.h
- openssl/mem.h
- gnutls/gnutls.h
- xmlsec/transforms.h
- xmlsec/openssl/crypto.h
- windows.h
- libxslt/imports.h
- note.h
- xmlsec/mscng/symbols.h
- private/cata.h
- libxslt-py.h
- xmlsec/parser.h
- kw_aes_des.h
- zlib.h
- float.h
- xmlsec/crypto.h
- openssl/dsa.h
- xmlsec/io.h
- stdio.h
- secoid.h
- openssl/ec.h
- libxml/globals.h
- functions.h
- xmlsec/mscrypto/symbols.h
- codegen/charset.inc
- private/regexp.h
- libxslt/functions.h
- cert.h
- direct.h
- xmlsec/mscng/keysstore.h
- namespaces.h
- openssl/opensslv.h
- libxslt_wrap.h
- libxslt/libxslt.h
- libxml/xmlerror.h
- codegen/html5ent.inc
- xmlsec/gnutls/keysstore.h
- numbersInternals.h
- openssl/opensslconf.h
- ../src/cast_helpers.h
- private/threads.h
- gcrypt.h
- libxslt/keys.h
- codegen/unicode.inc
- xmlsec/keyinfo.h
- sys/mman.h
- errno.h
- libxslt/variables.h
- libxml/xmlmodule.h
report: name
sources:
- function_names:
  - glob
  - globfree
  - fatalError
  - testErrorHandler
  - xmlParserPrintFileContextInternal
  - testStructuredErrorHandler
  - testStructuredErrorHandler
  - initializeLibxml2
  - changeSuffix
  - checkTestFile
  - compareFileMem
  - xsltTest
  - launchTests
  - runtest
  - main
  source_file: /src/libxslt/tests/runtest.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxslt/tests/runtest.c
      type_or_value: O_RDONLY | O_BINARY
    - item_type: preproc_def
      name: WR_FLAGS
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxslt/tests/runtest.c
      type_or_value: O_WRONLY | O_CREAT | O_TRUNC | O_BINARY
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxslt/tests/runtest.c
      type_or_value: O_RDONLY
    - item_type: preproc_def
      name: WR_FLAGS
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxslt/tests/runtest.c
      type_or_value: O_WRONLY | O_CREAT | O_TRUNC
    - item_type: preproc_def
      name: GLOB_DOOFFS
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/libxslt/tests/runtest.c
      type_or_value: '0'
    structs:
    - fields:
      - name: '*desc'
        type: char
      - name: func
        type: functest
      - name: '*dir'
        type: char
      - name: '*in'
        type: char
      - name: options
        type: int
      item_type: struct
      name: testDesc
      pos:
        line_end: 54
        line_start: 48
        source_file: /src/libxslt/tests/runtest.c
    - fields:
      - name: gl_pathc
        type: size_t
      - name: '**gl_pathv'
        type: char
      - name: gl_offs
        type: size_t
      item_type: struct
      name: glob_t
      pos:
        line_end: 67
        line_start: 62
        source_file: /src/libxslt/tests/runtest.c
    typedefs:
    - item_type: typedef
      name: (*functest) (const char *filename, int options)
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/libxslt/tests/runtest.c
      type: int
    - item_type: typedef
      name: testDesc
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/libxslt/tests/runtest.c
      type: testDesc
    - item_type: typedef
      name: '*testDescPtr'
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/libxslt/tests/runtest.c
      type: testDesc
    union: []
- function_names:
  - xsltExtFunctionTest
  - xsltExtElementPreCompTest
  - xsltExtElementTest
  - xsltExtInitTest
  - xsltExtShutdownTest
  - xsltExtStyleInitTest
  - xsltExtStyleShutdownTest
  - PLUGINPUBFUN::xmlsoft_org_xslt_testplugin_init
  source_file: /src/libxslt/tests/testplugin.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_TESTPLUGIN_URL
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxslt/tests/testplugin.c
      type_or_value: '"http://xmlsoft.org/xslt/testplugin"'
    - item_type: preproc_def
      name: PLUGINPUBFUN
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxslt/tests/testplugin.c
      type_or_value: __declspec(dllexport)
    structs: []
    typedefs: []
    union: []
- function_names:
  - testXPath
  - testXslt
  - main
  source_file: /src/libxslt/tests/fuzz/testTargets.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  source_file: /src/libxslt/tests/fuzz/xslt.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/tests/fuzz/fuzz.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/libxslt/tests/fuzz/fuzz.h
      type_or_value: __attribute__((unused))
    structs: []
    typedefs: []
    union: []
- function_names:
  - fuzzEntityRecorder
  - fuzzRecorderInit
  - fuzzRecorderWriteAndFree
  - fuzzRecorderWrite
  - fuzzRecorderCleanup
  - processXslt
  - processPattern
  - processTestDir
  - processTests
  - processXPath
  - main
  source_file: /src/libxslt/tests/fuzz/genSeed.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PATH_SIZE
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '500'
    - item_type: preproc_def
      name: SEED_BUF_SIZE
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '16384'
    - item_type: preproc_def
      name: UTF8_Auml
      pos:
        line_end: 281
        line_start: 280
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '"\xC3\x84"'
    - item_type: preproc_def
      name: UTF8_szlig
      pos:
        line_end: 282
        line_start: 281
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '"\xC3\x9F"'
    - item_type: preproc_def
      name: UTF8_ALPHA
      pos:
        line_end: 283
        line_start: 282
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '"\xCE\xB1"'
    - item_type: preproc_def
      name: UTF8_DEJA
      pos:
        line_end: 284
        line_start: 283
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type_or_value: '"d\xC3\xA9j\xC3\xA0"'
    structs:
    - fields:
      - name: '*out'
        type: FILE
      - name: entities
        type: xmlHashTablePtr
      - name: oldLoader
        type: xmlExternalEntityLoader
      - name: processFile
        type: fileFunc
      - name: '*fuzzer'
        type: char
      - name: '*docDir'
        type: char
      - name: cwd[PATH_SIZE]
        type: char
      item_type: struct
      name: globalData
      pos:
        line_end: 41
        line_start: 33
        source_file: /src/libxslt/tests/fuzz/genSeed.c
    typedefs:
    - item_type: typedef
      name: (*fileFunc)(const char *base, FILE *out)
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type: int
    - item_type: typedef
      name: (*mainFunc)(const char *testsDir)
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxslt/tests/fuzz/genSeed.c
      type: int
    union: []
- function_names:
  - xsltFuzzXmlErrorFunc
  - xsltFuzzXsltErrorFunc
  - xsltFuzzInit
  - xsltFuzzXPathInit
  - xsltFuzzXPath
  - xsltFuzzXPathFreeObject
  - xsltFuzzXPathCleanup
  - xsltFuzzXsltInit
  - xsltFuzzXslt
  - xsltFuzzXsltCleanup
  - xmlFuzzErrorFunc
  - xmlFuzzMalloc
  - xmlFuzzRealloc
  - xmlFuzzMemSetup
  - xmlFuzzMemSetLimit
  - xmlFuzzDataInit
  - xmlFuzzDataCleanup
  - xmlFuzzWriteInt
  - xmlFuzzReadInt
  - xmlFuzzReadRemaining
  - xmlFuzzWriteString
  - xmlFuzzReadString
  - xmlFuzzReadEntities
  - xmlFuzzMainUrl
  - xmlFuzzMainEntity
  - xmlFuzzSecondaryUrl
  - xmlFuzzSecondaryEntity
  - xmlFuzzEntityLoader
  source_file: /src/libxslt/tests/fuzz/fuzz.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DIR_SEP
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/libxslt/tests/fuzz/fuzz.c
      type_or_value: '''\\'''
    - item_type: preproc_def
      name: DIR_SEP
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/libxslt/tests/fuzz/fuzz.c
      type_or_value: '''/'''
    - item_type: preproc_def
      name: XML_FUZZ_MALLOC_OFFSET
      pos:
        line_end: 410
        line_start: 409
        source_file: /src/libxslt/tests/fuzz/fuzz.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_FUZZ_MALLOC_ABORT
      pos:
        line_end: 411
        line_start: 410
        source_file: /src/libxslt/tests/fuzz/fuzz.c
      type_or_value: '0'
    structs:
    - fields:
      - name: '*data'
        type: char
      - name: size
        type: size_t
      item_type: struct
      name: xmlFuzzEntityInfo
      pos:
        line_end: 361
        line_start: 358
        source_file: /src/libxslt/tests/fuzz/fuzz.c
    - fields:
      - name: '*data'
        type: char
      - name: size
        type: size_t
      - name: '*ptr'
        type: char
      - name: remaining
        type: size_t
      - name: '*outBuf'
        type: char
      - name: '*outPtr'
        type: char
      - name: entities
        type: xmlHashTablePtr
      - name: '*mainUrl'
        type: char
      - name: '*mainEntity'
        type: xmlFuzzEntityInfo
      - name: '*secondaryUrl'
        type: char
      - name: '*secondaryEntity'
        type: xmlFuzzEntityInfo
      item_type: struct
      name: fuzzData
      pos:
        line_end: 384
        line_start: 364
        source_file: /src/libxslt/tests/fuzz/fuzz.c
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  source_file: /src/libxslt/tests/fuzz/xpath.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libexslt/exsltexports.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: EXSLTPUBLIC
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: EXSLTPUBLIC
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: EXSLTCALL
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: __cdecl
    - item_type: preproc_def
      name: EXSLTPUBFUN
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: EXSLTPUBLIC
    - item_type: preproc_def
      name: EXSLTPUBVAR
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: EXSLTPUBLIC extern
    - item_type: preproc_def
      name: LIBEXSLT_PUBLIC
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxslt/libexslt/exsltexports.h
      type_or_value: EXSLTPUBVAR
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_TZO_CHAR
  - VALID_ALWAYS
  - VALID_MONTH
  - VALID_DAY
  - VALID_HOUR
  - VALID_MIN
  - VALID_SEC
  - VALID_TZO
  - IS_LEAP
  - MAX_DAYINMONTH
  - VALID_MDAY
  - VALID_DATE
  - VALID_TIME
  - VALID_DATETIME
  - DAY_IN_YEAR
  - _exsltDateParseGYear
  - exsltFormatGYear
  - PARSE_2_DIGITS
  - exsltFormat2Digits
  - PARSE_FLOAT
  - _exsltDateParseGMonth
  - _exsltDateParseGDay
  - exsltFormatYearMonthDay
  - _exsltDateParseTime
  - _exsltDateParseTimeZone
  - exsltFormatTimeZone
  - exsltDateCreateDate
  - exsltDateFreeDate
  - exsltDateCreateDuration
  - exsltDateFreeDuration
  - exsltDateCurrent
  - exsltDateParse
  - RETURN_TYPE_IF_VALID
  - exsltDateParseDuration
  - exsltFormatLong
  - exsltFormatNanoseconds
  - exsltDateFormatDuration
  - exsltFormatTwoDigits
  - exsltFormatTime
  - exsltDateFormatDateTime
  - exsltDateFormatDate
  - exsltDateFormatTime
  - exsltDateFormat
  - _exsltDateCastYMToDays
  - TIME_TO_NUMBER
  - _exsltDateTruncateDate
  - _exsltDateDayInWeek
  - _exsltDateAdd
  - _exsltDateDifference
  - _exsltDateAddDurCalc
  - _exsltDateAddDuration
  - exsltDateDateTime
  - exsltDateDate
  - exsltDateTime
  - exsltDateYear
  - exsltDateLeapYear
  - exsltDateMonthInYear
  - exsltDateMonthName
  - exsltDateMonthAbbreviation
  - exsltDateWeekInYear
  - exsltDateWeekInMonth
  - exsltDateDayInYear
  - exsltDateDayInMonth
  - exsltDateDayOfWeekInMonth
  - exsltDateDayInWeek
  - exsltDateDayName
  - exsltDateDayAbbreviation
  - exsltDateHourInDay
  - exsltDateMinuteInHour
  - exsltDateSecondInMinute
  - exsltDateAdd
  - exsltDateAddDuration
  - exsltDateSumFunction
  - exsltDateSeconds
  - exsltDateDifference
  - exsltDateDuration
  - exsltDateDateTimeFunction
  - exsltDateDateFunction
  - exsltDateTimeFunction
  - exsltDateYearFunction
  - exsltDateLeapYearFunction
  - X_IN_Y
  - exsltDateMonthNameFunction
  - exsltDateMonthAbbreviationFunction
  - exsltDateDayNameFunction
  - exsltDateDayAbbreviationFunction
  - exsltDateSecondsFunction
  - exsltDateAddFunction
  - exsltDateAddDurationFunction
  - exsltDateDifferenceFunction
  - exsltDateDurationFunction
  - exsltDateRegister
  - exsltDateXpathCtxtRegister
  source_file: /src/libxslt/libexslt/date.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SECS_PER_MIN
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: '60'
    - item_type: preproc_def
      name: MINS_PER_HOUR
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: '60'
    - item_type: preproc_def
      name: HOURS_PER_DAY
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: '24'
    - item_type: preproc_def
      name: SECS_PER_HOUR
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: (MINS_PER_HOUR * SECS_PER_MIN)
    - item_type: preproc_def
      name: SECS_PER_DAY
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: (HOURS_PER_DAY * SECS_PER_HOUR)
    - item_type: preproc_def
      name: MINS_PER_DAY
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: (HOURS_PER_DAY * MINS_PER_HOUR)
    - item_type: preproc_def
      name: DAYS_PER_EPOCH
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: (400 * 365 + 100 - 4 + 1)
    - item_type: preproc_def
      name: YEARS_PER_EPOCH
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: '400'
    - item_type: preproc_def
      name: YEAR_MAX
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: LONG_MAX
    - item_type: preproc_def
      name: YEAR_MIN
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/libxslt/libexslt/date.c
      type_or_value: (-LONG_MAX + 1)
    structs:
    - fields:
      - name: type
        type: exsltDateType
      - name: year
        type: long
      - name: mon
        type: unsigned int
      - name: day
        type: unsigned int
      - name: hour
        type: unsigned int
      - name: min
        type: unsigned int
      - name: sec
        type: double
      - name: tz_flag
        type: unsigned int
      - name: tzo
        type: signed int
      item_type: struct
      name: _exsltDateVal
      pos:
        line_end: 91
        line_start: 81
        source_file: /src/libxslt/libexslt/date.c
    - fields:
      - name: mon
        type: long
      - name: day
        type: long
      - name: sec
        type: double
      item_type: struct
      name: _exsltDateDurVal
      pos:
        line_end: 101
        line_start: 96
        source_file: /src/libxslt/libexslt/date.c
    typedefs:
    - item_type: typedef
      name: exsltDateVal
      pos:
        line_end: 79
        line_start: 79
        source_file: /src/libxslt/libexslt/date.c
      type: _exsltDateVal
    - item_type: typedef
      name: '*exsltDateValPtr'
      pos:
        line_end: 80
        line_start: 80
        source_file: /src/libxslt/libexslt/date.c
      type: exsltDateVal
    - item_type: typedef
      name: exsltDateDurVal
      pos:
        line_end: 94
        line_start: 94
        source_file: /src/libxslt/libexslt/date.c
      type: _exsltDateDurVal
    - item_type: typedef
      name: '*exsltDateDurValPtr'
      pos:
        line_end: 95
        line_start: 95
        source_file: /src/libxslt/libexslt/date.c
      type: exsltDateDurVal
    union: []
- function_names:
  - exsltFuncRegisterFunc
  - exsltFuncRegisterImportFunc
  - exsltFuncInit
  - exsltFuncShutdown
  - exsltFuncStyleInit
  - exsltFuncFreeDataEntry
  - exsltFuncStyleShutdown
  - exsltFuncNewFunctionData
  - exsltFreeFuncResultPreComp
  - exsltFuncFunctionFunction
  - exsltFuncFunctionComp
  - exsltFuncResultComp
  - exsltFuncResultElem
  - exsltFuncRegister
  source_file: /src/libxslt/libexslt/functions.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: nargs
        type: int
      - name: content
        type: xmlNodePtr
      item_type: struct
      name: _exsltFuncFunctionData
      pos:
        line_end: 24
        line_start: 21
        source_file: /src/libxslt/libexslt/functions.c
    - fields:
      - name: funcs
        type: xmlHashTablePtr
      - name: result
        type: xmlXPathObjectPtr
      - name: ctxtVar
        type: xsltStackElemPtr
      - name: error
        type: int
      item_type: struct
      name: _exsltFuncData
      pos:
        line_end: 32
        line_start: 27
        source_file: /src/libxslt/libexslt/functions.c
    - fields:
      - name: comp
        type: xsltElemPreComp
      - name: select
        type: xmlXPathCompExprPtr
      - name: '*nsList'
        type: xmlNsPtr
      - name: nsNr
        type: int
      item_type: struct
      name: _exsltFuncResultPreComp
      pos:
        line_end: 40
        line_start: 35
        source_file: /src/libxslt/libexslt/functions.c
    - fields:
      - name: ctxt
        type: xsltTransformContextPtr
      - name: hash
        type: xmlHashTablePtr
      item_type: struct
      name: _exsltFuncImportRegData
      pos:
        line_end: 47
        line_start: 44
        source_file: /src/libxslt/libexslt/functions.c
    typedefs:
    - item_type: typedef
      name: exsltFuncFunctionData
      pos:
        line_end: 20
        line_start: 20
        source_file: /src/libxslt/libexslt/functions.c
      type: _exsltFuncFunctionData
    - item_type: typedef
      name: exsltFuncData
      pos:
        line_end: 26
        line_start: 26
        source_file: /src/libxslt/libexslt/functions.c
      type: _exsltFuncData
    - item_type: typedef
      name: exsltFuncResultPreComp
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/libxslt/libexslt/functions.c
      type: _exsltFuncResultPreComp
    - item_type: typedef
      name: exsltFuncImportRegData
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxslt/libexslt/functions.c
      type: _exsltFuncImportRegData
    union: []
- function_names:
  - exsltSetsDifferenceFunction
  - exsltSetsIntersectionFunction
  - exsltSetsDistinctFunction
  - exsltSetsHasSameNodesFunction
  - exsltSetsLeadingFunction
  - exsltSetsTrailingFunction
  - exsltSetsRegister
  - exsltSetsXpathCtxtRegister
  source_file: /src/libxslt/libexslt/sets.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltNodeSetFunction
  - exsltObjectTypeFunction
  - exsltCommonRegister
  source_file: /src/libxslt/libexslt/common.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltStrTokenizeFunction
  - exsltStrSplitFunction
  - exsltStrEncodeUriFunction
  - exsltStrDecodeUriFunction
  - exsltStrPaddingFunction
  - exsltStrAlignFunction
  - exsltStrConcatFunction
  - exsltStrReturnString
  - exsltStrReplaceFunction
  - exsltStrRegister
  - exsltStrXpathCtxtRegister
  source_file: /src/libxslt/libexslt/strings.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltRegisterAll
  source_file: /src/libxslt/libexslt/exslt.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltMathMin
  - exsltMathMinFunction
  - exsltMathMax
  - exsltMathMaxFunction
  - exsltMathHighest
  - exsltMathHighestFunction
  - exsltMathLowest
  - exsltMathLowestFunction
  - exsltMathConstant
  - exsltMathConstantFunction
  - exsltMathRandom
  - exsltMathRandomFunction
  - exsltMathAbs
  - exsltMathAbsFunction
  - exsltMathSqrt
  - exsltMathSqrtFunction
  - exsltMathPower
  - exsltMathPowerFunction
  - exsltMathLog
  - exsltMathLogFunction
  - exsltMathSin
  - exsltMathSinFunction
  - exsltMathCos
  - exsltMathCosFunction
  - exsltMathTan
  - exsltMathTanFunction
  - exsltMathAsin
  - exsltMathAsinFunction
  - exsltMathAcos
  - exsltMathAcosFunction
  - exsltMathAtan
  - exsltMathAtanFunction
  - exsltMathAtan2
  - exsltMathAtan2Function
  - exsltMathExp
  - exsltMathExpFunction
  - exsltMathRegister
  - exsltMathXpathCtxtRegister
  source_file: /src/libxslt/libexslt/math.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: EXSLT_PI
      pos:
        line_end: 319
        line_start: 317
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"3.1415926535897932384626433832795028841971693993751\""
    - item_type: preproc_def
      name: EXSLT_E
      pos:
        line_end: 321
        line_start: 319
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"2.71828182845904523536028747135266249775724709369996\""
    - item_type: preproc_def
      name: EXSLT_SQRRT2
      pos:
        line_end: 323
        line_start: 321
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"1.41421356237309504880168872420969807856967187537694\""
    - item_type: preproc_def
      name: EXSLT_LN2
      pos:
        line_end: 325
        line_start: 323
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"0.69314718055994530941723212145817656807550013436025\""
    - item_type: preproc_def
      name: EXSLT_LN10
      pos:
        line_end: 327
        line_start: 325
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"2.30258509299404568402\""
    - item_type: preproc_def
      name: EXSLT_LOG2E
      pos:
        line_end: 329
        line_start: 327
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"1.4426950408889634074\""
    - item_type: preproc_def
      name: EXSLT_SQRT1_2
      pos:
        line_end: 331
        line_start: 329
        source_file: /src/libxslt/libexslt/math.c
      type_or_value: "(const xmlChar *) \\\n\t\t\t\"0.70710678118654752440\""
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libexslt/exslt.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: EXSLT_COMMON_NAMESPACE
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/common")
    - item_type: preproc_def
      name: EXSLT_CRYPTO_NAMESPACE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/crypto")
    - item_type: preproc_def
      name: EXSLT_MATH_NAMESPACE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/math")
    - item_type: preproc_def
      name: EXSLT_SETS_NAMESPACE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/sets")
    - item_type: preproc_def
      name: EXSLT_FUNCTIONS_NAMESPACE
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/functions")
    - item_type: preproc_def
      name: EXSLT_STRINGS_NAMESPACE
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/strings")
    - item_type: preproc_def
      name: EXSLT_DATE_NAMESPACE
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/dates-and-times")
    - item_type: preproc_def
      name: EXSLT_DYNAMIC_NAMESPACE
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://exslt.org/dynamic")
    - item_type: preproc_def
      name: SAXON_NAMESPACE
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/libxslt/libexslt/exslt.h
      type_or_value: ((const xmlChar *) "http://icl.com/saxon")
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltDynEvaluateFunction
  - exsltDynMapFunction
  - exsltDynRegister
  source_file: /src/libxslt/libexslt/dynamic.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltCryptoBin2Hex
  - exsltCryptoHex2Bin
  - exsltCryptoCryptoApiReportError
  - exsltCryptoCryptoApiCreateHash
  - exsltCryptoCryptoApiHash
  - exsltCryptoCryptoApiRc4Encrypt
  - exsltCryptoCryptoApiRc4Decrypt
  - exsltCryptoGcryptInit
  - exsltCryptoGcryptHash
  - exsltCryptoGcryptRc4Encrypt
  - exsltCryptoGcryptRc4Decrypt
  - exsltCryptoPopString
  - exsltCryptoMd4Function
  - exsltCryptoMd5Function
  - exsltCryptoSha1Function
  - exsltCryptoRc4EncryptFunction
  - exsltCryptoRc4DecryptFunction
  - exsltCryptoRegister
  - exsltCryptoRegister
  source_file: /src/libxslt/libexslt/crypto.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: HASH_DIGEST_LENGTH
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: '32'
    - item_type: preproc_def
      name: MD5_DIGEST_LENGTH
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: '16'
    - item_type: preproc_def
      name: SHA1_DIGEST_LENGTH
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: '20'
    - item_type: preproc_def
      name: RC4_KEY_LENGTH
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: '128'
    - item_type: preproc_def
      name: PLATFORM_HASH
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoCryptoApiHash
    - item_type: preproc_def
      name: PLATFORM_RC4_ENCRYPT
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoCryptoApiRc4Encrypt
    - item_type: preproc_def
      name: PLATFORM_RC4_DECRYPT
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoCryptoApiRc4Decrypt
    - item_type: preproc_def
      name: PLATFORM_MD4
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: CALG_MD4
    - item_type: preproc_def
      name: PLATFORM_MD5
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: CALG_MD5
    - item_type: preproc_def
      name: PLATFORM_SHA1
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: CALG_SHA1
    - item_type: preproc_def
      name: PLATFORM_HASH
      pos:
        line_end: 309
        line_start: 308
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoGcryptHash
    - item_type: preproc_def
      name: PLATFORM_RC4_ENCRYPT
      pos:
        line_end: 310
        line_start: 309
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoGcryptRc4Encrypt
    - item_type: preproc_def
      name: PLATFORM_RC4_DECRYPT
      pos:
        line_end: 311
        line_start: 310
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: exsltCryptoGcryptRc4Decrypt
    - item_type: preproc_def
      name: PLATFORM_MD4
      pos:
        line_end: 312
        line_start: 311
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: GCRY_MD_MD4
    - item_type: preproc_def
      name: PLATFORM_MD5
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: GCRY_MD_MD5
    - item_type: preproc_def
      name: PLATFORM_SHA1
      pos:
        line_end: 314
        line_start: 313
        source_file: /src/libxslt/libexslt/crypto.c
      type_or_value: GCRY_MD_SHA1
    structs: []
    typedefs: []
    union: []
- function_names:
  - exsltSaxonInit
  - exsltSaxonFreeCompExprEntry
  - exsltSaxonShutdown
  - exsltSaxonExpressionFunction
  - exsltSaxonEvalFunction
  - exsltSaxonEvaluateFunction
  - exsltSaxonSystemIdFunction
  - exsltSaxonLineNumberFunction
  - exsltSaxonRegister
  source_file: /src/libxslt/libexslt/saxon.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libexslt/libexslt.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LIBEXSLT_PUBLIC
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxslt/libexslt/libexslt.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxslt/libexslt/libexslt.h
      type_or_value: __attribute__((unused))
    structs: []
    typedefs: []
    union: []
- function_names:
  - usage
  - main
  source_file: /src/libxslt/doc/tutorial2/libxslt_pipes.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - usage
  - main
  source_file: /src/libxslt/doc/tutorial/libxslt_tutorial.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - myInvalidParameterHandler
  - libxml_PyFileGet
  - libxml_PyFileRelease
  - libxml_intWrap
  - libxml_longWrap
  - libxml_doubleWrap
  - libxml_charPtrWrap
  - libxml_charPtrConstWrap
  - libxml_xmlCharPtrWrap
  - libxml_xmlCharPtrConstWrap
  - libxml_constcharPtrWrap
  - libxml_constxmlCharPtrWrap
  - libxml_xmlDocPtrWrap
  - libxml_xmlNodePtrWrap
  - libxml_xmlURIPtrWrap
  - libxml_xmlNsPtrWrap
  - libxml_xmlAttrPtrWrap
  - libxml_xmlAttributePtrWrap
  - libxml_xmlElementPtrWrap
  - libxml_xmlXPathContextPtrWrap
  - libxml_xmlXPathParserContextPtrWrap
  - libxml_xmlParserCtxtPtrWrap
  - libxml_xmlXPathDestructNsNode
  - libxml_xmlXPathObjectPtrWrap
  - libxml_xmlXPathObjectPtrConvert
  - libxml_xmlOutputBufferPtrWrap
  - libxml_xmlParserInputBufferPtrWrap
  source_file: /src/libxslt/python/types.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/libxslt/python/types.c
      type_or_value: PyUnicode_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/libxslt/python/types.c
      type_or_value: PyUnicode_FromString
    - item_type: preproc_def
      name: PY_IMPORT_INT
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/libxslt/python/types.c
      type_or_value: PyLong_FromLong
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxslt/python/types.c
      type_or_value: PyString_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxslt/python/types.c
      type_or_value: PyString_FromString
    - item_type: preproc_def
      name: PY_IMPORT_INT
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxslt/python/types.c
      type_or_value: PyInt_FromLong
    structs:
    - fields:
      - name: DUMMYUNIONNAME
        type: "union {\n    NTSTATUS Status;\n    PVOID    Pointer;\n  }"
      - name: Information
        type: ULONG_PTR
      item_type: struct
      name: _IO_STATUS_BLOCK
      pos:
        line_end: 41
        line_start: 35
        source_file: /src/libxslt/python/types.c
    - fields:
      - name: AccessFlags
        type: ACCESS_MASK
      item_type: struct
      name: _FILE_ACCESS_INFORMATION
      pos:
        line_end: 45
        line_start: 43
        source_file: /src/libxslt/python/types.c
    typedefs:
    - item_type: typedef
      name: "(*t_NtQueryInformationFile) (HANDLE           FileHandle,\n                                              IO_STATUS_BLOCK
        *IoStatusBlock,\n                                              PVOID            FileInformation,\n
        \                                             ULONG            Length,\n                                              int
        \             FileInformationClass)"
      pos:
        line_end: 51
        line_start: 47
        source_file: /src/libxslt/python/types.c
      type: NTSTATUS
    union: []
- function_names:
  - Pystylesheet_Get
  - PytransformCtxt_Get
  - PycompiledStyle_Get
  source_file: /src/libxslt/python/libxslt_wrap.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxslt/python/libxslt_wrap.h
      type_or_value: __attribute__((unused))
    structs:
    - fields:
      - name: xsltStylesheetPtr
        type: PyObject_HEAD
      item_type: struct
      name: Pystylesheet_Object
      pos:
        line_end: 33
        line_start: 30
        source_file: /src/libxslt/python/libxslt_wrap.h
    - fields:
      - name: xsltTransformContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PytransformCtxt_Object
      pos:
        line_end: 41
        line_start: 38
        source_file: /src/libxslt/python/libxslt_wrap.h
    - fields:
      - name: xsltTransformContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PycompiledStyle_Object
      pos:
        line_end: 49
        line_start: 46
        source_file: /src/libxslt/python/libxslt_wrap.h
    typedefs: []
    union: []
- function_names:
  - c99_vsnprintf
  - libxslt_xsltStylesheetPtrWrap
  - libxslt_xsltTransformContextPtrWrap
  - libxslt_xsltElemPreCompPtrWrap
  - deallocateCallback
  - deallocateClasse
  - libxslt_xsltElementPreCompCallback
  - libxslt_xsltElementTransformCallback
  - libxslt_xmlXPathFuncCallback
  - pythonDocLoaderFuncWrapper
  - libxslt_xsltErrorFuncHandler
  - libxslt_xsltErrorInitialize
  - libxslt_xsltPythonExtModuleStyleInit
  - libxslt_xsltPythonExtModuleStyleShutdown
  - libxslt_xsltPythonExtModuleCtxtInit
  - libxslt_xsltPythonExtModuleCtxtShutdown
  - initlibxsltmod
  source_file: /src/libxslt/python/libxslt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: vsnprintf
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxslt/python/libxslt.c
      type_or_value: c99_vsnprintf
    - item_type: preproc_def
      name: vsnprintf
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxslt/python/libxslt.c
      type_or_value: trio_vsnprintf
    - item_type: preproc_def
      name: INITERROR
      pos:
        line_end: 1237
        line_start: 1236
        source_file: /src/libxslt/python/libxslt.c
      type_or_value: return NULL
    - item_type: preproc_def
      name: INITERROR
      pos:
        line_end: 1251
        line_start: 1250
        source_file: /src/libxslt/python/libxslt.c
      type_or_value: return
    structs: []
    typedefs: []
    union: []
- function_names:
  - PyCapsule_GetPointer
  - PyxmlNode_Get
  - PyxmlXPathContext_Get
  - PyxmlXPathParserContext_Get
  - PyparserCtxt_Get
  - PyFile_Get
  - PyFile_Release
  - PyFile_Get
  source_file: /src/libxslt/python/libxml_wrap.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PyBytes_Check
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyString_Check
    - item_type: preproc_def
      name: PyBytes_Size
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyString_Size
    - item_type: preproc_def
      name: PyBytes_AsString
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyString_AsString
    - item_type: preproc_def
      name: PyBytes_AS_STRING
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyString_AS_STRING
    - item_type: preproc_def
      name: PyBytes_GET_SIZE
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyString_GET_SIZE
    - item_type: preproc_def
      name: PyCapsule_New
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyCObject_FromVoidPtrAndDesc
    - item_type: preproc_def
      name: PyCapsule_CheckExact
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxslt/python/libxml_wrap.h
      type_or_value: PyCObject_Check
    structs:
    - fields:
      - name: xmlNodePtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlNode_Object
      pos:
        line_end: 40
        line_start: 37
        source_file: /src/libxslt/python/libxml_wrap.h
    - fields:
      - name: xmlXPathContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlXPathContext_Object
      pos:
        line_end: 48
        line_start: 45
        source_file: /src/libxslt/python/libxml_wrap.h
    - fields:
      - name: xmlXPathParserContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlXPathParserContext_Object
      pos:
        line_end: 56
        line_start: 53
        source_file: /src/libxslt/python/libxml_wrap.h
    - fields:
      - name: xmlParserCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyparserCtxt_Object
      pos:
        line_end: 64
        line_start: 61
        source_file: /src/libxslt/python/libxml_wrap.h
    typedefs: []
    union: []
- function_names:
  - xsltGetCNsProp
  - xsltGetNsProp
  - xsltGetUTF8Char
  - xsltGetUTF8CharZ
  - xsltPointerListAddSize
  - xsltPointerListCreate
  - xsltPointerListFree
  - xsltPointerListClear
  - xsltMessage
  - XSLT_GET_VAR_STR
  - xsltGenericErrorDefaultFunc
  - xsltSetGenericErrorFunc
  - xsltGenericDebugDefaultFunc
  - xsltSetGenericDebugFunc
  - xsltPrintErrorContext
  - xsltSetTransformErrorFunc
  - xsltTransformError
  - xsltSplitQName
  - xsltGetQNameURI
  - xsltGetQNameURI2
  - xsltDocumentSortFunction
  - xsltComputeSortResultInternal
  - xsltComputeSortResult
  - xsltDefaultSortFunction
  - xsltDoSortFunction
  - xsltSetSortFunc
  - xsltSetCtxtSortFunc
  - xsltSetCtxtLocaleHandlers
  - xsltSetCtxtParseOptions
  - xsltSaveResultTo
  - xsltSaveResultToFilename
  - xsltSaveResultToFile
  - xsltSaveResultToFd
  - xsltSaveResultToString
  - xsltGetSourceNodeFlags
  - xsltSetSourceNodeFlags
  - xsltClearSourceNodeFlags
  - xsltGetPSVIPtr
  - xsltCalibrateTimestamps
  - xsltCalibrateAdjust
  - xsltTimestamp
  - pretty_templ_match
  - xsltSaveProfiling
  - xsltGetProfileInformation
  - xsltXPathCompileFlags
  - xsltXPathCompile
  - xsltGetDebuggerStatus
  - xsltSetDebuggerStatus
  - xsltSetDebuggerCallbacks
  - xslHandleDebugger
  - xslAddCall
  - xslDropCall
  source_file: /src/libxslt/libxslt/xsltutils.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_CLOCK
      pos:
        line_end: 2131
        line_start: 2130
        source_file: /src/libxslt/libxslt/xsltutils.c
      type_or_value: CLOCK_MONOTONIC
    - item_type: preproc_def
      name: XSLT_CLOCK
      pos:
        line_end: 2133
        line_start: 2132
        source_file: /src/libxslt/libxslt/xsltutils.c
      type_or_value: CLOCK_HIGHRES
    - item_type: preproc_def
      name: XSLT_CLOCK
      pos:
        line_end: 2135
        line_start: 2134
        source_file: /src/libxslt/libxslt/xsltutils.c
      type_or_value: CLOCK_REALTIME
    - item_type: preproc_def
      name: MAX_TEMPLATES
      pos:
        line_end: 2211
        line_start: 2210
        source_file: /src/libxslt/libxslt/xsltutils.c
      type_or_value: '10000'
    - item_type: preproc_def
      name: XSLT_CALLBACK_NUMBER
      pos:
        line_end: 2622
        line_start: 2621
        source_file: /src/libxslt/libxslt/xsltutils.c
      type_or_value: '3'
    structs:
    - fields:
      - name: handler
        type: xsltHandleDebuggerCallback
      - name: add
        type: xsltAddCallCallback
      - name: drop
        type: xsltDropCallCallback
      item_type: struct
      name: _xsltDebuggerCallbacks
      pos:
        line_end: 2629
        line_start: 2625
        source_file: /src/libxslt/libxslt/xsltutils.c
    typedefs:
    - item_type: typedef
      name: xsltDebuggerCallbacks
      pos:
        line_end: 2623
        line_start: 2623
        source_file: /src/libxslt/libxslt/xsltutils.c
      type: _xsltDebuggerCallbacks
    - item_type: typedef
      name: '*xsltDebuggerCallbacksPtr'
      pos:
        line_end: 2624
        line_start: 2624
        source_file: /src/libxslt/libxslt/xsltutils.c
      type: xsltDebuggerCallbacks
    union: []
- function_names:
  - c99_vsnprintf
  - c99_snprintf
  source_file: /src/libxslt/libxslt/win32config.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MODULE_EXTENSION
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/libxslt/libxslt/win32config.h
      type_or_value: '".dll"'
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxslt/libxslt/win32config.h
      type_or_value: c99_snprintf
    - item_type: preproc_def
      name: vsnprintf
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxslt/libxslt/win32config.h
      type_or_value: c99_vsnprintf
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/templates.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/attributes.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltXPathFunctionLookup
  - xsltDocumentFunctionLoadDocument
  - xsltDocumentFunction
  - xsltKeyFunction
  - xsltUnparsedEntityURIFunction
  - xsltFormatNumberFunction
  - xsltGenerateIdFunction
  - xsltSystemPropertyFunction
  - xsltElementAvailableFunction
  - xsltFunctionAvailableFunction
  - xsltCurrentFunction
  - xsltRegisterAllFunctions
  source_file: /src/libxslt/libxslt/functions.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_BLANK
  - IS_BLANK_NODE
  - xsltParseContentError
  - exclPrefixPush
  - exclPrefixPop
  - xsltInit
  - xsltUninit
  - xsltIsBlank
  - xsltNewDecimalFormat
  - xsltFreeDecimalFormat
  - xsltFreeDecimalFormatList
  - xsltDecimalFormatGetByName
  - xsltDecimalFormatGetByQName
  - xsltNewTemplate
  - xsltFreeTemplate
  - xsltFreeTemplateList
  - xsltFreeNsAliasList
  - xsltFreeNamespaceMap
  - xsltNewNamespaceMapItem
  - xsltCompilerVarInfoFree
  - xsltCompilationCtxtFree
  - xsltCompilationCtxtCreate
  - xsltLREEffectiveNsNodesFree
  - xsltFreePrincipalStylesheetData
  - xsltNewPrincipalStylesheetData
  - xsltNewStylesheetInternal
  - xsltNewStylesheet
  - xsltAllocateExtra
  - xsltAllocateExtraCtxt
  - xsltFreeStylesheetList
  - xsltCleanupStylesheetTree
  - xsltFreeStylesheet
  - xsltGetInheritedNsList
  - xsltParseStylesheetOutput
  - xsltParseStylesheetDecimalFormat
  - xsltParseStylesheetPreserveSpace
  - xsltParseStylesheetExtPrefix
  - xsltParseStylesheetStripSpace
  - xsltParseStylesheetExcludePrefix
  - xsltTreeEnsureXMLDecl
  - xsltTreeAcquireStoredNs
  - xsltLREBuildEffectiveNs
  - xsltLREBuildEffectiveNsNodes
  - xsltLREInfoCreate
  - xsltCompilerVarInfoPush
  - xsltCompilerVarInfoPop
  - xsltCompilerNodePush
  - xsltCompilerNodePop
  - xsltCompilerBuildInScopeNsList
  - xsltParseNsPrefixList
  - xsltCompilerUtilsCreateMergedList
  - xsltParseExclResultPrefixes
  - xsltParseExtElemPrefixes
  - xsltParseAttrXSLTVersion
  - xsltParsePreprocessStylesheetTree
  - xsltPreprocessStylesheet
  - xsltGatherNamespaces
  - xsltGetXSLTElementTypeByNode
  - xsltParseAnyXSLTElem
  - xsltForwardsCompatUnkownItemCreate
  - xsltParseUnknownXSLTElem
  - xsltParseSequenceConstructor
  - xsltParseTemplateContent
  - xsltParseTemplateContent
  - xsltParseStylesheetKey
  - xsltParseXSLTTemplate
  - xsltParseStylesheetTemplate
  - xsltCompileXSLTIncludeElem
  - xsltParseFindTopLevelElem
  - xsltParseTopLevelXSLTElem
  - xsltParseRemoveWhitespace
  - xsltParseXSLTStylesheetElemCore
  - xsltParseXSLTStylesheetElem
  - xsltParseStylesheetTop
  - xsltParseSimplifiedStylesheetTree
  - xsltRestoreDocumentNamespaces
  - xsltParseStylesheetProcess
  - xsltParseStylesheetProcess
  - xsltParseStylesheetImportedDoc
  - xsltParseStylesheetUser
  - xsltParseStylesheetDoc
  - xsltParseStylesheetFile
  - SKIP
  - NXT
  - xsltParseStylesheetPI
  - xsltLoadStylesheetPI
  source_file: /src/libxslt/libxslt/xslt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_ELEMENT_CATEGORY_XSLT
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XSLT_ELEMENT_CATEGORY_EXTENSION
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XSLT_ELEMENT_CATEGORY_LRE
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: '2'
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 6816
        line_start: 6815
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: (*cur)
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 6820
        line_start: 6818
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: while (IS_BLANK(CUR)) NEXT
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 6821
        line_start: 6820
        source_file: /src/libxslt/libxslt/xslt.c
      type_or_value: '((*cur) ?  cur++ : cur)'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltCheckTopLevelElement
  - xsltCheckInstructionElement
  - xsltCheckParentElement
  - xsltNewStylePreComp
  - xsltFreeStylePreComp
  - xsltDocumentComp
  - xsltSortComp
  - xsltCopyComp
  - xsltTextComp
  - xsltElementComp
  - xsltAttributeComp
  - xsltCommentComp
  - xsltProcessingInstructionComp
  - xsltCopyOfComp
  - xsltValueOfComp
  - xsltGetQNameProperty
  - xsltWithParamComp
  - xsltNumberComp
  - xsltApplyImportsComp
  - xsltCallTemplateComp
  - xsltApplyTemplatesComp
  - xsltChooseComp
  - xsltIfComp
  - xsltWhenComp
  - xsltForEachComp
  - xsltVariableComp
  - xsltParamComp
  - xsltFreeStylePreComps
  - xsltStylePreCompute
  - xsltStylePreCompute
  source_file: /src/libxslt/libxslt/preproc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/preproc.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TRIO_SUFFIX_LONG
  - TRIO_PROTO
  - TRIO_ARGS1
  - TRIO_ARGS2
  - TRIO_ARGS3
  - TRIO_ARGS4
  - TRIO_ARGS5
  - TRIO_ARGS6
  - TRIO_VARGS2
  - TRIO_VARGS3
  - TRIO_VARGS4
  - TRIO_VARGS5
  - TRIO_VA_START
  - TRIO_VA_END
  - TRIO_SUFFIX_LONG
  - TRIO_PROTO
  - TRIO_ARGS1
  - TRIO_ARGS2
  - TRIO_ARGS3
  - TRIO_ARGS4
  - TRIO_ARGS5
  - TRIO_ARGS6
  - TRIO_VA_START
  - TRIO_VA_END
  source_file: /src/libxslt/libxslt/triodef.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: __SUNPRO_C
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: __SUNPRO_CC
    - item_type: preproc_def
      name: TRIO_PRIVATE
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: static
    - item_type: preproc_def
      name: TRIO_VA_DECL
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: va_dcl
    - item_type: preproc_def
      name: TRIO_CONST
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: const
    - item_type: preproc_def
      name: TRIO_VOLATILE
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: volatile
    - item_type: preproc_def
      name: TRIO_SIGNED
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: signed
    - item_type: preproc_def
      name: TRIO_NOARGS
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: void
    - item_type: preproc_def
      name: TRIO_VARGS2
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: TRIO_ARGS2
    - item_type: preproc_def
      name: TRIO_VARGS3
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: TRIO_ARGS3
    - item_type: preproc_def
      name: TRIO_VARGS4
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: TRIO_ARGS4
    - item_type: preproc_def
      name: TRIO_VARGS5
      pos:
        line_end: 168
        line_start: 167
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: TRIO_ARGS5
    - item_type: preproc_def
      name: TRIO_VA_DECL
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: '...'
    - item_type: preproc_def
      name: TRIO_INLINE
      pos:
        line_end: 175
        line_start: 174
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: inline
    - item_type: preproc_def
      name: TRIO_INLINE
      pos:
        line_end: 177
        line_start: 176
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: __inline__
    - item_type: preproc_def
      name: TRIO_INLINE
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: _inline
    - item_type: preproc_def
      name: TRIO_INLINE
      pos:
        line_end: 181
        line_start: 180
        source_file: /src/libxslt/libxslt/triodef.h
      type_or_value: __inline
    structs: []
    typedefs:
    - item_type: typedef
      name: trio_long_double_t
      pos:
        line_end: 131
        line_start: 131
        source_file: /src/libxslt/libxslt/triodef.h
      type: double
    - item_type: typedef
      name: '* trio_pointer_t'
      pos:
        line_end: 132
        line_start: 132
        source_file: /src/libxslt/libxslt/triodef.h
      type: char
    - item_type: typedef
      name: trio_long_double_t
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/libxslt/libxslt/triodef.h
      type: long double
    - item_type: typedef
      name: '* trio_pointer_t'
      pos:
        line_end: 154
        line_start: 154
        source_file: /src/libxslt/libxslt/triodef.h
      type: void
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/namespaces.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UNDEFINED_DEFAULT_NS
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxslt/libxslt/namespaces.h
      type_or_value: (const xmlChar *) -1L
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_BLANK_NODE
  - templPush
  - templPop
  - xsltLocalVariablePop
  - xsltTemplateParamsCleanup
  - profPush
  - profPop
  - profCallgraphAdd
  - xsltPreCompEval
  - xsltPreCompEvalToBoolean
  - xsltSetXIncludeDefault
  - xsltGetXIncludeDefault
  - xsltDebugSetDefaultTrace
  - xsltDebugGetDefaultTrace
  - xsltTransformCacheCreate
  - xsltTransformCacheFree
  - xsltNewTransformContext
  - xsltFreeTransformContext
  - xsltAddChild
  - xsltAddTextString
  - xsltCopyTextString
  - xsltCopyText
  - xsltShallowCopyAttr
  - xsltCopyAttrListNoOverwrite
  - xsltShallowCopyElem
  - xsltCopyTreeList
  - xsltCopyNamespaceListInternal
  - xsltShallowCopyNsNode
  - xsltCopyTree
  - xsltApplyFallbacks
  - xsltDefaultProcessOneNode
  - xsltProcessOneNode
  - xsltDebuggerStartSequenceConstructor
  - xsltLocalVariablePush
  - xsltReleaseLocalRVTs
  - xsltApplySequenceConstructor
  - xsltApplyXSLTTemplate
  - xsltApplyOneTemplate
  - xsltDocumentElem
  - xsltSort
  - xsltCopy
  - xsltText
  - xsltElement
  - xsltComment
  - xsltProcessingInstruction
  - xsltCopyOf
  - xsltValueOf
  - xsltNumber
  - xsltApplyImports
  - xsltCallTemplate
  - xsltApplyTemplates
  - xsltChoose
  - xsltIf
  - xsltForEach
  - xsltGetHTMLIDs
  - xsltApplyStripSpaces
  - xsltCountKeys
  - xsltCleanupSourceDoc
  - xsltApplyStylesheetInternal
  - xsltApplyStylesheet
  - xsltProfileStylesheet
  - xsltApplyStylesheetUser
  - xsltRunStylesheetUser
  - xsltRunStylesheet
  - xsltMessageWrapper
  - xsltRegisterAllElement
  source_file: /src/libxslt/libxslt/transform.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: 'FALSE'
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/libxslt/libxslt/transform.c
      type_or_value: (0 == 1)
    - item_type: preproc_def
      name: 'TRUE'
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libxslt/libxslt/transform.c
      type_or_value: (!FALSE)
    structs:
    - fields:
      - name: '*version'
        type: char
      - name: '*public'
        type: char
      - name: '*system'
        type: char
      item_type: struct
      name: xsltHTMLVersion
      pos:
        line_end: 5587
        line_start: 5583
        source_file: /src/libxslt/libxslt/transform.c
    typedefs: []
    union: []
- function_names:
  - xsltEvalXPathPredicate
  - xsltEvalXPathStringNs
  - xsltEvalXPathString
  - xsltEvalTemplateString
  - xsltAttrTemplateValueProcessNode
  - xsltAttrTemplateValueProcess
  - xsltEvalAttrValueTemplate
  - xsltEvalStaticAttrValueTemplate
  - xsltAttrTemplateProcess
  - xsltAttrListTemplateProcess
  - xsltTemplateProcess
  source_file: /src/libxslt/libxslt/templates.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltNewCompMatch
  - xsltFreeCompMatch
  - xsltFreeCompMatchList
  - xsltFreeCompMatchListEntry
  - xsltNormalizeCompSteps
  - xsltNewParserContext
  - xsltFreeParserContext
  - xsltCompMatchAdd
  - xsltSwapTopCompMatch
  - xsltReverseCompMatch
  - xsltPatPushState
  - xmlXPathFreeObjectWrapper
  - xsltTestCompMatchDirect
  - xsltTestStepMatch
  - xsltTestPredicateMatch
  - xsltTestCompMatch
  - xsltTestCompMatchList
  - xsltCompMatchClearCache
  - SKIP
  - NXT
  - PUSH
  - SWAP
  - XSLT_ERROR
  - XSLT_ERROR0
  - xsltScanLiteral
  - xsltScanNCName
  - xsltCompileIdKeyPattern
  - xsltCompileStepPattern
  - xsltCompileRelativePathPattern
  - xsltCompileLocationPathPattern
  - xsltCompilePatternInternal
  - xsltCompilePattern
  - xsltAddTemplate
  - xsltComputeAllKeys
  - xsltGetTemplate
  - xsltCleanupTemplates
  - xsltFreeTemplateHashes
  source_file: /src/libxslt/libxslt/pattern.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 1181
        line_start: 1180
        source_file: /src/libxslt/libxslt/pattern.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: CUR_PTR
      pos:
        line_end: 1184
        line_start: 1183
        source_file: /src/libxslt/libxslt/pattern.c
      type_or_value: ctxt->cur
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 1187
        line_start: 1185
        source_file: /src/libxslt/libxslt/pattern.c
      type_or_value: while (xmlIsBlank_ch(CUR)) NEXT
    - item_type: preproc_def
      name: CURRENT
      pos:
        line_end: 1189
        line_start: 1188
        source_file: /src/libxslt/libxslt/pattern.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 1190
        line_start: 1189
        source_file: /src/libxslt/libxslt/pattern.c
      type_or_value: '((*ctxt->cur) ?  ctxt->cur++: ctxt->cur)'
    structs:
    - fields:
      - name: step
        type: int
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xsltStepState
      pos:
        line_end: 73
        line_start: 70
        source_file: /src/libxslt/libxslt/pattern.c
    - fields:
      - name: nbstates
        type: int
      - name: maxstates
        type: int
      - name: states
        type: xsltStepStatePtr
      item_type: struct
      name: _xsltStepStates
      pos:
        line_end: 81
        line_start: 77
        source_file: /src/libxslt/libxslt/pattern.c
    - fields:
      - name: op
        type: xsltOp
      - name: '*value'
        type: xmlChar
      - name: '*value2'
        type: xmlChar
      - name: '*value3'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      - name: previousExtra
        type: int
      - name: indexExtra
        type: int
      - name: lenExtra
        type: int
      item_type: struct
      name: _xsltStepOp
      pos:
        line_end: 97
        line_start: 85
        source_file: /src/libxslt/libxslt/pattern.c
    - fields:
      - name: '*next'
        type: struct _xsltCompMatch
      - name: priority
        type: float
      - name: '*pattern'
        type: xmlChar
      - name: '*mode'
        type: xmlChar
      - name: '*modeURI'
        type: xmlChar
      - name: template
        type: xsltTemplatePtr
      - name: node
        type: xmlNodePtr
      - name: direct
        type: int
      - name: nbStep
        type: int
      - name: maxStep
        type: int
      - name: '*nsList'
        type: xmlNsPtr
      - name: nsNr
        type: int
      - name: steps
        type: xsltStepOpPtr
      item_type: struct
      name: _xsltCompMatch
      pos:
        line_end: 115
        line_start: 99
        source_file: /src/libxslt/libxslt/pattern.c
    - fields:
      - name: style
        type: xsltStylesheetPtr
      - name: ctxt
        type: xsltTransformContextPtr
      - name: '*cur'
        type: xmlChar
      - name: '*base'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: elem
        type: xmlNodePtr
      - name: error
        type: int
      - name: comp
        type: xsltCompMatchPtr
      item_type: struct
      name: _xsltParserContext
      pos:
        line_end: 128
        line_start: 119
        source_file: /src/libxslt/libxslt/pattern.c
    typedefs:
    - item_type: typedef
      name: xsltStepState
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/libxslt/libxslt/pattern.c
      type: _xsltStepState
    - item_type: typedef
      name: '*xsltStepStatePtr'
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxslt/libxslt/pattern.c
      type: xsltStepState
    - item_type: typedef
      name: xsltStepStates
      pos:
        line_end: 75
        line_start: 75
        source_file: /src/libxslt/libxslt/pattern.c
      type: _xsltStepStates
    - item_type: typedef
      name: '*xsltStepStatesPtr'
      pos:
        line_end: 76
        line_start: 76
        source_file: /src/libxslt/libxslt/pattern.c
      type: xsltStepStates
    - item_type: typedef
      name: xsltStepOp
      pos:
        line_end: 83
        line_start: 83
        source_file: /src/libxslt/libxslt/pattern.c
      type: _xsltStepOp
    - item_type: typedef
      name: '*xsltStepOpPtr'
      pos:
        line_end: 84
        line_start: 84
        source_file: /src/libxslt/libxslt/pattern.c
      type: xsltStepOp
    - item_type: typedef
      name: xsltParserContext
      pos:
        line_end: 117
        line_start: 117
        source_file: /src/libxslt/libxslt/pattern.c
      type: _xsltParserContext
    - item_type: typedef
      name: '*xsltParserContextPtr'
      pos:
        line_end: 118
        line_start: 118
        source_file: /src/libxslt/libxslt/pattern.c
      type: xsltParserContext
    union: []
- function_names:
  - xsltFixImportedCompSteps
  - xsltCheckCycle
  - xsltParseStylesheetImport
  - xsltParseStylesheetInclude
  - xsltNextImport
  - xsltNeedElemSpaceHandling
  - xsltFindElemSpaceHandling
  - xsltFindTemplate
  source_file: /src/libxslt/libxslt/imports.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_MAX_NESTING
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libxslt/libxslt/imports.c
      type_or_value: '40'
    structs: []
    typedefs: []
    union: []
- function_names:
  - stat
  - xsltNewSecurityPrefs
  - xsltFreeSecurityPrefs
  - xsltSetSecurityPrefs
  - xsltGetSecurityPrefs
  - xsltSetDefaultSecurityPrefs
  - xsltGetDefaultSecurityPrefs
  - xsltSetCtxtSecurityPrefs
  - xsltSecurityAllow
  - xsltSecurityForbid
  - xsltCheckFilename
  - xsltCheckWritePath
  - xsltCheckWrite
  - xsltCheckRead
  source_file: /src/libxslt/libxslt/security.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: INVALID_FILE_ATTRIBUTES
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxslt/libxslt/security.c
      type_or_value: ((DWORD)-1)
    structs:
    - fields:
      - name: readFile
        type: xsltSecurityCheck
      - name: createFile
        type: xsltSecurityCheck
      - name: createDir
        type: xsltSecurityCheck
      - name: readNet
        type: xsltSecurityCheck
      - name: writeNet
        type: xsltSecurityCheck
      item_type: struct
      name: _xsltSecurityPrefs
      pos:
        line_end: 54
        line_start: 48
        source_file: /src/libxslt/libxslt/security.c
    typedefs: []
    union: []
- function_names:
  - xsltNewAttrVT
  - xsltFreeAttrVT
  - xsltFreeAVTList
  - xsltSetAttrVTsegment
  - xsltCompileAttr
  - xsltEvalAVT
  source_file: /src/libxslt/libxslt/attrvt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_AVT_SEG
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxslt/libxslt/attrvt.c
      type_or_value: '10'
    structs:
    - fields:
      - name: '*next'
        type: struct _xsltAttrVT
      - name: nb_seg
        type: int
      - name: max_seg
        type: int
      - name: strstart
        type: int
      - name: '*nsList'
        type: xmlNsPtr
      - name: nsNr
        type: int
      item_type: struct
      name: _xsltAttrVT
      pos:
        line_end: 56
        line_start: 37
        source_file: /src/libxslt/libxslt/attrvt.c
    typedefs:
    - item_type: typedef
      name: xsltAttrVT
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/libxslt/libxslt/attrvt.c
      type: _xsltAttrVT
    - item_type: typedef
      name: '*xsltAttrVTPtr'
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/libxslt/libxslt/attrvt.c
      type: xsltAttrVT
    union: []
- function_names:
  - xsltDebug
  - xsltFunctionNodeSet
  - xsltRegisterExtras
  - xsltRegisterAllExtras
  source_file: /src/libxslt/libxslt/extra.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltNewNsAlias
  - xsltNamespaceAlias
  - xsltGetSpecialNamespace
  - xsltGetNamespace
  - xsltGetPlainNamespace
  - xsltCopyNamespaceList
  - xsltCopyNamespace
  - xsltFreeNamespaceAliasHashes
  source_file: /src/libxslt/libxslt/namespaces.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltDocDefaultLoaderFunc
  - xsltSetLoaderFunc
  - xsltNewDocument
  - xsltNewStyleDocument
  - xsltFreeStyleDocuments
  - xsltFreeDocuments
  - xsltLoadDocument
  - xsltLoadStyleDocument
  - xsltFindDocument
  source_file: /src/libxslt/libxslt/documents.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/pattern.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xsltCompMatch
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxslt/libxslt/pattern.h
      type: _xsltCompMatch
    - item_type: typedef
      name: '*xsltCompMatchPtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxslt/libxslt/pattern.h
      type: xsltCompMatch
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/xsltexports.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLTPUBLIC
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: XSLTPUBLIC
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: XSLTCALL
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: __cdecl
    - item_type: preproc_def
      name: XSLTPUBFUN
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: XSLTPUBLIC
    - item_type: preproc_def
      name: XSLTPUBVAR
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: XSLTPUBLIC extern
    - item_type: preproc_def
      name: LIBXSLT_PUBLIC
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libxslt/libxslt/xsltexports.h
      type_or_value: XSLTPUBVAR
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/extensions.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: "* (*xsltStyleExtInitFunction)\t(xsltStylesheetPtr style,\n\t\t\t\t\t\t
        const xmlChar *URI)"
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/libxslt/libxslt/extensions.h
      type: void
    - item_type: typedef
      name: "(*xsltStyleExtShutdownFunction)\t(xsltStylesheetPtr style,\n\t\t\t\t\t\t
        const xmlChar *URI,\n\t\t\t\t\t\t void *data)"
      pos:
        line_end: 57
        line_start: 55
        source_file: /src/libxslt/libxslt/extensions.h
      type: void
    - item_type: typedef
      name: "* (*xsltExtInitFunction)\t(xsltTransformContextPtr ctxt,\n\t\t\t\t\t
        const xmlChar *URI)"
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libxslt/libxslt/extensions.h
      type: void
    - item_type: typedef
      name: "(*xsltExtShutdownFunction) (xsltTransformContextPtr ctxt,\n\t\t\t\t\t
        const xmlChar *URI,\n\t\t\t\t\t void *data)"
      pos:
        line_end: 81
        line_start: 79
        source_file: /src/libxslt/libxslt/extensions.h
      type: void
    - item_type: typedef
      name: "(*xsltPreComputeFunction)\n\t\t\t\t\t(xsltStylesheetPtr style,\n\t\t\t\t\t
        xmlNodePtr inst,\n\t\t\t\t\t xsltTransformFunction function)"
      pos:
        line_end: 143
        line_start: 140
        source_file: /src/libxslt/libxslt/extensions.h
      type: xsltElemPreCompPtr
    - item_type: typedef
      name: "(*xsltTopLevelFunction)\t(xsltStylesheetPtr style,\n\t\t\t\t\t xmlNodePtr
        inst)"
      pos:
        line_end: 183
        line_start: 182
        source_file: /src/libxslt/libxslt/extensions.h
      type: void
    union: []
- function_names:
  - IS_XSLT_ELEM
  - IS_XSLT_NAME
  - IS_XSLT_REAL_NODE
  - XSLT_TRACE
  source_file: /src/libxslt/libxslt/xsltutils.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_TODO
      pos:
        line_end: 34
        line_start: 30
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: "xsltGenericError(xsltGenericErrorContext,\t\t\t\t\\\n\t    \"Unimplemented
        block at %s:%d\\n\",\t\t\t\t\\\n            __FILE__, __LINE__);"
    - item_type: preproc_def
      name: XSLT_STRANGE
      pos:
        line_end: 44
        line_start: 40
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: "xsltGenericError(xsltGenericErrorContext,\t\t\t\t\\\n\t    \"Internal
        error at %s:%d\\n\",\t\t\t\t\\\n            __FILE__, __LINE__);"
    - item_type: preproc_def
      name: XSLT_SOURCE_NODE_MASK
      pos:
        line_end: 261
        line_start: 260
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: 15u
    - item_type: preproc_def
      name: XSLT_SOURCE_NODE_HAS_KEY
      pos:
        line_end: 262
        line_start: 261
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: 1u
    - item_type: preproc_def
      name: XSLT_SOURCE_NODE_HAS_ID
      pos:
        line_end: 263
        line_start: 262
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: 2u
    - item_type: preproc_def
      name: XSLT_TIMESTAMP_TICS_PER_SEC
      pos:
        line_end: 297
        line_start: 296
        source_file: /src/libxslt/libxslt/xsltutils.h
      type_or_value: 100000l
    structs: []
    typedefs:
    - item_type: typedef
      name: "(*xsltHandleDebuggerCallback) (xmlNodePtr cur, xmlNodePtr node,\n\t\t\txsltTemplatePtr
        templ, xsltTransformContextPtr ctxt)"
      pos:
        line_end: 318
        line_start: 317
        source_file: /src/libxslt/libxslt/xsltutils.h
      type: void
    - item_type: typedef
      name: (*xsltAddCallCallback) (xsltTemplatePtr templ, xmlNodePtr source)
      pos:
        line_end: 319
        line_start: 319
        source_file: /src/libxslt/libxslt/xsltutils.h
      type: int
    - item_type: typedef
      name: (*xsltDropCallCallback) (void)
      pos:
        line_end: 320
        line_start: 320
        source_file: /src/libxslt/libxslt/xsltutils.h
      type: void
    union: []
- function_names:
  - xsltCopyCharMultiByte
  - xsltUTF8Charcmp
  - xsltIsLetterDigit
  - IS_SPECIAL
  - IS_DIGIT_ZERO
  - IS_DIGIT_ONE
  - xsltIsDigitZero
  - xsltNumberFormatDecimal
  - xsltNumberFormatAlpha
  - xsltNumberFormatRoman
  - xsltNumberFormatTokenize
  - xsltNumberFormatInsertNumbers
  - xsltTestCompMatchCount
  - xsltNumberFormatGetAnyLevel
  - xsltNumberFormatGetMultipleLevel
  - xsltNumberFormatGetValue
  - xsltNumberFormat
  - xsltFormatNumberPreSuffix
  - xsltFormatNumberConversion
  source_file: /src/libxslt/libxslt/numbers.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: 'FALSE'
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: (0 == 1)
    - item_type: preproc_def
      name: 'TRUE'
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: (1 == 1)
    - item_type: preproc_def
      name: SYMBOL_QUOTE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: ((xmlChar)'\'')
    - item_type: preproc_def
      name: DEFAULT_TOKEN
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: '''0'''
    - item_type: preproc_def
      name: DEFAULT_SEPARATOR
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: '"."'
    - item_type: preproc_def
      name: MAX_TOKENS
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxslt/libxslt/numbers.c
      type_or_value: '1024'
    structs:
    - fields:
      - name: '*separator'
        type: xmlChar
      - name: token
        type: int
      - name: width
        type: int
      item_type: struct
      name: _xsltFormatToken
      pos:
        line_end: 49
        line_start: 45
        source_file: /src/libxslt/libxslt/numbers.c
    - fields:
      - name: '*start'
        type: xmlChar
      - name: tokens[MAX_TOKENS]
        type: xsltFormatToken
      - name: nTokens
        type: int
      - name: '*end'
        type: xmlChar
      item_type: struct
      name: _xsltFormat
      pos:
        line_end: 58
        line_start: 53
        source_file: /src/libxslt/libxslt/numbers.c
    typedefs:
    - item_type: typedef
      name: xsltFormatToken
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxslt/libxslt/numbers.c
      type: _xsltFormatToken
    - item_type: typedef
      name: '*xsltFormatTokenPtr'
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/libxslt/libxslt/numbers.c
      type: xsltFormatToken
    - item_type: typedef
      name: xsltFormat
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/libxslt/libxslt/numbers.c
      type: _xsltFormat
    - item_type: typedef
      name: '*xsltFormatPtr'
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/libxslt/libxslt/numbers.c
      type: xsltFormat
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/keys.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NODE_IS_KEYED
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxslt/libxslt/keys.h
      type_or_value: (1 >> 15)
    structs: []
    typedefs: []
    union: []
- function_names:
  - XSLT_TCTXT_VARIABLE
  - xsltCreateRVT
  - xsltRegisterTmpRVT
  - xsltRegisterLocalRVT
  - xsltExtensionInstructionResultFinalize
  - xsltExtensionInstructionResultRegister
  - xsltFlagRVTs
  - xsltReleaseRVT
  - xsltRegisterPersistRVT
  - xsltFreeRVTs
  - xsltNewStackElem
  - xsltCopyStackElem
  - xsltFreeStackElem
  - xsltFreeStackElemEntry
  - xsltFreeStackElemList
  - xsltStackLookup
  - xsltCheckStackElem
  - xsltAddStackElem
  - xsltAddStackElemList
  - xsltEvalGlobalVariable
  - xsltEvalGlobalVariables
  - xsltRegisterGlobalVariable
  - xsltProcessUserParamInternal
  - xsltEvalUserParams
  - xsltQuoteUserParams
  - xsltEvalOneUserParam
  - xsltQuoteOneUserParam
  - xsltBuildVariable
  - xsltRegisterVariable
  - xsltGlobalVariableLookup
  - xsltVariableLookup
  - xsltParseStylesheetCallerParam
  - xsltParseGlobalVariable
  - xsltParseGlobalParam
  - xsltParseStylesheetVariable
  - xsltParseStylesheetParam
  - xsltFreeGlobalVariables
  - xsltXPathVariableLookup
  source_file: /src/libxslt/libxslt/variables.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_VAR_GLOBAL
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxslt/libxslt/variables.c
      type_or_value: (1<<0)
    - item_type: preproc_def
      name: XSLT_VAR_IN_SELECT
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxslt/libxslt/variables.c
      type_or_value: (1<<1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - TOUPPER
  - TOLOWER
  - ISALPHA
  - xslt_locale_WINAPI
  - xsltFreeLocales
  - xsltNewLocale
  - xsltDefaultRegion
  - xsltFreeLocale
  - xsltStrxfrm
  - xsltLocaleStrcmp
  - xsltCountSupportedLocales
  - xsltIterateSupportedLocales
  - xsltEnumSupportedLocales
  source_file: /src/libxslt/libxslt/xsltlocale.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLTMAX_ISO639LANGLEN
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxslt/libxslt/xsltlocale.c
      type_or_value: '8'
    - item_type: preproc_def
      name: XSLTMAX_ISO3166CNTRYLEN
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxslt/libxslt/xsltlocale.c
      type_or_value: '8'
    - item_type: preproc_def
      name: XSLTMAX_LANGTAGLEN
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxslt/libxslt/xsltlocale.c
      type_or_value: (XSLTMAX_ISO639LANGLEN+1+XSLTMAX_ISO3166CNTRYLEN)
    structs:
    - fields:
      - name: tag[XSLTMAX_LANGTAGLEN+1]
        type: xmlChar
      - name: lcid
        type: LCID
      item_type: struct
      name: xsltRFC1766Info_s
      pos:
        line_end: 65
        line_start: 61
        source_file: /src/libxslt/libxslt/xsltlocale.c
    typedefs:
    - item_type: typedef
      name: xsltRFC1766Info
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/libxslt/libxslt/xsltlocale.c
      type: xsltRFC1766Info_s
    union: []
- function_names:
  - IS_BLANK
  - IS_BLANK_NODE
  - xsltNewAttrElem
  - xsltFreeAttrElem
  - xsltFreeAttrElemList
  - xsltAddAttrElemList
  - xsltNewUseAttrSet
  - xsltFreeUseAttrSet
  - xsltFreeUseAttrSetList
  - xsltAddUseAttrSetList
  - xsltNewAttrSet
  - xsltFreeAttrSet
  - xsltMergeAttrSets
  - xsltParseStylesheetAttributeSet
  - xsltResolveUseAttrSets
  - xsltResolveAttrSet
  - xsltResolveSASCallback
  - xsltResolveStylesheetAttributeSet
  - xsltAttribute
  - xsltApplyAttributeSet
  - xsltFreeAttributeSetsEntry
  - xsltFreeAttributeSetsHashes
  source_file: /src/libxslt/libxslt/attributes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ATTRSET_UNRESOLVED
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxslt/libxslt/attributes.c
      type_or_value: '0'
    - item_type: preproc_def
      name: ATTRSET_RESOLVING
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxslt/libxslt/attributes.c
      type_or_value: '1'
    - item_type: preproc_def
      name: ATTRSET_RESOLVED
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxslt/libxslt/attributes.c
      type_or_value: '2'
    structs:
    - fields:
      - name: '*next'
        type: struct _xsltAttrElem
      - name: attr
        type: xmlNodePtr
      item_type: struct
      name: _xsltAttrElem
      pos:
        line_end: 66
        line_start: 63
        source_file: /src/libxslt/libxslt/attributes.c
    - fields:
      - name: '*next'
        type: struct _xsltUseAttrSet
      - name: '*ncname'
        type: xmlChar
      - name: '*ns'
        type: xmlChar
      item_type: struct
      name: _xsltUseAttrSet
      pos:
        line_end: 74
        line_start: 70
        source_file: /src/libxslt/libxslt/attributes.c
    - fields:
      - name: state
        type: int
      - name: attrs
        type: xsltAttrElemPtr
      - name: useAttrSets
        type: xsltUseAttrSetPtr
      item_type: struct
      name: _xsltAttrSet
      pos:
        line_end: 82
        line_start: 78
        source_file: /src/libxslt/libxslt/attributes.c
    - fields:
      - name: topStyle
        type: xsltStylesheetPtr
      - name: style
        type: xsltStylesheetPtr
      - name: error
        type: int
      item_type: struct
      name: _xsltAttrSetContext
      pos:
        line_end: 90
        line_start: 86
        source_file: /src/libxslt/libxslt/attributes.c
    typedefs:
    - item_type: typedef
      name: xsltAttrElem
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/libxslt/libxslt/attributes.c
      type: _xsltAttrElem
    - item_type: typedef
      name: '*xsltAttrElemPtr'
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/libxslt/libxslt/attributes.c
      type: xsltAttrElem
    - item_type: typedef
      name: xsltUseAttrSet
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/libxslt/libxslt/attributes.c
      type: _xsltUseAttrSet
    - item_type: typedef
      name: '*xsltUseAttrSetPtr'
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxslt/libxslt/attributes.c
      type: xsltUseAttrSet
    - item_type: typedef
      name: xsltAttrSet
      pos:
        line_end: 76
        line_start: 76
        source_file: /src/libxslt/libxslt/attributes.c
      type: _xsltAttrSet
    - item_type: typedef
      name: '*xsltAttrSetPtr'
      pos:
        line_end: 77
        line_start: 77
        source_file: /src/libxslt/libxslt/attributes.c
      type: xsltAttrSet
    - item_type: typedef
      name: xsltAttrSetContext
      pos:
        line_end: 84
        line_start: 84
        source_file: /src/libxslt/libxslt/attributes.c
      type: _xsltAttrSetContext
    - item_type: typedef
      name: '*xsltAttrSetContextPtr'
      pos:
        line_end: 85
        line_start: 85
        source_file: /src/libxslt/libxslt/attributes.c
      type: xsltAttrSetContext
    union: []
- function_names:
  - mkdir
  source_file: /src/libxslt/libxslt/libxslt.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _FILE_OFFSET_BITS
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxslt/libxslt/libxslt.h
      type_or_value: '64'
    - item_type: preproc_def
      name: LIBXSLT_PUBLIC
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxslt/libxslt/libxslt.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxslt/libxslt/libxslt.h
      type_or_value: __attribute__((unused))
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/xslt.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_DEFAULT_VERSION
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxslt/libxslt/xslt.h
      type_or_value: '"1.0"'
    - item_type: preproc_def
      name: XSLT_DEFAULT_VENDOR
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxslt/libxslt/xslt.h
      type_or_value: '"libxslt"'
    - item_type: preproc_def
      name: XSLT_DEFAULT_URL
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxslt/libxslt/xslt.h
      type_or_value: '"http://xmlsoft.org/XSLT/"'
    - item_type: preproc_def
      name: XSLT_NAMESPACE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxslt/libxslt/xslt.h
      type_or_value: ((const xmlChar *)"http://www.w3.org/1999/XSL/Transform")
    - item_type: preproc_def
      name: XSLT_PARSE_OPTIONS
      pos:
        line_end: 55
        line_start: 53
        source_file: /src/libxslt/libxslt/xslt.h
      type_or_value: XML_PARSE_NOENT | XML_PARSE_DTDLOAD | XML_PARSE_DTDATTR | XML_PARSE_NOCDATA
    structs: []
    typedefs: []
    union: []
- function_names:
  - XSLT_IS_TEXT_NODE
  - XSLT_MARK_RES_TREE_FRAG
  - XSLT_IS_RES_TREE_FRAG
  - IS_XSLT_ELEM_FAST
  - IS_XSLT_ATTR_FAST
  - XSLT_HAS_INTERNAL_NSMAP
  - XSLT_GET_INTERNAL_NSMAP
  - IS_XSLT_ELEM_FAST
  - IS_XSLT_ATTR_FAST
  - XSLT_RUNTIME_EXTRA_LST
  - XSLT_RUNTIME_EXTRA_FREE
  - XSLT_RUNTIME_EXTRA
  - XSLT_CCTXT
  - XML_CAST_FPTR
  source_file: /src/libxslt/libxslt/xsltInternals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_MAX_SORT
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: '15'
    - item_type: preproc_def
      name: XSLT_PAT_NO_PRIORITY
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: '-12345789'
    - item_type: preproc_def
      name: XSLT_ITEM_COMPATIBILITY_FIELDS
      pos:
        line_end: 540
        line_start: 535
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: "xsltElemPreCompPtr next;\\\n    xsltStyleType type;\\\n    xsltTransformFunction
        func;\\\n    xmlNodePtr inst;"
    - item_type: preproc_def
      name: XSLT_ITEM_NSINSCOPE_FIELDS
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: xsltNsListContainerPtr inScopeNs;
    - item_type: preproc_def
      name: XSLT_ITEM_COMMON_FIELDS
      pos:
        line_end: 570
        line_start: 566
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: "XSLT_ITEM_COMPATIBILITY_FIELDS \\\n    XSLT_ITEM_NAVIGATION_FIELDS
        \\\n    XSLT_ITEM_NSINSCOPE_FIELDS"
    - item_type: preproc_def
      name: CHECK_STOPPED
      pos:
        line_end: 1810
        line_start: 1809
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: if (ctxt->state == XSLT_STATE_STOPPED) return;
    - item_type: preproc_def
      name: CHECK_STOPPEDE
      pos:
        line_end: 1818
        line_start: 1817
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: if (ctxt->state == XSLT_STATE_STOPPED) goto error;
    - item_type: preproc_def
      name: CHECK_STOPPED0
      pos:
        line_end: 1826
        line_start: 1825
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type_or_value: if (ctxt->state == XSLT_STATE_STOPPED) return(0);
    structs:
    - fields:
      - name: '**items'
        type: void
      - name: number
        type: int
      - name: size
        type: int
      item_type: struct
      name: _xsltPointerList
      pos:
        line_end: 190
        line_start: 186
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*info'
        type: void
      - name: deallocate
        type: xmlFreeFunc
      - name: val
        type: "union {\t\t\t/* dual-purpose field */\n        void   *ptr;\t\t/* data
          not needing deallocation */\n\tint    ival;\t\t/* integer value storage
          */\n    }"
      item_type: struct
      name: _xsltRuntimeExtra
      pos:
        line_end: 230
        line_start: 223
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltTemplate
      - name: '*style'
        type: struct _xsltStylesheet
      - name: '*match'
        type: xmlChar
      - name: priority
        type: float
      - name: '*name'
        type: xmlChar
      - name: '*nameURI'
        type: xmlChar
      - name: '*mode'
        type: xmlChar
      - name: '*modeURI'
        type: xmlChar
      - name: content
        type: xmlNodePtr
      - name: elem
        type: xmlNodePtr
      - name: inheritedNsNr
        type: int
      - name: '*inheritedNs'
        type: xmlNsPtr
      - name: nbCalls
        type: int
      - name: time
        type: unsigned long
      - name: '*params'
        type: void
      - name: templNr
        type: int
      - name: templMax
        type: int
      - name: '*templCalledTab'
        type: xsltTemplatePtr
      - name: '*templCountTab'
        type: int
      - name: position
        type: int
      item_type: struct
      name: _xsltTemplate
      pos:
        line_end: 295
        line_start: 264
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltDecimalFormat
      - name: '*name'
        type: xmlChar
      - name: '*digit'
        type: xmlChar
      - name: '*patternSeparator'
        type: xmlChar
      - name: '*minusSign'
        type: xmlChar
      - name: '*infinity'
        type: xmlChar
      - name: '*noNumber'
        type: xmlChar
      - name: '*decimalPoint'
        type: xmlChar
      - name: '*grouping'
        type: xmlChar
      - name: '*percent'
        type: xmlChar
      - name: '*permille'
        type: xmlChar
      - name: '*zeroDigit'
        type: xmlChar
      - name: '*nsUri'
        type: xmlChar
      item_type: struct
      name: _xsltDecimalFormat
      pos:
        line_end: 321
        line_start: 304
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltDocument
      - name: main
        type: int
      - name: doc
        type: xmlDocPtr
      - name: '*keys'
        type: void
      - name: '*includes'
        type: struct _xsltDocument
      - name: preproc
        type: int
      - name: nbKeysComputed
        type: int
      item_type: struct
      name: _xsltDocument
      pos:
        line_end: 338
        line_start: 330
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltKeyDef
      - name: inst
        type: xmlNodePtr
      - name: '*name'
        type: xmlChar
      - name: '*nameURI'
        type: xmlChar
      - name: '*match'
        type: xmlChar
      - name: '*use'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      - name: usecomp
        type: xmlXPathCompExprPtr
      - name: '*nsList'
        type: xmlNsPtr
      - name: nsNr
        type: int
      item_type: struct
      name: _xsltKeyDef
      pos:
        line_end: 358
        line_start: 347
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltKeyTable
      - name: '*name'
        type: xmlChar
      - name: '*nameURI'
        type: xmlChar
      - name: keys
        type: xmlHashTablePtr
      item_type: struct
      name: _xsltKeyTable
      pos:
        line_end: 373
        line_start: 368
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltElemPreCompPtr
      - name: type
        type: xsltStyleType
      - name: func
        type: xsltTransformFunction
      - name: inst
        type: xmlNodePtr
      - name: free
        type: xsltElemPreCompDeallocator
      item_type: struct
      name: _xsltElemPreComp
      pos:
        line_end: 482
        line_start: 472
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*list'
        type: xmlNsPtr
      - name: totalNumber
        type: int
      - name: xpathNumber
        type: int
      item_type: struct
      name: _xsltNsListContainer
      pos:
        line_end: 524
        line_start: 520
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltElemPreCompPtr
      - name: type
        type: xsltStyleType
      - name: func
        type: xsltTransformFunction
      - name: inst
        type: xmlNodePtr
      - name: inScopeNs
        type: xsltNsListContainerPtr
      item_type: struct
      name: _xsltStylePreComp
      pos:
        line_end: 593
        line_start: 584
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*select'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xsltStyleBasicExpressionItem
      pos:
        line_end: 624
        line_start: 619
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*use'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: has_use
        type: int
      - name: '*name'
        type: xmlChar
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: '*nsPrefix'
        type: xmlChar
      - name: has_ns
        type: int
      item_type: struct
      name: _xsltStyleItemElement
      pos:
        line_end: 656
        line_start: 646
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*name'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: '*nsPrefix'
        type: xmlChar
      - name: has_ns
        type: int
      item_type: struct
      name: _xsltStyleItemAttribute
      pos:
        line_end: 678
        line_start: 671
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: noescape
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemText
      pos:
        line_end: 695
        line_start: 692
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*name'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: has_name
        type: int
      item_type: struct
      name: _xsltStyleItemPI
      pos:
        line_end: 724
        line_start: 720
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*mode'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: '*modeURI'
        type: xmlChar
      - name: '*select'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xsltStyleItemApplyTemplates
      pos:
        line_end: 756
        line_start: 748
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: xsltTemplatePtr
        type: XSLT_ITEM_COMMON_FIELDS
      - name: '*name'
        type: xmlChar
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: has_ns
        type: int
      item_type: struct
      name: _xsltStyleItemCallTemplate
      pos:
        line_end: 779
        line_start: 770
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*use'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: has_use
        type: int
      item_type: struct
      name: _xsltStyleItemCopy
      pos:
        line_end: 797
        line_start: 793
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*test'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xsltStyleItemIf
      pos:
        line_end: 816
        line_start: 811
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*select'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      - name: noescape
        type: int
      item_type: struct
      name: _xsltStyleItemValueOf
      pos:
        line_end: 846
        line_start: 840
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: xsltNumberData
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemNumber
      pos:
        line_end: 869
        line_start: 866
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: terminate
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemMessage
      pos:
        line_end: 920
        line_start: 917
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: ver11
        type: XSLT_ITEM_COMMON_FIELDS
      - name: '*filename'
        type: xmlChar
      - name: has_filename
        type: int
      item_type: struct
      name: _xsltStyleItemDocument
      pos:
        line_end: 937
        line_start: 930
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*select'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      - name: '*name'
        type: xmlChar
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: has_ns
        type: int
      item_type: struct
      name: _xsltStyleBasicItemVariable
      pos:
        line_end: 970
        line_start: 960
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*select'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      - name: '*name'
        type: xmlChar
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: has_ns
        type: int
      item_type: struct
      name: _xsltStyleItemParam
      pos:
        line_end: 1008
        line_start: 998
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*stype'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: has_stype
        type: int
      - name: number
        type: int
      - name: '*order'
        type: xmlChar
      - name: has_order
        type: int
      - name: descending
        type: int
      - name: '*lang'
        type: xmlChar
      - name: has_lang
        type: int
      - name: '*case_order'
        type: xmlChar
      - name: lower_first
        type: int
      - name: '*use'
        type: xmlChar
      - name: has_use
        type: int
      - name: '*select'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xsltStyleItemSort
      pos:
        line_end: 1057
        line_start: 1037
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*test'
        type: XSLT_ITEM_COMMON_FIELDS
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xsltStyleItemWhen
      pos:
        line_end: 1077
        line_start: 1072
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: xsltDocumentPtr
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemInclude
      pos:
        line_end: 1100
        line_start: 1097
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: xsltElemPreCompPtr
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemExtElement
      pos:
        line_end: 1146
        line_start: 1143
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: nextInStore
        type: xsltEffectiveNsPtr
      - name: next
        type: xsltEffectiveNsPtr
      - name: '*prefix'
        type: xmlChar
      - name: '*nsName'
        type: xmlChar
      - name: holdByElem
        type: int
      item_type: struct
      name: _xsltEffectiveNs
      pos:
        line_end: 1166
        line_start: 1156
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: xsltEffectiveNsPtr
        type: XSLT_ITEM_COMMON_FIELDS
      item_type: struct
      name: _xsltStyleItemLRElementInfo
      pos:
        line_end: 1190
        line_start: 1177
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltNsAliasPtr
      - name: literalNs
        type: xmlNsPtr
      - name: targetNs
        type: xmlNsPtr
      - name: docOfTargetNs
        type: xmlDocPtr
      item_type: struct
      name: _xsltNsAlias
      pos:
        line_end: 1201
        line_start: 1196
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltNsMapPtr
      - name: doc
        type: xmlDocPtr
      - name: elem
        type: xmlNodePtr
      - name: ns
        type: xmlNsPtr
      - name: '*origNsName'
        type: xmlChar
      - name: '*newNsName'
        type: xmlChar
      item_type: struct
      name: _xsltNsMap
      pos:
        line_end: 1215
        line_start: 1208
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltNsListPtr
      - name: ns
        type: xmlNsPtr
      item_type: struct
      name: _xsltNsList
      pos:
        line_end: 1232
        line_start: 1229
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltVarInfoPtr
      - name: prev
        type: xsltVarInfoPtr
      - name: depth
        type: int
      - name: '*name'
        type: xmlChar
      - name: '*nsName'
        type: xmlChar
      item_type: struct
      name: _xsltVarInfo
      pos:
        line_end: 1247
        line_start: 1241
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltCompilerNodeInfoPtr
      - name: prev
        type: xsltCompilerNodeInfoPtr
      - name: node
        type: xmlNodePtr
      - name: depth
        type: int
      - name: templ
        type: xsltTemplatePtr
      - name: category
        type: int
      - name: type
        type: xsltStyleType
      - name: item
        type: xsltElemPreCompPtr
      - name: inScopeNs
        type: xsltNsListContainerPtr
      - name: exclResultNs
        type: xsltPointerListPtr
      - name: extElemNs
        type: xsltPointerListPtr
      - name: litResElemInfo
        type: xsltStyleItemLRElementInfoPtr
      - name: nsChanged
        type: int
      - name: preserveWhitespace
        type: int
      - name: stripWhitespace
        type: int
      - name: isRoot
        type: int
      - name: forwardsCompat
        type: int
      - name: extContentHandled
        type: int
      - name: curChildType
        type: xsltStyleType
      item_type: struct
      name: _xsltCompilerNodeInfo
      pos:
        line_end: 1291
        line_start: 1256
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*errorCtxt'
        type: void
      - name: errSeverity
        type: xsltErrorSeverityType
      - name: warnings
        type: int
      - name: errors
        type: int
      - name: dict
        type: xmlDictPtr
      - name: style
        type: xsltStylesheetPtr
      - name: simplified
        type: int
      - name: depth
        type: int
      - name: inode
        type: xsltCompilerNodeInfoPtr
      - name: inodeList
        type: xsltCompilerNodeInfoPtr
      - name: inodeLast
        type: xsltCompilerNodeInfoPtr
      - name: tmpList
        type: xsltPointerListPtr
      - name: isInclude
        type: int
      - name: hasForwardsCompat
        type: int
      - name: maxNodeInfos
        type: int
      - name: maxLREs
        type: int
      - name: strict
        type: int
      - name: psData
        type: xsltPrincipalStylesheetDataPtr
      - name: unknownItem
        type: xsltStyleItemUknownPtr
      - name: hasNsAliases
        type: int
      - name: nsAliases
        type: xsltNsAliasPtr
      - name: ivars
        type: xsltVarInfoPtr
      - name: ivar
        type: xsltVarInfoPtr
      item_type: struct
      name: _xsltCompilerCtxt
      pos:
        line_end: 1346
        line_start: 1307
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: next
        type: xsltElemPreCompPtr
      - name: type
        type: xsltStyleType
      - name: func
        type: xsltTransformFunction
      - name: inst
        type: xmlNodePtr
      - name: '*stype'
        type: xmlChar
      - name: has_stype
        type: int
      - name: number
        type: int
      - name: '*order'
        type: xmlChar
      - name: has_order
        type: int
      - name: descending
        type: int
      - name: '*lang'
        type: xmlChar
      - name: has_lang
        type: int
      - name: '*case_order'
        type: xmlChar
      - name: lower_first
        type: int
      - name: '*use'
        type: xmlChar
      - name: has_use
        type: int
      - name: noescape
        type: int
      - name: '*name'
        type: xmlChar
      - name: has_name
        type: int
      - name: '*ns'
        type: xmlChar
      - name: has_ns
        type: int
      - name: '*mode'
        type: xmlChar
      - name: '*modeURI'
        type: xmlChar
      - name: '*test'
        type: xmlChar
      - name: templ
        type: xsltTemplatePtr
      - name: '*select'
        type: xmlChar
      - name: ver11
        type: int
      - name: '*filename'
        type: xmlChar
      - name: has_filename
        type: int
      - name: numdata
        type: xsltNumberData
      - name: comp
        type: xmlXPathCompExprPtr
      - name: '*nsList'
        type: xmlNsPtr
      - name: nsNr
        type: int
      item_type: struct
      name: _xsltStylePreComp
      pos:
        line_end: 1408
        line_start: 1359
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*next'
        type: struct _xsltStackElem
      - name: comp
        type: xsltStylePreCompPtr
      - name: computed
        type: int
      - name: '*name'
        type: xmlChar
      - name: '*nameURI'
        type: xmlChar
      - name: '*select'
        type: xmlChar
      - name: tree
        type: xmlNodePtr
      - name: value
        type: xmlXPathObjectPtr
      - name: fragment
        type: xmlDocPtr
      - name: level
        type: int
      - name: context
        type: xsltTransformContextPtr
      - name: flags
        type: int
      item_type: struct
      name: _xsltStackElem
      pos:
        line_end: 1436
        line_start: 1419
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: namespaceDict
        type: xmlDictPtr
      - name: inScopeNamespaces
        type: xsltPointerListPtr
      - name: exclResultNamespaces
        type: xsltPointerListPtr
      - name: extElemNamespaces
        type: xsltPointerListPtr
      - name: effectiveNs
        type: xsltEffectiveNsPtr
      item_type: struct
      name: _xsltPrincipalStylesheetData
      pos:
        line_end: 1466
        line_start: 1440
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: '*parent'
        type: struct _xsltStylesheet
      - name: '*next'
        type: struct _xsltStylesheet
      - name: '*imports'
        type: struct _xsltStylesheet
      - name: docList
        type: xsltDocumentPtr
      - name: doc
        type: xmlDocPtr
      - name: stripSpaces
        type: xmlHashTablePtr
      - name: stripAll
        type: int
      - name: cdataSection
        type: xmlHashTablePtr
      - name: variables
        type: xsltStackElemPtr
      - name: templates
        type: xsltTemplatePtr
      - name: templatesHash
        type: xmlHashTablePtr
      - name: '*rootMatch'
        type: struct _xsltCompMatch
      - name: '*keyMatch'
        type: struct _xsltCompMatch
      - name: '*elemMatch'
        type: struct _xsltCompMatch
      - name: '*attrMatch'
        type: struct _xsltCompMatch
      - name: '*parentMatch'
        type: struct _xsltCompMatch
      - name: '*textMatch'
        type: struct _xsltCompMatch
      - name: '*piMatch'
        type: struct _xsltCompMatch
      - name: '*commentMatch'
        type: struct _xsltCompMatch
      - name: nsAliases
        type: xmlHashTablePtr
      - name: attributeSets
        type: xmlHashTablePtr
      - name: nsHash
        type: xmlHashTablePtr
      - name: '*nsDefs'
        type: void
      - name: '*keys'
        type: void
      - name: '*method'
        type: xmlChar
      - name: '*methodURI'
        type: xmlChar
      - name: '*version'
        type: xmlChar
      - name: '*encoding'
        type: xmlChar
      - name: omitXmlDeclaration
        type: int
      - name: decimalFormat
        type: xsltDecimalFormatPtr
      - name: standalone
        type: int
      - name: '*doctypePublic'
        type: xmlChar
      - name: '*doctypeSystem'
        type: xmlChar
      - name: indent
        type: int
      - name: '*mediaType'
        type: xmlChar
      - name: preComps
        type: xsltElemPreCompPtr
      - name: warnings
        type: int
      - name: errors
        type: int
      - name: '*exclPrefix'
        type: xmlChar
      - name: '**exclPrefixTab'
        type: xmlChar
      - name: exclPrefixNr
        type: int
      - name: exclPrefixMax
        type: int
      - name: '*_private'
        type: void
      - name: extInfos
        type: xmlHashTablePtr
      - name: extrasNr
        type: int
      - name: includes
        type: xsltDocumentPtr
      - name: dict
        type: xmlDictPtr
      - name: '*attVTs'
        type: void
      - name: '*defaultAlias'
        type: xmlChar
      - name: nopreproc
        type: int
      - name: internalized
        type: int
      - name: literal_result
        type: int
      - name: principal
        type: xsltStylesheetPtr
      - name: forwards_compatible
        type: int
      - name: namedTemplates
        type: xmlHashTablePtr
      - name: xpathCtxt
        type: xmlXPathContextPtr
      - name: opLimit
        type: unsigned long
      - name: opCount
        type: unsigned long
      item_type: struct
      name: _xsltStylesheet
      pos:
        line_end: 1639
        line_start: 1475
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: RVT
        type: xmlDocPtr
      - name: nbRVT
        type: int
      - name: stackItems
        type: xsltStackElemPtr
      - name: nbStackItems
        type: int
      item_type: struct
      name: _xsltTransformCache
      pos:
        line_end: 1654
        line_start: 1643
        source_file: /src/libxslt/libxslt/xsltInternals.h
    - fields:
      - name: style
        type: xsltStylesheetPtr
      - name: type
        type: xsltOutputType
      - name: templ
        type: xsltTemplatePtr
      - name: templNr
        type: int
      - name: templMax
        type: int
      - name: '*templTab'
        type: xsltTemplatePtr
      - name: vars
        type: xsltStackElemPtr
      - name: varsNr
        type: int
      - name: varsMax
        type: int
      - name: '*varsTab'
        type: xsltStackElemPtr
      - name: varsBase
        type: int
      - name: extFunctions
        type: xmlHashTablePtr
      - name: extElements
        type: xmlHashTablePtr
      - name: extInfos
        type: xmlHashTablePtr
      - name: '*mode'
        type: xmlChar
      - name: '*modeURI'
        type: xmlChar
      - name: docList
        type: xsltDocumentPtr
      - name: document
        type: xsltDocumentPtr
      - name: node
        type: xmlNodePtr
      - name: nodeList
        type: xmlNodeSetPtr
      - name: output
        type: xmlDocPtr
      - name: insert
        type: xmlNodePtr
      - name: xpathCtxt
        type: xmlXPathContextPtr
      - name: state
        type: xsltTransformState
      - name: globalVars
        type: xmlHashTablePtr
      - name: inst
        type: xmlNodePtr
      - name: xinclude
        type: int
      - name: '*      outputFile'
        type: char
      - name: profile
        type: int
      - name: prof
        type: long
      - name: profNr
        type: int
      - name: profMax
        type: int
      - name: '*profTab'
        type: long
      - name: '*_private'
        type: void
      - name: extrasNr
        type: int
      - name: extrasMax
        type: int
      - name: extras
        type: xsltRuntimeExtraPtr
      - name: styleList
        type: xsltDocumentPtr
      - name: '* sec'
        type: void
      - name: error
        type: xmlGenericErrorFunc
      - name: '* errctx'
        type: void
      - name: sortfunc
        type: xsltSortFunc
      - name: tmpRVT
        type: xmlDocPtr
      - name: persistRVT
        type: xmlDocPtr
      - name: ctxtflags
        type: int
      - name: '*lasttext'
        type: xmlChar
      - name: lasttsize
        type: int
      - name: lasttuse
        type: int
      - name: debugStatus
        type: int
      - name: '* traceCode'
        type: unsigned long
      - name: parserOptions
        type: int
      - name: dict
        type: xmlDictPtr
      - name: tmpDoc
        type: xmlDocPtr
      - name: internalized
        type: int
      - name: nbKeys
        type: int
      - name: hasTemplKeyPatterns
        type: int
      - name: currentTemplateRule
        type: xsltTemplatePtr
      - name: initialContextNode
        type: xmlNodePtr
      - name: initialContextDoc
        type: xmlDocPtr
      - name: cache
        type: xsltTransformCachePtr
      - name: '*contextVariable'
        type: void
      - name: localRVT
        type: xmlDocPtr
      - name: localRVTBase
        type: xmlDocPtr
      - name: keyInitLevel
        type: int
      - name: depth
        type: int
      - name: maxTemplateDepth
        type: int
      - name: maxTemplateVars
        type: int
      - name: opLimit
        type: unsigned long
      - name: opCount
        type: unsigned long
      - name: sourceDocDirty
        type: int
      - name: currentId
        type: unsigned long
      - name: newLocale
        type: xsltNewLocaleFunc
      - name: freeLocale
        type: xsltFreeLocaleFunc
      - name: genSortKey
        type: xsltGenSortKeyFunc
      item_type: struct
      name: _xsltTransformContext
      pos:
        line_end: 1801
        line_start: 1678
        source_file: /src/libxslt/libxslt/xsltInternals.h
    typedefs:
    - item_type: typedef
      name: xsltPointerList
      pos:
        line_end: 184
        line_start: 184
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltPointerList
    - item_type: typedef
      name: '*xsltPointerListPtr'
      pos:
        line_end: 185
        line_start: 185
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltPointerList
    - item_type: typedef
      name: xsltRuntimeExtra
      pos:
        line_end: 221
        line_start: 221
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltRuntimeExtra
    - item_type: typedef
      name: '*xsltRuntimeExtraPtr'
      pos:
        line_end: 222
        line_start: 222
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltRuntimeExtra
    - item_type: typedef
      name: xsltTemplate
      pos:
        line_end: 262
        line_start: 262
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltTemplate
    - item_type: typedef
      name: '*xsltTemplatePtr'
      pos:
        line_end: 263
        line_start: 263
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltTemplate
    - item_type: typedef
      name: xsltDecimalFormat
      pos:
        line_end: 302
        line_start: 302
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltDecimalFormat
    - item_type: typedef
      name: '*xsltDecimalFormatPtr'
      pos:
        line_end: 303
        line_start: 303
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltDecimalFormat
    - item_type: typedef
      name: xsltDocument
      pos:
        line_end: 328
        line_start: 328
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltDocument
    - item_type: typedef
      name: '*xsltDocumentPtr'
      pos:
        line_end: 329
        line_start: 329
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltDocument
    - item_type: typedef
      name: xsltKeyDef
      pos:
        line_end: 345
        line_start: 345
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltKeyDef
    - item_type: typedef
      name: '*xsltKeyDefPtr'
      pos:
        line_end: 346
        line_start: 346
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltKeyDef
    - item_type: typedef
      name: xsltKeyTable
      pos:
        line_end: 366
        line_start: 366
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltKeyTable
    - item_type: typedef
      name: '*xsltKeyTablePtr'
      pos:
        line_end: 367
        line_start: 367
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltKeyTable
    - item_type: typedef
      name: xsltStylesheet
      pos:
        line_end: 380
        line_start: 380
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStylesheet
    - item_type: typedef
      name: '*xsltStylesheetPtr'
      pos:
        line_end: 381
        line_start: 381
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStylesheet
    - item_type: typedef
      name: xsltTransformContext
      pos:
        line_end: 383
        line_start: 383
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltTransformContext
    - item_type: typedef
      name: '*xsltTransformContextPtr'
      pos:
        line_end: 384
        line_start: 384
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltTransformContext
    - item_type: typedef
      name: xsltElemPreComp
      pos:
        line_end: 392
        line_start: 392
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltElemPreComp
    - item_type: typedef
      name: '*xsltElemPreCompPtr'
      pos:
        line_end: 393
        line_start: 393
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltElemPreComp
    - item_type: typedef
      name: "(*xsltTransformFunction) (xsltTransformContextPtr ctxt,\n\t                               xmlNodePtr
        node,\n\t\t\t\t       xmlNodePtr inst,\n\t\t\t               xsltElemPreCompPtr
        comp)"
      pos:
        line_end: 408
        line_start: 405
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: void
    - item_type: typedef
      name: "(*xsltSortFunc) (xsltTransformContextPtr ctxt, xmlNodePtr *sorts,\n\t\t\t
        \     int nbsorts)"
      pos:
        line_end: 419
        line_start: 418
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: void
    - item_type: typedef
      name: (*xsltElemPreCompDeallocator) (xsltElemPreCompPtr comp)
      pos:
        line_end: 462
        line_start: 462
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: void
    - item_type: typedef
      name: xsltStylePreComp
      pos:
        line_end: 493
        line_start: 493
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStylePreComp
    - item_type: typedef
      name: '*xsltStylePreCompPtr'
      pos:
        line_end: 494
        line_start: 494
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStylePreComp
    - item_type: typedef
      name: xsltNsListContainer
      pos:
        line_end: 518
        line_start: 518
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltNsListContainer
    - item_type: typedef
      name: '*xsltNsListContainerPtr'
      pos:
        line_end: 519
        line_start: 519
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltNsListContainer
    - item_type: typedef
      name: xsltStyleBasicEmptyItem
      pos:
        line_end: 603
        line_start: 603
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleBasicEmptyItem
    - item_type: typedef
      name: '*xsltStyleBasicEmptyItemPtr'
      pos:
        line_end: 604
        line_start: 604
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicEmptyItem
    - item_type: typedef
      name: xsltStyleBasicExpressionItem
      pos:
        line_end: 616
        line_start: 616
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleBasicExpressionItem
    - item_type: typedef
      name: '*xsltStyleBasicExpressionItemPtr'
      pos:
        line_end: 617
        line_start: 617
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicExpressionItem
    - item_type: typedef
      name: xsltStyleItemElement
      pos:
        line_end: 643
        line_start: 643
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemElement
    - item_type: typedef
      name: '*xsltStyleItemElementPtr'
      pos:
        line_end: 644
        line_start: 644
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemElement
    - item_type: typedef
      name: xsltStyleItemAttribute
      pos:
        line_end: 668
        line_start: 668
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemAttribute
    - item_type: typedef
      name: '*xsltStyleItemAttributePtr'
      pos:
        line_end: 669
        line_start: 669
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemAttribute
    - item_type: typedef
      name: xsltStyleItemText
      pos:
        line_end: 689
        line_start: 689
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemText
    - item_type: typedef
      name: '*xsltStyleItemTextPtr'
      pos:
        line_end: 690
        line_start: 690
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemText
    - item_type: typedef
      name: xsltStyleItemComment
      pos:
        line_end: 705
        line_start: 705
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicEmptyItem
    - item_type: typedef
      name: '*xsltStyleItemCommentPtr'
      pos:
        line_end: 706
        line_start: 706
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemComment
    - item_type: typedef
      name: xsltStyleItemPI
      pos:
        line_end: 717
        line_start: 717
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemPI
    - item_type: typedef
      name: '*xsltStyleItemPIPtr'
      pos:
        line_end: 718
        line_start: 718
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemPI
    - item_type: typedef
      name: xsltStyleItemApplyImports
      pos:
        line_end: 732
        line_start: 732
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicEmptyItem
    - item_type: typedef
      name: '*xsltStyleItemApplyImportsPtr'
      pos:
        line_end: 733
        line_start: 733
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemApplyImports
    - item_type: typedef
      name: xsltStyleItemApplyTemplates
      pos:
        line_end: 745
        line_start: 745
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemApplyTemplates
    - item_type: typedef
      name: '*xsltStyleItemApplyTemplatesPtr'
      pos:
        line_end: 746
        line_start: 746
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemApplyTemplates
    - item_type: typedef
      name: xsltStyleItemCallTemplate
      pos:
        line_end: 767
        line_start: 767
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemCallTemplate
    - item_type: typedef
      name: '*xsltStyleItemCallTemplatePtr'
      pos:
        line_end: 768
        line_start: 768
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemCallTemplate
    - item_type: typedef
      name: xsltStyleItemCopy
      pos:
        line_end: 790
        line_start: 790
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemCopy
    - item_type: typedef
      name: '*xsltStyleItemCopyPtr'
      pos:
        line_end: 791
        line_start: 791
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemCopy
    - item_type: typedef
      name: xsltStyleItemIf
      pos:
        line_end: 808
        line_start: 808
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemIf
    - item_type: typedef
      name: '*xsltStyleItemIfPtr'
      pos:
        line_end: 809
        line_start: 809
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemIf
    - item_type: typedef
      name: xsltStyleItemCopyOf
      pos:
        line_end: 826
        line_start: 826
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicExpressionItem
    - item_type: typedef
      name: '*xsltStyleItemCopyOfPtr'
      pos:
        line_end: 827
        line_start: 827
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemCopyOf
    - item_type: typedef
      name: xsltStyleItemValueOf
      pos:
        line_end: 837
        line_start: 837
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemValueOf
    - item_type: typedef
      name: '*xsltStyleItemValueOfPtr'
      pos:
        line_end: 838
        line_start: 838
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemValueOf
    - item_type: typedef
      name: xsltStyleItemNumber
      pos:
        line_end: 863
        line_start: 863
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemNumber
    - item_type: typedef
      name: '*xsltStyleItemNumberPtr'
      pos:
        line_end: 864
        line_start: 864
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemNumber
    - item_type: typedef
      name: xsltStyleItemChoose
      pos:
        line_end: 879
        line_start: 879
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicEmptyItem
    - item_type: typedef
      name: '*xsltStyleItemChoosePtr'
      pos:
        line_end: 880
        line_start: 880
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemChoose
    - item_type: typedef
      name: xsltStyleItemFallback
      pos:
        line_end: 890
        line_start: 890
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicEmptyItem
    - item_type: typedef
      name: '*xsltStyleItemFallbackPtr'
      pos:
        line_end: 891
        line_start: 891
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemFallback
    - item_type: typedef
      name: xsltStyleItemForEach
      pos:
        line_end: 902
        line_start: 902
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicExpressionItem
    - item_type: typedef
      name: '*xsltStyleItemForEachPtr'
      pos:
        line_end: 903
        line_start: 903
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemForEach
    - item_type: typedef
      name: xsltStyleItemMessage
      pos:
        line_end: 914
        line_start: 914
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemMessage
    - item_type: typedef
      name: '*xsltStyleItemMessagePtr'
      pos:
        line_end: 915
        line_start: 915
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemMessage
    - item_type: typedef
      name: xsltStyleItemDocument
      pos:
        line_end: 927
        line_start: 927
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemDocument
    - item_type: typedef
      name: '*xsltStyleItemDocumentPtr'
      pos:
        line_end: 928
        line_start: 928
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemDocument
    - item_type: typedef
      name: xsltStyleBasicItemVariable
      pos:
        line_end: 957
        line_start: 957
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleBasicItemVariable
    - item_type: typedef
      name: '*xsltStyleBasicItemVariablePtr'
      pos:
        line_end: 958
        line_start: 958
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicItemVariable
    - item_type: typedef
      name: xsltStyleItemVariable
      pos:
        line_end: 982
        line_start: 982
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicItemVariable
    - item_type: typedef
      name: '*xsltStyleItemVariablePtr'
      pos:
        line_end: 983
        line_start: 983
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemVariable
    - item_type: typedef
      name: xsltStyleItemParam
      pos:
        line_end: 995
        line_start: 995
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemParam
    - item_type: typedef
      name: '*xsltStyleItemParamPtr'
      pos:
        line_end: 996
        line_start: 996
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemParam
    - item_type: typedef
      name: xsltStyleItemWithParam
      pos:
        line_end: 1019
        line_start: 1019
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleBasicItemVariable
    - item_type: typedef
      name: '*xsltStyleItemWithParamPtr'
      pos:
        line_end: 1020
        line_start: 1020
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemWithParam
    - item_type: typedef
      name: xsltStyleItemSort
      pos:
        line_end: 1034
        line_start: 1034
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemSort
    - item_type: typedef
      name: '*xsltStyleItemSortPtr'
      pos:
        line_end: 1035
        line_start: 1035
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemSort
    - item_type: typedef
      name: xsltStyleItemWhen
      pos:
        line_end: 1069
        line_start: 1069
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemWhen
    - item_type: typedef
      name: '*xsltStyleItemWhenPtr'
      pos:
        line_end: 1070
        line_start: 1070
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemWhen
    - item_type: typedef
      name: xsltStyleItemOtherwise
      pos:
        line_end: 1087
        line_start: 1087
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemOtherwise
    - item_type: typedef
      name: '*xsltStyleItemOtherwisePtr'
      pos:
        line_end: 1088
        line_start: 1088
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemOtherwise
    - item_type: typedef
      name: xsltStyleItemInclude
      pos:
        line_end: 1094
        line_start: 1094
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemInclude
    - item_type: typedef
      name: '*xsltStyleItemIncludePtr'
      pos:
        line_end: 1095
        line_start: 1095
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemInclude
    - item_type: typedef
      name: xsltStyleItemUknown
      pos:
        line_end: 1108
        line_start: 1108
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemUknown
    - item_type: typedef
      name: '*xsltStyleItemUknownPtr'
      pos:
        line_end: 1109
        line_start: 1109
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemUknown
    - item_type: typedef
      name: xsltStyleItemExtElement
      pos:
        line_end: 1141
        line_start: 1141
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemExtElement
    - item_type: typedef
      name: '*xsltStyleItemExtElementPtr'
      pos:
        line_end: 1142
        line_start: 1142
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemExtElement
    - item_type: typedef
      name: xsltEffectiveNs
      pos:
        line_end: 1154
        line_start: 1154
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltEffectiveNs
    - item_type: typedef
      name: '*xsltEffectiveNsPtr'
      pos:
        line_end: 1155
        line_start: 1155
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltEffectiveNs
    - item_type: typedef
      name: xsltStyleItemLRElementInfo
      pos:
        line_end: 1175
        line_start: 1175
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStyleItemLRElementInfo
    - item_type: typedef
      name: '*xsltStyleItemLRElementInfoPtr'
      pos:
        line_end: 1176
        line_start: 1176
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStyleItemLRElementInfo
    - item_type: typedef
      name: xsltNsAlias
      pos:
        line_end: 1194
        line_start: 1194
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltNsAlias
    - item_type: typedef
      name: '*xsltNsAliasPtr'
      pos:
        line_end: 1195
        line_start: 1195
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltNsAlias
    - item_type: typedef
      name: xsltNsMap
      pos:
        line_end: 1206
        line_start: 1206
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltNsMap
    - item_type: typedef
      name: '*xsltNsMapPtr'
      pos:
        line_end: 1207
        line_start: 1207
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltNsMap
    - item_type: typedef
      name: xsltPrincipalStylesheetData
      pos:
        line_end: 1224
        line_start: 1224
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltPrincipalStylesheetData
    - item_type: typedef
      name: '*xsltPrincipalStylesheetDataPtr'
      pos:
        line_end: 1225
        line_start: 1225
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltPrincipalStylesheetData
    - item_type: typedef
      name: xsltNsList
      pos:
        line_end: 1227
        line_start: 1227
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltNsList
    - item_type: typedef
      name: '*xsltNsListPtr'
      pos:
        line_end: 1228
        line_start: 1228
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltNsList
    - item_type: typedef
      name: xsltVarInfo
      pos:
        line_end: 1239
        line_start: 1239
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltVarInfo
    - item_type: typedef
      name: '*xsltVarInfoPtr'
      pos:
        line_end: 1240
        line_start: 1240
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltVarInfo
    - item_type: typedef
      name: xsltCompilerNodeInfo
      pos:
        line_end: 1254
        line_start: 1254
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltCompilerNodeInfo
    - item_type: typedef
      name: '*xsltCompilerNodeInfoPtr'
      pos:
        line_end: 1255
        line_start: 1255
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltCompilerNodeInfo
    - item_type: typedef
      name: xsltCompilerCtxt
      pos:
        line_end: 1305
        line_start: 1305
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltCompilerCtxt
    - item_type: typedef
      name: '*xsltCompilerCtxtPtr'
      pos:
        line_end: 1306
        line_start: 1306
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltCompilerCtxt
    - item_type: typedef
      name: xsltStackElem
      pos:
        line_end: 1417
        line_start: 1417
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltStackElem
    - item_type: typedef
      name: '*xsltStackElemPtr'
      pos:
        line_end: 1418
        line_start: 1418
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltStackElem
    - item_type: typedef
      name: xsltTransformCache
      pos:
        line_end: 1641
        line_start: 1641
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: _xsltTransformCache
    - item_type: typedef
      name: '*xsltTransformCachePtr'
      pos:
        line_end: 1642
        line_start: 1642
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xsltTransformCache
    - item_type: typedef
      name: '*

        (*xsltNewLocaleFunc)(const xmlChar *lang, int lowerFirst)'
      pos:
        line_end: 1666
        line_start: 1665
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: void
    - item_type: typedef
      name: (*xsltFreeLocaleFunc)(void *locale)
      pos:
        line_end: 1668
        line_start: 1667
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: void
    - item_type: typedef
      name: '*

        (*xsltGenSortKeyFunc)(void *locale, const xmlChar *lang)'
      pos:
        line_end: 1670
        line_start: 1669
        source_file: /src/libxslt/libxslt/xsltInternals.h
      type: xmlChar
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/security.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xsltSecurityPrefs
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxslt/libxslt/security.h
      type: _xsltSecurityPrefs
    - item_type: typedef
      name: '*xsltSecurityPrefsPtr'
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxslt/libxslt/security.h
      type: xsltSecurityPrefs
    - item_type: typedef
      name: "(*xsltSecurityCheck)\t(xsltSecurityPrefsPtr sec,\n\t\t\t\t\t xsltTransformContextPtr
        ctxt,\n\t\t\t\t\t const char *value)"
      pos:
        line_end: 52
        line_start: 50
        source_file: /src/libxslt/libxslt/security.h
      type: int
    union: []
- function_names:
  - XSLT_REGISTER_VARIABLE_LOOKUP
  source_file: /src/libxslt/libxslt/variables.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_RVT_LOCAL
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxslt/libxslt/variables.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XSLT_RVT_FUNC_RESULT
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxslt/libxslt/variables.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XSLT_RVT_GLOBAL
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libxslt/libxslt/variables.h
      type_or_value: '3'
    structs: []
    typedefs: []
    union: []
- function_names:
  - TRIO_ERROR_CODE
  - TRIO_ERROR_POSITION
  - TRIO_ERROR_NAME
  source_file: /src/libxslt/libxslt/trio.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: printf
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_printf
    - item_type: preproc_def
      name: vprintf
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vprintf
    - item_type: preproc_def
      name: fprintf
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_fprintf
    - item_type: preproc_def
      name: vfprintf
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vfprintf
    - item_type: preproc_def
      name: sprintf
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_sprintf
    - item_type: preproc_def
      name: vsprintf
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vsprintf
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_snprintf
    - item_type: preproc_def
      name: vsnprintf
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vsnprintf
    - item_type: preproc_def
      name: scanf
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_scanf
    - item_type: preproc_def
      name: vscanf
      pos:
        line_end: 185
        line_start: 184
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vscanf
    - item_type: preproc_def
      name: fscanf
      pos:
        line_end: 188
        line_start: 187
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_fscanf
    - item_type: preproc_def
      name: vfscanf
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vfscanf
    - item_type: preproc_def
      name: sscanf
      pos:
        line_end: 194
        line_start: 193
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_sscanf
    - item_type: preproc_def
      name: vsscanf
      pos:
        line_end: 197
        line_start: 196
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vsscanf
    - item_type: preproc_def
      name: dprintf
      pos:
        line_end: 200
        line_start: 199
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_dprintf
    - item_type: preproc_def
      name: vdprintf
      pos:
        line_end: 201
        line_start: 200
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vdprintf
    - item_type: preproc_def
      name: aprintf
      pos:
        line_end: 202
        line_start: 201
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_aprintf
    - item_type: preproc_def
      name: vaprintf
      pos:
        line_end: 203
        line_start: 202
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vaprintf
    - item_type: preproc_def
      name: asprintf
      pos:
        line_end: 204
        line_start: 203
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_asprintf
    - item_type: preproc_def
      name: vasprintf
      pos:
        line_end: 205
        line_start: 204
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vasprintf
    - item_type: preproc_def
      name: dscanf
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_dscanf
    - item_type: preproc_def
      name: vdscanf
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/libxslt/libxslt/trio.h
      type_or_value: trio_vdscanf
    structs: []
    typedefs:
    - item_type: typedef
      name: (*trio_outstream_t)
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxslt/libxslt/trio.h
      type: int
    - item_type: typedef
      name: (*trio_instream_t)
      pos:
        line_end: 71
        line_start: 71
        source_file: /src/libxslt/libxslt/trio.h
      type: int
    union: []
- function_names:
  - xsltNewKeyDef
  - xsltFreeKeyDef
  - xsltFreeKeyDefList
  - xsltNewKeyTable
  - xsltFreeNodeSetEntry
  - xsltFreeKeyTable
  - xsltFreeKeyTableList
  - xsltFreeKeys
  - skipString
  - skipPredicate
  - xsltAddKey
  - xsltGetKey
  - xsltInitDocKeyTable
  - xsltInitAllDocKeys
  - xsltInitCtxtKey
  - xsltInitCtxtKeys
  - xsltFreeDocumentKeys
  source_file: /src/libxslt/libxslt/keys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/transform.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/numbersInternals.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*level'
        type: xmlChar
      - name: '*count'
        type: xmlChar
      - name: '*from'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: '*format'
        type: xmlChar
      - name: has_format
        type: int
      - name: digitsPerGroup
        type: int
      - name: groupingCharacter
        type: int
      - name: groupingCharacterLen
        type: int
      - name: doc
        type: xmlDocPtr
      - name: node
        type: xmlNodePtr
      - name: '*countPat'
        type: struct _xsltCompMatch
      - name: '*fromPat'
        type: struct _xsltCompMatch
      item_type: struct
      name: _xsltNumberData
      pos:
        line_end: 47
        line_start: 29
        source_file: /src/libxslt/libxslt/numbersInternals.h
    - fields:
      - name: integer_hash
        type: int
      - name: integer_digits
        type: int
      - name: frac_digits
        type: int
      - name: frac_hash
        type: int
      - name: group
        type: int
      - name: multiplier
        type: int
      - name: add_decimal
        type: char
      - name: is_multiplier_set
        type: char
      - name: is_negative_pattern
        type: char
      item_type: struct
      name: _xsltFormatNumberInfo
      pos:
        line_end: 67
        line_start: 57
        source_file: /src/libxslt/libxslt/numbersInternals.h
    typedefs:
    - item_type: typedef
      name: xsltNumberData
      pos:
        line_end: 26
        line_start: 26
        source_file: /src/libxslt/libxslt/numbersInternals.h
      type: _xsltNumberData
    - item_type: typedef
      name: '*xsltNumberDataPtr'
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxslt/libxslt/numbersInternals.h
      type: xsltNumberData
    - item_type: typedef
      name: xsltFormatNumberInfo
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/libxslt/libxslt/numbersInternals.h
      type: _xsltFormatNumberInfo
    - item_type: typedef
      name: '*xsltFormatNumberInfoPtr'
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libxslt/libxslt/numbersInternals.h
      type: xsltFormatNumberInfo
    union: []
- function_names:
  - xsltNewExtDef
  - xsltFreeExtDef
  - xsltFreeExtDefList
  - xsltNewExtModule
  - xsltFreeExtModule
  - xsltFreeExtModuleEntry
  - xsltNewExtData
  - xsltFreeExtData
  - xsltFreeExtDataEntry
  - xsltNewExtElement
  - xsltFreeExtElement
  - xsltFreeExtElementEntry
  - xsltExtModuleRegisterDynamic
  - xsltExtModuleRegisterDynamic
  - xsltFreeExts
  - xsltRegisterExtPrefix
  - xsltRegisterExtFunction
  - xsltRegisterExtElement
  - xsltFreeCtxtExts
  - xsltStyleInitializeStylesheetModule
  - xsltStyleGetExtData
  - xsltStyleStylesheetLevelGetExtData
  - xsltGetExtData
  - xsltInitCtxtExt
  - xsltInitCtxtExts
  - xsltShutdownCtxtExt
  - xsltShutdownCtxtExts
  - xsltShutdownExt
  - xsltShutdownExts
  - xsltCheckExtPrefix
  - xsltCheckExtURI
  - xsltRegisterExtModuleFull
  - xsltRegisterExtModule
  - xsltUnregisterExtModule
  - xsltUnregisterAllExtModules
  - xsltXPathGetTransformContext
  - xsltRegisterExtModuleFunction
  - xsltExtModuleFunctionLookup
  - xsltUnregisterExtModuleFunction
  - xsltUnregisterAllExtModuleFunction
  - xsltFreeElemPreComp
  - xsltNewElemPreComp
  - xsltInitElemPreComp
  - xsltPreComputeExtModuleElement
  - xsltRegisterExtModuleElement
  - xsltExtElementLookup
  - xsltExtModuleElementLookup
  - xsltExtModuleElementPreComputeLookup
  - xsltUnregisterExtModuleElement
  - xsltUnregisterAllExtModuleElement
  - xsltRegisterExtModuleTopLevel
  - xsltExtModuleTopLevelLookup
  - xsltUnregisterExtModuleTopLevel
  - xsltUnregisterAllExtModuleTopLevel
  - xsltGetExtInfo
  - xsltExtFunctionTest
  - xsltExtElementPreCompTest
  - xsltExtElementTest
  - xsltExtInitTest
  - xsltExtShutdownTest
  - xsltExtStyleInitTest
  - xsltExtStyleShutdownTest
  - xsltRegisterTestModule
  - xsltHashScannerModuleFree
  - xsltInitGlobals
  - xsltCleanupGlobals
  - xsltDebugDumpExtensionsCallback
  - xsltDebugDumpExtModulesCallback
  - xsltDebugDumpExtensions
  source_file: /src/libxslt/libxslt/extensions.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PATH_MAX
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxslt/libxslt/extensions.c
      type_or_value: _MAX_PATH
    - item_type: preproc_def
      name: PATH_MAX
      pos:
        line_end: 321
        line_start: 320
        source_file: /src/libxslt/libxslt/extensions.c
      type_or_value: '4096'
    structs:
    - fields:
      - name: '*next'
        type: struct _xsltExtDef
      - name: '*prefix'
        type: xmlChar
      - name: '*URI'
        type: xmlChar
      - name: '*data'
        type: void
      item_type: struct
      name: _xsltExtDef
      pos:
        line_end: 67
        line_start: 62
        source_file: /src/libxslt/libxslt/extensions.c
    - fields:
      - name: initFunc
        type: xsltExtInitFunction
      - name: shutdownFunc
        type: xsltExtShutdownFunction
      - name: styleInitFunc
        type: xsltStyleExtInitFunction
      - name: styleShutdownFunc
        type: xsltStyleExtShutdownFunction
      item_type: struct
      name: _xsltExtModule
      pos:
        line_end: 76
        line_start: 71
        source_file: /src/libxslt/libxslt/extensions.c
    - fields:
      - name: extModule
        type: xsltExtModulePtr
      - name: '*extData'
        type: void
      item_type: struct
      name: _xsltExtData
      pos:
        line_end: 83
        line_start: 80
        source_file: /src/libxslt/libxslt/extensions.c
    - fields:
      - name: precomp
        type: xsltPreComputeFunction
      - name: transform
        type: xsltTransformFunction
      item_type: struct
      name: _xsltExtElement
      pos:
        line_end: 90
        line_start: 87
        source_file: /src/libxslt/libxslt/extensions.c
    - fields:
      - name: ctxt
        type: xsltTransformContextPtr
      - name: ret
        type: int
      item_type: struct
      name: _xsltInitExtCtxt
      pos:
        line_end: 958
        line_start: 955
        source_file: /src/libxslt/libxslt/extensions.c
    typedefs:
    - item_type: typedef
      name: xsltExtDef
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxslt/libxslt/extensions.c
      type: _xsltExtDef
    - item_type: typedef
      name: '*xsltExtDefPtr'
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/libxslt/libxslt/extensions.c
      type: xsltExtDef
    - item_type: typedef
      name: xsltExtModule
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxslt/libxslt/extensions.c
      type: _xsltExtModule
    - item_type: typedef
      name: '*xsltExtModulePtr'
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxslt/libxslt/extensions.c
      type: xsltExtModule
    - item_type: typedef
      name: xsltExtData
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/libxslt/libxslt/extensions.c
      type: _xsltExtData
    - item_type: typedef
      name: '*xsltExtDataPtr'
      pos:
        line_end: 79
        line_start: 79
        source_file: /src/libxslt/libxslt/extensions.c
      type: xsltExtData
    - item_type: typedef
      name: xsltExtElement
      pos:
        line_end: 85
        line_start: 85
        source_file: /src/libxslt/libxslt/extensions.c
      type: _xsltExtElement
    - item_type: typedef
      name: '*xsltExtElementPtr'
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/libxslt/libxslt/extensions.c
      type: xsltExtElement
    - item_type: typedef
      name: (*exsltRegisterFunction) (void)
      pos:
        line_end: 317
        line_start: 317
        source_file: /src/libxslt/libxslt/extensions.c
      type: void
    - item_type: typedef
      name: xsltInitExtCtxt
      pos:
        line_end: 954
        line_start: 954
        source_file: /src/libxslt/libxslt/extensions.c
      type: _xsltInitExtCtxt
    union: []
- function_names:
  - XSLT_REGISTER_FUNCTION_LOOKUP
  source_file: /src/libxslt/libxslt/functions.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/extra.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XSLT_LIBXSLT_NAMESPACE
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/libxslt/libxslt/extra.h
      type_or_value: ((xmlChar *) "http://xmlsoft.org/XSLT/namespace")
    - item_type: preproc_def
      name: XSLT_SAXON_NAMESPACE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxslt/libxslt/extra.h
      type_or_value: ((xmlChar *) "http://icl.com/saxon")
    - item_type: preproc_def
      name: XSLT_XT_NAMESPACE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxslt/libxslt/extra.h
      type_or_value: ((xmlChar *) "http://www.jclark.com/xt")
    - item_type: preproc_def
      name: XSLT_XALAN_NAMESPACE
      pos:
        line_end: 49
        line_start: 47
        source_file: /src/libxslt/libxslt/extra.h
      type_or_value: "((xmlChar *)\t\\\n\t                        \"org.apache.xalan.xslt.extensions.Redirect\")"
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/documents.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: "(*xsltDocLoaderFunc)\t\t(const xmlChar *URI,\n\t\t\t\t\t\t xmlDictPtr
        dict,\n\t\t\t\t\t\t int options,\n\t\t\t\t\t\t void *ctxt,\n\t\t\t\t\t\t xsltLoadType
        type)"
      pos:
        line_end: 79
        line_start: 75
        source_file: /src/libxslt/libxslt/documents.h
      type: xmlDocPtr
    union: []
- function_names: []
  source_file: /src/libxslt/libxslt/xsltlocale.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: '*xsltLocale'
      pos:
        line_end: 32
        line_start: 32
        source_file: /src/libxslt/libxslt/xsltlocale.h
      type: void
    - item_type: typedef
      name: xsltLocaleChar
      pos:
        line_end: 33
        line_start: 33
        source_file: /src/libxslt/libxslt/xsltlocale.h
      type: xmlChar
    union: []
- function_names:
  - XSLT_GET_IMPORT_PTR
  - XSLT_GET_IMPORT_INT
  source_file: /src/libxslt/libxslt/imports.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xsltICUNewLocale
  - xsltICUFreeLocale
  - xsltICUGenSortKey
  - main
  source_file: /src/libxslt/examples/xsltICUSort.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - parsePath
  - xsltprocExternalEntityLoader
  - my_gettimeofday
  - startTimer
  - endTimer
  - startTimer
  - endTimer
  - xsltSubtreeCheck
  - xsltReadFile
  - xsltProcess
  - usage
  - main
  source_file: /src/libxslt/xsltproc/xsltproc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: '0'
    - item_type: preproc_def
      name: MAX_PARAMETERS
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: '64'
    - item_type: preproc_def
      name: MAX_PATHS
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: '64'
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: ''';'''
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: ''':'''
    - item_type: preproc_def
      name: HAVE_GETTIMEOFDAY
      pos:
        line_end: 221
        line_start: 220
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: '1'
    - item_type: preproc_def
      name: gettimeofday
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: my_gettimeofday
    - item_type: preproc_def
      name: CLOCKS_PER_SEC
      pos:
        line_end: 268
        line_start: 267
        source_file: /src/libxslt/xsltproc/xsltproc.c
      type_or_value: '100'
    structs: []
    typedefs: []
    union: []
- function_names:
  - fooFunction
  - registerFooExtensions
  - shutdownFooExtensions
  - registerFooModule
  - threadRoutine1
  - threadRoutine2
  - main
  - main
  source_file: /src/libxslt/xsltproc/testThreads.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ARGC
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxslt/xsltproc/testThreads.c
      type_or_value: '20'
    - item_type: preproc_def
      name: EXT_NS
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxslt/xsltproc/testThreads.c
      type_or_value: BAD_CAST "http://foo.org"
    - item_type: preproc_def
      name: EXT_DATA
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/libxslt/xsltproc/testThreads.c
      type_or_value: '"bar"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - MAKE_8BIT_HANDLER
  - MAKE_ISO_HANDLER
  - MAKE_ISO_HANDLER
  - MAKE_HANDLER
  - xmlDetectCharEncoding
  - xmlCleanupEncodingAliases
  - xmlGetEncodingAlias
  - xmlAddEncodingAlias
  - xmlDelEncodingAlias
  - xmlCompareEncTableEntries
  - xmlParseCharEncodingInternal
  - xmlParseCharEncoding
  - xmlGetCharEncodingName
  - xmlNewCharEncodingHandler
  - xmlCharEncNewCustomHandler
  - xmlInitCharEncodingHandlers
  - xmlInitEncodingInternal
  - xmlCleanupCharEncodingHandlers
  - xmlRegisterCharEncodingHandler
  - xmlFindExtraHandler
  - xmlLookupCharEncodingHandler
  - xmlGetCharEncodingHandler
  - xmlCreateCharEncodingHandler
  - xmlOpenCharEncodingHandler
  - xmlFindCharEncodingHandler
  - xmlIconvConvert
  - xmlIconvFree
  - xmlEncodingMatch
  - xmlCharEncIconv
  - xmlUconvConvert
  - openIcuConverter
  - closeIcuConverter
  - xmlUconvFree
  - xmlCharEncUconv
  - xmlEncConvertError
  - xmlEncInputChunk
  - xmlEncOutputChunk
  - xmlCharEncFirstLine
  - xmlCharEncInput
  - xmlCharEncInFunc
  - xmlSerializeDecCharRef
  - xmlCharEncOutput
  - xmlCharEncOutFunc
  - xmlCharEncCloseFunc
  - xmlByteConsumed
  - asciiToAscii
  - latin1ToUTF8
  - xmlIsolat1ToUTF8
  - UTF8ToUTF8
  - UTF8ToLatin1
  - xmlUTF8ToIsolat1
  - UTF16LEToUTF8
  - UTF8ToUTF16LE
  - UTF8ToUTF16
  - UTF16BEToUTF8
  - UTF8ToUTF16BE
  - UTF8ToHtmlWrapper
  - Utf8ToEightBit
  - EightBitToUtf8
  source_file: /src/libxml2/encoding.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_HANDLER_STATIC
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxml2/encoding.c
      type_or_value: (1 << 0)
    - item_type: preproc_def
      name: XML_HANDLER_LEGACY
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxml2/encoding.c
      type_or_value: (1 << 1)
    - item_type: preproc_def
      name: UTF8ToLatin1
      pos:
        line_end: 267
        line_start: 266
        source_file: /src/libxml2/encoding.c
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: UTF8ToUTF16
      pos:
        line_end: 268
        line_start: 267
        source_file: /src/libxml2/encoding.c
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: UTF8ToUTF16LE
      pos:
        line_end: 269
        line_start: 268
        source_file: /src/libxml2/encoding.c
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: UTF8ToUTF16BE
      pos:
        line_end: 270
        line_start: 269
        source_file: /src/libxml2/encoding.c
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: UTF8ToHtmlWrapper
      pos:
        line_end: 279
        line_start: 278
        source_file: /src/libxml2/encoding.c
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: NUM_DEFAULT_HANDLERS
      pos:
        line_end: 355
        line_start: 353
        source_file: /src/libxml2/encoding.c
      type_or_value: (sizeof(defaultHandlers) / sizeof(defaultHandlers[0]))
    - item_type: preproc_def
      name: MAX_ENCODING_HANDLERS
      pos:
        line_end: 358
        line_start: 357
        source_file: /src/libxml2/encoding.c
      type_or_value: '50'
    - item_type: preproc_def
      name: ICU_PIVOT_BUF_SIZE
      pos:
        line_end: 1439
        line_start: 1438
        source_file: /src/libxml2/encoding.c
      type_or_value: '1024'
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: '*alias'
        type: char
      item_type: struct
      name: _xmlCharEncodingAlias
      pos:
        line_end: 60
        line_start: 57
        source_file: /src/libxml2/encoding.c
    - fields:
      - name: '*name'
        type: char
      - name: enc
        type: xmlCharEncoding
      item_type: struct
      name: xmlEncTableEntry
      pos:
        line_end: 71
        line_start: 68
        source_file: /src/libxml2/encoding.c
    - fields:
      - name: cd
        type: iconv_t
      item_type: struct
      name: xmlIconvCtxt
      pos:
        line_end: 1216
        line_start: 1214
        source_file: /src/libxml2/encoding.c
    - fields:
      - name: '*uconv'
        type: UConverter
      - name: '*utf8'
        type: UConverter
      - name: '*pivot_source'
        type: UChar
      - name: '*pivot_target'
        type: UChar
      - name: isInput
        type: int
      - name: pivot_buf[ICU_PIVOT_BUF_SIZE]
        type: UChar
      item_type: struct
      name: _uconv_t
      pos:
        line_end: 1448
        line_start: 1441
        source_file: /src/libxml2/encoding.c
    typedefs:
    - item_type: typedef
      name: xmlCharEncodingAlias
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libxml2/encoding.c
      type: _xmlCharEncodingAlias
    - item_type: typedef
      name: '*xmlCharEncodingAliasPtr'
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/encoding.c
      type: xmlCharEncodingAlias
    - item_type: typedef
      name: xmlUconvCtxt
      pos:
        line_end: 1440
        line_start: 1440
        source_file: /src/libxml2/encoding.c
      type: _uconv_t
    union: []
- function_names:
  - ignoreError
  - main
  source_file: /src/libxml2/testapi.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - parsePath
  - xmllintResourceLoader
  - parseXml
  - parseHtml
  - myFreeFunc
  - myMallocFunc
  - myReallocFunc
  - myStrdupFunc
  - getTime
  - startTimer
  - endTimer
  - isStandaloneDebug
  - hasInternalSubsetDebug
  - hasExternalSubsetDebug
  - internalSubsetDebug
  - externalSubsetDebug
  - resolveEntityDebug
  - getEntityDebug
  - getParameterEntityDebug
  - entityDeclDebug
  - attributeDeclDebug
  - elementDeclDebug
  - notationDeclDebug
  - unparsedEntityDeclDebug
  - setDocumentLocatorDebug
  - startDocumentDebug
  - endDocumentDebug
  - startElementDebug
  - endElementDebug
  - charactersDebug
  - referenceDebug
  - ignorableWhitespaceDebug
  - processingInstructionDebug
  - cdataBlockDebug
  - commentDebug
  - warningDebug
  - errorDebug
  - fatalErrorDebug
  - startElementNsDebug
  - endElementNsDebug
  - testSAX
  - processNode
  - streamFile
  - walkDoc
  - doXPathDump
  - doXPathQuery
  - parseFile
  - parseAndPrintFile
  - showVersion
  - usage
  - parseInteger
  - skipArgs
  - xmllintInit
  - xmllintOptWarnNoSupport
  - xmllintParseOptions
  - xmllintMain
  source_file: /src/libxml2/xmllint.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAP_FAILED
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/xmllint.c
      type_or_value: ((void *) -1)
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/libxml2/xmllint.c
      type_or_value: '0'
    - item_type: preproc_def
      name: STDOUT_FILENO
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libxml2/xmllint.c
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_PATHS
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libxml2/xmllint.c
      type_or_value: '64'
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/libxml2/xmllint.c
      type_or_value: ''';'''
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/libxml2/xmllint.c
      type_or_value: ''':'''
    - item_type: preproc_def
      name: XMLLINT_ABORT_ON_FAILURE
      pos:
        line_end: 461
        line_start: 460
        source_file: /src/libxml2/xmllint.c
      type_or_value: '0'
    structs:
    - fields:
      - name: sec
        type: xmlSeconds
      - name: usec
        type: int
      item_type: struct
      name: xmlTime
      pos:
        line_end: 112
        line_start: 109
        source_file: /src/libxml2/xmllint.c
    - fields:
      - name: '*errStream'
        type: FILE
      - name: ctxt
        type: xmlParserCtxtPtr
      - name: defaultResourceLoader
        type: xmlResourceLoader
      - name: version
        type: int
      - name: maxmem
        type: int
      - name: callbacks
        type: int
      - name: noout
        type: int
      - name: repeat
        type: int
      - name: progresult
        type: xmllintReturnCode
      - name: parseOptions
        type: int
      - name: appOptions
        type: unsigned
      - name: maxAmpl
        type: unsigned
      - name: '*paths[MAX_PATHS + 1]'
        type: xmlChar
      - name: nbpaths
        type: int
      - name: begin
        type: xmlTime
      - name: end
        type: xmlTime
      item_type: struct
      name: xmllintState
      pos:
        line_end: 229
        line_start: 170
        source_file: /src/libxml2/xmllint.c
    typedefs:
    - item_type: typedef
      name: xmlSeconds
      pos:
        line_end: 104
        line_start: 104
        source_file: /src/libxml2/xmllint.c
      type: __time64_t
    - item_type: typedef
      name: xmlSeconds
      pos:
        line_end: 106
        line_start: 106
        source_file: /src/libxml2/xmllint.c
      type: time_t
    union: []
- function_names:
  - va_copy
  - va_copy
  - DICT_FREE
  - xmlTextReaderErr
  - xmlTextReaderErrMemory
  - readerStrdup
  - constString
  - constQString
  - xmlTextReaderFreeProp
  - xmlTextReaderFreePropList
  - xmlTextReaderFreeNodeList
  - xmlTextReaderFreeNode
  - xmlTextReaderFreeDoc
  - xmlTextReaderStructuredRelay
  - xmlTextReaderEntPush
  - xmlTextReaderEntPop
  - xmlTextReaderStartElement
  - xmlTextReaderEndElement
  - xmlTextReaderStartElementNs
  - xmlTextReaderEndElementNs
  - xmlTextReaderCharacters
  - xmlTextReaderCDataBlock
  - xmlTextReaderPushData
  - xmlTextReaderValidatePush
  - xmlTextReaderValidateCData
  - xmlTextReaderValidatePop
  - xmlTextReaderValidateEntity
  - xmlTextReaderGetSuccessor
  - xmlTextReaderDoExpand
  - xmlTextReaderRead
  - xmlTextReaderReadState
  - xmlTextReaderExpand
  - xmlTextReaderNext
  - xmlTextReaderDumpCopy
  - xmlTextReaderReadInnerXml
  - xmlTextReaderReadOuterXml
  - xmlTextReaderReadString
  - xmlTextReaderNextTree
  - xmlTextReaderReadTree
  - xmlTextReaderNextSibling
  - xmlNewTextReader
  - xmlNewTextReaderFilename
  - xmlFreeTextReader
  - xmlTextReaderClose
  - xmlTextReaderGetAttributeNo
  - xmlTextReaderGetAttribute
  - xmlTextReaderGetAttributeNs
  - xmlTextReaderGetRemainder
  - xmlTextReaderLookupNamespace
  - xmlTextReaderMoveToAttributeNo
  - xmlTextReaderMoveToAttribute
  - xmlTextReaderMoveToAttributeNs
  - xmlTextReaderMoveToFirstAttribute
  - xmlTextReaderMoveToNextAttribute
  - xmlTextReaderMoveToElement
  - xmlTextReaderReadAttributeValue
  - xmlTextReaderConstEncoding
  - xmlTextReaderAttributeCount
  - xmlTextReaderNodeType
  - xmlTextReaderIsEmptyElement
  - xmlTextReaderLocalName
  - xmlTextReaderConstLocalName
  - xmlTextReaderName
  - xmlTextReaderConstName
  - xmlTextReaderPrefix
  - xmlTextReaderConstPrefix
  - xmlTextReaderNamespaceUri
  - xmlTextReaderConstNamespaceUri
  - xmlTextReaderBaseUri
  - xmlTextReaderConstBaseUri
  - xmlTextReaderDepth
  - xmlTextReaderHasAttributes
  - xmlTextReaderHasValue
  - xmlTextReaderValue
  - xmlTextReaderConstValue
  - xmlTextReaderIsDefault
  - xmlTextReaderQuoteChar
  - xmlTextReaderXmlLang
  - xmlTextReaderConstXmlLang
  - xmlTextReaderConstString
  - xmlTextReaderNormalization
  - xmlTextReaderSetParserProp
  - xmlTextReaderGetParserProp
  - xmlTextReaderGetParserLineNumber
  - xmlTextReaderGetParserColumnNumber
  - xmlTextReaderCurrentNode
  - xmlTextReaderPreserve
  - xmlTextReaderPreservePattern
  - xmlTextReaderCurrentDoc
  - xmlTextReaderRelaxNGSetSchema
  - xmlTextReaderLocator
  - xmlTextReaderSetSchema
  - xmlTextReaderRelaxNGValidateInternal
  - xmlTextReaderSchemaValidateInternal
  - xmlTextReaderSchemaValidateCtxt
  - xmlTextReaderSchemaValidate
  - xmlTextReaderRelaxNGValidateCtxt
  - xmlTextReaderRelaxNGValidate
  - xmlTextReaderIsNamespaceDecl
  - xmlTextReaderConstXmlVersion
  - xmlTextReaderStandalone
  - xmlTextReaderLocatorLineNumber
  - xmlTextReaderLocatorBaseURI
  - xmlTextReaderSetErrorHandler
  - xmlTextReaderSetStructuredErrorHandler
  - xmlTextReaderGetErrorHandler
  - xmlTextReaderSetResourceLoader
  - xmlTextReaderIsValid
  - xmlTextReaderSetup
  - xmlTextReaderSetMaxAmplification
  - xmlTextReaderGetLastError
  - xmlTextReaderByteConsumed
  - xmlReaderWalker
  - xmlReaderForDoc
  - xmlReaderForFile
  - xmlReaderForMemory
  - xmlReaderForFd
  - xmlReaderForIO
  - xmlReaderNewWalker
  - xmlReaderNewDoc
  - xmlReaderNewFile
  - xmlReaderNewMemory
  - xmlReaderNewFd
  - xmlReaderNewIO
  source_file: /src/libxml2/xmlreader.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FREE_NODES
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_FREE_NODES
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '100'
    - item_type: preproc_def
      name: CHUNK_SIZE
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '512'
    - item_type: preproc_def
      name: XML_TEXTREADER_INPUT
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_TEXTREADER_CTXT
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '2'
    - item_type: preproc_def
      name: NODE_IS_EMPTY
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '0x1'
    - item_type: preproc_def
      name: NODE_IS_PRESERVED
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '0x2'
    - item_type: preproc_def
      name: NODE_IS_SPRESERVED
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/libxml2/xmlreader.c
      type_or_value: '0x4'
    structs:
    - fields:
      - name: mode
        type: int
      - name: doc
        type: xmlDocPtr
      - name: validate
        type: xmlTextReaderValidate
      - name: allocs
        type: int
      - name: state
        type: xmlTextReaderState
      - name: ctxt
        type: xmlParserCtxtPtr
      - name: sax
        type: xmlSAXHandlerPtr
      - name: input
        type: xmlParserInputBufferPtr
      - name: startElement
        type: startElementSAXFunc
      - name: endElement
        type: endElementSAXFunc
      - name: startElementNs
        type: startElementNsSAX2Func
      - name: endElementNs
        type: endElementNsSAX2Func
      - name: characters
        type: charactersSAXFunc
      - name: cdataBlock
        type: cdataBlockSAXFunc
      - name: base
        type: unsigned int
      - name: cur
        type: unsigned int
      - name: node
        type: xmlNodePtr
      - name: curnode
        type: xmlNodePtr
      - name: depth
        type: int
      - name: faketext
        type: xmlNodePtr
      - name: preserve
        type: int
      - name: buffer
        type: xmlBufPtr
      - name: dict
        type: xmlDictPtr
      - name: ent
        type: xmlNodePtr
      - name: entNr
        type: int
      - name: entMax
        type: int
      - name: '*entTab'
        type: xmlNodePtr
      - name: errorFunc
        type: xmlTextReaderErrorFunc
      - name: '*errorFuncArg'
        type: void
      - name: preserves
        type: int
      - name: parserFlags
        type: int
      - name: sErrorFunc
        type: xmlStructuredErrorFunc
      - name: resourceLoader
        type: xmlResourceLoader
      - name: '*resourceCtxt'
        type: void
      item_type: struct
      name: _xmlTextReader
      pos:
        line_end: 166
        line_start: 97
        source_file: /src/libxml2/xmlreader.c
    typedefs: []
    union: []
- function_names:
  - xmlInitMutex
  - xmlNewMutex
  - xmlCleanupMutex
  - xmlFreeMutex
  - xmlMutexLock
  - xmlMutexUnlock
  - xmlInitRMutex
  - xmlNewRMutex
  - xmlCleanupRMutex
  - xmlFreeRMutex
  - xmlRMutexLock
  - xmlLockLibrary
  - xmlUnlockLibrary
  - xmlInitThreads
  - xmlCleanupThreads
  - xmlInitThreadsInternal
  - xmlCleanupThreadsInternal
  - xmlInitParserInternal
  - xmlInitParser
  - xmlCleanupParser
  - ATTRIBUTE_DESTRUCTOR::xmlDestructor
  source_file: /src/libxml2/threads.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SORT_CMP
  - SORT_SWAP
  - MAX
  - MIN
  - clzll
  - compute_minrun
  - SORT_CONCAT
  - SORT_MAKE_STR1
  - SORT_MAKE_STR
  - MAX
  - MIN
  - BINARY_INSERTION_FIND
  - BINARY_INSERTION_SORT_START
  - BINARY_INSERTION_SORT
  - REVERSE_ELEMENTS
  - COUNT_RUN
  - CHECK_INVARIANT
  - TIM_SORT_RESIZE
  - TIM_SORT_MERGE
  - TIM_SORT_COLLAPSE
  - PUSH_NEXT
  - TIM_SORT
  source_file: /src/libxml2/timsort.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TIM_SORT_STACK_SIZE
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libxml2/timsort.h
      type_or_value: '128'
    - item_type: preproc_def
      name: CLZ
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libxml2/timsort.h
      type_or_value: __builtin_clzll
    - item_type: preproc_def
      name: CLZ
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/libxml2/timsort.h
      type_or_value: clzll
    - item_type: preproc_def
      name: BINARY_INSERTION_FIND
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(binary_insertion_find)
    - item_type: preproc_def
      name: BINARY_INSERTION_SORT_START
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(binary_insertion_sort_start)
    - item_type: preproc_def
      name: BINARY_INSERTION_SORT
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(binary_insertion_sort)
    - item_type: preproc_def
      name: REVERSE_ELEMENTS
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(reverse_elements)
    - item_type: preproc_def
      name: COUNT_RUN
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(count_run)
    - item_type: preproc_def
      name: CHECK_INVARIANT
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(check_invariant)
    - item_type: preproc_def
      name: TIM_SORT
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(tim_sort)
    - item_type: preproc_def
      name: TIM_SORT_RESIZE
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(tim_sort_resize)
    - item_type: preproc_def
      name: TIM_SORT_MERGE
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(tim_sort_merge)
    - item_type: preproc_def
      name: TIM_SORT_COLLAPSE
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libxml2/timsort.h
      type_or_value: SORT_MAKE_STR(tim_sort_collapse)
    structs:
    - fields:
      - name: start
        type: size_t
      - name: length
        type: size_t
      item_type: struct
      name: TIM_SORT_RUN_T
      pos:
        line_end: 168
        line_start: 165
        source_file: /src/libxml2/timsort.h
    - fields:
      - name: alloc
        type: size_t
      - name: '*storage'
        type: SORT_TYPE
      item_type: struct
      name: TEMP_STORAGE_T
      pos:
        line_end: 355
        line_start: 352
        source_file: /src/libxml2/timsort.h
    typedefs:
    - item_type: typedef
      name: uint64_t
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/libxml2/timsort.h
      type: unsigned __int64
    union: []
- function_names:
  - glob
  - globfree
  - glob
  - fatalError
  - testErrorHandler
  - testStructuredErrorHandler
  - initializeLibxml2
  - baseFilename
  - resultFilename
  - checkTestFile
  - compareFiles
  - compareFileMem
  - loadMem
  - unloadMem
  - isStandaloneDebug
  - hasInternalSubsetDebug
  - hasExternalSubsetDebug
  - internalSubsetDebug
  - externalSubsetDebug
  - resolveEntityDebug
  - getEntityDebug
  - getParameterEntityDebug
  - entityDeclDebug
  - attributeDeclDebug
  - elementDeclDebug
  - notationDeclDebug
  - unparsedEntityDeclDebug
  - setDocumentLocatorDebug
  - startDocumentDebug
  - endDocumentDebug
  - startElementDebug
  - endElementDebug
  - charactersDebug
  - referenceDebug
  - ignorableWhitespaceDebug
  - processingInstructionDebug
  - cdataBlockDebug
  - commentDebug
  - warningDebug
  - errorDebug
  - fatalErrorDebug
  - startElementNsDebug
  - endElementNsDebug
  - htmlstartElementDebug
  - htmlcharactersDebug
  - htmlcdataDebug
  - hashFreeEntity
  - saxParseTest
  - startDocumentTokenizer
  - pendingTokenizer
  - internalSubsetTokenizer
  - startElementTokenizer
  - endElementTokenizer
  - charactersTokenizer
  - commentTokenizer
  - endDocumentTokenizer
  - htmlTokenizerTest
  - oldParseTest
  - pushParseTest
  - internalSubsetBnd
  - referenceBnd
  - charactersBnd
  - cdataBlockBnd
  - processingInstructionBnd
  - commentBnd
  - startElementBnd
  - endElementBnd
  - startElementNsBnd
  - endElementNsBnd
  - pushBoundaryTest
  - dumpNodeList
  - testParseContent
  - memParseTest
  - noentParseTest
  - errParseTest
  - fdParseTest
  - processNode
  - streamProcessTest
  - streamParseTest
  - walkerParseTest
  - streamMemParseTest
  - xpathCommonTest
  - xpathExprTest
  - xpathDocTest
  - xptrDocTest
  - xmlidDocTest
  - handleURI
  - uriCommonTest
  - uriParseTest
  - uriBaseTest
  - uripMatch
  - uripOpen
  - uripClose
  - uripRead
  - urip_checkURL
  - uriPathTest
  - schemasOneTest
  - schemasTest
  - rngOneTest
  - rngTest
  - rngStreamTest
  - schematronOneTest
  - schematronTest
  - patternNode
  - patternTest
  - load_xpath_expr
  - xxx_growBufferReentrant
  - parse_list
  - c14nRunTest
  - c14nCommonTest
  - c14nWithCommentTest
  - c14nWithoutCommentTest
  - c14nExcWithoutCommentTest
  - c14n11WithoutCommentTest
  - thread_specific_data
  - win32_thread_specific_data
  - testThread
  - testThread
  - threadsTest
  - testRegexp
  - regexpTest
  - scanNumber
  - automataTest
  - launchTests
  - runtest
  - main
  - main
  source_file: /src/libxml2/runtest.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_PARSE_HTML
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/libxml2/runtest.c
      type_or_value: 1 << 30
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/libxml2/runtest.c
      type_or_value: O_RDONLY | O_BINARY
    - item_type: preproc_def
      name: WR_FLAGS
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/libxml2/runtest.c
      type_or_value: O_WRONLY | O_CREAT | O_TRUNC | O_BINARY
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/libxml2/runtest.c
      type_or_value: O_RDONLY
    - item_type: preproc_def
      name: WR_FLAGS
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/libxml2/runtest.c
      type_or_value: O_WRONLY | O_CREAT | O_TRUNC
    - item_type: preproc_def
      name: GLOB_DOOFFS
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/libxml2/runtest.c
      type_or_value: '0'
    - item_type: preproc_def
      name: GLOB_DOOFFS
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/libxml2/runtest.c
      type_or_value: '0'
    - item_type: preproc_def
      name: MAX_ARGC
      pos:
        line_end: 4496
        line_start: 4495
        source_file: /src/libxml2/runtest.c
      type_or_value: '20'
    - item_type: preproc_def
      name: TEST_REPEAT_COUNT
      pos:
        line_end: 4549
        line_start: 4548
        source_file: /src/libxml2/runtest.c
      type_or_value: '500'
    structs:
    - fields:
      - name: '*desc'
        type: char
      - name: func
        type: functest
      - name: '*in'
        type: char
      - name: '*out'
        type: char
      - name: '*suffix'
        type: char
      - name: '*err'
        type: char
      - name: options
        type: int
      item_type: struct
      name: testDesc
      pos:
        line_end: 119
        line_start: 111
        source_file: /src/libxml2/runtest.c
    - fields:
      - name: gl_pathc
        type: size_t
      - name: '**gl_pathv'
        type: char
      - name: gl_offs
        type: size_t
      item_type: struct
      name: glob_t
      pos:
        line_end: 134
        line_start: 129
        source_file: /src/libxml2/runtest.c
    - fields:
      - name: gl_pathc
        type: size_t
      - name: '**gl_pathv'
        type: char
      - name: gl_offs
        type: size_t
      item_type: struct
      name: glob_t
      pos:
        line_end: 227
        line_start: 223
        source_file: /src/libxml2/runtest.c
    - fields:
      - name: '*filename'
        type: char
      - name: generalEntities
        type: xmlHashTablePtr
      - name: parameterEntities
        type: xmlHashTablePtr
      item_type: struct
      name: debugContext
      pos:
        line_end: 603
        line_start: 599
        source_file: /src/libxml2/runtest.c
    - fields:
      - name: dataState
        type: int
      - name: inCharacters
        type: int
      - name: '*startTag'
        type: xmlChar
      item_type: struct
      name: xmlTokenizerConfig
      pos:
        line_end: 1573
        line_start: 1569
        source_file: /src/libxml2/runtest.c
    - fields:
      - name: '*filename'
        type: char
      - name: okay
        type: int
      item_type: struct
      name: xmlThreadParams
      pos:
        line_end: 4500
        line_start: 4497
        source_file: /src/libxml2/runtest.c
    typedefs:
    - item_type: typedef
      name: "(*functest) (const char *filename, const char *result,\n                         const
        char *error, int options)"
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/libxml2/runtest.c
      type: int
    - item_type: typedef
      name: testDesc
      pos:
        line_end: 109
        line_start: 109
        source_file: /src/libxml2/runtest.c
      type: testDesc
    - item_type: typedef
      name: '*testDescPtr'
      pos:
        line_end: 110
        line_start: 110
        source_file: /src/libxml2/runtest.c
      type: testDesc
    union: []
- function_names:
  - reset_timout
  - check_time
  - hugeMatch
  - hugeOpen
  - hugeClose
  - fillFilling
  - hugeRead
  - crazyMatch
  - crazyOpen
  - crazyClose
  - crazyRead
  - initializeLibxml2
  - isStandaloneCallback
  - hasInternalSubsetCallback
  - hasExternalSubsetCallback
  - internalSubsetCallback
  - externalSubsetCallback
  - resolveEntityCallback
  - getEntityCallback
  - getParameterEntityCallback
  - entityDeclCallback
  - attributeDeclCallback
  - elementDeclCallback
  - notationDeclCallback
  - unparsedEntityDeclCallback
  - setDocumentLocatorCallback
  - startDocumentCallback
  - endDocumentCallback
  - startElementCallback
  - endElementCallback
  - charactersCallback
  - referenceCallback
  - ignorableWhitespaceCallback
  - processingInstructionCallback
  - cdataBlockCallback
  - commentCallback
  - warningCallback
  - errorCallback
  - fatalErrorCallback
  - startElementNsCallback
  - endElementNsCallback
  - saxTest
  - readerTest
  - launchTests
  - runtest
  - launchCrazySAX
  - launchCrazy
  - get_crazy_fail
  - runcrazy
  - main
  source_file: /src/libxml2/testlimits.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_TIME
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/testlimits.c
      type_or_value: '2 '
    - item_type: preproc_def
      name: CHUNK
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/libxml2/testlimits.c
      type_or_value: '4096'
    structs:
    - fields:
      - name: '*description'
        type: char
      - name: '*name'
        type: char
      - name: '*start'
        type: char
      - name: '*end'
        type: char
      item_type: struct
      name: hugeTest
      pos:
        line_end: 76
        line_start: 71
        source_file: /src/libxml2/testlimits.c
    - fields:
      - name: '*name'
        type: char
      - name: limit
        type: size_t
      - name: options
        type: int
      - name: fail
        type: int
      item_type: struct
      name: limitDesc
      pos:
        line_end: 1010
        line_start: 1005
        source_file: /src/libxml2/testlimits.c
    - fields:
      - name: '*desc'
        type: char
      - name: func
        type: functest
      item_type: struct
      name: testDesc
      pos:
        line_end: 1036
        line_start: 1033
        source_file: /src/libxml2/testlimits.c
    - fields:
      - name: test
        type: unsigned int
      - name: limit
        type: unsigned int
      - name: fail
        type: int
      - name: size
        type: size_t
      item_type: struct
      name: testException
      pos:
        line_end: 1055
        line_start: 1050
        source_file: /src/libxml2/testlimits.c
    typedefs:
    - item_type: typedef
      name: hugeTest
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxml2/testlimits.c
      type: hugeTest
    - item_type: typedef
      name: '*hugeTestPtr'
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxml2/testlimits.c
      type: hugeTest
    - item_type: typedef
      name: "(*functest) (const char *filename, size_t limit, int options,\n                         int
        fail)"
      pos:
        line_end: 1001
        line_start: 1000
        source_file: /src/libxml2/testlimits.c
      type: int
    - item_type: typedef
      name: limitDesc
      pos:
        line_end: 1003
        line_start: 1003
        source_file: /src/libxml2/testlimits.c
      type: limitDesc
    - item_type: typedef
      name: '*limitDescPtr'
      pos:
        line_end: 1004
        line_start: 1004
        source_file: /src/libxml2/testlimits.c
      type: limitDesc
    - item_type: typedef
      name: testDesc
      pos:
        line_end: 1031
        line_start: 1031
        source_file: /src/libxml2/testlimits.c
      type: testDesc
    - item_type: typedef
      name: '*testDescPtr'
      pos:
        line_end: 1032
        line_start: 1032
        source_file: /src/libxml2/testlimits.c
      type: testDesc
    - item_type: typedef
      name: testException
      pos:
        line_end: 1048
        line_start: 1048
        source_file: /src/libxml2/testlimits.c
      type: testException
    - item_type: typedef
      name: '*testExceptionPtr'
      pos:
        line_end: 1049
        line_start: 1049
        source_file: /src/libxml2/testlimits.c
      type: testException
    union: []
- function_names:
  - xmlIsCatastrophicError
  - xmlVSetError
  - xmlSetError
  - xmlVUpdateError
  - xmlGenericErrorDefaultFunc
  - xmlSetGenericErrorFunc
  - xmlSetStructuredErrorFunc
  - xmlParserPrintFileInfo
  - xmlParserPrintFileContextInternal
  - xmlParserPrintFileContext
  - xmlFormatError
  - xmlRaiseMemoryError
  - xmlVRaiseError
  - xmlRaiseError
  - xmlVFormatLegacyError
  - xmlParserError
  - xmlParserWarning
  - xmlParserValidityError
  - xmlParserValidityWarning
  - xmlGetLastError
  - xmlResetError
  - xmlResetLastError
  - xmlCopyError
  - xmlErrString
  - xmlVPrintErrorMessage
  - xmlPrintErrorMessage
  - xmlAbort
  source_file: /src/libxml2/error.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - errorHandler
  - testDocumentRangeByte1
  - testDocumentRangeByte2
  - testDocumentRanges
  - testCurrentChar
  - testCharRangeByte1
  - testCharRangeByte2
  - testCharRangeByte3
  - testCharRangeByte4
  - testCharRanges
  - testUserEncoding
  - convert
  - testUserEncodingPush
  - testUTF8Chunks
  - bufDump
  - bufCompare
  - testEncHandler
  - testUTF16
  - main
  source_file: /src/libxml2/testchar.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - S_ISDIR
  - S_ISDIR
  - S_ISDIR
  - xmlSerializeHexCharRef
  - xmlEscapeText
  - xmlSerializeText
  - xmlIOErr
  - __xmlIOWin32UTF8ToWChar
  - xmlNormalizeWindowsPath
  - xmlCheckFilename
  - xmlConvertUriToPath
  - xmlFdOpen
  - xmlFdRead
  - xmlFdWrite
  - xmlFdFree
  - xmlFdClose
  - xmlFileMatch
  - xmlFileOpenSafe
  - xmlFileOpen
  - xmlFileRead
  - xmlFileWrite
  - xmlFileFlush
  - xmlFileClose
  - xmlBufferWrite
  - xmlGzfileRead
  - xmlGzfileWrite
  - xmlGzfileClose
  - xmlIODefaultMatch
  - xmlSeek
  - xmlInputFromFd
  - xmlOutputDefaultOpen
  - xmlAllocParserInputBuffer
  - xmlAllocOutputBuffer
  - xmlFreeParserInputBuffer
  - xmlOutputBufferClose
  - xmlParserInputBufferCreateUrl
  - __xmlParserInputBufferCreateFilename
  - xmlParserInputBufferCreateFilename
  - __xmlOutputBufferCreateFilename
  - xmlOutputBufferCreateFilename
  - xmlParserInputBufferCreateFile
  - xmlOutputBufferCreateFile
  - xmlOutputBufferCreateBuffer
  - xmlOutputBufferGetContent
  - xmlOutputBufferGetSize
  - xmlParserInputBufferCreateFd
  - xmlMemRead
  - xmlMemClose
  - xmlNewInputBufferMemory
  - xmlParserInputBufferCreateMem
  - xmlParserInputBufferCreateStatic
  - xmlNewInputBufferString
  - xmlOutputBufferCreateFd
  - xmlParserInputBufferCreateIO
  - xmlOutputBufferCreateIO
  - xmlParserInputBufferCreateFilenameDefault
  - xmlOutputBufferCreateFilenameDefault
  - xmlParserInputBufferPush
  - endOfInput
  - xmlParserInputBufferGrow
  - xmlParserInputBufferRead
  - xmlOutputBufferWrite
  - xmlOutputBufferWriteEscape
  - xmlOutputBufferWriteString
  - xmlOutputBufferWriteQuotedString
  - xmlOutputBufferFlush
  - xmlParserGetDirectory
  - IS_XMLPGD_SEP
  - IS_XMLPGD_SEP
  - xmlNoNetExists
  - xmlInitIOCallbacks
  - xmlRegisterInputCallbacks
  - xmlRegisterDefaultInputCallbacks
  - xmlPopInputCallbacks
  - xmlCleanupInputCallbacks
  - xmlRegisterOutputCallbacks
  - xmlRegisterDefaultOutputCallbacks
  - xmlPopOutputCallbacks
  - xmlCleanupOutputCallbacks
  source_file: /src/libxml2/xmlIO.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxml2/xmlIO.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: MINLEN
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxml2/xmlIO.c
      type_or_value: '4000'
    - item_type: preproc_def
      name: STDOUT_FILENO
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxml2/xmlIO.c
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_INPUT_CALLBACK
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/libxml2/xmlIO.c
      type_or_value: '10'
    - item_type: preproc_def
      name: MAX_OUTPUT_CALLBACK
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/libxml2/xmlIO.c
      type_or_value: '10'
    structs:
    - fields:
      - name: matchcallback
        type: xmlInputMatchCallback
      - name: opencallback
        type: xmlInputOpenCallback
      - name: readcallback
        type: xmlInputReadCallback
      - name: closecallback
        type: xmlInputCloseCallback
      item_type: struct
      name: _xmlInputCallback
      pos:
        line_end: 77
        line_start: 72
        source_file: /src/libxml2/xmlIO.c
    - fields:
      - name: matchcallback
        type: xmlOutputMatchCallback
      - name: opencallback
        type: xmlOutputOpenCallback
      - name: writecallback
        type: xmlOutputWriteCallback
      - name: closecallback
        type: xmlOutputCloseCallback
      item_type: struct
      name: _xmlOutputCallback
      pos:
        line_end: 97
        line_start: 92
        source_file: /src/libxml2/xmlIO.c
    - fields:
      - name: fd
        type: int
      item_type: struct
      name: xmlFdIOCtxt
      pos:
        line_end: 712
        line_start: 710
        source_file: /src/libxml2/xmlIO.c
    - fields:
      - name: '*cur'
        type: char
      - name: size
        type: size_t
      item_type: struct
      name: xmlMemIOCtxt
      pos:
        line_end: 1890
        line_start: 1887
        source_file: /src/libxml2/xmlIO.c
    typedefs:
    - item_type: typedef
      name: xmlFileOffset
      pos:
        line_end: 1150
        line_start: 1150
        source_file: /src/libxml2/xmlIO.c
      type: __int64
    - item_type: typedef
      name: xmlFileOffset
      pos:
        line_end: 1152
        line_start: 1152
        source_file: /src/libxml2/xmlIO.c
      type: off_t
    union: []
- function_names:
  - va_copy
  - va_copy
  - xmlWriterErrMsg
  - xmlWriterErrMsgInt
  - xmlNewTextWriter
  - xmlNewTextWriterFilename
  - xmlNewTextWriterMemory
  - xmlNewTextWriterPushParser
  - xmlNewTextWriterDoc
  - xmlNewTextWriterTree
  - xmlFreeTextWriter
  - xmlTextWriterStartDocument
  - xmlTextWriterEndDocument
  - xmlTextWriterStartComment
  - xmlTextWriterEndComment
  - xmlTextWriterWriteFormatComment
  - xmlTextWriterWriteVFormatComment
  - xmlTextWriterWriteComment
  - xmlTextWriterStartElement
  - xmlTextWriterStartElementNS
  - xmlTextWriterEndElement
  - xmlTextWriterFullEndElement
  - xmlTextWriterWriteFormatRaw
  - xmlTextWriterWriteVFormatRaw
  - xmlTextWriterWriteRawLen
  - xmlTextWriterWriteRaw
  - xmlTextWriterWriteFormatString
  - xmlTextWriterWriteVFormatString
  - xmlTextWriterWriteString
  - xmlOutputBufferWriteBase64
  - xmlTextWriterWriteBase64
  - xmlOutputBufferWriteBinHex
  - xmlTextWriterWriteBinHex
  - xmlTextWriterStartAttribute
  - xmlTextWriterStartAttributeNS
  - xmlTextWriterEndAttribute
  - xmlTextWriterWriteFormatAttribute
  - xmlTextWriterWriteVFormatAttribute
  - xmlTextWriterWriteAttribute
  - xmlTextWriterWriteFormatAttributeNS
  - xmlTextWriterWriteVFormatAttributeNS
  - xmlTextWriterWriteAttributeNS
  - xmlTextWriterWriteFormatElement
  - xmlTextWriterWriteVFormatElement
  - xmlTextWriterWriteElement
  - xmlTextWriterWriteFormatElementNS
  - xmlTextWriterWriteVFormatElementNS
  - xmlTextWriterWriteElementNS
  - xmlTextWriterStartPI
  - xmlTextWriterEndPI
  - xmlTextWriterWriteFormatPI
  - xmlTextWriterWriteVFormatPI
  - xmlTextWriterWritePI
  - xmlTextWriterStartCDATA
  - xmlTextWriterEndCDATA
  - xmlTextWriterWriteFormatCDATA
  - xmlTextWriterWriteVFormatCDATA
  - xmlTextWriterWriteCDATA
  - xmlTextWriterStartDTD
  - xmlTextWriterEndDTD
  - xmlTextWriterWriteFormatDTD
  - xmlTextWriterWriteVFormatDTD
  - xmlTextWriterWriteDTD
  - xmlTextWriterStartDTDElement
  - xmlTextWriterEndDTDElement
  - xmlTextWriterWriteFormatDTDElement
  - xmlTextWriterWriteVFormatDTDElement
  - xmlTextWriterWriteDTDElement
  - xmlTextWriterStartDTDAttlist
  - xmlTextWriterEndDTDAttlist
  - xmlTextWriterWriteFormatDTDAttlist
  - xmlTextWriterWriteVFormatDTDAttlist
  - xmlTextWriterWriteDTDAttlist
  - xmlTextWriterStartDTDEntity
  - xmlTextWriterEndDTDEntity
  - xmlTextWriterWriteFormatDTDInternalEntity
  - xmlTextWriterWriteVFormatDTDInternalEntity
  - xmlTextWriterWriteDTDEntity
  - xmlTextWriterWriteDTDInternalEntity
  - xmlTextWriterWriteDTDExternalEntity
  - xmlTextWriterWriteDTDExternalEntityContents
  - xmlTextWriterWriteDTDNotation
  - xmlTextWriterFlush
  - xmlTextWriterClose
  - xmlFreeTextWriterStackEntry
  - xmlCmpTextWriterStackEntry
  - xmlTextWriterOutputNSDecl
  - xmlFreeTextWriterNsStackEntry
  - xmlCmpTextWriterNsStackEntry
  - xmlTextWriterWriteDocCallback
  - xmlTextWriterCloseDocCallback
  - xmlTextWriterVSprintf
  - xmlTextWriterStartDocumentCallback
  - xmlTextWriterSetIndent
  - xmlTextWriterSetIndentString
  - xmlTextWriterSetQuoteChar
  - xmlTextWriterWriteIndent
  - xmlTextWriterHandleStateDependencies
  source_file: /src/libxml2/xmlwriter.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: B64LINELEN
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/xmlwriter.c
      type_or_value: '72'
    - item_type: preproc_def
      name: B64CRLF
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/xmlwriter.c
      type_or_value: '"\r\n"'
    structs:
    - fields:
      - name: '*name'
        type: xmlChar
      - name: state
        type: xmlTextWriterState
      item_type: struct
      name: _xmlTextWriterStackEntry
      pos:
        line_end: 70
        line_start: 67
        source_file: /src/libxml2/xmlwriter.c
    - fields:
      - name: '*prefix'
        type: xmlChar
      - name: '*uri'
        type: xmlChar
      - name: elem
        type: xmlLinkPtr
      item_type: struct
      name: _xmlTextWriterNsStackEntry
      pos:
        line_end: 77
        line_start: 73
        source_file: /src/libxml2/xmlwriter.c
    - fields:
      - name: out
        type: xmlOutputBufferPtr
      - name: nodes
        type: xmlListPtr
      - name: nsstack
        type: xmlListPtr
      - name: level
        type: int
      - name: indent
        type: int
      - name: doindent
        type: int
      - name: '*ichar'
        type: xmlChar
      - name: qchar
        type: char
      - name: ctxt
        type: xmlParserCtxtPtr
      - name: no_doc_free
        type: int
      - name: doc
        type: xmlDocPtr
      item_type: struct
      name: _xmlTextWriter
      pos:
        line_end: 91
        line_start: 79
        source_file: /src/libxml2/xmlwriter.c
    typedefs:
    - item_type: typedef
      name: xmlTextWriterStackEntry
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/libxml2/xmlwriter.c
      type: _xmlTextWriterStackEntry
    - item_type: typedef
      name: xmlTextWriterNsStackEntry
      pos:
        line_end: 72
        line_start: 72
        source_file: /src/libxml2/xmlwriter.c
      type: _xmlTextWriterNsStackEntry
    union: []
- function_names:
  - XML_STREAM_XS_IDC
  - XML_STREAM_XS_IDC_SEL
  - XML_STREAM_XS_IDC_FIELD
  - XML_PAT_COPY_NSNAME
  - XML_PAT_FREE_STRING
  - xmlNewPattern
  - xmlFreePattern
  - xmlFreePatternInternal
  - xmlFreePatternList
  - xmlNewPatParserContext
  - xmlFreePatParserContext
  - xmlPatternGrow
  - xmlPatternAdd
  - xmlReversePattern
  - xmlPatPushState
  - xmlPatMatch
  - SKIP
  - NXT
  - PEEKPREV
  - PUSH
  - xmlPatScanName
  - xmlPatScanNCName
  - xmlCompileAttributeTest
  - xmlCompileStepPattern
  - xmlCompilePathPattern
  - xmlCompileIDCXPathPath
  - xmlNewStreamComp
  - xmlFreeStreamComp
  - xmlStreamCompAddStep
  - xmlStreamCompile
  - xmlNewStreamCtxt
  - xmlFreeStreamCtxt
  - xmlStreamCtxtAddState
  - xmlStreamPushInternal
  - xmlStreamPush
  - xmlStreamPushNode
  - xmlStreamPushAttr
  - xmlStreamPop
  - xmlStreamWantsAnyNode
  - xmlPatternCompileSafe
  - xmlPatterncompile
  - xmlPatternMatch
  - xmlPatternGetStreamCtxt
  - xmlPatternStreamable
  - xmlPatternMaxDepth
  - xmlPatternMinDepth
  - xmlPatternFromRoot
  source_file: /src/libxml2/pattern.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_STREAM_STEP_DESC
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxml2/pattern.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_STREAM_STEP_FINAL
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/libxml2/pattern.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_STREAM_STEP_ROOT
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/pattern.c
      type_or_value: '4'
    - item_type: preproc_def
      name: XML_STREAM_STEP_ATTR
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxml2/pattern.c
      type_or_value: '8'
    - item_type: preproc_def
      name: XML_STREAM_STEP_NODE
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxml2/pattern.c
      type_or_value: '16'
    - item_type: preproc_def
      name: XML_STREAM_STEP_IN_SET
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxml2/pattern.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XML_STREAM_FINAL_IS_ANY_NODE
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libxml2/pattern.c
      type_or_value: 1<<14
    - item_type: preproc_def
      name: XML_STREAM_FROM_ROOT
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libxml2/pattern.c
      type_or_value: 1<<15
    - item_type: preproc_def
      name: XML_STREAM_DESC
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/libxml2/pattern.c
      type_or_value: 1<<16
    - item_type: preproc_def
      name: XML_STREAM_ANY_NODE
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libxml2/pattern.c
      type_or_value: '100'
    - item_type: preproc_def
      name: XML_PATTERN_NOTPATTERN
      pos:
        line_end: 73
        line_start: 70
        source_file: /src/libxml2/pattern.c
      type_or_value: "(XML_PATTERN_XPATH | \\\n\t\t\t\t XML_PATTERN_XSSEL | \\\n\t\t\t\t
        XML_PATTERN_XSFIELD)"
    - item_type: preproc_def
      name: PAT_FROM_ROOT
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/libxml2/pattern.c
      type_or_value: (1<<8)
    - item_type: preproc_def
      name: PAT_FROM_CUR
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/libxml2/pattern.c
      type_or_value: (1<<9)
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 658
        line_start: 657
        source_file: /src/libxml2/pattern.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: CUR_PTR
      pos:
        line_end: 662
        line_start: 661
        source_file: /src/libxml2/pattern.c
      type_or_value: ctxt->cur
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 665
        line_start: 663
        source_file: /src/libxml2/pattern.c
      type_or_value: while (IS_BLANK_CH(CUR)) NEXT
    - item_type: preproc_def
      name: CURRENT
      pos:
        line_end: 667
        line_start: 666
        source_file: /src/libxml2/pattern.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 668
        line_start: 667
        source_file: /src/libxml2/pattern.c
      type_or_value: '((*ctxt->cur) ?  ctxt->cur++: ctxt->cur)'
    structs:
    - fields:
      - name: flags
        type: int
      - name: '*name'
        type: xmlChar
      - name: '*ns'
        type: xmlChar
      - name: nodeType
        type: int
      item_type: struct
      name: _xmlStreamStep
      pos:
        line_end: 95
        line_start: 90
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: '*dict'
        type: xmlDict
      - name: nbStep
        type: int
      - name: maxStep
        type: int
      - name: steps
        type: xmlStreamStepPtr
      - name: flags
        type: int
      item_type: struct
      name: _xmlStreamComp
      pos:
        line_end: 105
        line_start: 99
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: '*next'
        type: struct _xmlStreamCtxt
      - name: comp
        type: xmlStreamCompPtr
      - name: nbState
        type: int
      - name: maxState
        type: int
      - name: level
        type: int
      - name: '*states'
        type: int
      - name: flags
        type: int
      - name: blockLevel
        type: int
      item_type: struct
      name: _xmlStreamCtxt
      pos:
        line_end: 116
        line_start: 107
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: step
        type: int
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlStepState
      pos:
        line_end: 142
        line_start: 139
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: nbstates
        type: int
      - name: maxstates
        type: int
      - name: states
        type: xmlStepStatePtr
      item_type: struct
      name: _xmlStepStates
      pos:
        line_end: 150
        line_start: 146
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: op
        type: xmlPatOp
      - name: '*value'
        type: xmlChar
      - name: '*value2'
        type: xmlChar
      item_type: struct
      name: _xmlStepOp
      pos:
        line_end: 158
        line_start: 154
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: '*data'
        type: void
      - name: dict
        type: xmlDictPtr
      - name: '*next'
        type: struct _xmlPattern
      - name: '*pattern'
        type: xmlChar
      - name: flags
        type: int
      - name: nbStep
        type: int
      - name: maxStep
        type: int
      - name: steps
        type: xmlStepOpPtr
      - name: stream
        type: xmlStreamCompPtr
      item_type: struct
      name: _xmlPattern
      pos:
        line_end: 173
        line_start: 163
        source_file: /src/libxml2/pattern.c
    - fields:
      - name: '*cur'
        type: xmlChar
      - name: '*base'
        type: xmlChar
      - name: error
        type: int
      - name: dict
        type: xmlDictPtr
      - name: comp
        type: xmlPatternPtr
      - name: elem
        type: xmlNodePtr
      - name: '**namespaces'
        type: xmlChar
      - name: nb_namespaces
        type: int
      item_type: struct
      name: _xmlPatParserContext
      pos:
        line_end: 186
        line_start: 177
        source_file: /src/libxml2/pattern.c
    typedefs:
    - item_type: typedef
      name: xmlStreamStep
      pos:
        line_end: 88
        line_start: 88
        source_file: /src/libxml2/pattern.c
      type: _xmlStreamStep
    - item_type: typedef
      name: '*xmlStreamStepPtr'
      pos:
        line_end: 89
        line_start: 89
        source_file: /src/libxml2/pattern.c
      type: xmlStreamStep
    - item_type: typedef
      name: xmlStreamComp
      pos:
        line_end: 97
        line_start: 97
        source_file: /src/libxml2/pattern.c
      type: _xmlStreamComp
    - item_type: typedef
      name: '*xmlStreamCompPtr'
      pos:
        line_end: 98
        line_start: 98
        source_file: /src/libxml2/pattern.c
      type: xmlStreamComp
    - item_type: typedef
      name: xmlStepState
      pos:
        line_end: 137
        line_start: 137
        source_file: /src/libxml2/pattern.c
      type: _xmlStepState
    - item_type: typedef
      name: '*xmlStepStatePtr'
      pos:
        line_end: 138
        line_start: 138
        source_file: /src/libxml2/pattern.c
      type: xmlStepState
    - item_type: typedef
      name: xmlStepStates
      pos:
        line_end: 144
        line_start: 144
        source_file: /src/libxml2/pattern.c
      type: _xmlStepStates
    - item_type: typedef
      name: '*xmlStepStatesPtr'
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/libxml2/pattern.c
      type: xmlStepStates
    - item_type: typedef
      name: xmlStepOp
      pos:
        line_end: 152
        line_start: 152
        source_file: /src/libxml2/pattern.c
      type: _xmlStepOp
    - item_type: typedef
      name: '*xmlStepOpPtr'
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/libxml2/pattern.c
      type: xmlStepOp
    - item_type: typedef
      name: xmlPatParserContext
      pos:
        line_end: 175
        line_start: 175
        source_file: /src/libxml2/pattern.c
      type: _xmlPatParserContext
    - item_type: typedef
      name: '*xmlPatParserContextPtr'
      pos:
        line_end: 176
        line_start: 176
        source_file: /src/libxml2/pattern.c
      type: xmlPatParserContext
    union: []
- function_names:
  - xmlLinkDeallocator
  - xmlLinkCompare
  - xmlListLowerSearch
  - xmlListHigherSearch
  - xmlListLinkSearch
  - xmlListLinkReverseSearch
  - xmlListCreate
  - xmlListSearch
  - xmlListReverseSearch
  - xmlListInsert
  - xmlListAppend
  - xmlListDelete
  - xmlListRemoveFirst
  - xmlListRemoveLast
  - xmlListRemoveAll
  - xmlListClear
  - xmlListEmpty
  - xmlListFront
  - xmlListEnd
  - xmlListSize
  - xmlListPopFront
  - xmlListPopBack
  - xmlListPushFront
  - xmlListPushBack
  - xmlLinkGetData
  - xmlListReverse
  - xmlListSort
  - xmlListWalk
  - xmlListReverseWalk
  - xmlListMerge
  - xmlListDup
  - xmlListCopy
  source_file: /src/libxml2/list.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*next'
        type: struct _xmlLink
      - name: '*prev'
        type: struct _xmlLink
      - name: '*data'
        type: void
      item_type: struct
      name: _xmlLink
      pos:
        line_end: 35
        line_start: 30
        source_file: /src/libxml2/list.c
    - fields:
      - name: sentinel
        type: xmlLinkPtr
      - name: (*linkDeallocator)(xmlLinkPtr )
        type: void
      - name: (*linkCompare)(const void *, const void*)
        type: int
      item_type: struct
      name: _xmlList
      pos:
        line_end: 42
        line_start: 37
        source_file: /src/libxml2/list.c
    typedefs: []
    union: []
- function_names:
  - xmlNanoHTTPInit
  - xmlNanoHTTPCleanup
  - xmlNanoHTTPScanProxy
  - xmlNanoHTTPOpen
  - xmlNanoHTTPOpenRedir
  - xmlNanoHTTPRead
  - xmlNanoHTTPClose
  - xmlNanoHTTPMethodRedir
  - xmlNanoHTTPMethod
  - xmlNanoHTTPFetch
  - xmlNanoHTTPSave
  - xmlNanoHTTPReturnCode
  - xmlNanoHTTPAuthHeader
  - xmlNanoHTTPContentLength
  - xmlNanoHTTPRedir
  - xmlNanoHTTPEncoding
  - xmlNanoHTTPMimeType
  - xmlIOHTTPMatch
  - xmlIOHTTPOpen
  - xmlIOHTTPOpenW
  - xmlIOHTTPRead
  - xmlIOHTTPClose
  - xmlRegisterHTTPPostCallbacks
  source_file: /src/libxml2/nanohttp.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - hello_world
  source_file: /src/libxml2/testdso.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmllintLsCountNode
  - xmllintLsOneNode
  - xmllintShellList
  - xmllintShellBase
  - xmllintShellSetBase
  - xmllintShellRegisterNamespace
  - xmllintShellRegisterRootNamespaces
  - xmllintShellGrep
  - xmllintShellDir
  - xmllintShellSetContent
  - xmllintShellPrintf
  - xmllintShellRNGValidate
  - xmllintShellCat
  - xmllintShellLoad
  - xmllintShellWrite
  - xmllintShellSave
  - xmllintShellValidate
  - xmllintShellDu
  - xmllintShellPwd
  - xmllintShellReadline
  - xmllintShell
  source_file: /src/libxml2/shell.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/shell.c
      type_or_value: '0'
    - item_type: preproc_def
      name: MAX_PROMPT_SIZE
      pos:
        line_end: 1014
        line_start: 1013
        source_file: /src/libxml2/shell.c
      type_or_value: '500'
    - item_type: preproc_def
      name: MAX_ARG_SIZE
      pos:
        line_end: 1015
        line_start: 1014
        source_file: /src/libxml2/shell.c
      type_or_value: '400'
    - item_type: preproc_def
      name: MAX_COMMAND_SIZE
      pos:
        line_end: 1016
        line_start: 1015
        source_file: /src/libxml2/shell.c
      type_or_value: '100'
    structs:
    - fields:
      - name: '*filename'
        type: char
      - name: doc
        type: xmlDocPtr
      - name: node
        type: xmlNodePtr
      - name: loaded
        type: int
      - name: '*output'
        type: FILE
      item_type: struct
      name: _xmllintShellCtxt
      pos:
        line_end: 61
        line_start: 52
        source_file: /src/libxml2/shell.c
    typedefs:
    - item_type: typedef
      name: xmllintShellCtxt
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/libxml2/shell.c
      type: _xmllintShellCtxt
    - item_type: typedef
      name: '*xmllintShellCtxtPtr'
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/libxml2/shell.c
      type: xmllintShellCtxt
    union: []
- function_names:
  - xmlErrMemory
  - xmlErrAttributeDup
  - xmlFatalErrMsg
  - xmlWarningMsg
  - xmlValidityError
  - xmlFatalErrMsgInt
  - xmlFatalErrMsgStrIntStr
  - xmlFatalErrMsgStr
  - xmlErrMsgStr
  - xmlNsErr
  - xmlNsWarn
  - xmlParserEntityCheck
  - xmlHasFeature
  - xmlSBufInit
  - xmlSBufGrow
  - xmlSBufAddString
  - xmlSBufAddCString
  - xmlSBufAddChar
  - xmlSBufAddReplChar
  - xmlSBufReportError
  - xmlSBufFinish
  - xmlSBufCleanup
  - xmlUTF8MultibyteLen
  - xmlCtxtInitializeLate
  - xmlAttrNormalizeSpace
  - xmlAddDefAttrs
  - xmlAddSpecialAttr
  - xmlCleanSpecialAttrCallback
  - xmlCleanSpecialAttr
  - xmlCheckLanguageID
  - xmlParserNsCreate
  - xmlParserNsFree
  - xmlParserNsReset
  - xmlParserNsStartElement
  - xmlParserNsLookup
  - xmlParserNsLookupUri
  - xmlParserNsLookupSax
  - xmlParserNsUpdateSax
  - xmlParserNsGrow
  - xmlParserNsPush
  - xmlParserNsPop
  - xmlCtxtGrowAttrs
  - xmlCtxtPushInput
  - xmlCtxtPopInput
  - nodePush
  - nodePop
  - nameNsPush
  - nameNsPop
  - namePop
  - spacePush
  - spacePop
  - NXT
  - CMP4
  - CMP5
  - CMP6
  - CMP7
  - CMP8
  - CMP9
  - CMP10
  - SKIP
  - SKIPL
  - NEXTL
  - COPY_BUF
  - xmlCurrentCharRecover
  - xmlSkipBlankChars
  - xmlPopPE
  - xmlSkipBlankCharsPE
  - xmlPopInput
  - xmlPushInput
  - xmlParseCharRef
  - xmlParseStringCharRef
  - xmlParserHandlePEReference
  - xmlStringLenDecodeEntities
  - xmlStringDecodeEntities
  - areBlanks
  - xmlSplitQName
  - xmlIsNameStartCharNew
  - xmlIsNameCharNew
  - xmlIsNameStartCharOld
  - xmlIsNameCharOld
  - xmlIsNameStartChar
  - xmlIsNameChar
  - xmlScanName
  - xmlParseNameComplex
  - xmlParseName
  - xmlParseNCNameComplex
  - xmlParseNCName
  - xmlParseNameAndCompare
  - xmlParseStringName
  - xmlParseNmtoken
  - xmlExpandPEsInEntityValue
  - xmlParseEntityValue
  - xmlCheckEntityInAttValue
  - xmlExpandEntityInAttValue
  - xmlExpandEntitiesInAttValue
  - xmlParseAttValueInternal
  - xmlParseAttValue
  - xmlParseSystemLiteral
  - xmlParsePubidLiteral
  - xmlCharacters
  - xmlParseCharDataInternal
  - xmlParseCharDataComplex
  - xmlParseCharData
  - xmlParseExternalID
  - xmlParseCommentComplex
  - xmlParseComment
  - xmlParsePITarget
  - xmlParseCatalogPI
  - xmlParsePI
  - xmlParseNotationDecl
  - xmlParseEntityDecl
  - xmlParseDefaultDecl
  - xmlParseNotationType
  - xmlParseEnumerationType
  - xmlParseEnumeratedType
  - xmlParseAttributeType
  - xmlParseAttributeListDecl
  - xmlSkipBlankCharsPEBalanced
  - xmlParseElementMixedContentDecl
  - xmlParseElementChildrenContentDeclPriv
  - xmlParseElementChildrenContentDecl
  - xmlParseElementContentDecl
  - xmlParseElementDecl
  - xmlParseConditionalSections
  - xmlParseMarkupDecl
  - xmlParseTextDecl
  - xmlParseExternalSubset
  - xmlParseReference
  - xmlHandleUndeclaredEntity
  - xmlLookupGeneralEntity
  - xmlParseEntityRefInternal
  - xmlParseEntityRef
  - xmlParseStringEntityRef
  - xmlParsePERefInternal
  - xmlParsePEReference
  - xmlLoadEntityContent
  - xmlParseStringPEReference
  - xmlParseDocTypeDecl
  - xmlParseInternalSubset
  - xmlParseAttribute
  - xmlParseStartTag
  - xmlParseEndTag1
  - xmlParseEndTag
  - xmlParseQNameHashed
  - xmlParseQName
  - xmlParseQNameAndCompare
  - xmlParseAttribute2
  - xmlAttrHashInsert
  - xmlAttrHashInsertQName
  - xmlParseStartTag2
  - xmlParseEndTag2
  - xmlParseCDSect
  - xmlParseContentInternal
  - xmlParseContent
  - xmlParseElement
  - xmlParseElementStart
  - xmlParseElementEnd
  - xmlParseVersionNum
  - xmlParseVersionInfo
  - xmlParseEncName
  - xmlParseEncodingDecl
  - xmlParseSDDecl
  - xmlParseXMLDecl
  - xmlCtxtGetVersion
  - xmlCtxtGetStandalone
  - xmlParseMisc
  - xmlFinishDocument
  - xmlParseDocument
  - xmlParseExtParsedEnt
  - xmlParseLookupChar
  - xmlParseLookupString
  - xmlParseLookupCharData
  - xmlParseLookupGt
  - xmlParseLookupInternalSubset
  - xmlParseChunk
  - xmlCreatePushParserCtxt
  - xmlStopParser
  - xmlCreateIOParserCtxt
  - xmlCtxtParseDtd
  - xmlIOParseDTD
  - xmlSAXParseDTD
  - xmlParseDTD
  - xmlCtxtParseContentInternal
  - xmlCtxtParseEntity
  - xmlParseCtxtExternalEntity
  - xmlParseExternalEntity
  - xmlParseBalancedChunkMemory
  - xmlCtxtParseContent
  - xmlParseInNodeContext
  - xmlParseBalancedChunkMemoryRecover
  - xmlSAXParseEntity
  - xmlParseEntity
  - xmlCreateEntityParserCtxt
  - xmlCreateURLParserCtxt
  - xmlCreateFileParserCtxt
  - xmlSAXParseFileWithData
  - xmlSAXParseFile
  - xmlRecoverDoc
  - xmlParseFile
  - xmlRecoverFile
  - xmlSetupParserForBuffer
  - xmlSAXUserParseFile
  - xmlCreateMemoryParserCtxt
  - xmlSAXParseMemoryWithData
  - xmlSAXParseMemory
  - xmlParseMemory
  - xmlRecoverMemory
  - xmlSAXUserParseMemory
  - xmlCreateDocParserCtxt
  - xmlSAXParseDoc
  - xmlParseDoc
  - xmlCtxtReset
  - xmlCtxtResetPush
  - xmlCtxtSetOptionsInternal
  - xmlCtxtSetOptions
  - xmlCtxtGetOptions
  - xmlCtxtUseOptions
  - xmlCtxtSetMaxAmplification
  - xmlCtxtParseDocument
  - xmlReadDoc
  - xmlReadFile
  - xmlReadMemory
  - xmlReadFd
  - xmlReadIO
  - xmlCtxtReadDoc
  - xmlCtxtReadFile
  - xmlCtxtReadMemory
  - xmlCtxtReadFd
  - xmlCtxtReadIO
  source_file: /src/libxml2/parser.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_DIR_SEP
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/parser.c
      type_or_value: '''\\'''
    - item_type: preproc_def
      name: XML_DIR_SEP
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxml2/parser.c
      type_or_value: '''/'''
    - item_type: preproc_def
      name: NS_INDEX_EMPTY
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libxml2/parser.c
      type_or_value: INT_MAX
    - item_type: preproc_def
      name: NS_INDEX_XML
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libxml2/parser.c
      type_or_value: (INT_MAX - 1)
    - item_type: preproc_def
      name: URI_HASH_EMPTY
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/libxml2/parser.c
      type_or_value: '0xD943A04E'
    - item_type: preproc_def
      name: URI_HASH_XML
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/libxml2/parser.c
      type_or_value: '0xF0451F02'
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/libxml2/parser.c
      type_or_value: '0'
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libxml2/parser.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: XML_MAX_ATTRS
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/libxml2/parser.c
      type_or_value: '100000000 '
    - item_type: preproc_def
      name: XML_SPECIAL_EXTERNAL
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/libxml2/parser.c
      type_or_value: (1 << 20)
    - item_type: preproc_def
      name: XML_SPECIAL_TYPE_MASK
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/libxml2/parser.c
      type_or_value: (XML_SPECIAL_EXTERNAL - 1)
    - item_type: preproc_def
      name: XML_ATTVAL_ALLOC
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/libxml2/parser.c
      type_or_value: (1 << 0)
    - item_type: preproc_def
      name: XML_ATTVAL_NORM_CHANGE
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/libxml2/parser.c
      type_or_value: (1 << 1)
    - item_type: preproc_def
      name: XML_PARSER_BIG_ENTITY
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libxml2/parser.c
      type_or_value: '1000'
    - item_type: preproc_def
      name: XML_PARSER_LOT_ENTITY
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/libxml2/parser.c
      type_or_value: '5000'
    - item_type: preproc_def
      name: XML_PARSER_ALLOWED_EXPANSION
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/libxml2/parser.c
      type_or_value: '1000000'
    - item_type: preproc_def
      name: XML_ENT_FIXED_COST
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/libxml2/parser.c
      type_or_value: '20'
    - item_type: preproc_def
      name: XML_PARSER_BIG_BUFFER_SIZE
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/libxml2/parser.c
      type_or_value: '300'
    - item_type: preproc_def
      name: XML_PARSER_BUFFER_SIZE
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/libxml2/parser.c
      type_or_value: '100'
    - item_type: preproc_def
      name: SAX_COMPAT_MODE
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libxml2/parser.c
      type_or_value: BAD_CAST "SAX compatibility mode document"
    - item_type: preproc_def
      name: XML_PARSER_CHUNK_SIZE
      pos:
        line_end: 184
        line_start: 183
        source_file: /src/libxml2/parser.c
      type_or_value: '100'
    - item_type: preproc_def
      name: RAW
      pos:
        line_end: 2224
        line_start: 2223
        source_file: /src/libxml2/parser.c
      type_or_value: (*ctxt->input->cur)
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 2225
        line_start: 2224
        source_file: /src/libxml2/parser.c
      type_or_value: (*ctxt->input->cur)
    - item_type: preproc_def
      name: CUR_PTR
      pos:
        line_end: 2227
        line_start: 2226
        source_file: /src/libxml2/parser.c
      type_or_value: ctxt->input->cur
    - item_type: preproc_def
      name: BASE_PTR
      pos:
        line_end: 2228
        line_start: 2227
        source_file: /src/libxml2/parser.c
      type_or_value: ctxt->input->base
    - item_type: preproc_def
      name: SHRINK
      pos:
        line_end: 2268
        line_start: 2265
        source_file: /src/libxml2/parser.c
      type_or_value: "if (!PARSER_PROGRESSIVE(ctxt)) \\\n\txmlParserShrink(ctxt);"
    - item_type: preproc_def
      name: GROW
      pos:
        line_end: 2273
        line_start: 2269
        source_file: /src/libxml2/parser.c
      type_or_value: "if ((!PARSER_PROGRESSIVE(ctxt)) && \\\n        (ctxt->input->end
        - ctxt->input->cur < INPUT_CHUNK)) \\\n\txmlParserGrow(ctxt);"
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 2275
        line_start: 2274
        source_file: /src/libxml2/parser.c
      type_or_value: xmlSkipBlankChars(ctxt)
    - item_type: preproc_def
      name: SKIP_BLANKS_PE
      pos:
        line_end: 2277
        line_start: 2276
        source_file: /src/libxml2/parser.c
      type_or_value: xmlSkipBlankCharsPE(ctxt)
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 2279
        line_start: 2278
        source_file: /src/libxml2/parser.c
      type_or_value: xmlNextChar(ctxt)
    - item_type: preproc_def
      name: NEXT1
      pos:
        line_end: 2286
        line_start: 2280
        source_file: /src/libxml2/parser.c
      type_or_value: "{\t\t\t\t\t\t\t\t\\\n\tctxt->input->col++;\t\t\t\t\t\t\\\n\tctxt->input->cur++;\t\t\t\t\t\t\\\n\tif
        (*ctxt->input->cur == 0)\t\t\t\t\t\\\n\t    xmlParserGrow(ctxt);\t\t\t\t\t\t\\\n
        \   }"
    structs:
    - fields:
      - name: '*prefix'
        type: xmlChar
      - name: '*URI'
        type: xmlChar
      - name: line
        type: int
      - name: nsNr
        type: int
      item_type: struct
      name: _xmlStartTag
      pos:
        line_end: 105
        line_start: 100
        source_file: /src/libxml2/parser.c
    - fields:
      - name: '*saxData'
        type: void
      - name: prefixHashValue
        type: unsigned
      - name: uriHashValue
        type: unsigned
      - name: elementId
        type: unsigned
      - name: oldIndex
        type: int
      item_type: struct
      name: xmlParserNsExtra
      pos:
        line_end: 113
        line_start: 107
        source_file: /src/libxml2/parser.c
    - fields:
      - name: hashValue
        type: unsigned
      - name: index
        type: int
      item_type: struct
      name: xmlParserNsBucket
      pos:
        line_end: 118
        line_start: 115
        source_file: /src/libxml2/parser.c
    - fields:
      - name: '*extra'
        type: xmlParserNsExtra
      - name: hashSize
        type: unsigned
      - name: hashElems
        type: unsigned
      - name: '*hash'
        type: xmlParserNsBucket
      - name: elementId
        type: unsigned
      - name: defaultNsIndex
        type: int
      - name: minNsIndex
        type: int
      item_type: struct
      name: _xmlParserNsData
      pos:
        line_end: 130
        line_start: 120
        source_file: /src/libxml2/parser.c
    - fields:
      - name: '*mem'
        type: xmlChar
      - name: size
        type: unsigned
      - name: cap
        type: unsigned
      - name: max
        type: unsigned
      - name: code
        type: xmlParserErrors
      item_type: struct
      name: xmlSBuf
      pos:
        line_end: 678
        line_start: 672
        source_file: /src/libxml2/parser.c
    - fields:
      - name: prefix
        type: xmlHashedString
      - name: name
        type: xmlHashedString
      - name: value
        type: xmlHashedString
      - name: '*valueEnd'
        type: xmlChar
      - name: external
        type: int
      - name: expandedSize
        type: int
      item_type: struct
      name: xmlDefAttr
      pos:
        line_end: 955
        line_start: 948
        source_file: /src/libxml2/parser.c
    - fields:
      - name: nbAttrs
        type: int
      - name: maxAttrs
        type: int
      item_type: struct
      name: _xmlDefAttrs
      pos:
        line_end: 968
        line_start: 959
        source_file: /src/libxml2/parser.c
    typedefs:
    - item_type: typedef
      name: xmlDefAttrs
      pos:
        line_end: 957
        line_start: 957
        source_file: /src/libxml2/parser.c
      type: _xmlDefAttrs
    - item_type: typedef
      name: '*xmlDefAttrsPtr'
      pos:
        line_end: 958
        line_start: 958
        source_file: /src/libxml2/parser.c
      type: xmlDefAttrs
    union: []
- function_names:
  - main
  source_file: /src/libxml2/lintmain.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - CLIENT_2_HDR
  - HDR_2_CLIENT
  - xmlMallocLoc
  - xmlMallocAtomicLoc
  - xmlMemMalloc
  - xmlReallocLoc
  - xmlMemRealloc
  - xmlMemFree
  - xmlMemStrdupLoc
  - xmlMemoryStrdup
  - xmlMemSize
  - xmlMemUsed
  - xmlMemBlocks
  - xmlMemoryDump
  - xmlInitMemory
  - xmlInitMemoryInternal
  - xmlCleanupMemory
  - xmlCleanupMemoryInternal
  - xmlMemSetup
  - xmlMemGet
  - xmlGcMemSetup
  - xmlGcMemGet
  source_file: /src/libxml2/xmlmemory.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MEMTAG
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/xmlmemory.c
      type_or_value: 0x5aa5U
    - item_type: preproc_def
      name: ALIGN_SIZE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxml2/xmlmemory.c
      type_or_value: '16'
    - item_type: preproc_def
      name: ALIGN_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxml2/xmlmemory.c
      type_or_value: sizeof(double)
    - item_type: preproc_def
      name: RESERVE_SIZE
      pos:
        line_end: 51
        line_start: 49
        source_file: /src/libxml2/xmlmemory.c
      type_or_value: "(((sizeof(MEMHDR) + ALIGN_SIZE - 1) \\\n\t\t      / ALIGN_SIZE
        ) * ALIGN_SIZE)"
    - item_type: preproc_def
      name: MAX_SIZE_T
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxml2/xmlmemory.c
      type_or_value: ((size_t)-1)
    structs:
    - fields:
      - name: mh_tag
        type: unsigned int
      - name: mh_size
        type: size_t
      item_type: struct
      name: memnod
      pos:
        line_end: 42
        line_start: 39
        source_file: /src/libxml2/xmlmemory.c
    typedefs: []
    union: []
- function_names:
  - xmlXPtrErr
  - xmlXPtrGetNthChild
  - SKIP
  - NXT
  - xmlXPtrGetChildNo
  - xmlXPtrEvalXPtrPart
  - xmlXPtrEvalFullXPtr
  - xmlXPtrEvalChildSeq
  - xmlXPtrEvalXPointer
  - xmlXPtrNewContext
  - xmlXPtrEval
  source_file: /src/libxml2/xpointer.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libxml2/xpointer.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 178
        line_start: 176
        source_file: /src/libxml2/xpointer.c
      type_or_value: while (IS_BLANK_CH(*(ctxt->cur))) NEXT
    - item_type: preproc_def
      name: CURRENT
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/libxml2/xpointer.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 181
        line_start: 180
        source_file: /src/libxml2/xpointer.c
      type_or_value: '((*ctxt->cur) ?  ctxt->cur++: ctxt->cur)'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - main
  source_file: /src/libxml2/testModule.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MODULE_PATH
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxml2/testModule.c
      type_or_value: '"."'
    - item_type: preproc_def
      name: PATH_MAX
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/libxml2/testModule.c
      type_or_value: _MAX_PATH
    - item_type: preproc_def
      name: MODULE_PATH
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/testModule.c
      type_or_value: '".libs"'
    - item_type: preproc_def
      name: PATH_MAX
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/testModule.c
      type_or_value: _POSIX_PATH_MAX
    - item_type: preproc_def
      name: PATH_MAX
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxml2/testModule.c
      type_or_value: '4096'
    structs: []
    typedefs:
    - item_type: typedef
      name: (*hello_world_t)(void)
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxml2/testModule.c
      type: int
    union: []
- function_names:
  - xmlHashValue
  - xmlHashQNameValue
  - xmlHashCreate
  - xmlHashCreateDict
  - xmlHashFree
  - xmlFastStrEqual
  - "xmlHashEntry *\nxmlHashFindEntry(const xmlHashTable *hash, const xmlChar *key,\n
    \                const xmlChar *key2, const xmlChar *key3,\n                 unsigned
    hashValue, int *pfound)"
  - xmlHashGrow
  - xmlHashUpdateInternal
  - xmlHashDefaultDeallocator
  - xmlHashAdd
  - xmlHashAdd2
  - xmlHashAdd3
  - xmlHashAddEntry
  - xmlHashAddEntry2
  - xmlHashAddEntry3
  - xmlHashUpdateEntry
  - xmlHashUpdateEntry2
  - xmlHashUpdateEntry3
  - xmlHashLookup
  - xmlHashLookup2
  - xmlHashQLookup
  - xmlHashQLookup2
  - xmlHashLookup3
  - xmlHashQLookup3
  - stubHashScannerFull
  - xmlHashScan
  - xmlHashScanFull
  - xmlHashScan3
  - xmlHashScanFull3
  - xmlHashCopySafe
  - xmlHashCopy
  - xmlHashSize
  - xmlHashRemoveEntry
  - xmlHashRemoveEntry2
  - xmlHashRemoveEntry3
  source_file: /src/libxml2/hash.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxml2/hash.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: MAX_FILL_NUM
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/hash.c
      type_or_value: '7'
    - item_type: preproc_def
      name: MAX_FILL_DENOM
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/libxml2/hash.c
      type_or_value: '8'
    - item_type: preproc_def
      name: MIN_HASH_SIZE
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxml2/hash.c
      type_or_value: '8'
    - item_type: preproc_def
      name: MAX_HASH_SIZE
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxml2/hash.c
      type_or_value: (1u << 31)
    structs:
    - fields:
      - name: hashValue
        type: unsigned
      - name: '*key'
        type: xmlChar
      - name: '*key2'
        type: xmlChar
      - name: '*key3'
        type: xmlChar
      - name: '*payload'
        type: void
      item_type: struct
      name: xmlHashEntry
      pos:
        line_end: 42
        line_start: 35
        source_file: /src/libxml2/hash.c
    - fields:
      - name: '*table'
        type: xmlHashEntry
      - name: size
        type: unsigned
      - name: nbElems
        type: unsigned
      - name: dict
        type: xmlDictPtr
      - name: randomSeed
        type: unsigned
      item_type: struct
      name: _xmlHashTable
      pos:
        line_end: 53
        line_start: 47
        source_file: /src/libxml2/hash.c
    - fields:
      - name: scan
        type: xmlHashScanner
      - name: '*data'
        type: void
      item_type: struct
      name: stubData
      pos:
        line_end: 940
        line_start: 937
        source_file: /src/libxml2/hash.c
    typedefs: []
    union: []
- function_names:
  - glob
  - globfree
  - glob
  - hugeMatch
  - hugeOpen
  - hugeClose
  - hugeRead
  - fatalError
  - initializeLibxml2
  - initSAX
  - baseFilename
  - resultFilename
  - checkTestFile
  - recursiveDetectTest
  - notRecursiveDetectTest
  - notRecursiveHugeTest
  - hugeDtdTest
  - launchTests
  - runtest
  - main
  source_file: /src/libxml2/testrecurse.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/testrecurse.c
      type_or_value: O_RDONLY | O_BINARY
    - item_type: preproc_def
      name: RD_FLAGS
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/libxml2/testrecurse.c
      type_or_value: O_RDONLY
    - item_type: preproc_def
      name: OPT_SAX
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/testrecurse.c
      type_or_value: (1<<0)
    - item_type: preproc_def
      name: OPT_NO_SUBST
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/testrecurse.c
      type_or_value: (1<<1)
    - item_type: preproc_def
      name: GLOB_DOOFFS
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/libxml2/testrecurse.c
      type_or_value: '0'
    - item_type: preproc_def
      name: GLOB_DOOFFS
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/libxml2/testrecurse.c
      type_or_value: '0'
    - item_type: preproc_def
      name: MAX_NODES
      pos:
        line_end: 306
        line_start: 305
        source_file: /src/libxml2/testrecurse.c
      type_or_value: '1000'
    structs:
    - fields:
      - name: '*desc'
        type: char
      - name: func
        type: functest
      - name: '*in'
        type: char
      - name: '*out'
        type: char
      - name: '*suffix'
        type: char
      - name: '*err'
        type: char
      - name: options
        type: int
      item_type: struct
      name: testDesc
      pos:
        line_end: 53
        line_start: 45
        source_file: /src/libxml2/testrecurse.c
    - fields:
      - name: gl_pathc
        type: size_t
      - name: '**gl_pathv'
        type: char
      - name: gl_offs
        type: size_t
      item_type: struct
      name: glob_t
      pos:
        line_end: 67
        line_start: 62
        source_file: /src/libxml2/testrecurse.c
    - fields:
      - name: gl_pathc
        type: size_t
      - name: '**gl_pathv'
        type: char
      - name: gl_offs
        type: size_t
      item_type: struct
      name: glob_t
      pos:
        line_end: 159
        line_start: 155
        source_file: /src/libxml2/testrecurse.c
    - fields:
      - name: '*URL'
        type: char
      - name: '*start'
        type: char
      - name: '*segment'
        type: char
      - name: '*finish'
        type: char
      item_type: struct
      name: xmlHugeDocParts
      pos:
        line_end: 190
        line_start: 185
        source_file: /src/libxml2/testrecurse.c
    typedefs:
    - item_type: typedef
      name: "(*functest) (const char *filename, const char *result,\n                         const
        char *error, int options)"
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/testrecurse.c
      type: int
    - item_type: typedef
      name: testDesc
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxml2/testrecurse.c
      type: testDesc
    - item_type: typedef
      name: '*testDescPtr'
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/libxml2/testrecurse.c
      type: testDesc
    union: []
- function_names:
  - xmlInitializeDict
  - xmlInitDictInternal
  - xmlDictCleanup
  - xmlCleanupDictInternal
  - xmlDictAddString
  - xmlDictAddQString
  - xmlDictCreate
  - xmlDictCreateSub
  - xmlDictReference
  - xmlDictFree
  - xmlDictOwns
  - xmlDictSize
  - xmlDictSetLimit
  - xmlDictGetUsage
  - xmlDictHashName
  - xmlDictHashQName
  - xmlDictComputeHash
  - HASH_ROL31
  - xmlDictCombineHash
  - "xmlDictEntry *\nxmlDictFindEntry(const xmlDict *dict, const xmlChar *prefix,\n
    \                const xmlChar *name, int len, unsigned hashValue,\n                 int
    *pfound)"
  - xmlDictGrow
  - "xmlDictEntry *\nxmlDictLookupInternal(xmlDict *dict, const xmlChar *prefix,\n
    \                     const xmlChar *name, int maybeLen, int update)"
  - xmlDictLookup
  - xmlDictLookupHashed
  - xmlDictExists
  - xmlDictQLookup
  - xmlInitRandom
  - xmlCleanupRandom
  - xoroshiro64ss
  - xmlGlobalRandom
  - xmlRandom
  source_file: /src/libxml2/dict.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/dict.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: MAX_FILL_NUM
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/dict.c
      type_or_value: '7'
    - item_type: preproc_def
      name: MAX_FILL_DENOM
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/dict.c
      type_or_value: '8'
    - item_type: preproc_def
      name: MIN_HASH_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/libxml2/dict.c
      type_or_value: '8'
    - item_type: preproc_def
      name: MAX_HASH_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxml2/dict.c
      type_or_value: (1u << 31)
    structs:
    - fields:
      - name: next
        type: xmlDictStringsPtr
      - name: '*free'
        type: xmlChar
      - name: '*end'
        type: xmlChar
      - name: size
        type: size_t
      - name: nbStrings
        type: size_t
      - name: array[1]
        type: xmlChar
      item_type: struct
      name: _xmlDictStrings
      pos:
        line_end: 54
        line_start: 47
        source_file: /src/libxml2/dict.c
    - fields:
      - name: ref_counter
        type: int
      - name: '*table'
        type: xmlDictEntry
      - name: size
        type: size_t
      - name: nbElems
        type: unsigned int
      - name: strings
        type: xmlDictStringsPtr
      - name: '*subdict'
        type: struct _xmlDict
      - name: seed
        type: unsigned
      - name: limit
        type: size_t
      item_type: struct
      name: _xmlDict
      pos:
        line_end: 74
        line_start: 61
        source_file: /src/libxml2/dict.c
    typedefs:
    - item_type: typedef
      name: xmlDictStrings
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/libxml2/dict.c
      type: _xmlDictStrings
    - item_type: typedef
      name: '*xmlDictStringsPtr'
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/libxml2/dict.c
      type: xmlDictStrings
    - item_type: typedef
      name: xmlDictEntry
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/dict.c
      type: xmlHashedString
    union: []
- function_names:
  - htmlFindFirstChild
  - htmlFindHead
  - htmlParseContentType
  - htmlFindMetaEncodingAttr
  - htmlParseMetaEncoding
  - htmlUpdateMetaEncoding
  - htmlGetMetaEncoding
  - htmlSetMetaEncoding
  - htmlIsBooleanAttr
  - htmlFindOutputEncoder
  - htmlBufNodeDumpFormat
  - htmlNodeDump
  - htmlNodeDumpFileFormat
  - htmlNodeDumpFile
  - htmlDocDumpMemoryFormat
  - htmlDocDumpMemory
  - htmlDtdDumpOutput
  - htmlSerializeUri
  - htmlAttrDumpOutput
  - htmlNodeDumpInternal
  - htmlNodeDumpFormatOutput
  - htmlNodeDumpOutput
  - htmlDocContentDumpFormatOutput
  - htmlDocContentDumpOutput
  - htmlDocDump
  - htmlSaveFile
  - htmlSaveFileFormat
  - htmlSaveFileEnc
  source_file: /src/libxml2/HTMLtree.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: attr
        type: xmlAttrPtr
      - name: '*attrValue'
        type: xmlChar
      - name: 'off'
        type: htmlMetaEncodingOffsets
      item_type: struct
      name: htmlMetaEncoding
      pos:
        line_end: 43
        line_start: 39
        source_file: /src/libxml2/HTMLtree.c
    typedefs: []
    union: []
- function_names:
  - IS_RELAXNG
  - xmlRngPErrMemory
  - xmlRngVErrMemory
  - xmlRngPErr
  - xmlRngVErr
  - xmlRelaxNGFreeDocument
  - xmlRelaxNGFreeDocumentList
  - xmlRelaxNGFreeInclude
  - xmlRelaxNGFreeIncludeList
  - xmlRelaxNGNewRelaxNG
  - xmlRelaxNGFreeInnerSchema
  - xmlRelaxNGFree
  - xmlRelaxNGNewGrammar
  - xmlRelaxNGFreeGrammar
  - xmlRelaxNGNewDefine
  - xmlRelaxNGFreePartition
  - xmlRelaxNGFreeDefine
  - xmlRelaxNGNewStates
  - xmlRelaxNGAddStatesUniq
  - xmlRelaxNGAddStates
  - xmlRelaxNGFreeStates
  - xmlRelaxNGNewValidState
  - xmlRelaxNGCopyValidState
  - xmlRelaxNGEqualValidState
  - xmlRelaxNGFreeValidState
  - xmlRelaxParserSetFlag
  - xmlRelaxReadFile
  - xmlRelaxReadMemory
  - xmlRelaxNGIncludePush
  - xmlRelaxNGIncludePop
  - xmlRelaxNGRemoveRedefine
  - xmlRelaxNGLoadInclude
  - xmlRelaxNGValidErrorPush
  - xmlRelaxNGValidErrorPop
  - xmlRelaxNGDocumentPush
  - xmlRelaxNGDocumentPop
  - xmlRelaxNGLoadExternalRef
  - VALID_ERR
  - VALID_ERR2
  - VALID_ERR3
  - VALID_ERR2P
  - VALID_ERR3P
  - xmlRelaxNGDefName
  - xmlRelaxNGGetErrorString
  - xmlRelaxNGShowValidError
  - xmlRelaxNGPopErrors
  - xmlRelaxNGDumpValidError
  - xmlRelaxNGAddValidError
  - xmlRelaxNGSchemaTypeHave
  - xmlRelaxNGSchemaTypeCheck
  - xmlRelaxNGSchemaFacetCheck
  - xmlRelaxNGSchemaFreeValue
  - xmlRelaxNGSchemaTypeCompare
  - xmlRelaxNGDefaultTypeHave
  - xmlRelaxNGDefaultTypeCheck
  - xmlRelaxNGDefaultTypeCompare
  - xmlRelaxNGFreeTypeLibrary
  - xmlRelaxNGRegisterTypeLibrary
  - xmlInitRelaxNGInternal
  - xmlCleanupRelaxNGInternal
  - xmlRelaxNGInitTypes
  - xmlRelaxNGCleanupTypes
  - xmlRelaxNGIsCompilable
  - xmlRelaxNGCompile
  - xmlRelaxNGTryCompile
  - IS_BLANK_NODE
  - xmlRelaxNGIsNullable
  - xmlRelaxNGIsBlank
  - xmlRelaxNGGetDataTypeLibrary
  - xmlRelaxNGParseValue
  - xmlRelaxNGParseData
  - xmlRelaxNGCompareNameClasses
  - xmlRelaxNGCompareElemDefLists
  - xmlRelaxNGGenerateAttributes
  - xmlRelaxNGGetElements
  - xmlRelaxNGCheckChoiceDeterminism
  - xmlRelaxNGCheckGroupAttrs
  - xmlRelaxNGComputeInterleaves
  - xmlRelaxNGParseInterleave
  - xmlRelaxNGParseInclude
  - xmlRelaxNGParseDefine
  - xmlRelaxNGParseImportRef
  - xmlRelaxNGParseImportRefs
  - xmlRelaxNGProcessExternalRef
  - xmlRelaxNGParsePattern
  - xmlRelaxNGParseAttribute
  - xmlRelaxNGParseExceptNameClass
  - xmlRelaxNGParseNameClass
  - xmlRelaxNGParseElement
  - xmlRelaxNGParsePatterns
  - xmlRelaxNGParseStart
  - xmlRelaxNGParseGrammarContent
  - xmlRelaxNGCheckReference
  - xmlRelaxNGCheckCombine
  - xmlRelaxNGCombineStart
  - xmlRelaxNGCheckCycles
  - xmlRelaxNGTryUnlink
  - xmlRelaxNGSimplify
  - xmlRelaxNGGroupContentType
  - xmlRelaxNGMaxContentType
  - xmlRelaxNGCheckRules
  - xmlRelaxNGParseGrammar
  - xmlRelaxNGParseDocument
  - xmlRelaxNGNewParserCtxt
  - xmlRelaxNGNewMemParserCtxt
  - xmlRelaxNGNewDocParserCtxt
  - xmlRelaxNGFreeParserCtxt
  - xmlRelaxNGNormExtSpace
  - xmlRelaxNGCleanupAttributes
  - xmlRelaxNGCleanupTree
  - xmlRelaxNGCleanupDoc
  - xmlRelaxNGParse
  - xmlRelaxNGSetParserErrors
  - xmlRelaxNGGetParserErrors
  - xmlRelaxNGSetParserStructuredErrors
  - xmlRelaxNGSetResourceLoader
  - xmlRelaxNGDumpDefines
  - xmlRelaxNGDumpDefine
  - xmlRelaxNGDumpGrammar
  - xmlRelaxNGDump
  - xmlRelaxNGDumpTree
  - xmlRelaxNGValidateCompiledCallback
  - xmlRelaxNGValidateCompiledContent
  - xmlRelaxNGElemPush
  - xmlRelaxNGElemPop
  - xmlRelaxNGValidateProgressiveCallback
  - xmlRelaxNGValidatePushElement
  - xmlRelaxNGValidatePushCData
  - xmlRelaxNGValidatePopElement
  - xmlRelaxNGValidateFullElement
  - xmlRelaxNGValidCtxtClearErrors
  - xmlRelaxNGSkipIgnored
  - xmlRelaxNGNormalize
  - xmlRelaxNGValidateDatatype
  - xmlRelaxNGNextValue
  - xmlRelaxNGValidateValueList
  - xmlRelaxNGValidateValue
  - xmlRelaxNGValidateValueContent
  - xmlRelaxNGAttributeMatch
  - xmlRelaxNGValidateAttribute
  - xmlRelaxNGValidateAttributeList
  - xmlRelaxNGNodeMatchesList
  - xmlRelaxNGValidateInterleave
  - xmlRelaxNGValidateDefinitionList
  - xmlRelaxNGElementMatch
  - xmlRelaxNGBestState
  - xmlRelaxNGLogBestError
  - xmlRelaxNGValidateElementEnd
  - xmlRelaxNGValidateState
  - xmlRelaxNGValidateDefinition
  - xmlRelaxNGValidateDocument
  - xmlRelaxNGCleanPSVI
  - xmlRelaxNGNewValidCtxt
  - xmlRelaxNGFreeValidCtxt
  - xmlRelaxNGSetValidErrors
  - xmlRelaxNGSetValidStructuredErrors
  - xmlRelaxNGGetValidErrors
  - xmlRelaxNGValidateDoc
  source_file: /src/libxml2/relaxng.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ERROR
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxml2/relaxng.c
      type_or_value: '5'
    - item_type: preproc_def
      name: IS_NULLABLE
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 0)
    - item_type: preproc_def
      name: IS_NOT_NULLABLE
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 1)
    - item_type: preproc_def
      name: IS_INDETERMINIST
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 2)
    - item_type: preproc_def
      name: IS_MIXED
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 3)
    - item_type: preproc_def
      name: IS_TRIABLE
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 4)
    - item_type: preproc_def
      name: IS_PROCESSED
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 5)
    - item_type: preproc_def
      name: IS_COMPILABLE
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 6)
    - item_type: preproc_def
      name: IS_NOT_COMPILABLE
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 7)
    - item_type: preproc_def
      name: IS_EXTERNAL_REF
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 8)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_ATTRIBUTE
      pos:
        line_end: 168
        line_start: 167
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 0)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_ONEORMORE
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 1)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_LIST
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 2)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_DATAEXCEPT
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 3)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_START
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 4)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_OOMGROUP
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 5)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_OOMINTERLEAVE
      pos:
        line_end: 174
        line_start: 173
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 6)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_EXTERNALREF
      pos:
        line_end: 175
        line_start: 174
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 7)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_ANYEXCEPT
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 8)
    - item_type: preproc_def
      name: XML_RELAXNG_IN_NSEXCEPT
      pos:
        line_end: 177
        line_start: 176
        source_file: /src/libxml2/relaxng.c
      type_or_value: (1 << 9)
    - item_type: preproc_def
      name: FLAGS_IGNORABLE
      pos:
        line_end: 235
        line_start: 234
        source_file: /src/libxml2/relaxng.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FLAGS_NEGATIVE
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/libxml2/relaxng.c
      type_or_value: '2'
    - item_type: preproc_def
      name: FLAGS_MIXED_CONTENT
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/libxml2/relaxng.c
      type_or_value: '4'
    - item_type: preproc_def
      name: FLAGS_NOERROR
      pos:
        line_end: 238
        line_start: 237
        source_file: /src/libxml2/relaxng.c
      type_or_value: '8'
    - item_type: preproc_def
      name: IS_DETERMINIST
      pos:
        line_end: 251
        line_start: 250
        source_file: /src/libxml2/relaxng.c
      type_or_value: '1'
    - item_type: preproc_def
      name: IS_NEEDCHECK
      pos:
        line_end: 252
        line_start: 251
        source_file: /src/libxml2/relaxng.c
      type_or_value: '2'
    - item_type: preproc_def
      name: MAX_ATTR
      pos:
        line_end: 270
        line_start: 269
        source_file: /src/libxml2/relaxng.c
      type_or_value: '20'
    - item_type: preproc_def
      name: ERROR_IS_DUP
      pos:
        line_end: 295
        line_start: 294
        source_file: /src/libxml2/relaxng.c
      type_or_value: '1'
    structs:
    - fields:
      - name: parent
        type: xmlRelaxNGGrammarPtr
      - name: children
        type: xmlRelaxNGGrammarPtr
      - name: next
        type: xmlRelaxNGGrammarPtr
      - name: start
        type: xmlRelaxNGDefinePtr
      - name: combine
        type: xmlRelaxNGCombine
      - name: startList
        type: xmlRelaxNGDefinePtr
      - name: defs
        type: xmlHashTablePtr
      - name: refs
        type: xmlHashTablePtr
      item_type: struct
      name: _xmlRelaxNGGrammar
      pos:
        line_end: 92
        line_start: 83
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: type
        type: xmlRelaxNGType
      - name: node
        type: xmlNodePtr
      - name: '*name'
        type: xmlChar
      - name: '*ns'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: '*data'
        type: void
      - name: content
        type: xmlRelaxNGDefinePtr
      - name: parent
        type: xmlRelaxNGDefinePtr
      - name: next
        type: xmlRelaxNGDefinePtr
      - name: attrs
        type: xmlRelaxNGDefinePtr
      - name: nameClass
        type: xmlRelaxNGDefinePtr
      - name: nextHash
        type: xmlRelaxNGDefinePtr
      - name: depth
        type: short
      - name: dflags
        type: short
      - name: contModel
        type: xmlRegexpPtr
      item_type: struct
      name: _xmlRelaxNGDefine
      pos:
        line_end: 146
        line_start: 130
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: '*_private'
        type: void
      - name: topgrammar
        type: xmlRelaxNGGrammarPtr
      - name: doc
        type: xmlDocPtr
      - name: idref
        type: int
      - name: defs
        type: xmlHashTablePtr
      - name: refs
        type: xmlHashTablePtr
      - name: documents
        type: xmlRelaxNGDocumentPtr
      - name: includes
        type: xmlRelaxNGIncludePtr
      - name: defNr
        type: int
      - name: '*defTab'
        type: xmlRelaxNGDefinePtr
      item_type: struct
      name: _xmlRelaxNG
      pos:
        line_end: 165
        line_start: 151
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: '*userData'
        type: void
      - name: error
        type: xmlRelaxNGValidityErrorFunc
      - name: warning
        type: xmlRelaxNGValidityWarningFunc
      - name: serror
        type: xmlStructuredErrorFunc
      - name: err
        type: xmlRelaxNGValidErr
      - name: schema
        type: xmlRelaxNGPtr
      - name: grammar
        type: xmlRelaxNGGrammarPtr
      - name: parentgrammar
        type: xmlRelaxNGGrammarPtr
      - name: flags
        type: int
      - name: nbErrors
        type: int
      - name: nbWarnings
        type: int
      - name: '*define'
        type: xmlChar
      - name: def
        type: xmlRelaxNGDefinePtr
      - name: nbInterleaves
        type: int
      - name: interleaves
        type: xmlHashTablePtr
      - name: documents
        type: xmlRelaxNGDocumentPtr
      - name: includes
        type: xmlRelaxNGIncludePtr
      - name: '*URL'
        type: xmlChar
      - name: document
        type: xmlDocPtr
      - name: defNr
        type: int
      - name: defMax
        type: int
      - name: '*defTab'
        type: xmlRelaxNGDefinePtr
      - name: '*buffer'
        type: char
      - name: size
        type: int
      - name: doc
        type: xmlRelaxNGDocumentPtr
      - name: docNr
        type: int
      - name: docMax
        type: int
      - name: '*docTab'
        type: xmlRelaxNGDocumentPtr
      - name: inc
        type: xmlRelaxNGIncludePtr
      - name: incNr
        type: int
      - name: incMax
        type: int
      - name: '*incTab'
        type: xmlRelaxNGIncludePtr
      - name: idref
        type: int
      - name: am
        type: xmlAutomataPtr
      - name: state
        type: xmlAutomataStatePtr
      - name: crng
        type: int
      - name: freedoc
        type: int
      - name: resourceLoader
        type: xmlResourceLoader
      - name: '*resourceCtxt'
        type: void
      item_type: struct
      name: _xmlRelaxNGParserCtxt
      pos:
        line_end: 232
        line_start: 178
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: rule
        type: xmlRelaxNGDefinePtr
      - name: '*defs'
        type: xmlRelaxNGDefinePtr
      - name: '*attrs'
        type: xmlRelaxNGDefinePtr
      item_type: struct
      name: _xmlRelaxNGInterleaveGroup
      pos:
        line_end: 248
        line_start: 244
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: nbgroups
        type: int
      - name: triage
        type: xmlHashTablePtr
      - name: flags
        type: int
      - name: '*groups'
        type: xmlRelaxNGInterleaveGroupPtr
      item_type: struct
      name: _xmlRelaxNGPartition
      pos:
        line_end: 264
        line_start: 258
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: node
        type: xmlNodePtr
      - name: seq
        type: xmlNodePtr
      - name: nbAttrs
        type: int
      - name: maxAttrs
        type: int
      - name: nbAttrLeft
        type: int
      - name: '*value'
        type: xmlChar
      - name: '*endvalue'
        type: xmlChar
      - name: '*attrs'
        type: xmlAttrPtr
      item_type: struct
      name: _xmlRelaxNGValidState
      pos:
        line_end: 281
        line_start: 272
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: nbState
        type: int
      - name: maxState
        type: int
      - name: '*tabState'
        type: xmlRelaxNGValidStatePtr
      item_type: struct
      name: _xmlRelaxNGStates
      pos:
        line_end: 292
        line_start: 288
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: err
        type: xmlRelaxNGValidErr
      - name: flags
        type: int
      - name: node
        type: xmlNodePtr
      - name: seq
        type: xmlNodePtr
      - name: '*arg1'
        type: xmlChar
      - name: '*arg2'
        type: xmlChar
      item_type: struct
      name: _xmlRelaxNGValidError
      pos:
        line_end: 308
        line_start: 301
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: '*userData'
        type: void
      - name: error
        type: xmlRelaxNGValidityErrorFunc
      - name: warning
        type: xmlRelaxNGValidityWarningFunc
      - name: serror
        type: xmlStructuredErrorFunc
      - name: nbErrors
        type: int
      - name: schema
        type: xmlRelaxNGPtr
      - name: doc
        type: xmlDocPtr
      - name: flags
        type: int
      - name: depth
        type: int
      - name: idref
        type: int
      - name: errNo
        type: int
      - name: err
        type: xmlRelaxNGValidErrorPtr
      - name: errNr
        type: int
      - name: errMax
        type: int
      - name: errTab
        type: xmlRelaxNGValidErrorPtr
      - name: state
        type: xmlRelaxNGValidStatePtr
      - name: states
        type: xmlRelaxNGStatesPtr
      - name: freeState
        type: xmlRelaxNGStatesPtr
      - name: freeStatesNr
        type: int
      - name: freeStatesMax
        type: int
      - name: '*freeStates'
        type: xmlRelaxNGStatesPtr
      - name: elem
        type: xmlRegExecCtxtPtr
      - name: elemNr
        type: int
      - name: elemMax
        type: int
      - name: '*elemTab'
        type: xmlRegExecCtxtPtr
      - name: pstate
        type: int
      - name: pnode
        type: xmlNodePtr
      - name: pdef
        type: xmlRelaxNGDefinePtr
      - name: perr
        type: int
      item_type: struct
      name: _xmlRelaxNGValidCtxt
      pos:
        line_end: 357
        line_start: 314
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: next
        type: xmlRelaxNGIncludePtr
      - name: '*href'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: content
        type: xmlRelaxNGDefinePtr
      - name: schema
        type: xmlRelaxNGPtr
      item_type: struct
      name: _xmlRelaxNGInclude
      pos:
        line_end: 368
        line_start: 362
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: next
        type: xmlRelaxNGDocumentPtr
      - name: '*href'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: content
        type: xmlRelaxNGDefinePtr
      - name: schema
        type: xmlRelaxNGPtr
      - name: externalRef
        type: int
      item_type: struct
      name: _xmlRelaxNGDocument
      pos:
        line_end: 380
        line_start: 373
        source_file: /src/libxml2/relaxng.c
    - fields:
      - name: '*namespace'
        type: xmlChar
      - name: '*data'
        type: void
      - name: have
        type: xmlRelaxNGTypeHave
      - name: check
        type: xmlRelaxNGTypeCheck
      - name: comp
        type: xmlRelaxNGTypeCompare
      - name: facet
        type: xmlRelaxNGFacetCheck
      - name: freef
        type: xmlRelaxNGTypeFree
      item_type: struct
      name: _xmlRelaxNGTypeLibrary
      pos:
        line_end: 597
        line_start: 589
        source_file: /src/libxml2/relaxng.c
    typedefs:
    - item_type: typedef
      name: xmlRelaxNGSchema
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGSchema
    - item_type: typedef
      name: '*xmlRelaxNGSchemaPtr'
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGSchema
    - item_type: typedef
      name: xmlRelaxNGDefine
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGDefine
    - item_type: typedef
      name: '*xmlRelaxNGDefinePtr'
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGDefine
    - item_type: typedef
      name: xmlRelaxNGDocument
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGDocument
    - item_type: typedef
      name: '*xmlRelaxNGDocumentPtr'
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGDocument
    - item_type: typedef
      name: xmlRelaxNGInclude
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGInclude
    - item_type: typedef
      name: '*xmlRelaxNGIncludePtr'
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGInclude
    - item_type: typedef
      name: xmlRelaxNGGrammar
      pos:
        line_end: 80
        line_start: 80
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGGrammar
    - item_type: typedef
      name: '*xmlRelaxNGGrammarPtr'
      pos:
        line_end: 81
        line_start: 81
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGGrammar
    - item_type: typedef
      name: xmlRelaxNGInterleaveGroup
      pos:
        line_end: 242
        line_start: 242
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGInterleaveGroup
    - item_type: typedef
      name: '*xmlRelaxNGInterleaveGroupPtr'
      pos:
        line_end: 243
        line_start: 243
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGInterleaveGroup
    - item_type: typedef
      name: xmlRelaxNGPartition
      pos:
        line_end: 256
        line_start: 256
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGPartition
    - item_type: typedef
      name: '*xmlRelaxNGPartitionPtr'
      pos:
        line_end: 257
        line_start: 257
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGPartition
    - item_type: typedef
      name: xmlRelaxNGValidState
      pos:
        line_end: 270
        line_start: 270
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGValidState
    - item_type: typedef
      name: '*xmlRelaxNGValidStatePtr'
      pos:
        line_end: 271
        line_start: 271
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGValidState
    - item_type: typedef
      name: xmlRelaxNGStates
      pos:
        line_end: 286
        line_start: 286
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGStates
    - item_type: typedef
      name: '*xmlRelaxNGStatesPtr'
      pos:
        line_end: 287
        line_start: 287
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGStates
    - item_type: typedef
      name: xmlRelaxNGValidError
      pos:
        line_end: 299
        line_start: 299
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGValidError
    - item_type: typedef
      name: '*xmlRelaxNGValidErrorPtr'
      pos:
        line_end: 300
        line_start: 300
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGValidError
    - item_type: typedef
      name: (*xmlRelaxNGTypeHave) (void *data, const xmlChar * type)
      pos:
        line_end: 532
        line_start: 532
        source_file: /src/libxml2/relaxng.c
      type: int
    - item_type: typedef
      name: "(*xmlRelaxNGTypeCheck) (void *data, const xmlChar * type,\n                                    const
        xmlChar * value, void **result,\n                                    xmlNode
        *node)"
      pos:
        line_end: 545
        line_start: 543
        source_file: /src/libxml2/relaxng.c
      type: int
    - item_type: typedef
      name: "(*xmlRelaxNGFacetCheck) (void *data, const xmlChar * type,\n                                     const
        xmlChar * facet,\n                                     const xmlChar * val,\n
        \                                    const xmlChar * strval, void *value)"
      pos:
        line_end: 561
        line_start: 558
        source_file: /src/libxml2/relaxng.c
      type: int
    - item_type: typedef
      name: (*xmlRelaxNGTypeFree) (void *data, void *result)
      pos:
        line_end: 569
        line_start: 569
        source_file: /src/libxml2/relaxng.c
      type: void
    - item_type: typedef
      name: "(*xmlRelaxNGTypeCompare) (void *data, const xmlChar * type,\n                                      const
        xmlChar * value1,\n                                      xmlNode *ctxt1,\n
        \                                     void *comp1,\n                                      const
        xmlChar * value2,\n                                      xmlNode *ctxt2)"
      pos:
        line_end: 586
        line_start: 581
        source_file: /src/libxml2/relaxng.c
      type: int
    - item_type: typedef
      name: xmlRelaxNGTypeLibrary
      pos:
        line_end: 587
        line_start: 587
        source_file: /src/libxml2/relaxng.c
      type: _xmlRelaxNGTypeLibrary
    - item_type: typedef
      name: '*xmlRelaxNGTypeLibraryPtr'
      pos:
        line_end: 588
        line_start: 588
        source_file: /src/libxml2/relaxng.c
      type: xmlRelaxNGTypeLibrary
    union: []
- function_names:
  - BUF_ERROR
  - BUF_STATIC
  - xmlBufMemoryError
  - xmlBufOverflowError
  - xmlBufCreate
  - xmlBufCreateMem
  - xmlBufDetach
  - xmlBufFree
  - xmlBufEmpty
  - xmlBufShrink
  - xmlBufGrowInternal
  - xmlBufGrow
  - xmlBufContent
  - xmlBufEnd
  - xmlBufAddLen
  - xmlBufUse
  - xmlBufAvail
  - xmlBufIsEmpty
  - xmlBufAdd
  - xmlBufCat
  - xmlBufFromBuffer
  - xmlBufBackToBuffer
  - xmlBufResetInput
  - xmlBufUpdateInput
  - xmlSetBufferAllocationScheme
  - xmlGetBufferAllocationScheme
  - xmlBufferCreate
  - xmlBufferCreateSize
  - xmlBufferDetach
  - xmlBufferCreateStatic
  - xmlBufferFree
  - xmlBufferEmpty
  - xmlBufferShrink
  - xmlBufferGrow
  - xmlBufferDump
  - xmlBufferContent
  - xmlBufferLength
  - xmlBufferResize
  - xmlBufferAdd
  - xmlBufferAddHead
  - xmlBufferCat
  - xmlBufferCCat
  - xmlBufferWriteCHAR
  - xmlBufferWriteChar
  - xmlBufferWriteQuotedString
  source_file: /src/libxml2/buf.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/libxml2/buf.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: BUF_FLAG_OOM
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxml2/buf.c
      type_or_value: (1u << 0)
    - item_type: preproc_def
      name: BUF_FLAG_OVERFLOW
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxml2/buf.c
      type_or_value: (1u << 1)
    - item_type: preproc_def
      name: BUF_FLAG_STATIC
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/buf.c
      type_or_value: (1u << 2)
    structs:
    - fields:
      - name: '*content'
        type: xmlChar
      - name: '*mem'
        type: xmlChar
      - name: use
        type: size_t
      - name: size
        type: size_t
      - name: maxSize
        type: size_t
      - name: flags
        type: unsigned
      item_type: struct
      name: _xmlBuf
      pos:
        line_end: 49
        line_start: 42
        source_file: /src/libxml2/buf.c
    typedefs: []
    union: []
- function_names:
  - IS_ALPHA
  - IS_LOWALPHA
  - IS_UPALPHA
  - IS_DIGIT
  - IS_ALPHANUM
  - IS_MARK
  - IS_UNWISE
  - IS_RESERVED
  - IS_UNRESERVED
  - NEXT
  - STRNDUP
  - ISA_DIGIT
  - ISA_ALPHA
  - ISA_HEXDIG
  - ISA_SUB_DELIM
  - ISA_GEN_DELIM
  - ISA_RESERVED
  - ISA_STRICTLY_UNRESERVED
  - ISA_PCT_ENCODED
  - ISA_PCHAR
  - ISA_UCSCHAR
  - ISA_UNRESERVED
  - xmlIsUnreserved
  - xmlParse3986Scheme
  - xmlParse3986Fragment
  - xmlParse3986Query
  - xmlParse3986Port
  - xmlParse3986Userinfo
  - xmlParse3986DecOctet
  - xmlParse3986Host
  - xmlParse3986Authority
  - xmlParse3986Segment
  - xmlParse3986PathAbEmpty
  - xmlParse3986PathAbsolute
  - xmlParse3986PathRootless
  - xmlParse3986PathNoScheme
  - xmlParse3986HierPart
  - xmlParse3986RelativeRef
  - xmlParse3986URI
  - xmlParse3986URIReference
  - xmlParseURISafe
  - xmlParseURI
  - xmlParseURIReference
  - xmlParseURIRaw
  - xmlCreateURI
  - xmlSaveUriRealloc
  - xmlSaveUri
  - xmlPrintURI
  - xmlCleanURI
  - xmlFreeURI
  - xmlIsPathSeparator
  - xmlNormalizePath
  - xmlNormalizeURIPath
  - is_hex
  - xmlURIUnescapeString
  - xmlURIEscapeStr
  - xmlURIEscape
  - NULLCHK
  - xmlIsAbsolutePath
  - xmlResolvePath
  - xmlBuildURISafe
  - xmlBuildURI
  - xmlParseUriOrPath
  - xmlBuildRelativeURISafe
  - xmlBuildRelativeURI
  - xmlCanonicPath
  - xmlPathToURI
  source_file: /src/libxml2/uri.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_URI_LENGTH
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/uri.c
      type_or_value: 1024 * 1024
    - item_type: preproc_def
      name: PORT_EMPTY
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/uri.c
      type_or_value: '0'
    - item_type: preproc_def
      name: PORT_EMPTY_SERVER
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxml2/uri.c
      type_or_value: '-1'
    - item_type: preproc_def
      name: XML_URI_ALLOW_UNWISE
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/libxml2/uri.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_URI_NO_UNESCAPE
      pos:
        line_end: 192
        line_start: 191
        source_file: /src/libxml2/uri.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_URI_ALLOW_UCSCHAR
      pos:
        line_end: 193
        line_start: 192
        source_file: /src/libxml2/uri.c
      type_or_value: '4'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlCharInRange
  - xmlIsBaseChar
  - xmlIsBlank
  - xmlIsChar
  - xmlIsCombining
  - xmlIsDigit
  - xmlIsExtender
  - xmlIsIdeographic
  - xmlIsPubidChar
  source_file: /src/libxml2/chvalid.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - CUR
  - END
  - xmlCheckVersion
  - xmlCtxtSetErrorHandler
  - xmlCtxtGetLastError
  - xmlCtxtResetLastError
  - xmlCtxtErrMemory
  - xmlCtxtErrIO
  - xmlCtxtIsCatastrophicError
  - xmlCtxtVErr
  - xmlCtxtErr
  - xmlCtxtGetStatus
  - xmlFatalErr
  - xmlParserInputGetWindow
  - xmlIsLetter
  - xmlParserGrow
  - xmlParserCheckEOF
  - xmlParserInputGrow
  - xmlParserShrink
  - xmlParserInputShrink
  - xmlNextChar
  - xmlCurrentChar
  - xmlCopyCharMultiByte
  - xmlCopyChar
  - xmlCtxtSetCharEncConvImpl
  - xmlDetectEBCDIC
  - xmlSwitchEncoding
  - xmlSwitchInputEncodingName
  - xmlSwitchEncodingName
  - xmlInputSetEncodingHandler
  - xmlSwitchInputEncoding
  - xmlSwitchToEncoding
  - xmlDetectEncoding
  - xmlSetDeclaredEncoding
  - xmlCtxtGetDeclaredEncoding
  - xmlGetActualEncoding
  - xmlFreeInputStream
  - xmlNewInputStream
  - xmlCtxtNewInputFromUrl
  - xmlNewInputInternal
  - xmlNewInputFromMemory
  - xmlCtxtNewInputFromMemory
  - xmlNewInputFromString
  - xmlCtxtNewInputFromString
  - xmlNewInputFromFd
  - xmlCtxtNewInputFromFd
  - xmlNewInputFromIO
  - xmlCtxtNewInputFromIO
  - xmlNewPushInput
  - xmlNewIOInputStream
  - xmlNewEntityInputStream
  - xmlNewStringInputStream
  - xmlResolveFromCatalog
  - xmlCtxtResolveFromCatalog
  - xmlNewInputFromUrl
  - xmlNewInputFromFile
  - xmlDefaultExternalEntityLoader
  - xmlNoNetExternalEntityLoader
  - xmlSetExternalEntityLoader
  - xmlGetExternalEntityLoader
  - xmlCtxtSetResourceLoader
  - xmlLoadResource
  - xmlLoadExternalEntity
  - xmlInitSAXParserCtxt
  - xmlInitParserCtxt
  - xmlFreeParserCtxt
  - xmlNewParserCtxt
  - xmlNewSAXParserCtxt
  - xmlCtxtGetPrivate
  - xmlCtxtSetPrivate
  - xmlCtxtGetCatalogs
  - xmlCtxtSetCatalogs
  - xmlCtxtGetDict
  - xmlCtxtSetDict
  - xmlCtxtGetSaxHandler
  - xmlCtxtSetSaxHandler
  - xmlCtxtGetDocument
  - xmlCtxtIsHtml
  - xmlCtxtIsStopped
  - xmlCtxtIsInSubset
  - xmlCtxtGetValidCtxt
  - xmlCtxtGetUserData
  - xmlCtxtGetNode
  - xmlCtxtGetDocTypeDecl
  - xmlCtxtGetInputPosition
  - xmlCtxtGetInputWindow
  - xmlClearParserCtxt
  - xmlParserFindNodeInfo
  - xmlInitNodeInfoSeq
  - xmlClearNodeInfoSeq
  - xmlParserFindNodeInfoIndex
  - xmlParserAddNodeInfo
  - xmlPedanticParserDefault
  - xmlLineNumbersDefault
  - xmlSubstituteEntitiesDefault
  - xmlKeepBlanksDefault
  source_file: /src/libxml2/parserInternals.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_DIR_SEP
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/libxml2/parserInternals.c
      type_or_value: '''\\'''
    - item_type: preproc_def
      name: XML_DIR_SEP
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxml2/parserInternals.c
      type_or_value: '''/'''
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxml2/parserInternals.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: XML_MAX_ERRORS
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxml2/parserInternals.c
      type_or_value: '100'
    - item_type: preproc_def
      name: XML_MAX_AMPLIFICATION_DEFAULT
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxml2/parserInternals.c
      type_or_value: '5'
    - item_type: preproc_def
      name: LINE_LEN
      pos:
        line_end: 595
        line_start: 594
        source_file: /src/libxml2/parserInternals.c
      type_or_value: '80'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlModuleOpen
  - xmlModuleSymbol
  - xmlModuleClose
  - xmlModuleFree
  - xmlModulePlatformOpen
  - xmlModulePlatformClose
  - xmlModulePlatformSymbol
  - xmlModulePlatformOpen
  - xmlModulePlatformClose
  - xmlModulePlatformSymbol
  - xmlModulePlatformOpen
  - xmlModulePlatformClose
  - xmlModulePlatformSymbol
  source_file: /src/libxml2/xmlmodule.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTLD_GLOBAL
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/libxml2/xmlmodule.c
      type_or_value: '0'
    structs:
    - fields:
      - name: '*name'
        type: unsigned char
      - name: '*handle'
        type: void
      item_type: struct
      name: _xmlModule
      pos:
        line_end: 31
        line_start: 28
        source_file: /src/libxml2/xmlmodule.c
    typedefs: []
    union: []
- function_names:
  - ignoreError
  - testNewDocNode
  - testStandaloneWithEncoding
  - testUnsupportedEncoding
  - testNodeGetContent
  - testCFileIO
  - testUndeclEntInContent
  - testInvalidCharRecovery
  - testCtxtInputGetterError
  - testCtxtInputGetters
  - testSwitchDtdExtSubset
  - testSwitchDtd
  - dumpNodeList
  - testCtxtParseContent
  - testNoBlanks
  - testSaveNullEncDoc
  - testSaveNullEnc
  - testDocDumpFormatMemoryEnc
  - testBalancedChunk
  - testHugePush
  - testHugeEncodedChunk
  - testPushCDataEnd
  - testHtmlIds
  - testHtmlInsertMetaEncoding
  - testHtmlUpdateMetaEncoding
  - testHtmlPushWithEncoding
  - testReaderEncoding
  - testReaderContent
  - testReaderNode
  - testReader
  - testReaderError
  - testStructuredReaderError
  - testReaderXIncludeError
  - testWriterIOWrite
  - testWriterIOClose
  - testWriterClose
  - testBuildRelativeUri
  - testWindowsUri
  - testTruncatedMultiByte
  - rot13Convert
  - rot13ConvCtxtDtor
  - rot13ConvImpl
  - testCharEncConvImpl
  - main
  source_file: /src/libxml2/testparser.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MHE
      pos:
        line_end: 710
        line_start: 709
        source_file: /src/libxml2/testparser.c
      type_or_value: '"meta http-equiv=\"Content-Type\""'
    structs:
    - fields:
      - name: '*message'
        type: char
      - name: code
        type: int
      item_type: struct
      name: testReaderErrorCtxt
      pos:
        line_end: 1009
        line_start: 1006
        source_file: /src/libxml2/testparser.c
    - fields:
      - name: '*uri'
        type: char
      - name: '*base'
        type: char
      - name: '*result'
        type: char
      item_type: struct
      name: xmlRelativeUriTest
      pos:
        line_end: 1132
        line_start: 1128
        source_file: /src/libxml2/testparser.c
    typedefs: []
    union: []
- function_names:
  - xlinkGetDefaultHandler
  - xlinkSetDefaultHandler
  - xlinkGetDefaultDetect
  - xlinkSetDefaultDetect
  - xlinkIsLink
  source_file: /src/libxml2/xlink.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XLINK_NAMESPACE
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxml2/xlink.c
      type_or_value: (BAD_CAST "http://www.w3.org/1999/xlink/namespace/")
    - item_type: preproc_def
      name: XHTML_NAMESPACE
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxml2/xlink.c
      type_or_value: (BAD_CAST "http://www.w3.org/1999/xhtml/")
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlXPathInit
  - xmlXPathSFComputeHash
  - xmlInitXPathInternal
  - xmlXPathIsNaN
  - xmlXPathIsInf
  - XML_NODE_SORT_VALUE
  - xmlXPathCmpNodesExt
  - wrap_cmp
  - wrap_cmp
  - SORT_CMP
  - XP_ERRORNULL
  - xmlXPathErrMemory
  - xmlXPathPErrMemory
  - xmlXPathErrFmt
  - xmlXPathErr
  - xmlXPatherror
  - xmlXPathCheckOpLimit
  - OP_LIMIT_EXCEEDED
  - xmlXPathNewCompExpr
  - xmlXPathFreeCompExpr
  - xmlXPathCompExprAdd
  - PUSH_FULL_EXPR
  - PUSH_LONG_EXPR
  - PUSH_LEAVE_EXPR
  - PUSH_UNARY_EXPR
  - PUSH_BINARY_EXPR
  - xmlXPathDebugDumpNode
  - xmlXPathDebugDumpNodeList
  - xmlXPathDebugDumpNodeSet
  - xmlXPathDebugDumpValueTree
  - xmlXPathDebugDumpObject
  - xmlXPathDebugDumpStepOp
  - xmlXPathDebugDumpCompExpr
  - xmlXPathNewCache
  - xmlXPathCacheFreeObjectList
  - xmlXPathFreeCache
  - xmlXPathContextSetCache
  - xmlXPathCacheWrapNodeSet
  - xmlXPathCacheWrapString
  - xmlXPathCacheNewNodeSet
  - xmlXPathCacheNewString
  - xmlXPathCacheNewCString
  - xmlXPathCacheNewBoolean
  - xmlXPathCacheNewFloat
  - xmlXPathCacheObjectCopy
  - xmlXPathCastToNumberInternal
  - xmlXPathValuePop
  - xmlXPathValuePush
  - xmlXPathPopBoolean
  - xmlXPathPopNumber
  - xmlXPathPopString
  - xmlXPathPopNodeSet
  - xmlXPathPopExternal
  - SKIP
  - NXT
  - xmlXPathFormatNumber
  - xmlXPathOrderDocElems
  - xmlXPathCmpNodes
  - xmlXPathNodeSetSort
  - xmlXPathNodeSetDupNs
  - xmlXPathNodeSetFreeNs
  - xmlXPathNodeSetCreate
  - xmlXPathNodeSetContains
  - xmlXPathNodeSetGrow
  - xmlXPathNodeSetAddNs
  - xmlXPathNodeSetAdd
  - xmlXPathNodeSetAddUnique
  - xmlXPathNodeSetMerge
  - xmlXPathNodeSetMergeAndClear
  - xmlXPathNodeSetMergeAndClearNoDupls
  - xmlXPathNodeSetDel
  - xmlXPathNodeSetRemove
  - xmlXPathFreeNodeSet
  - xmlXPathNodeSetClearFromPos
  - xmlXPathNodeSetClear
  - xmlXPathNodeSetKeepLast
  - xmlXPathNewNodeSet
  - xmlXPathNewValueTree
  - xmlXPathNewNodeSetList
  - xmlXPathWrapNodeSet
  - xmlXPathFreeNodeSetList
  - xmlXPathDifference
  - xmlXPathIntersection
  - xmlXPathDistinctSorted
  - xmlXPathDistinct
  - xmlXPathHasSameNodes
  - xmlXPathNodeLeadingSorted
  - xmlXPathNodeLeading
  - xmlXPathLeadingSorted
  - xmlXPathLeading
  - xmlXPathNodeTrailingSorted
  - xmlXPathNodeTrailing
  - xmlXPathTrailingSorted
  - xmlXPathTrailing
  - xmlXPathRegisterFunc
  - xmlXPathRegisterFuncNS
  - xmlXPathRegisterFuncLookup
  - xmlXPathFunctionLookup
  - xmlXPathFunctionLookupNS
  - xmlXPathRegisteredFuncsCleanup
  - xmlXPathRegisterVariable
  - xmlXPathRegisterVariableNS
  - xmlXPathRegisterVariableLookup
  - xmlXPathVariableLookup
  - xmlXPathVariableLookupNS
  - xmlXPathRegisteredVariablesCleanup
  - xmlXPathRegisterNs
  - xmlXPathNsLookup
  - xmlXPathRegisteredNsCleanup
  - xmlXPathNewFloat
  - xmlXPathNewBoolean
  - xmlXPathNewString
  - xmlXPathWrapString
  - xmlXPathNewCString
  - xmlXPathWrapCString
  - xmlXPathWrapExternal
  - xmlXPathObjectCopy
  - xmlXPathFreeObject
  - xmlXPathFreeObjectEntry
  - xmlXPathReleaseObject
  - xmlXPathCastBooleanToString
  - xmlXPathCastNumberToString
  - xmlXPathCastNodeToString
  - xmlXPathCastNodeSetToString
  - xmlXPathCastToString
  - xmlXPathConvertString
  - xmlXPathCastBooleanToNumber
  - xmlXPathCastStringToNumber
  - xmlXPathNodeToNumberInternal
  - xmlXPathCastNodeToNumber
  - xmlXPathCastNodeSetToNumber
  - xmlXPathCastToNumber
  - xmlXPathConvertNumber
  - xmlXPathCastNumberToBoolean
  - xmlXPathCastStringToBoolean
  - xmlXPathCastNodeSetToBoolean
  - xmlXPathCastToBoolean
  - xmlXPathConvertBoolean
  - xmlXPathNewContext
  - xmlXPathFreeContext
  - xmlXPathSetErrorHandler
  - xmlXPathNewParserContext
  - xmlXPathCompParserContext
  - xmlXPathFreeParserContext
  - xmlXPathNodeValHash
  - xmlXPathStringHash
  - xmlXPathCompareNodeSetFloat
  - xmlXPathCompareNodeSetString
  - xmlXPathCompareNodeSets
  - xmlXPathCompareNodeSetValue
  - xmlXPathEqualNodeSetString
  - xmlXPathEqualNodeSetFloat
  - xmlXPathEqualNodeSets
  - xmlXPathEqualValuesCommon
  - xmlXPathEqualValues
  - xmlXPathNotEqualValues
  - xmlXPathCompareValues
  - xmlXPathValueFlipSign
  - xmlXPathAddValues
  - xmlXPathSubValues
  - xmlXPathMultValues
  - xmlXPathDivValues
  - xmlXPathModValues
  - xmlXPathNextSelf
  - xmlXPathNextChild
  - xmlXPathNextChildElement
  - xmlXPathNextDescendant
  - xmlXPathNextDescendantOrSelf
  - xmlXPathNextParent
  - xmlXPathNextAncestor
  - xmlXPathNextAncestorOrSelf
  - xmlXPathNextFollowingSibling
  - xmlXPathNextPrecedingSibling
  - xmlXPathNextFollowing
  - xmlXPathIsAncestor
  - xmlXPathNextPreceding
  - xmlXPathNextPrecedingInternal
  - xmlXPathNextNamespace
  - xmlXPathNextAttribute
  - xmlXPathRoot
  - xmlXPathLastFunction
  - xmlXPathPositionFunction
  - xmlXPathCountFunction
  - xmlXPathGetElementsByIds
  - xmlXPathIdFunction
  - xmlXPathLocalNameFunction
  - xmlXPathNamespaceURIFunction
  - xmlXPathNameFunction
  - xmlXPathStringFunction
  - xmlXPathStringLengthFunction
  - xmlXPathConcatFunction
  - xmlXPathContainsFunction
  - xmlXPathStartsWithFunction
  - xmlXPathSubstringFunction
  - xmlXPathSubstringBeforeFunction
  - xmlXPathSubstringAfterFunction
  - xmlXPathNormalizeFunction
  - xmlXPathTranslateFunction
  - xmlXPathBooleanFunction
  - xmlXPathNotFunction
  - xmlXPathTrueFunction
  - xmlXPathFalseFunction
  - xmlXPathLangFunction
  - xmlXPathNumberFunction
  - xmlXPathSumFunction
  - xmlXPathFloorFunction
  - xmlXPathCeilingFunction
  - xmlXPathRoundFunction
  - xmlXPathParseNCName
  - xmlXPathParseQName
  - xmlXPathParseName
  - xmlXPathStringEvalNumber
  - xmlXPathCompNumber
  - xmlXPathParseLiteral
  - xmlXPathCompLiteral
  - xmlXPathCompVariableReference
  - xmlXPathIsNodeType
  - xmlXPathCompFunctionCall
  - xmlXPathCompPrimaryExpr
  - xmlXPathCompFilterExpr
  - xmlXPathScanName
  - xmlXPathCompPathExpr
  - xmlXPathCompUnionExpr
  - xmlXPathCompUnaryExpr
  - xmlXPathCompMultiplicativeExpr
  - xmlXPathCompAdditiveExpr
  - xmlXPathCompRelationalExpr
  - xmlXPathCompEqualityExpr
  - xmlXPathCompAndExpr
  - xmlXPathCompileExpr
  - xmlXPathCompPredicate
  - xmlXPathCompNodeTest
  - xmlXPathIsAxisName
  - xmlXPathCompStep
  - xmlXPathCompRelativeLocationPath
  - xmlXPathCompLocationPath
  - xmlXPathNodeSetFilter
  - xmlXPathCompOpEvalPredicate
  - xmlXPathIsPositionalPredicate
  - xmlXPathNodeCollectAndTest
  - xmlXPathCompOpEvalFirst
  - xmlXPathCompOpEvalLast
  - xmlXPathCompOpEvalFilterFirst
  - xmlXPathCompOpEval
  - xmlXPathCompOpEvalToBoolean
  - xmlXPathRunStreamEval
  - xmlXPathRunEval
  - xmlXPathEvalPredicate
  - xmlXPathEvaluatePredicateResult
  - xmlXPathTryStreamCompile
  - xmlXPathOptimizeExpression
  - xmlXPathCtxtCompile
  - xmlXPathCompile
  - xmlXPathCompiledEvalInternal
  - xmlXPathCompiledEval
  - xmlXPathCompiledEvalToBoolean
  - xmlXPathEvalExpr
  - xmlXPathEval
  - xmlXPathSetContextNode
  - xmlXPathNodeEval
  - xmlXPathEvalExpression
  source_file: /src/libxml2/xpath.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XPATH_MAX_STEPS
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/libxml2/xpath.c
      type_or_value: '1000000'
    - item_type: preproc_def
      name: XPATH_MAX_STACK_DEPTH
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/libxml2/xpath.c
      type_or_value: '1000000'
    - item_type: preproc_def
      name: XPATH_MAX_NODESET_LENGTH
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/libxml2/xpath.c
      type_or_value: '10000000'
    - item_type: preproc_def
      name: XPATH_MAX_RECURSION_DEPTH
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/libxml2/xpath.c
      type_or_value: '500'
    - item_type: preproc_def
      name: XPATH_MAX_RECURSION_DEPTH
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/libxml2/xpath.c
      type_or_value: '1000'
    - item_type: preproc_def
      name: XPATH_MAX_RECURSION_DEPTH
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/libxml2/xpath.c
      type_or_value: '5000'
    - item_type: preproc_def
      name: NUM_STANDARD_FUNCTIONS
      pos:
        line_end: 166
        line_start: 164
        source_file: /src/libxml2/xpath.c
      type_or_value: (sizeof(xmlXPathStandardFunctions) / sizeof(xmlXPathStandardFunctions[0]))
    - item_type: preproc_def
      name: SF_HASH_SIZE
      pos:
        line_end: 168
        line_start: 167
        source_file: /src/libxml2/xpath.c
      type_or_value: '64'
    - item_type: preproc_def
      name: SORT_NAME
      pos:
        line_end: 592
        line_start: 591
        source_file: /src/libxml2/xpath.c
      type_or_value: libxml_domnode
    - item_type: preproc_def
      name: SORT_TYPE
      pos:
        line_end: 593
        line_start: 592
        source_file: /src/libxml2/xpath.c
      type_or_value: xmlNodePtr
    - item_type: preproc_def
      name: MAXERRNO
      pos:
        line_end: 669
        line_start: 667
        source_file: /src/libxml2/xpath.c
      type_or_value: "((int)(sizeof(xmlXPathErrorMessages) /\t\\\n\t\t   sizeof(xmlXPathErrorMessages[0]))
        - 1)"
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 2193
        line_start: 2192
        source_file: /src/libxml2/xpath.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: CUR_PTR
      pos:
        line_end: 2196
        line_start: 2195
        source_file: /src/libxml2/xpath.c
      type_or_value: ctxt->cur
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 2199
        line_start: 2197
        source_file: /src/libxml2/xpath.c
      type_or_value: while (IS_BLANK_CH(*(ctxt->cur))) NEXT
    - item_type: preproc_def
      name: CURRENT
      pos:
        line_end: 2201
        line_start: 2200
        source_file: /src/libxml2/xpath.c
      type_or_value: (*ctxt->cur)
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 2202
        line_start: 2201
        source_file: /src/libxml2/xpath.c
      type_or_value: '((*ctxt->cur) ?  ctxt->cur++: ctxt->cur)'
    - item_type: preproc_def
      name: DBL_DIG
      pos:
        line_end: 2206
        line_start: 2205
        source_file: /src/libxml2/xpath.c
      type_or_value: '16'
    - item_type: preproc_def
      name: DBL_EPSILON
      pos:
        line_end: 2209
        line_start: 2208
        source_file: /src/libxml2/xpath.c
      type_or_value: 1E-9
    - item_type: preproc_def
      name: UPPER_DOUBLE
      pos:
        line_end: 2212
        line_start: 2211
        source_file: /src/libxml2/xpath.c
      type_or_value: 1E9
    - item_type: preproc_def
      name: LOWER_DOUBLE
      pos:
        line_end: 2213
        line_start: 2212
        source_file: /src/libxml2/xpath.c
      type_or_value: 1E-5
    - item_type: preproc_def
      name: LOWER_DOUBLE_EXP
      pos:
        line_end: 2214
        line_start: 2213
        source_file: /src/libxml2/xpath.c
      type_or_value: '5'
    - item_type: preproc_def
      name: INTEGER_DIGITS
      pos:
        line_end: 2216
        line_start: 2215
        source_file: /src/libxml2/xpath.c
      type_or_value: DBL_DIG
    - item_type: preproc_def
      name: FRACTION_DIGITS
      pos:
        line_end: 2217
        line_start: 2216
        source_file: /src/libxml2/xpath.c
      type_or_value: (DBL_DIG + 1 + (LOWER_DOUBLE_EXP))
    - item_type: preproc_def
      name: EXPONENT_DIGITS
      pos:
        line_end: 2218
        line_start: 2217
        source_file: /src/libxml2/xpath.c
      type_or_value: (3 + 2)
    - item_type: preproc_def
      name: XML_NODESET_DEFAULT
      pos:
        line_end: 2593
        line_start: 2592
        source_file: /src/libxml2/xpath.c
      type_or_value: '10'
    - item_type: preproc_def
      name: IS_FUNCTION
      pos:
        line_end: 6840
        line_start: 6839
        source_file: /src/libxml2/xpath.c
      type_or_value: '200'
    - item_type: preproc_def
      name: MAX_FRAC
      pos:
        line_end: 8187
        line_start: 8186
        source_file: /src/libxml2/xpath.c
      type_or_value: '20'
    - item_type: preproc_def
      name: XP_TEST_HIT
      pos:
        line_end: 9772
        line_start: 9762
        source_file: /src/libxml2/xpath.c
      type_or_value: "if (hasAxisRange != 0) { \\\n\tif (++pos == maxPos) { \\\n\t
        \   if (addNode(seq, cur) < 0) \\\n\t        xmlXPathPErrMemory(ctxt); \\\n\t
        \   goto axis_range_end; } \\\n    } else { \\\n\tif (addNode(seq, cur) <
        0) \\\n\t    xmlXPathPErrMemory(ctxt); \\\n\tif (breakOnFirstHit) goto first_hit;
        }"
    - item_type: preproc_def
      name: XP_TEST_HIT_NS
      pos:
        line_end: 9785
        line_start: 9773
        source_file: /src/libxml2/xpath.c
      type_or_value: "if (hasAxisRange != 0) { \\\n\tif (++pos == maxPos) { \\\n\t
        \   hasNsNodes = 1; \\\n\t    if (xmlXPathNodeSetAddNs(seq, xpctxt->node,
        (xmlNsPtr) cur) < 0) \\\n\t        xmlXPathPErrMemory(ctxt); \\\n\tgoto axis_range_end;
        } \\\n    } else { \\\n\thasNsNodes = 1; \\\n\tif (xmlXPathNodeSetAddNs(seq,
        xpctxt->node, (xmlNsPtr) cur) < 0) \\\n\t    xmlXPathPErrMemory(ctxt); \\\n\tif
        (breakOnFirstHit) goto first_hit; }"
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: func
        type: xmlXPathFunction
      item_type: struct
      name: "xmlXPathStandardFunctions[] = {\n    { \"boolean\", xmlXPathBooleanFunction
        },\n    { \"ceiling\", xmlXPathCeilingFunction },\n    { \"count\", xmlXPathCountFunction
        },\n    { \"concat\", xmlXPathConcatFunction },\n    { \"contains\", xmlXPathContainsFunction
        },\n    { \"id\", xmlXPathIdFunction },\n    { \"false\", xmlXPathFalseFunction
        },\n    { \"floor\", xmlXPathFloorFunction },\n    { \"last\", xmlXPathLastFunction
        },\n    { \"lang\", xmlXPathLangFunction },\n    { \"local-name\", xmlXPathLocalNameFunction
        },\n    { \"not\", xmlXPathNotFunction },\n    { \"name\", xmlXPathNameFunction
        },\n    { \"namespace-uri\", xmlXPathNamespaceURIFunction },\n    { \"normalize-space\",
        xmlXPathNormalizeFunction },\n    { \"number\", xmlXPathNumberFunction },\n
        \   { \"position\", xmlXPathPositionFunction },\n    { \"round\", xmlXPathRoundFunction
        },\n    { \"string\", xmlXPathStringFunction },\n    { \"string-length\",
        xmlXPathStringLengthFunction },\n    { \"starts-with\", xmlXPathStartsWithFunction
        },\n    { \"substring\", xmlXPathSubstringFunction },\n    { \"substring-before\",
        xmlXPathSubstringBeforeFunction },\n    { \"substring-after\", xmlXPathSubstringAfterFunction
        },\n    { \"sum\", xmlXPathSumFunction },\n    { \"true\", xmlXPathTrueFunction
        },\n    { \"translate\", xmlXPathTranslateFunction }\n}"
      pos:
        line_end: 134
        line_start: 131
        source_file: /src/libxml2/xpath.c
    - fields:
      - name: op
        type: xmlXPathOp
      - name: ch1
        type: int
      - name: ch2
        type: int
      - name: value
        type: int
      - name: value2
        type: int
      - name: value3
        type: int
      - name: '*value4'
        type: void
      - name: '*value5'
        type: void
      - name: cache
        type: xmlXPathFunction
      - name: '*cacheURI'
        type: void
      item_type: struct
      name: _xmlXPathStepOp
      pos:
        line_end: 895
        line_start: 884
        source_file: /src/libxml2/xpath.c
    - fields:
      - name: nbStep
        type: int
      - name: maxStep
        type: int
      - name: '*steps'
        type: xmlXPathStepOp
      - name: last
        type: int
      - name: '*expr'
        type: xmlChar
      - name: dict
        type: xmlDictPtr
      item_type: struct
      name: _xmlXPathCompExpr
      pos:
        line_end: 907
        line_start: 897
        source_file: /src/libxml2/xpath.c
    - fields:
      - name: nodesetObjs
        type: xmlXPathObjectPtr
      - name: miscObjs
        type: xmlXPathObjectPtr
      - name: numNodeset
        type: int
      - name: maxNodeset
        type: int
      - name: numMisc
        type: int
      - name: maxMisc
        type: int
      item_type: struct
      name: _xmlXPathContextCache
      pos:
        line_end: 1114
        line_start: 1107
        source_file: /src/libxml2/xpath.c
    typedefs:
    - item_type: typedef
      name: xmlXPathStepOp
      pos:
        line_end: 882
        line_start: 882
        source_file: /src/libxml2/xpath.c
      type: _xmlXPathStepOp
    - item_type: typedef
      name: '*xmlXPathStepOpPtr'
      pos:
        line_end: 883
        line_start: 883
        source_file: /src/libxml2/xpath.c
      type: xmlXPathStepOp
    - item_type: typedef
      name: xmlXPathContextCache
      pos:
        line_end: 1105
        line_start: 1105
        source_file: /src/libxml2/xpath.c
      type: _xmlXPathContextCache
    - item_type: typedef
      name: '*xmlXPathContextCachePtr'
      pos:
        line_end: 1106
        line_start: 1106
        source_file: /src/libxml2/xpath.c
      type: xmlXPathContextCache
    - item_type: typedef
      name: "*(*xmlXPathTraversalFunction)\n                    (xmlXPathParserContext
        *ctxt, xmlNode *cur)"
      pos:
        line_end: 6110
        line_start: 6109
        source_file: /src/libxml2/xpath.c
      type: xmlNode
    - item_type: typedef
      name: "*(*xmlXPathTraversalFunctionExt)\n                    (xmlNode *cur,
        xmlNode *contextNode)"
      pos:
        line_end: 6119
        line_start: 6118
        source_file: /src/libxml2/xpath.c
      type: xmlNode
    - item_type: typedef
      name: "*(*xmlXPathNodeSetMergeFunction)\n\t\t    (xmlNodeSet *, xmlNodeSet *)"
      pos:
        line_end: 6125
        line_start: 6124
        source_file: /src/libxml2/xpath.c
      type: xmlNodeSet
    union: []
- function_names:
  - checkTestFile
  - composeDir
  - test_log
  - testErrorHandler
  - initializeLibxml2
  - xmlconfTestInvalid
  - xmlconfTestValid
  - xmlconfTestNotNSWF
  - xmlconfTestNotWF
  - xmlconfTestItem
  - xmlconfTestCases
  - xmlconfTestSuite
  - xmlconfInfo
  - xmlconfTest
  - main
  - main
  source_file: /src/libxml2/runxmlconf.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LOGFILE
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/runxmlconf.c
      type_or_value: '"runxmlconf.log"'
    - item_type: preproc_def
      name: NB_EXPECTED_ERRORS
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/runxmlconf.c
      type_or_value: '5'
    structs: []
    typedefs: []
    union: []
- function_names:
  - checkTestFile
  - test_log
  - testErrorHandler
  - initializeLibxml2
  - getNext
  - getString
  - resetEntities
  - addEntity
  - testResourceLoader
  - fatalError
  - xsdIncorrectTestCase
  - composeDir
  - installResources
  - installDirs
  - xsdTestCase
  - xsdTestSuite
  - xsdTest
  - rngTestSuite
  - rngTest1
  - rngTest2
  - tryValidateElement
  - rngTestStreaming
  - xstcTestInstance
  - xstcTestGroup
  - xstcMetadata
  - main
  - main
  source_file: /src/libxml2/runsuite.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LOGFILE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/runsuite.c
      type_or_value: '"runsuite.log"'
    - item_type: preproc_def
      name: EXPECTED_XMP_ERROR_COUNT
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/runsuite.c
      type_or_value: '3'
    - item_type: preproc_def
      name: MAX_ENTITIES
      pos:
        line_end: 220
        line_start: 219
        source_file: /src/libxml2/runsuite.c
      type_or_value: '20'
    structs: []
    typedefs: []
    union: []
- function_names:
  - fill_string_pool
  - print_strings
  - clean_strings
  - test_subdict
  - test_dict
  - testall_dict
  - HASH_ROL
  - my_rand
  - gen_random_string
  - pool_new
  - pool_free
  - pool_done
  - pool_reset
  - pool_bulk_insert
  - hash_qlookup
  - pool_bulk_lookup
  - pool_bulk_remove
  - test_hash
  - testall_hash
  - main
  source_file: /src/libxml2/testdict.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NB_STRINGS_MAX
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxml2/testdict.c
      type_or_value: '100000'
    - item_type: preproc_def
      name: NB_STRINGS_NS
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/testdict.c
      type_or_value: '10000'
    - item_type: preproc_def
      name: NB_STRINGS_PREFIX
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/testdict.c
      type_or_value: (NB_STRINGS_NS / 20)
    - item_type: preproc_def
      name: NB_STRINGS_MIN
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/testdict.c
      type_or_value: '10'
    structs:
    - fields:
      - name: '**strings'
        type: xmlChar
      - name: num_entries
        type: size_t
      - name: num_keys
        type: size_t
      - name: num_strings
        type: size_t
      - name: index
        type: size_t
      - name: id
        type: xmlChar
      item_type: struct
      name: StringPool
      pos:
        line_end: 493
        line_start: 486
        source_file: /src/libxml2/testdict.c
    typedefs: []
    union: []
- function_names:
  - xmlCatalogErrMemory
  - xmlCatalogErr
  - xmlCatalogPrintDebug
  - xmlNewCatalogEntry
  - xmlFreeCatalogEntry
  - xmlFreeCatalogEntryList
  - xmlFreeCatalogHashEntryList
  - xmlCreateNewCatalog
  - xmlFreeCatalog
  - xmlCatalogDumpEntry
  - xmlDumpXMLCatalogNode
  - xmlDumpXMLCatalog
  - xmlCatalogConvertEntry
  - xmlConvertSGMLCatalog
  - xmlCatalogUnWrapURN
  - xmlParseCatalogFile
  - xmlLoadFileContent
  - xmlCatalogNormalizePublic
  - xmlGetXMLCatalogEntryType
  - xmlParseXMLCatalogOneNode
  - xmlParseXMLCatalogNode
  - xmlParseXMLCatalogNodeList
  - xmlParseXMLCatalogFile
  - xmlFetchXMLCatalogFile
  - xmlAddXMLCatalog
  - xmlDelXMLCatalog
  - xmlCatalogXMLResolve
  - xmlCatalogXMLResolveURI
  - xmlCatalogListXMLResolve
  - xmlCatalogListXMLResolveURI
  - SKIP
  - xmlParseSGMLCatalogComment
  - xmlParseSGMLCatalogPubid
  - xmlParseSGMLCatalogName
  - xmlGetSGMLCatalogEntryType
  - xmlParseSGMLCatalog
  - xmlCatalogGetSGMLPublic
  - xmlCatalogGetSGMLSystem
  - xmlCatalogSGMLResolve
  - xmlLoadSGMLSuperCatalog
  - xmlLoadACatalog
  - xmlExpandCatalog
  - xmlACatalogResolveSystem
  - xmlACatalogResolvePublic
  - xmlACatalogResolve
  - xmlACatalogResolveURI
  - xmlACatalogDump
  - xmlACatalogAdd
  - xmlACatalogRemove
  - xmlNewCatalog
  - xmlCatalogIsEmpty
  - xmlInitCatalogInternal
  - xmlInitializeCatalog
  - xmlLoadCatalog
  - xmlLoadCatalogs
  - xmlCatalogCleanup
  - xmlCleanupCatalogInternal
  - xmlCatalogResolveSystem
  - xmlCatalogResolvePublic
  - xmlCatalogResolve
  - xmlCatalogResolveURI
  - xmlCatalogDump
  - xmlCatalogAdd
  - xmlCatalogRemove
  - xmlCatalogConvert
  - xmlCatalogGetDefaults
  - xmlCatalogSetDefaults
  - xmlCatalogSetDefaultPrefer
  - xmlCatalogSetDebug
  - xmlCatalogFreeLocal
  - xmlCatalogAddLocal
  - xmlCatalogLocalResolve
  - xmlCatalogLocalResolveURI
  - xmlCatalogGetSystem
  - xmlCatalogGetPublic
  source_file: /src/libxml2/catalog.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_DELEGATE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxml2/catalog.c
      type_or_value: '50'
    - item_type: preproc_def
      name: MAX_CATAL_DEPTH
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxml2/catalog.c
      type_or_value: '50'
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/catalog.c
      type_or_value: ''';'''
    - item_type: preproc_def
      name: PATH_SEPARATOR
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxml2/catalog.c
      type_or_value: ''':'''
    - item_type: preproc_def
      name: XML_URN_PUBID
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxml2/catalog.c
      type_or_value: '"urn:publicid:"'
    - item_type: preproc_def
      name: XML_CATAL_BREAK
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/libxml2/catalog.c
      type_or_value: ((xmlChar *) -1)
    - item_type: preproc_def
      name: XML_XML_DEFAULT_CATALOG
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxml2/catalog.c
      type_or_value: '"file://" XML_SYSCONFDIR "/xml/catalog"'
    - item_type: preproc_def
      name: XML_SGML_DEFAULT_CATALOG
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/libxml2/catalog.c
      type_or_value: '"file://" XML_SYSCONFDIR "/sgml/catalog"'
    - item_type: preproc_def
      name: XML_MAX_SGML_CATA_DEPTH
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/libxml2/catalog.c
      type_or_value: '10'
    - item_type: preproc_def
      name: RAW
      pos:
        line_end: 2074
        line_start: 2073
        source_file: /src/libxml2/catalog.c
      type_or_value: '*cur'
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 2075
        line_start: 2074
        source_file: /src/libxml2/catalog.c
      type_or_value: cur++;
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 2078
        line_start: 2077
        source_file: /src/libxml2/catalog.c
      type_or_value: while (IS_BLANK_CH(*cur)) NEXT;
    structs:
    - fields:
      - name: '*next'
        type: struct _xmlCatalogEntry
      - name: '*parent'
        type: struct _xmlCatalogEntry
      - name: '*children'
        type: struct _xmlCatalogEntry
      - name: type
        type: xmlCatalogEntryType
      - name: '*name'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: '*URL'
        type: xmlChar
      - name: prefer
        type: xmlCatalogPrefer
      - name: dealloc
        type: int
      - name: depth
        type: int
      - name: '*group'
        type: struct _xmlCatalogEntry
      item_type: struct
      name: _xmlCatalogEntry
      pos:
        line_end: 121
        line_start: 109
        source_file: /src/libxml2/catalog.c
    - fields:
      - name: type
        type: xmlCatalogType
      - name: prefer
        type: xmlCatalogPrefer
      - name: xml
        type: xmlCatalogEntryPtr
      item_type: struct
      name: _xmlCatalog
      pos:
        line_end: 154
        line_start: 134
        source_file: /src/libxml2/catalog.c
    typedefs:
    - item_type: typedef
      name: xmlCatalogEntry
      pos:
        line_end: 107
        line_start: 107
        source_file: /src/libxml2/catalog.c
      type: _xmlCatalogEntry
    - item_type: typedef
      name: '*xmlCatalogEntryPtr'
      pos:
        line_end: 108
        line_start: 108
        source_file: /src/libxml2/catalog.c
      type: xmlCatalogEntry
    union: []
- function_names:
  - xmlSAX2ErrMemory
  - xmlErrValid
  - xmlFatalErrMsg
  - xmlErrId
  - xmlWarnMsg
  - xmlNsWarnMsg
  - xmlSAX2GetPublicId
  - xmlSAX2GetSystemId
  - xmlSAX2GetLineNumber
  - xmlSAX2GetColumnNumber
  - xmlSAX2IsStandalone
  - xmlSAX2HasInternalSubset
  - xmlSAX2HasExternalSubset
  - xmlSAX2InternalSubset
  - xmlSAX2ExternalSubset
  - xmlSAX2ResolveEntity
  - xmlSAX2GetEntity
  - xmlSAX2GetParameterEntity
  - xmlSAX2EntityDecl
  - xmlSAX2AttributeDecl
  - xmlSAX2ElementDecl
  - xmlSAX2NotationDecl
  - xmlSAX2UnparsedEntityDecl
  - xmlSAX2SetDocumentLocator
  - xmlSAX2StartDocument
  - xmlSAX2EndDocument
  - xmlSAX2AppendChild
  - xmlNsErrMsg
  - xmlSAX1Attribute
  - xmlCheckDefaultedAttributes
  - xmlSAX1StartElement
  - xmlSAX2HtmlAttribute
  - xmlSAX2StartHtmlElement
  - xmlSAX2StartElement
  - xmlSAX2EndElement
  - xmlSAX2TextNode
  - xmlSAX2DecodeAttrEntities
  - xmlSAX2AttributeNs
  - xmlSAX2StartElementNs
  - xmlSAX2EndElementNs
  - xmlSAX2Reference
  - xmlSAX2Text
  - xmlSAX2Characters
  - xmlSAX2IgnorableWhitespace
  - xmlSAX2ProcessingInstruction
  - xmlSAX2Comment
  - xmlSAX2CDataBlock
  - xmlSAXDefaultVersion
  - xmlSAXVersion
  - xmlSAX2InitDefaultSAXHandler
  - xmlDefaultSAXHandlerInit
  - xmlSAX2InitHtmlDefaultSAXHandler
  - htmlDefaultSAXHandlerInit
  source_file: /src/libxml2/SAX2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/SAX2.c
      type_or_value: ((size_t) -1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - va_copy
  - va_copy
  - xmlStrndup
  - xmlStrdup
  - xmlCharStrndup
  - xmlCharStrdup
  - xmlStrcmp
  - xmlStrEqual
  - xmlStrQEqual
  - xmlStrncmp
  - xmlStrcasecmp
  - xmlStrncasecmp
  - xmlStrchr
  - xmlStrstr
  - xmlStrcasestr
  - xmlStrsub
  - xmlStrlen
  - xmlStrncat
  - xmlStrncatNew
  - xmlStrcat
  - xmlStrPrintf
  - xmlStrVPrintf
  - xmlStrVASPrintf
  - xmlStrASPrintf
  - xmlUTF8Size
  - xmlUTF8Charcmp
  - xmlUTF8Strlen
  - xmlGetUTF8Char
  - xmlCheckUTF8
  - xmlUTF8Strsize
  - xmlUTF8Strndup
  - xmlUTF8Strpos
  - xmlUTF8Strloc
  - xmlUTF8Strsub
  - xmlEscapeFormatString
  source_file: /src/libxml2/xmlstring.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_SCHEMATRON
  - NEXT_SCHEMATRON
  - xmlSchematronPErrMemory
  - xmlSchematronPErr
  - xmlSchematronVErrMemory
  - xmlSchematronVErr
  - xmlSchematronAddTest
  - xmlSchematronFreeTests
  - xmlSchematronFreeLets
  - xmlSchematronAddRule
  - xmlSchematronFreeRules
  - xmlSchematronAddPattern
  - xmlSchematronFreePatterns
  - xmlSchematronNewSchematron
  - xmlSchematronFree
  - xmlSchematronNewParserCtxt
  - xmlSchematronNewMemParserCtxt
  - xmlSchematronNewDocParserCtxt
  - xmlSchematronFreeParserCtxt
  - xmlSchematronPushInclude
  - xmlSchematronPopInclude
  - xmlSchematronAddNamespace
  - xmlSchematronParseTestReportMsg
  - xmlSchematronParseRule
  - xmlSchematronParsePattern
  - xmlSchematronLoadInclude
  - xmlSchematronParse
  - xmlSchematronGetNode
  - xmlSchematronReportOutput
  - xmlSchematronFormatReport
  - xmlSchematronReportSuccess
  - xmlSchematronReportPattern
  - xmlSchematronSetValidStructuredErrors
  - xmlSchematronNewValidCtxt
  - xmlSchematronFreeValidCtxt
  - xmlSchematronNextNode
  - xmlSchematronRunTest
  - xmlSchematronRegisterVariables
  - xmlSchematronUnregisterVariables
  - xmlSchematronValidateDoc
  source_file: /src/libxml2/schematron.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SCHEMATRON_PARSE_OPTIONS
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxml2/schematron.c
      type_or_value: XML_PARSE_NOENT
    - item_type: preproc_def
      name: SCT_OLD_NS
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/schematron.c
      type_or_value: BAD_CAST "http://www.ascc.net/xml/schematron"
    - item_type: preproc_def
      name: XML_SCHEMATRON_NS
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxml2/schematron.c
      type_or_value: BAD_CAST "http://purl.oclc.org/dsdl/schematron"
    - item_type: preproc_def
      name: XML_STRON_CTXT_PARSER
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/libxml2/schematron.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_STRON_CTXT_VALIDATOR
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/libxml2/schematron.c
      type_or_value: '2'
    structs:
    - fields:
      - name: next
        type: xmlSchematronLetPtr
      - name: '*name'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      item_type: struct
      name: _xmlSchematronLet
      pos:
        line_end: 79
        line_start: 75
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: next
        type: xmlSchematronTestPtr
      - name: type
        type: xmlSchematronTestType
      - name: node
        type: xmlNodePtr
      - name: '*test'
        type: xmlChar
      - name: comp
        type: xmlXPathCompExprPtr
      - name: '*report'
        type: xmlChar
      item_type: struct
      name: _xmlSchematronTest
      pos:
        line_end: 93
        line_start: 86
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: next
        type: xmlSchematronRulePtr
      - name: patnext
        type: xmlSchematronRulePtr
      - name: node
        type: xmlNodePtr
      - name: '*context'
        type: xmlChar
      - name: tests
        type: xmlSchematronTestPtr
      - name: pattern
        type: xmlPatternPtr
      - name: '*report'
        type: xmlChar
      - name: lets
        type: xmlSchematronLetPtr
      item_type: struct
      name: _xmlSchematronRule
      pos:
        line_end: 109
        line_start: 100
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: next
        type: xmlSchematronPatternPtr
      - name: rules
        type: xmlSchematronRulePtr
      - name: '*name'
        type: xmlChar
      item_type: struct
      name: _xmlSchematronPattern
      pos:
        line_end: 120
        line_start: 116
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: '*name'
        type: xmlChar
      - name: preserve
        type: int
      - name: doc
        type: xmlDocPtr
      - name: flags
        type: int
      - name: '*_private'
        type: void
      - name: dict
        type: xmlDictPtr
      - name: '*title'
        type: xmlChar
      - name: nbNs
        type: int
      - name: nbPattern
        type: int
      - name: patterns
        type: xmlSchematronPatternPtr
      - name: rules
        type: xmlSchematronRulePtr
      - name: nbNamespaces
        type: int
      - name: maxNamespaces
        type: int
      - name: '**namespaces'
        type: xmlChar
      item_type: struct
      name: _xmlSchematron
      pos:
        line_end: 144
        line_start: 125
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: type
        type: int
      - name: flags
        type: int
      - name: dict
        type: xmlDictPtr
      - name: nberrors
        type: int
      - name: err
        type: int
      - name: schema
        type: xmlSchematronPtr
      - name: xctxt
        type: xmlXPathContextPtr
      - name: '*outputFile'
        type: FILE
      - name: outputBuffer
        type: xmlBufferPtr
      - name: '*ioctx'
        type: void
      - name: '*userData'
        type: void
      - name: error
        type: xmlSchematronValidityErrorFunc
      - name: warning
        type: xmlSchematronValidityWarningFunc
      - name: serror
        type: xmlStructuredErrorFunc
      item_type: struct
      name: _xmlSchematronValidCtxt
      pos:
        line_end: 173
        line_start: 149
        source_file: /src/libxml2/schematron.c
    - fields:
      - name: type
        type: int
      - name: '*URL'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: preserve
        type: int
      - name: '*buffer'
        type: char
      - name: size
        type: int
      - name: dict
        type: xmlDictPtr
      - name: nberrors
        type: int
      - name: err
        type: int
      - name: xctxt
        type: xmlXPathContextPtr
      - name: schema
        type: xmlSchematronPtr
      - name: nbNamespaces
        type: int
      - name: maxNamespaces
        type: int
      - name: '**namespaces'
        type: xmlChar
      - name: nbIncludes
        type: int
      - name: maxIncludes
        type: int
      - name: '*includes'
        type: xmlNodePtr
      - name: '*userData'
        type: void
      - name: error
        type: xmlSchematronValidityErrorFunc
      - name: warning
        type: xmlSchematronValidityWarningFunc
      - name: serror
        type: xmlStructuredErrorFunc
      item_type: struct
      name: _xmlSchematronParserCtxt
      pos:
        line_end: 203
        line_start: 175
        source_file: /src/libxml2/schematron.c
    typedefs:
    - item_type: typedef
      name: xmlSchematronLet
      pos:
        line_end: 73
        line_start: 73
        source_file: /src/libxml2/schematron.c
      type: _xmlSchematronLet
    - item_type: typedef
      name: '*xmlSchematronLetPtr'
      pos:
        line_end: 74
        line_start: 74
        source_file: /src/libxml2/schematron.c
      type: xmlSchematronLet
    - item_type: typedef
      name: xmlSchematronTest
      pos:
        line_end: 84
        line_start: 84
        source_file: /src/libxml2/schematron.c
      type: _xmlSchematronTest
    - item_type: typedef
      name: '*xmlSchematronTestPtr'
      pos:
        line_end: 85
        line_start: 85
        source_file: /src/libxml2/schematron.c
      type: xmlSchematronTest
    - item_type: typedef
      name: xmlSchematronRule
      pos:
        line_end: 98
        line_start: 98
        source_file: /src/libxml2/schematron.c
      type: _xmlSchematronRule
    - item_type: typedef
      name: '*xmlSchematronRulePtr'
      pos:
        line_end: 99
        line_start: 99
        source_file: /src/libxml2/schematron.c
      type: xmlSchematronRule
    - item_type: typedef
      name: xmlSchematronPattern
      pos:
        line_end: 114
        line_start: 114
        source_file: /src/libxml2/schematron.c
      type: _xmlSchematronPattern
    - item_type: typedef
      name: '*xmlSchematronPatternPtr'
      pos:
        line_end: 115
        line_start: 115
        source_file: /src/libxml2/schematron.c
      type: xmlSchematronPattern
    union: []
- function_names:
  - xmlCtxtDumpInitCtxt
  - xmlCtxtDumpCleanCtxt
  - xmlNsCheckScope
  - xmlCtxtDumpSpaces
  - xmlDebugErr
  - xmlDebugErr2
  - xmlDebugErr3
  - xmlCtxtNsCheckScope
  - xmlCtxtCheckString
  - xmlCtxtCheckName
  - xmlCtxtGenericNodeCheck
  - xmlCtxtDumpString
  - xmlCtxtDumpDtdNode
  - xmlCtxtDumpAttrDecl
  - xmlCtxtDumpElemDecl
  - xmlCtxtDumpEntityDecl
  - xmlCtxtDumpNamespace
  - xmlCtxtDumpNamespaceList
  - xmlCtxtDumpEntity
  - xmlCtxtDumpAttr
  - xmlCtxtDumpAttrList
  - xmlCtxtDumpOneNode
  - xmlCtxtDumpNode
  - xmlCtxtDumpNodeList
  - xmlCtxtDumpDocHead
  - xmlCtxtDumpDocumentHead
  - xmlCtxtDumpDocument
  - xmlCtxtDumpEntityCallback
  - xmlCtxtDumpEntities
  - xmlCtxtDumpDTD
  - xmlDebugDumpString
  - xmlDebugDumpAttr
  - xmlDebugDumpEntities
  - xmlDebugDumpAttrList
  - xmlDebugDumpOneNode
  - xmlDebugDumpNode
  - xmlDebugDumpNodeList
  - xmlDebugDumpDocumentHead
  - xmlDebugDumpDocument
  - xmlDebugDumpDTD
  - xmlDebugCheckDocument
  source_file: /src/libxml2/debugXML.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DUMP_TEXT_TYPE
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/debugXML.c
      type_or_value: '1'
    structs:
    - fields:
      - name: '*output'
        type: FILE
      - name: shift[101]
        type: char
      - name: depth
        type: int
      - name: doc
        type: xmlDocPtr
      - name: node
        type: xmlNodePtr
      - name: dict
        type: xmlDictPtr
      - name: check
        type: int
      - name: errors
        type: int
      - name: nodict
        type: int
      - name: options
        type: int
      item_type: struct
      name: _xmlDebugCtxt
      pos:
        line_end: 42
        line_start: 31
        source_file: /src/libxml2/debugXML.c
    typedefs:
    - item_type: typedef
      name: xmlDebugCtxt
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxml2/debugXML.c
      type: _xmlDebugCtxt
    - item_type: typedef
      name: '*xmlDebugCtxtPtr'
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/libxml2/debugXML.c
      type: xmlDebugCtxt
    union: []
- function_names:
  - IS_STR_XML
  - xmlGetEntityFromDtd
  - xmlGetParameterEntityFromDtd
  - xmlBuildQName
  - xmlSplitQName2
  - xmlSplitQName3
  - xmlSplitQName4
  - xmlValidateNCName
  - xmlValidateQName
  - xmlValidateName
  - xmlValidateNMToken
  - xmlNewNs
  - xmlSetNs
  - xmlFreeNs
  - xmlFreeNsList
  - xmlNewDtd
  - xmlGetIntSubset
  - xmlCreateIntSubset
  - DICT_FREE
  - xmlFreeDtd
  - xmlNewDoc
  - xmlFreeDoc
  - xmlNodeParseAttValue
  - xmlStringLenGetNodeList
  - xmlStringGetNodeList
  - xmlNodeListGetStringInternal
  - xmlNodeListGetString
  - xmlNodeListGetRawString
  - xmlNewPropInternal
  - xmlNewProp
  - xmlNewNsProp
  - xmlNewNsPropEatName
  - xmlNewDocProp
  - xmlFreePropList
  - xmlFreeProp
  - xmlRemoveProp
  - xmlNewDocPI
  - xmlNewPI
  - xmlNewNode
  - xmlNewNodeEatName
  - xmlNewElem
  - xmlNewDocNode
  - xmlNewDocNodeEatName
  - xmlNewDocRawNode
  - xmlNewDocFragment
  - xmlNewText
  - xmlNewTextChild
  - xmlNewEntityRef
  - xmlNewCharRef
  - xmlNewReference
  - xmlNewDocText
  - xmlNewTextLen
  - xmlNewDocTextLen
  - xmlNewComment
  - xmlNewCDataBlock
  - xmlNewDocComment
  - xmlRemoveEntity
  - xmlNodeSetDoc
  - xmlSetTreeDoc
  - xmlSetListDoc
  - xmlNewChild
  - xmlTextSetContent
  - xmlTextAddContent
  - xmlInsertProp
  - xmlInsertNode
  - xmlAddNextSibling
  - xmlAddPrevSibling
  - xmlAddSibling
  - xmlAddChildList
  - xmlAddChild
  - xmlGetLastChild
  - xmlChildElementCount
  - xmlFirstElementChild
  - xmlLastElementChild
  - xmlPreviousElementSibling
  - xmlNextElementSibling
  - xmlFreeNodeList
  - xmlFreeNode
  - xmlUnlinkNodeInternal
  - xmlUnlinkNode
  - xmlReplaceNode
  - xmlCopyNamespace
  - xmlCopyNamespaceList
  - xmlCopyPropInternal
  - xmlCopyProp
  - xmlCopyPropList
  - xmlStaticCopyNode
  - xmlStaticCopyNodeList
  - xmlCopyNode
  - xmlDocCopyNode
  - xmlDocCopyNodeList
  - xmlCopyNodeList
  - xmlCopyDtd
  - xmlCopyDoc
  - xmlGetLineNoInternal
  - xmlGetLineNo
  - xmlGetNodePath
  - xmlDocGetRootElement
  - xmlDocSetRootElement
  - xmlNodeSetLang
  - xmlNodeGetLang
  - xmlNodeSetSpacePreserve
  - xmlNodeGetSpacePreserve
  - xmlNodeSetName
  - xmlNodeSetBase
  - xmlNodeGetBaseSafe
  - xmlNodeGetBase
  - xmlNodeBufGetContent
  - xmlBufGetEntityRefContent
  - xmlBufGetChildContent
  - xmlBufGetNodeContent
  - xmlNodeGetContent
  - xmlNodeSetContentInternal
  - xmlNodeSetContent
  - xmlNodeSetContentLen
  - xmlNodeAddContentLen
  - xmlNodeAddContent
  - xmlTextMerge
  - xmlGetNsListSafe
  - xmlGetNsList
  - xmlNewXmlNs
  - xmlTreeEnsureXMLDecl
  - xmlSearchNsSafe
  - xmlNsInScope
  - xmlSearchNsByHrefSafe
  - xmlNewReconciledNs
  - xmlGrowNsCache
  - xmlReconciliateNs
  - xmlGetPropNodeInternal
  - xmlGetPropNodeValueInternal
  - xmlHasProp
  - xmlHasNsProp
  - xmlNodeGetAttrValue
  - xmlGetProp
  - xmlGetNoNsProp
  - xmlGetNsProp
  - xmlUnsetProp
  - xmlUnsetNsProp
  - xmlSetProp
  - xmlSetNsProp
  - xmlNodeIsText
  - xmlIsBlankNode
  - xmlTextConcat
  - xmlGetDocCompressMode
  - xmlSetDocCompressMode
  - xmlGetCompressMode
  - xmlSetCompressMode
  - XML_NSMAP_NOTEMPTY
  - XML_NSMAP_FOREACH
  - XML_NSMAP_POP
  - xmlDOMWrapNsMapFree
  - xmlDOMWrapNsMapAddItem
  - xmlDOMWrapStoreNs
  - xmlDOMWrapNewCtxt
  - xmlDOMWrapFreeCtxt
  - xmlTreeNSListLookupByPrefix
  - xmlDOMWrapNSNormGatherInScopeNs
  - xmlDOMWrapNSNormAddNsMapItem2
  - xmlDOMWrapRemoveNode
  - xmlSearchNsByNamespaceStrict
  - xmlSearchNsByPrefixStrict
  - xmlDOMWrapNSNormDeclareNsForced
  - xmlDOMWrapNSNormAcquireNormalizedNs
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - xmlDOMWrapAdoptBranch
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - xmlDOMWrapCloneNode
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - XML_NSMAP_FOREACH
  - xmlDOMWrapAdoptAttr
  - xmlDOMWrapAdoptNode
  - xmlIsXHTML
  - xmlRegisterNodeDefault
  - xmlDeregisterNodeDefault
  source_file: /src/libxml2/tree.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxml2/tree.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: XML_TREE_NSMAP_PARENT
      pos:
        line_end: 6727
        line_start: 6726
        source_file: /src/libxml2/tree.c
      type_or_value: '-1'
    - item_type: preproc_def
      name: XML_TREE_NSMAP_XML
      pos:
        line_end: 6728
        line_start: 6727
        source_file: /src/libxml2/tree.c
      type_or_value: '-2'
    - item_type: preproc_def
      name: XML_TREE_NSMAP_DOC
      pos:
        line_end: 6729
        line_start: 6728
        source_file: /src/libxml2/tree.c
      type_or_value: '-3'
    - item_type: preproc_def
      name: XML_TREE_NSMAP_CUSTOM
      pos:
        line_end: 6730
        line_start: 6729
        source_file: /src/libxml2/tree.c
      type_or_value: '-4'
    - item_type: preproc_def
      name: XHTML_STRICT_PUBLIC_ID
      pos:
        line_end: 8824
        line_start: 8822
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"-//W3C//DTD XHTML 1.0 Strict//EN\""
    - item_type: preproc_def
      name: XHTML_STRICT_SYSTEM_ID
      pos:
        line_end: 8826
        line_start: 8824
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\""
    - item_type: preproc_def
      name: XHTML_FRAME_PUBLIC_ID
      pos:
        line_end: 8828
        line_start: 8826
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"-//W3C//DTD XHTML 1.0 Frameset//EN\""
    - item_type: preproc_def
      name: XHTML_FRAME_SYSTEM_ID
      pos:
        line_end: 8830
        line_start: 8828
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd\""
    - item_type: preproc_def
      name: XHTML_TRANS_PUBLIC_ID
      pos:
        line_end: 8832
        line_start: 8830
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"-//W3C//DTD XHTML 1.0 Transitional//EN\""
    - item_type: preproc_def
      name: XHTML_TRANS_SYSTEM_ID
      pos:
        line_end: 8834
        line_start: 8832
        source_file: /src/libxml2/tree.c
      type_or_value: "BAD_CAST \\\n   \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\""
    structs:
    - fields:
      - name: oldNs
        type: xmlNsPtr
      - name: newNs
        type: xmlNsPtr
      item_type: struct
      name: xmlNsCache
      pos:
        line_end: 5961
        line_start: 5958
        source_file: /src/libxml2/tree.c
    - fields:
      - name: next
        type: xmlNsMapItemPtr
      - name: prev
        type: xmlNsMapItemPtr
      - name: oldNs
        type: xmlNsPtr
      - name: newNs
        type: xmlNsPtr
      - name: shadowDepth
        type: int
      - name: depth
        type: int
      item_type: struct
      name: xmlNsMapItem
      pos:
        line_end: 6747
        line_start: 6732
        source_file: /src/libxml2/tree.c
    - fields:
      - name: first
        type: xmlNsMapItemPtr
      - name: last
        type: xmlNsMapItemPtr
      - name: pool
        type: xmlNsMapItemPtr
      item_type: struct
      name: xmlNsMap
      pos:
        line_end: 6754
        line_start: 6750
        source_file: /src/libxml2/tree.c
    typedefs:
    - item_type: typedef
      name: '*xmlNsMapItemPtr'
      pos:
        line_end: 6731
        line_start: 6731
        source_file: /src/libxml2/tree.c
      type: xmlNsMapItem
    - item_type: typedef
      name: '*xmlNsMapPtr'
      pos:
        line_end: 6749
        line_start: 6749
        source_file: /src/libxml2/tree.c
      type: xmlNsMap
    union: []
- function_names:
  - xmlXIncludeErrMemory
  - xmlXIncludeErr
  - xmlXIncludeGetProp
  - xmlXIncludeFreeRef
  - xmlXIncludeNewContext
  - xmlXIncludeFreeContext
  - xmlXIncludeParseFile
  - xmlXIncludeAddNode
  - xmlXIncludeRecurseDoc
  - xmlXIncludeBaseFixup
  - xmlXIncludeCopyNode
  - xmlXIncludeCopyXPointer
  - xmlXIncludeMergeEntity
  - xmlXIncludeMergeEntities
  - xmlXIncludeLoadDoc
  - xmlXIncludeLoadTxt
  - xmlXIncludeLoadFallback
  - xmlXIncludeExpandNode
  - xmlXIncludeLoadNode
  - xmlXIncludeIncludeNode
  - xmlXIncludeTestNode
  - xmlXIncludeDoProcess
  - xmlXIncludeDoProcessRoot
  - xmlXIncludeGetLastError
  - xmlXIncludeSetErrorHandler
  - xmlXIncludeSetResourceLoader
  - xmlXIncludeSetFlags
  - xmlXIncludeSetStreamingMode
  - xmlXIncludeProcessTreeFlagsData
  - xmlXIncludeProcessFlagsData
  - xmlXIncludeProcessFlags
  - xmlXIncludeProcess
  - xmlXIncludeProcessTreeFlags
  - xmlXIncludeProcessTree
  - xmlXIncludeProcessNode
  source_file: /src/libxml2/xinclude.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XINCLUDE_MAX_DEPTH
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/xinclude.c
      type_or_value: '40'
    structs:
    - fields:
      - name: '*URI'
        type: xmlChar
      - name: '*fragment'
        type: xmlChar
      - name: '*base'
        type: xmlChar
      - name: elem
        type: xmlNodePtr
      - name: inc
        type: xmlNodePtr
      - name: xml
        type: int
      - name: fallback
        type: int
      - name: expanding
        type: int
      - name: replace
        type: int
      item_type: struct
      name: _xmlXIncludeRef
      pos:
        line_end: 60
        line_start: 50
        source_file: /src/libxml2/xinclude.c
    - fields:
      - name: doc
        type: xmlDocPtr
      - name: '*url'
        type: xmlChar
      - name: expanding
        type: int
      item_type: struct
      name: _xmlXIncludeDoc
      pos:
        line_end: 68
        line_start: 64
        source_file: /src/libxml2/xinclude.c
    - fields:
      - name: '*text'
        type: xmlChar
      - name: '*url'
        type: xmlChar
      item_type: struct
      name: _xmlXIncludeTxt
      pos:
        line_end: 75
        line_start: 72
        source_file: /src/libxml2/xinclude.c
    - fields:
      - name: doc
        type: xmlDocPtr
      - name: incNr
        type: int
      - name: incMax
        type: int
      - name: '*incTab'
        type: xmlXIncludeRefPtr
      - name: txtNr
        type: int
      - name: txtMax
        type: int
      - name: '*txtTab'
        type: xmlXIncludeTxt
      - name: urlNr
        type: int
      - name: urlMax
        type: int
      - name: '*urlTab'
        type: xmlXIncludeDoc
      - name: nbErrors
        type: int
      - name: fatalErr
        type: int
      - name: errNo
        type: int
      - name: legacy
        type: int
      - name: parseFlags
        type: int
      - name: '*_private'
        type: void
      - name: depth
        type: int
      - name: isStream
        type: int
      - name: errorHandler
        type: xmlStructuredErrorFunc
      - name: '*errorCtxt'
        type: void
      - name: resourceLoader
        type: xmlResourceLoader
      - name: '*resourceCtxt'
        type: void
      item_type: struct
      name: _xmlXIncludeCtxt
      pos:
        line_end: 114
        line_start: 77
        source_file: /src/libxml2/xinclude.c
    - fields:
      - name: doc
        type: xmlDocPtr
      - name: ctxt
        type: xmlXIncludeCtxtPtr
      item_type: struct
      name: _xmlXIncludeMergeData
      pos:
        line_end: 909
        line_start: 906
        source_file: /src/libxml2/xinclude.c
    typedefs:
    - item_type: typedef
      name: '*xmlURL'
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/libxml2/xinclude.c
      type: xmlChar
    - item_type: typedef
      name: xmlXIncludeRef
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/libxml2/xinclude.c
      type: _xmlXIncludeRef
    - item_type: typedef
      name: '*xmlXIncludeRefPtr'
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/libxml2/xinclude.c
      type: xmlXIncludeRef
    - item_type: typedef
      name: xmlXIncludeDoc
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/libxml2/xinclude.c
      type: _xmlXIncludeDoc
    - item_type: typedef
      name: '*xmlXIncludeDocPtr'
      pos:
        line_end: 63
        line_start: 63
        source_file: /src/libxml2/xinclude.c
      type: xmlXIncludeDoc
    - item_type: typedef
      name: xmlXIncludeTxt
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxml2/xinclude.c
      type: _xmlXIncludeTxt
    - item_type: typedef
      name: '*xmlXIncludeTxtPtr'
      pos:
        line_end: 71
        line_start: 71
        source_file: /src/libxml2/xinclude.c
      type: xmlXIncludeTxt
    - item_type: typedef
      name: xmlXIncludeMergeData
      pos:
        line_end: 904
        line_start: 904
        source_file: /src/libxml2/xinclude.c
      type: _xmlXIncludeMergeData
    - item_type: typedef
      name: '*xmlXIncludeMergeDataPtr'
      pos:
        line_end: 905
        line_start: 905
        source_file: /src/libxml2/xinclude.c
      type: xmlXIncludeMergeData
    union: []
- function_names:
  - xmlVErrMemory
  - xmlDoErrValid
  - xmlErrValidNode
  - xmlErrValid
  - xmlErrValidNodeNr
  - xmlErrValidWarning
  - vstateVPush
  - vstateVPop
  - vstateVPush
  - vstateVPop
  - nodeVPush
  - nodeVPop
  - xmlValidBuildAContentModel
  - xmlValidBuildContentModel
  - xmlNewValidCtxt
  - xmlFreeValidCtxt
  - xmlNewDocElementContent
  - xmlNewElementContent
  - xmlCopyDocElementContent
  - xmlCopyElementContent
  - xmlFreeDocElementContent
  - xmlFreeElementContent
  - xmlSprintfElementContent
  - xmlSnprintfElementContent
  - xmlFreeElement
  - xmlAddElementDecl
  - xmlFreeElementTableEntry
  - xmlFreeElementTable
  - xmlCopyElement
  - xmlCopyElementTable
  - xmlDumpElementDecl
  - xmlDumpElementDeclScan
  - xmlDumpElementTable
  - xmlCreateEnumeration
  - xmlFreeEnumeration
  - xmlCopyEnumeration
  - xmlScanIDAttributeDecl
  - xmlFreeAttribute
  - xmlAddAttributeDecl
  - xmlFreeAttributeTableEntry
  - xmlFreeAttributeTable
  - xmlCopyAttribute
  - xmlCopyAttributeTable
  - xmlDumpAttributeDecl
  - xmlDumpAttributeDeclScan
  - xmlDumpAttributeTable
  - xmlFreeNotation
  - xmlAddNotationDecl
  - xmlFreeNotationTableEntry
  - xmlFreeNotationTable
  - xmlCopyNotation
  - xmlCopyNotationTable
  - xmlDumpNotationDecl
  - xmlDumpNotationTable
  - DICT_FREE
  - xmlIsStreaming
  - xmlFreeID
  - xmlAddIDInternal
  - xmlAddIDSafe
  - xmlAddID
  - xmlFreeIDTableEntry
  - xmlFreeIDTable
  - xmlIsID
  - xmlRemoveID
  - xmlGetID
  - xmlFreeRef
  - xmlFreeRefTableEntry
  - xmlWalkRemoveRef
  - xmlDummyCompare
  - xmlAddRef
  - xmlFreeRefTable
  - xmlIsRef
  - xmlRemoveRef
  - xmlGetRefs
  - xmlGetDtdElementDesc
  - xmlGetDtdElementDesc2
  - xmlGetDtdQElementDesc
  - xmlGetDtdAttrDesc
  - xmlGetDtdQAttrDesc
  - xmlGetDtdNotationDesc
  - xmlValidateNotationUse
  - xmlIsMixedElement
  - xmlValidNormalizeString
  - xmlValidateNameValueInternal
  - xmlValidateNameValue
  - xmlValidateNamesValueInternal
  - xmlValidateNamesValue
  - xmlValidateNmtokenValueInternal
  - xmlValidateNmtokenValue
  - xmlValidateNmtokensValueInternal
  - xmlValidateNmtokensValue
  - xmlValidateAttributeValueInternal
  - xmlValidateAttributeValue
  - xmlValidateAttributeValue2
  - xmlValidCtxtNormalizeAttributeValue
  - xmlValidNormalizeAttributeValue
  - xmlValidateAttributeIdCallback
  - xmlValidateAttributeDecl
  - xmlValidateElementDecl
  - xmlValidateOneAttribute
  - xmlValidateOneNamespace
  - xmlValidateSkipIgnorable
  - xmlValidateElementType
  - xmlSnprintfElements
  - xmlValidateElementContent
  - xmlValidateOneCdataElement
  - xmlValidateCheckMixed
  - xmlValidGetElemDecl
  - xmlValidatePushElement
  - xmlValidatePushCData
  - xmlValidatePopElement
  - xmlValidateOneElement
  - xmlValidateRoot
  - xmlValidateElement
  - xmlValidateRef
  - xmlWalkValidateList
  - xmlValidateCheckRefCallback
  - xmlValidateDocumentFinal
  - xmlValidateDtd
  - xmlCtxtValidateDtd
  - xmlValidateNotationCallback
  - xmlValidateAttributeCallback
  - xmlValidateDtdFinal
  - xmlValidateDocumentInternal
  - xmlValidateDocument
  - xmlCtxtValidateDocument
  - xmlValidGetPotentialChildren
  - xmlNoValidityErr
  - xmlValidGetValidElements
  source_file: /src/libxml2/valid.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ROLLBACK_OR
      pos:
        line_end: 290
        line_start: 289
        source_file: /src/libxml2/valid.c
      type_or_value: '0'
    - item_type: preproc_def
      name: ROLLBACK_PARENT
      pos:
        line_end: 291
        line_start: 290
        source_file: /src/libxml2/valid.c
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_RECURSE
      pos:
        line_end: 301
        line_start: 300
        source_file: /src/libxml2/valid.c
      type_or_value: '25000'
    - item_type: preproc_def
      name: MAX_DEPTH
      pos:
        line_end: 302
        line_start: 301
        source_file: /src/libxml2/valid.c
      type_or_value: ((sizeof(_xmlValidState.occurs)) * 8)
    - item_type: preproc_def
      name: CONT
      pos:
        line_end: 303
        line_start: 302
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->cont
    - item_type: preproc_def
      name: NODE
      pos:
        line_end: 304
        line_start: 303
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->node
    - item_type: preproc_def
      name: DEPTH
      pos:
        line_end: 305
        line_start: 304
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->depth
    - item_type: preproc_def
      name: OCCURS
      pos:
        line_end: 306
        line_start: 305
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->occurs
    - item_type: preproc_def
      name: STATE
      pos:
        line_end: 307
        line_start: 306
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->state
    - item_type: preproc_def
      name: OCCURRENCE
      pos:
        line_end: 309
        line_start: 308
        source_file: /src/libxml2/valid.c
      type_or_value: (ctxt->vstate->occurs & (1 << DEPTH))
    - item_type: preproc_def
      name: PARENT_OCCURRENCE
      pos:
        line_end: 310
        line_start: 309
        source_file: /src/libxml2/valid.c
      type_or_value: (ctxt->vstate->occurs & ((1 << DEPTH) - 1))
    - item_type: preproc_def
      name: SET_OCCURRENCE
      pos:
        line_end: 312
        line_start: 311
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->occurs |= (1 << DEPTH)
    - item_type: preproc_def
      name: RESET_OCCURRENCE
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/libxml2/valid.c
      type_or_value: ctxt->vstate->occurs &= ((1 << DEPTH) - 1)
    - item_type: preproc_def
      name: CHECK_DTD
      pos:
        line_end: 420
        line_start: 416
        source_file: /src/libxml2/valid.c
      type_or_value: "if (doc == NULL) return(0);\t\t\t\t\t\\\n   else if ((doc->intSubset
        == NULL) &&\t\t\t\t\\\n\t    (doc->extSubset == NULL)) return(0)"
    structs:
    - fields:
      - name: elemDecl
        type: xmlElementPtr
      - name: node
        type: xmlNodePtr
      - name: exec
        type: xmlRegExecCtxtPtr
      item_type: struct
      name: _xmlValidState
      pos:
        line_end: 211
        line_start: 207
        source_file: /src/libxml2/valid.c
    - fields:
      - name: cont
        type: xmlElementContentPtr
      - name: node
        type: xmlNodePtr
      - name: occurs
        type: long
      - name: depth
        type: unsigned char
      - name: state
        type: unsigned char
      item_type: struct
      name: _xmlValidState
      pos:
        line_end: 298
        line_start: 292
        source_file: /src/libxml2/valid.c
    - fields:
      - name: l
        type: xmlListPtr
      - name: ap
        type: xmlAttrPtr
      item_type: struct
      name: xmlRemoveMemo_t
      pos:
        line_end: 2456
        line_start: 2452
        source_file: /src/libxml2/valid.c
    - fields:
      - name: ctxt
        type: xmlValidCtxtPtr
      - name: '*name'
        type: xmlChar
      item_type: struct
      name: xmlValidateMemo_t
      pos:
        line_end: 2464
        line_start: 2460
        source_file: /src/libxml2/valid.c
    typedefs:
    - item_type: typedef
      name: '*xmlRemoveMemoPtr'
      pos:
        line_end: 2458
        line_start: 2458
        source_file: /src/libxml2/valid.c
      type: xmlRemoveMemo
    - item_type: typedef
      name: '*xmlValidateMemoPtr'
      pos:
        line_end: 2466
        line_start: 2466
        source_file: /src/libxml2/valid.c
      type: xmlValidateMemo
    union: []
- function_names:
  - isnan
  - IS_WSP_REPLACE_CH
  - IS_WSP_SPACE_CH
  - IS_WSP_BLANK_CH
  - xmlSchemaTypeErrMemory
  - xmlSchemaNewValue
  - xmlSchemaNewMinLengthFacet
  - xmlSchemaInitBasicType
  - xmlSchemaValDecimalGetFractionalPart
  - xmlSchemaValDecimalIsInteger
  - xmlSchemaValDecimalGetSignificantDigitCount
  - xmlSchemaValDecimalCompare
  - xmlSchemaValDecimalCompareWithInteger
  - xmlSchemaAddParticle
  - xmlSchemaFreeTypeEntry
  - xmlSchemaCleanupTypesInternal
  - xmlInitSchemasTypesInternal
  - xmlCleanupSchemasTypesInternal
  - xmlSchemaInitTypes
  - xmlSchemaCleanupTypes
  - xmlSchemaIsBuiltInTypeFacet
  - xmlSchemaGetBuiltInType
  - xmlSchemaValueAppend
  - xmlSchemaValueGetNext
  - xmlSchemaValueGetAsString
  - xmlSchemaValueGetAsBoolean
  - xmlSchemaNewStringValue
  - xmlSchemaNewNOTATIONValue
  - xmlSchemaNewQNameValue
  - xmlSchemaFreeValue
  - xmlSchemaGetPredefinedType
  - xmlSchemaGetBuiltInListSimpleTypeItemType
  - IS_TZO_CHAR
  - VALID_YEAR
  - VALID_MONTH
  - VALID_DAY
  - VALID_HOUR
  - VALID_MIN
  - VALID_SEC
  - VALID_TZO
  - IS_LEAP
  - MAX_DAYINMONTH
  - VALID_MDAY
  - VALID_DATE
  - VALID_END_OF_DAY
  - VALID_TIME
  - VALID_DATETIME
  - DAY_IN_YEAR
  - _xmlSchemaParseGYear
  - PARSE_2_DIGITS
  - PARSE_FLOAT
  - _xmlSchemaParseGMonth
  - _xmlSchemaParseGDay
  - _xmlSchemaParseTime
  - _xmlSchemaParseTimeZone
  - _xmlSchemaBase64Decode
  - PARSE_DIGITS
  - PARSE_NUM
  - xmlSchemaValidateDates
  - RETURN_TYPE_IF_VALID
  - xmlSchemaValidateDuration
  - xmlSchemaStrip
  - xmlSchemaWhiteSpaceReplace
  - xmlSchemaCollapseString
  - xmlSchemaValAtomicListNode
  - xmlSchemaParseUInt
  - xmlSchemaCheckLanguageType
  - xmlSchemaValAtomicType
  - xmlSchemaValPredefTypeNode
  - xmlSchemaValPredefTypeNodeNoNorm
  - xmlSchemaValidatePredefinedType
  - xmlSchemaCompareDecimals
  - xmlSchemaCompareDurations
  - FQUOTIENT
  - MODULO
  - FQUOTIENT_RANGE
  - MODULO_RANGE
  - xmlSchemaDupVal
  - xmlSchemaCopyValue
  - _xmlSchemaDateAdd
  - xmlSchemaDateNormalize
  - _xmlSchemaDateCastYMToDays
  - TIME_TO_NUMBER
  - xmlSchemaCompareDates
  - xmlSchemaComparePreserveReplaceStrings
  - xmlSchemaComparePreserveCollapseStrings
  - (*y)
  - xmlSchemaCompareReplaceCollapseStrings
  - (*y)
  - xmlSchemaCompareReplacedStrings
  - (*y)
  - xmlSchemaCompareNormStrings
  - xmlSchemaCompareFloats
  - xmlSchemaCompareValuesInternal
  - xmlSchemaCompareValues
  - xmlSchemaCompareValuesWhtsp
  - xmlSchemaCompareValuesWhtspExt
  - xmlSchemaNormLen
  - xmlSchemaGetFacetValueAsULong
  - xmlSchemaValidateListSimpleTypeFacet
  - xmlSchemaValidateLengthFacetInternal
  - xmlSchemaValidateLengthFacet
  - xmlSchemaValidateLengthFacetWhtsp
  - xmlSchemaValidateFacetInternal
  - xmlSchemaValidateFacet
  - xmlSchemaValidateFacetWhtsp
  - xmlSchemaGetCanonValue
  - xmlSchemaGetCanonValueWhtsp
  - xmlSchemaGetValType
  source_file: /src/libxml2/xmlschemastypes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_SCHEMAS_NAMESPACE_NAME
      pos:
        line_end: 45
        line_start: 43
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: (const xmlChar *)"http://www.w3.org/2001/XMLSchema"
    - item_type: preproc_def
      name: UNBOUNDED
      pos:
        line_end: 424
        line_start: 423
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: (1 << 30)
    - item_type: preproc_def
      name: SECS_PER_MIN
      pos:
        line_end: 1403
        line_start: 1402
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: '60'
    - item_type: preproc_def
      name: MINS_PER_HOUR
      pos:
        line_end: 1404
        line_start: 1403
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: '60'
    - item_type: preproc_def
      name: HOURS_PER_DAY
      pos:
        line_end: 1405
        line_start: 1404
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: '24'
    - item_type: preproc_def
      name: SECS_PER_HOUR
      pos:
        line_end: 1406
        line_start: 1405
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: (MINS_PER_HOUR * SECS_PER_MIN)
    - item_type: preproc_def
      name: SECS_PER_DAY
      pos:
        line_end: 1407
        line_start: 1406
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: (HOURS_PER_DAY * SECS_PER_HOUR)
    - item_type: preproc_def
      name: MINS_PER_DAY
      pos:
        line_end: 1408
        line_start: 1407
        source_file: /src/libxml2/xmlschemastypes.c
      type_or_value: (HOURS_PER_DAY * MINS_PER_HOUR)
    structs:
    - fields:
      - name: year
        type: long
      - name: mon
        type: unsigned int
      - name: day
        type: unsigned int
      - name: hour
        type: unsigned int
      - name: min
        type: unsigned int
      - name: sec
        type: double
      - name: tz_flag
        type: unsigned int
      - name: tzo
        type: signed int
      item_type: struct
      name: _xmlSchemaValDate
      pos:
        line_end: 66
        line_start: 56
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: mon
        type: long
      - name: day
        type: long
      - name: sec
        type: double
      item_type: struct
      name: _xmlSchemaValDuration
      pos:
        line_end: 75
        line_start: 71
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: '*str'
        type: xmlChar
      - name: integralPlaces
        type: unsigned
      - name: fractionalPlaces
        type: unsigned
      item_type: struct
      name: _xmlSchemaValDecimal
      pos:
        line_end: 84
        line_start: 79
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: '*name'
        type: xmlChar
      - name: '*uri'
        type: xmlChar
      item_type: struct
      name: _xmlSchemaValQName
      pos:
        line_end: 91
        line_start: 88
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: '*str'
        type: xmlChar
      - name: total
        type: unsigned int
      item_type: struct
      name: _xmlSchemaValHex
      pos:
        line_end: 98
        line_start: 95
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: '*str'
        type: xmlChar
      - name: total
        type: unsigned int
      item_type: struct
      name: _xmlSchemaValBase64
      pos:
        line_end: 105
        line_start: 102
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: type
        type: xmlSchemaValType
      - name: '*next'
        type: struct _xmlSchemaVal
      - name: value
        type: "union {\n\txmlSchemaValDecimal     decimal;\n        xmlSchemaValDate
          \       date;\n        xmlSchemaValDuration    dur;\n\txmlSchemaValQName\tqname;\n\txmlSchemaValHex\t\thex;\n\txmlSchemaValBase64\tbase64;\n\tfloat\t\t\tf;\n\tdouble\t\t\td;\n\tint\t\t\tb;\n\txmlChar
          \               *str;\n    }"
      item_type: struct
      name: _xmlSchemaVal
      pos:
        line_end: 122
        line_start: 107
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      item_type: struct
      name: _xmlSchemaTreeItem
      pos:
        line_end: 432
        line_start: 427
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      - name: minOccurs
        type: int
      - name: maxOccurs
        type: int
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlSchemaParticle
      pos:
        line_end: 444
        line_start: 436
        source_file: /src/libxml2/xmlschemastypes.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlSchemaModelGroup
      pos:
        line_end: 454
        line_start: 448
        source_file: /src/libxml2/xmlschemastypes.c
    typedefs:
    - item_type: typedef
      name: xmlSchemaValDate
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValDate
    - item_type: typedef
      name: '*xmlSchemaValDatePtr'
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValDate
    - item_type: typedef
      name: xmlSchemaValDuration
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValDuration
    - item_type: typedef
      name: '*xmlSchemaValDurationPtr'
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValDuration
    - item_type: typedef
      name: xmlSchemaValDecimal
      pos:
        line_end: 77
        line_start: 77
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValDecimal
    - item_type: typedef
      name: '*xmlSchemaValDecimalPtr'
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValDecimal
    - item_type: typedef
      name: xmlSchemaValQName
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValQName
    - item_type: typedef
      name: '*xmlSchemaValQNamePtr'
      pos:
        line_end: 87
        line_start: 87
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValQName
    - item_type: typedef
      name: xmlSchemaValHex
      pos:
        line_end: 93
        line_start: 93
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValHex
    - item_type: typedef
      name: '*xmlSchemaValHexPtr'
      pos:
        line_end: 94
        line_start: 94
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValHex
    - item_type: typedef
      name: xmlSchemaValBase64
      pos:
        line_end: 100
        line_start: 100
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaValBase64
    - item_type: typedef
      name: '*xmlSchemaValBase64Ptr'
      pos:
        line_end: 101
        line_start: 101
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaValBase64
    - item_type: typedef
      name: xmlSchemaTreeItem
      pos:
        line_end: 425
        line_start: 425
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaTreeItem
    - item_type: typedef
      name: '*xmlSchemaTreeItemPtr'
      pos:
        line_end: 426
        line_start: 426
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaTreeItem
    - item_type: typedef
      name: xmlSchemaParticle
      pos:
        line_end: 434
        line_start: 434
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaParticle
    - item_type: typedef
      name: '*xmlSchemaParticlePtr'
      pos:
        line_end: 435
        line_start: 435
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaParticle
    - item_type: typedef
      name: xmlSchemaModelGroup
      pos:
        line_end: 446
        line_start: 446
        source_file: /src/libxml2/xmlschemastypes.c
      type: _xmlSchemaModelGroup
    - item_type: typedef
      name: '*xmlSchemaModelGroupPtr'
      pos:
        line_end: 447
        line_start: 447
        source_file: /src/libxml2/xmlschemastypes.c
      type: xmlSchemaModelGroup
    union: []
- function_names:
  - WXS_ITEM_NODE
  - WXS_ITEM_TYPE_NAME
  - WXS_ELEM_TYPEDEF
  - WXS_SUBST_HEAD
  - WXS_ATTR_TYPEDEF
  - WXS_ATTRUSE_DECL
  - WXS_ATTRUSE_TYPEDEF
  - WXS_ATTRUSE_DECL_NAME
  - WXS_ATTRUSE_DECL_TNS
  - WXS_ATTR_GROUP_HAS_REFS
  - WXS_ATTR_GROUP_EXPANDED
  - WXS_PARTICLE
  - WXS_PARTICLE_TERM
  - WXS_PARTICLE_TERM_AS_ELEM
  - WXS_PARTICLE_MODEL
  - WXS_MODELGROUPDEF_MODEL
  - WXS_IS_MODEL_GROUP
  - WXS_MODELGROUP_PARTICLE
  - WXS_IS_BUCKET_INCREDEF
  - WXS_IS_BUCKET_IMPMAIN
  - WXS_IMPBUCKET
  - WXS_INCBUCKET
  - WXS_IS_ANYTYPE
  - WXS_IS_COMPLEX
  - WXS_IS_SIMPLE
  - WXS_IS_ANY_SIMPLE_TYPE
  - WXS_IS_RESTRICTION
  - WXS_IS_EXTENSION
  - WXS_IS_TYPE_NOT_FIXED
  - WXS_IS_TYPE_NOT_FIXED_1
  - WXS_TYPE_IS_GLOBAL
  - WXS_TYPE_IS_LOCAL
  - WXS_HAS_COMPLEX_CONTENT
  - WXS_HAS_SIMPLE_CONTENT
  - WXS_HAS_MIXED_CONTENT
  - WXS_EMPTIABLE
  - WXS_TYPE_CONTENTTYPE
  - WXS_TYPE_PARTICLE
  - WXS_TYPE_PARTICLE_TERM
  - WXS_LIST_ITEMTYPE
  - WXS_IS_ATOMIC
  - WXS_IS_LIST
  - WXS_IS_UNION
  - WXS_CONSTRUCTOR
  - WXS_HAS_BUCKETS
  - WXS_SUBST_GROUPS
  - WXS_BUCKET
  - WXS_SCHEMA
  - WXS_ADD_LOCAL
  - WXS_ADD_GLOBAL
  - WXS_ADD_PENDING
  - WXS_ILIST_IS_EMPTY
  - IS_SCHEMA
  - FREE_AND_NULL
  - WXS_ARE_DEFAULT_STR_EQUAL
  - INODE_NILLED
  - CAN_PARSE_SCHEMA
  - HSTOP
  - xmlSchemaItemTypeToStr
  - xmlSchemaGetComponentTypeStr
  - xmlSchemaGetComponentNode
  - xmlSchemaGetNextComponent
  - xmlSchemaFormatQName
  - xmlSchemaFormatQNameNs
  - xmlSchemaGetComponentName
  - xmlSchemaGetQNameRefName
  - xmlSchemaGetQNameRefTargetNs
  - xmlSchemaGetComponentTargetNs
  - xmlSchemaGetComponentQName
  - xmlSchemaGetComponentDesignation
  - xmlSchemaGetIDCDesignation
  - xmlSchemaWildcardPCToString
  - xmlSchemaGetCanonValueWhtspExt_1
  - xmlSchemaGetCanonValueWhtspExt
  - xmlSchemaGetCanonValueHash
  - xmlSchemaFormatItemForReport
  - xmlSchemaFormatFacetEnumSet
  - xmlSchemaPErrMemory
  - xmlSchemaPErrFull
  - xmlSchemaPErr
  - xmlSchemaPErr2
  - xmlSchemaPErrExt
  - xmlSchemaVErrMemory
  - xmlSchemaVErrFull
  - xmlSchemaErr4Line
  - xmlSchemaErr3
  - xmlSchemaErr4
  - xmlSchemaErr
  - xmlSchemaFormatNodeForError
  - xmlSchemaInternalErr2
  - xmlSchemaInternalErr
  - xmlSchemaPInternalErr
  - xmlSchemaCustomErr4
  - xmlSchemaCustomErr
  - xmlSchemaCustomWarning
  - xmlSchemaKeyrefErr
  - xmlSchemaEvalErrorNodeType
  - xmlSchemaIsGlobalItem
  - xmlSchemaSimpleTypeErr
  - xmlSchemaFormatErrorNodeQName
  - xmlSchemaIllegalAttrErr
  - xmlSchemaComplexTypeErr
  - xmlSchemaFacetErr
  - VERROR
  - VERROR_INT
  - PERROR_INT
  - PERROR_INT2
  - AERROR_INT
  - xmlSchemaPMissingAttrErr
  - xmlSchemaPResCompAttrErr
  - xmlSchemaPCustomAttrErr
  - xmlSchemaPIllegalAttrErr
  - xmlSchemaPCustomErrExt
  - xmlSchemaPCustomErr
  - xmlSchemaPAttrUseErr4
  - xmlSchemaPIllegalFacetAtomicErr
  - xmlSchemaPIllegalFacetListUnionErr
  - xmlSchemaPMutualExclAttrErr
  - xmlSchemaPSimpleTypeErr
  - xmlSchemaPContentErr
  - xmlSchemaNewSchema
  - xmlSchemaNewFacet
  - xmlSchemaNewAnnot
  - xmlSchemaItemListCreate
  - xmlSchemaItemListClear
  - xmlSchemaItemListGrow
  - xmlSchemaItemListAddSize
  - xmlSchemaItemListAdd
  - xmlSchemaItemListInsert
  - xmlSchemaItemListRemove
  - xmlSchemaItemListFree
  - xmlSchemaBucketFree
  - xmlSchemaBucketFreeEntry
  - xmlSchemaBucketCreate
  - xmlSchemaAddItemSize
  - xmlSchemaFreeAnnot
  - xmlSchemaFreeNotation
  - xmlSchemaFreeAttribute
  - xmlSchemaFreeAttributeUse
  - xmlSchemaFreeAttributeUseProhib
  - xmlSchemaFreeWildcardNsSet
  - xmlSchemaFreeWildcard
  - xmlSchemaFreeAttributeGroup
  - xmlSchemaFreeQNameRef
  - xmlSchemaFreeTypeLinkList
  - xmlSchemaFreeIDCStateObjList
  - xmlSchemaFreeIDC
  - xmlSchemaFreeElement
  - xmlSchemaFreeFacet
  - xmlSchemaFreeType
  - xmlSchemaFreeModelGroupDef
  - xmlSchemaFreeModelGroup
  - xmlSchemaComponentListFree
  - xmlSchemaFree
  - xmlSchemaElementDump
  - xmlSchemaAnnotDump
  - xmlSchemaContentModelDump
  - xmlSchemaAttrUsesDump
  - xmlSchemaTypeDump
  - xmlSchemaTypeDumpEntry
  - xmlSchemaDump
  - xmlSchemaGetPropNode
  - xmlSchemaGetPropNodeNs
  - xmlSchemaGetNodeContent
  - xmlSchemaGetNodeContentNoDict
  - xmlSchemaGetProp
  - WXS_FIND_GLOBAL_ITEM
  - xmlSchemaGetElem
  - xmlSchemaGetType
  - xmlSchemaGetAttributeDecl
  - xmlSchemaGetAttributeGroup
  - xmlSchemaGetGroup
  - xmlSchemaGetNotation
  - xmlSchemaGetIDC
  - xmlSchemaGetNamedComponent
  - IS_BLANK_NODE
  - xmlSchemaIsBlank
  - WXS_COMP_NAME
  - WXS_COMP_TNS
  - xmlSchemaFindRedefCompInGraph
  - xmlSchemaAddNotation
  - xmlSchemaAddAttribute
  - xmlSchemaAddAttributeUse
  - xmlSchemaAddRedef
  - xmlSchemaAddAttributeGroupDefinition
  - xmlSchemaAddElement
  - xmlSchemaAddType
  - xmlSchemaNewQNameRef
  - xmlSchemaAddAttributeUseProhib
  - xmlSchemaAddModelGroup
  - xmlSchemaAddParticle
  - xmlSchemaAddModelGroupDefinition
  - xmlSchemaNewWildcardNsConstraint
  - xmlSchemaAddIDC
  - xmlSchemaAddWildcard
  - xmlSchemaSubstGroupFree
  - xmlSchemaSubstGroupFreeEntry
  - xmlSchemaSubstGroupAdd
  - xmlSchemaSubstGroupGet
  - xmlSchemaAddElementSubstitutionMember
  - xmlSchemaPValAttrNodeQNameValue
  - xmlSchemaPValAttrNodeQName
  - xmlSchemaPValAttrQName
  - xmlSchemaPValAttrNodeID
  - xmlSchemaPValAttrID
  - xmlGetMaxOccurs
  - xmlGetMinOccurs
  - xmlSchemaPGetBoolNodeValue
  - xmlGetBooleanProp
  - xmlSchemaPValAttrNodeValue
  - xmlSchemaPValAttrNode
  - xmlSchemaPValAttr
  - xmlSchemaCheckReference
  - xmlSchemaParseLocalAttributes
  - xmlSchemaParseAnnotation
  - xmlSchemaParseFacet
  - xmlSchemaParseWildcardNs
  - xmlSchemaPCheckParticleCorrect_2
  - xmlSchemaParseAny
  - xmlSchemaParseNotation
  - xmlSchemaParseAnyAttribute
  - xmlSchemaParseLocalAttribute
  - xmlSchemaParseGlobalAttribute
  - xmlSchemaPMutualExclAttrErr
  - xmlSchemaParseAttributeGroupRef
  - xmlSchemaParseAttributeGroupDefinition
  - xmlSchemaPValAttrFormDefault
  - xmlSchemaPValAttrBlockFinal
  - xmlSchemaCheckCSelectorXPath
  - ADD_ANNOTATION
  - xmlSchemaAddAnnotation
  - xmlSchemaParseIDCSelectorAndField
  - xmlSchemaParseIDC
  - xmlSchemaParseElement
  - xmlSchemaParseUnion
  - xmlSchemaParseList
  - xmlSchemaParseSimpleType
  - xmlSchemaParseModelGroupDefRef
  - xmlSchemaParseModelGroupDefinition
  - xmlSchemaCleanupDoc
  - xmlSchemaClearSchemaDefaults
  - xmlSchemaParseSchemaElement
  - xmlSchemaParseSchemaTopLevel
  - xmlSchemaSchemaRelationCreate
  - xmlSchemaSchemaRelationFree
  - xmlSchemaRedefListFree
  - xmlSchemaConstructionCtxtFree
  - xmlSchemaConstructionCtxtCreate
  - xmlSchemaParserCtxtCreate
  - xmlSchemaNewParserCtxtUseDict
  - xmlSchemaCreatePCtxtOnVCtxt
  - xmlSchemaGetSchemaBucket
  - xmlSchemaGetChameleonSchemaBucket
  - IS_BAD_SCHEMA_DOC
  - xmlSchemaGetSchemaBucketByTNS
  - xmlSchemaParseNewDocWithContext
  - xmlSchemaParseNewDoc
  - xmlSchemaSchemaRelationAddChild
  - xmlSchemaBuildAbsoluteURI
  - xmlSchemaAddSchemaDoc
  - xmlSchemaParseImport
  - xmlSchemaParseIncludeOrRedefineAttrs
  - xmlSchemaParseIncludeOrRedefine
  - xmlSchemaParseRedefine
  - xmlSchemaParseInclude
  - xmlSchemaParseModelGroup
  - xmlSchemaParseRestriction
  - xmlSchemaParseExtension
  - xmlSchemaParseSimpleContent
  - xmlSchemaParseComplexContent
  - xmlSchemaParseComplexType
  - xmlSchemaParserCtxtSetOptions
  - xmlSchemaParserCtxtGetOptions
  - xmlSchemaNewParserCtxt
  - xmlSchemaNewMemParserCtxt
  - xmlSchemaNewDocParserCtxt
  - xmlSchemaFreeParserCtxt
  - xmlSchemaBuildContentModelForSubstGroup
  - xmlSchemaBuildContentModelForElement
  - xmlSchemaBuildAContentModel
  - xmlSchemaBuildContentModel
  - xmlSchemaResolveElementReferences
  - xmlSchemaPResCompAttrErr
  - xmlSchemaPResCompAttrErr
  - xmlSchemaResolveUnionMemberTypes
  - xmlSchemaIsDerivedFromBuiltInType
  - xmlSchemaIsUserDerivedFromBuiltInType
  - xmlSchemaQueryBuiltInType
  - xmlSchemaGetPrimitiveType
  - xmlSchemaGetBuiltInTypeAncestor
  - xmlSchemaCloneWildcardNsConstraints
  - xmlSchemaUnionWildcards
  - xmlSchemaIntersectWildcards
  - xmlSchemaCheckCOSNSSubset
  - xmlSchemaGetEffectiveValueConstraint
  - xmlSchemaCheckCVCWildcardNamespace
  - WXS_ACTION_STR
  - xmlSchemaCheckDerivationOKRestriction2to4
  - xmlSchemaFixupTypeAttributeUses
  - xmlSchemaTypeFinalContains
  - xmlSchemaGetUnionSimpleTypeMemberTypes
  - xmlSchemaGetParticleTotalRangeMin
  - xmlSchemaGetParticleTotalRangeMax
  - xmlSchemaGetParticleEmptiable
  - xmlSchemaIsParticleEmptiable
  - xmlSchemaCheckCOSSTDerivedOK
  - xmlSchemaCheckTypeDefCircularInternal
  - xmlSchemaCheckTypeDefCircular
  - xmlSchemaCheckUnionTypeDefCircularRecur
  - xmlSchemaCheckUnionTypeDefCircular
  - xmlSchemaResolveTypeReferences
  - xmlSchemaCheckSTPropsCorrect
  - xmlSchemaCheckCOSSTRestricts
  - if
  - xmlSchemaCheckSRCSimpleType
  - xmlSchemaCreateVCtxtOnPCtxt
  - xmlSchemaParseCheckCOSValidDefault
  - WXS_IS_COMPLEX
  - xmlSchemaCheckCTPropsCorrect
  - xmlSchemaAreEqualTypes
  - xmlSchemaCheckCOSCTDerivedOK
  - xmlSchemaCheckCOSDerivedOK
  - xmlSchemaCheckCOSCTExtends
  - xmlSchemaCheckDerivationOKRestriction
  - xmlSchemaCheckCTComponent
  - xmlSchemaCheckSRCCT
  - xmlSchemaCheckParticleRangeOK
  - xmlSchemaCheckRCaseNameAndTypeOK
  - xmlSchemaCheckRCaseNSCompat
  - xmlSchemaCheckRCaseRecurseAsIfGroup
  - xmlSchemaCheckRCaseNSSubset
  - xmlSchemaCheckCOSParticleRestrict
  - xmlSchemaCheckRCaseNSRecurseCheckCardinality
  - xmlSchemaCheckRCaseRecurse
  - FACET_RESTR_MUTUAL_ERR
  - FACET_RESTR_ERR
  - FACET_RESTR_FIXED_ERR
  - xmlSchemaDeriveFacetErr
  - xmlSchemaDeriveAndValidateFacets
  - xmlSchemaFinishMemberTypeDefinitionsProperty
  - xmlSchemaTypeFixupOptimFacets
  - xmlSchemaTypeFixupWhitespace
  - xmlSchemaFixupSimpleTypeStageOne
  - xmlSchemaFixupSimpleTypeStageTwo
  - xmlSchemaFixupComplexType
  - xmlSchemaTypeFixup
  - xmlSchemaCheckFacet
  - xmlSchemaCheckFacetValues
  - xmlSchemaGetCircModelGrDefRef
  - xmlSchemaCheckGroupDefCircular
  - xmlSchemaModelGroupToModelGroupDefFixup
  - xmlSchemaCheckAttrGroupCircularRecur
  - xmlSchemaCheckAttrGroupCircular
  - xmlSchemaExpandAttributeGroupRefs
  - xmlSchemaAttributeGroupExpandRefs
  - xmlSchemaCheckAGPropsCorrect
  - xmlSchemaResolveAttrGroupReferences
  - xmlSchemaCheckAttrPropsCorrect
  - xmlSchemaCheckSubstGroupCircular
  - xmlSchemaCheckElemPropsCorrect
  - xmlSchemaCheckElemSubstGroup
  - xmlSchemaCheckElementDeclConsistent
  - xmlSchemaCheckElementDeclComponent
  - xmlSchemaResolveModelGroupParticleReferences
  - xmlSchemaAreValuesEqual
  - xmlSchemaResolveAttrUseReferences
  - xmlSchemaCheckAttrUsePropsCorrect
  - xmlSchemaResolveAttrTypeReferences
  - xmlSchemaResolveIDCKeyReferences
  - xmlSchemaResolveAttrUseProhibReferences
  - WXS_REDEFINED_TYPE
  - WXS_REDEFINED_MODEL_GROUP_DEF
  - WXS_REDEFINED_ATTR_GROUP
  - xmlSchemaCheckSRCRedefineFirst
  - xmlSchemaCheckSRCRedefineSecond
  - xmlSchemaAddComponents
  - WXS_GET_GLOBAL_HASH
  - xmlSchemaFixupComponents
  - xmlSchemaParse
  - xmlSchemaSetParserErrors
  - xmlSchemaSetParserStructuredErrors
  - xmlSchemaGetParserErrors
  - xmlSchemaSetResourceLoader
  - xmlSchemaFacetTypeToString
  - xmlSchemaGetWhiteSpaceFacetValue
  - xmlSchemaAssembleByLocation
  - xmlSchemaGetMetaAttrInfo
  - xmlSchemaAssembleByXSI
  - xmlSchemaLookupNamespace
  - xmlSchemaValidateNotation
  - xmlSchemaVAddNodeQName
  - xmlSchemaAugmentIDC
  - xmlSchemaAugmentImportedIDC
  - xmlSchemaIDCNewBinding
  - xmlSchemaIDCStoreNodeTableItem
  - xmlSchemaIDCStoreKey
  - xmlSchemaIDCAppendNodeTableItem
  - xmlSchemaIDCAcquireBinding
  - xmlSchemaIDCAcquireTargetList
  - xmlSchemaIDCFreeKey
  - xmlSchemaIDCFreeBinding
  - xmlSchemaIDCFreeIDCTable
  - xmlFreeIDCHashEntry
  - xmlSchemaIDCFreeMatcherList
  - xmlSchemaIDCReleaseMatcherList
  - xmlSchemaIDCAddStateObject
  - xmlSchemaXPathEvaluate
  - xmlSchemaFormatIDCKeySequence_1
  - xmlSchemaFormatIDCKeySequence
  - xmlSchemaHashKeySequence
  - xmlSchemaXPathPop
  - xmlSchemaXPathProcessHistory
  - xmlSchemaIDCRegisterMatchers
  - xmlSchemaIDCFillNodeTables
  - xmlSchemaBubbleIDCNodeTables
  - xmlSchemaCheckCVCIDCKeyRef
  - xmlSchemaGetFreshAttrInfo
  - xmlSchemaValidatorPushAttribute
  - xmlSchemaClearElemInfo
  - xmlSchemaGetFreshElemInfo
  - ACTIVATE_ATTRIBUTE
  - xmlSchemaValidateFacets
  - xmlSchemaNormalizeValue
  - xmlSchemaValidateQName
  - xmlSchemaVCheckCVCSimpleType
  - NORMALIZE
  - xmlSchemaVExpandQName
  - xmlSchemaSimpleTypeErr
  - xmlSchemaProcessXSIType
  - xmlSchemaValidateElemDecl
  - xmlSchemaVAttributesSimple
  - xmlSchemaClearAttrInfos
  - xmlSchemaVAttributesComplex
  - xmlSchemaValidateElemWildcard
  - xmlSchemaCheckCOSValidDefault
  - xmlSchemaVContentModelCallback
  - xmlSchemaValidatorPushElem
  - xmlSchemaVCheckINodeDataType
  - xmlSchemaValidatorPopElem
  - xmlSchemaValidateChildElem
  - xmlSchemaVPushText
  - xmlSchemaValidateElem
  - xmlSchemaVReaderWalk
  - xmlSchemaSAXHandleText
  - xmlSchemaSAXHandleCDataSection
  - xmlSchemaSAXHandleReference
  - xmlSchemaSAXHandleStartElementNs
  - xmlSchemaSAXHandleEndElementNs
  - xmlSchemaNewValidCtxt
  - xmlSchemaValidateSetFilename
  - xmlSchemaClearValidCtxt
  - xmlSchemaFreeValidCtxt
  - xmlSchemaIsValid
  - xmlSchemaSetValidErrors
  - xmlSchemaSetValidStructuredErrors
  - xmlSchemaGetValidErrors
  - xmlSchemaSetValidOptions
  - xmlSchemaValidCtxtGetOptions
  - xmlSchemaVDocWalk
  - xmlSchemaPreRun
  - xmlSchemaPostRun
  - xmlSchemaVStart
  - xmlSchemaValidateOneElement
  - xmlSchemaValidateDoc
  - internalSubsetSplit
  - isStandaloneSplit
  - hasInternalSubsetSplit
  - hasExternalSubsetSplit
  - externalSubsetSplit
  - resolveEntitySplit
  - getEntitySplit
  - getParameterEntitySplit
  - entityDeclSplit
  - attributeDeclSplit
  - elementDeclSplit
  - notationDeclSplit
  - unparsedEntityDeclSplit
  - setDocumentLocatorSplit
  - startDocumentSplit
  - endDocumentSplit
  - processingInstructionSplit
  - commentSplit
  - warningSplit
  - errorSplit
  - fatalErrorSplit
  - charactersSplit
  - ignorableWhitespaceSplit
  - cdataBlockSplit
  - referenceSplit
  - startElementNsSplit
  - endElementNsSplit
  - xmlSchemaSAXPlug
  - xmlSchemaSAXUnplug
  - xmlSchemaValidateSetLocator
  - xmlSchemaValidateStreamLocator
  - xmlSchemaValidateStreamInternal
  - xmlSchemaValidateStream
  - xmlSchemaValidateFile
  - xmlSchemaValidCtxtGetParserCtxt
  source_file: /src/libxml2/xmlschemas.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UNBOUNDED
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1 << 30)
    - item_type: preproc_def
      name: XML_SCHEMAS_NO_NAMESPACE
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (const xmlChar *) "##"
    - item_type: preproc_def
      name: ACTXT_CAST
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaAbstractCtxtPtr)
    - item_type: preproc_def
      name: PCTXT_CAST
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaParserCtxtPtr)
    - item_type: preproc_def
      name: VCTXT_CAST
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaValidCtxtPtr)
    - item_type: preproc_def
      name: WXS_BASIC_CAST
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaBasicItemPtr)
    - item_type: preproc_def
      name: WXS_TREE_CAST
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaTreeItemPtr)
    - item_type: preproc_def
      name: WXS_PTC_CAST
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaParticlePtr)
    - item_type: preproc_def
      name: WXS_TYPE_CAST
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaTypePtr)
    - item_type: preproc_def
      name: WXS_ELEM_CAST
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaElementPtr)
    - item_type: preproc_def
      name: WXS_ATTR_GROUP_CAST
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaAttributeGroupPtr)
    - item_type: preproc_def
      name: WXS_ATTR_CAST
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaAttributePtr)
    - item_type: preproc_def
      name: WXS_ATTR_USE_CAST
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaAttributeUsePtr)
    - item_type: preproc_def
      name: WXS_ATTR_PROHIB_CAST
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaAttributeUseProhibPtr)
    - item_type: preproc_def
      name: WXS_MODEL_GROUPDEF_CAST
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaModelGroupDefPtr)
    - item_type: preproc_def
      name: WXS_MODEL_GROUP_CAST
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaModelGroupPtr)
    - item_type: preproc_def
      name: WXS_IDC_CAST
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaIDCPtr)
    - item_type: preproc_def
      name: WXS_QNAME_CAST
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaQNameRefPtr)
    - item_type: preproc_def
      name: WXS_LIST_CAST
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (xmlSchemaItemListPtr)
    - item_type: preproc_def
      name: HFAILURE
      pos:
        line_end: 342
        line_start: 341
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: if (res == -1) goto exit_failure;
    - item_type: preproc_def
      name: HERROR
      pos:
        line_end: 344
        line_start: 343
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: if (res != 0) goto exit_error;
    - item_type: preproc_def
      name: SUBSET_RESTRICTION
      pos:
        line_end: 350
        line_start: 349
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<0
    - item_type: preproc_def
      name: SUBSET_EXTENSION
      pos:
        line_end: 351
        line_start: 350
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<1
    - item_type: preproc_def
      name: SUBSET_SUBSTITUTION
      pos:
        line_end: 352
        line_start: 351
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<2
    - item_type: preproc_def
      name: SUBSET_LIST
      pos:
        line_end: 353
        line_start: 352
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<3
    - item_type: preproc_def
      name: SUBSET_UNION
      pos:
        line_end: 354
        line_start: 353
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<4
    - item_type: preproc_def
      name: XML_SCHEMA_CTXT_PARSER
      pos:
        line_end: 367
        line_start: 366
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMA_CTXT_VALIDATOR
      pos:
        line_end: 368
        line_start: 367
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMA_SCHEMA_MAIN
      pos:
        line_end: 380
        line_start: 379
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SCHEMA_SCHEMA_IMPORT
      pos:
        line_end: 381
        line_start: 380
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMA_SCHEMA_INCLUDE
      pos:
        line_end: 382
        line_start: 381
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMA_SCHEMA_REDEFINE
      pos:
        line_end: 383
        line_start: 382
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMA_BUCKET_MARKED
      pos:
        line_end: 397
        line_start: 396
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<0
    - item_type: preproc_def
      name: XML_SCHEMA_BUCKET_COMPS_ADDED
      pos:
        line_end: 398
        line_start: 397
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<1
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_USE_FIXED
      pos:
        line_end: 508
        line_start: 507
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<0
    - item_type: preproc_def
      name: XML_SCHEMAS_PARSE_ERROR
      pos:
        line_end: 579
        line_start: 578
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: SCHEMAS_PARSE_OPTIONS
      pos:
        line_end: 580
        line_start: 579
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: XML_PARSE_NOENT
    - item_type: preproc_def
      name: XML_SCHEMA_MODEL_GROUP_DEF_MARKED
      pos:
        line_end: 681
        line_start: 680
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<0
    - item_type: preproc_def
      name: XML_SCHEMA_MODEL_GROUP_DEF_REDEFINED
      pos:
        line_end: 682
        line_start: 681
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: 1<<1
    - item_type: preproc_def
      name: XPATH_STATE_OBJ_TYPE_IDC_SELECTOR
      pos:
        line_end: 785
        line_start: 784
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XPATH_STATE_OBJ_TYPE_IDC_FIELD
      pos:
        line_end: 786
        line_start: 785
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XPATH_STATE_OBJ_MATCHES
      pos:
        line_end: 788
        line_start: 787
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '-2'
    - item_type: preproc_def
      name: XPATH_STATE_OBJ_BLOCKED
      pos:
        line_end: 789
        line_start: 788
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '-3'
    - item_type: preproc_def
      name: IDC_MATCHER
      pos:
        line_end: 812
        line_start: 811
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SCHEMA_NODE_INFO_FLAG_OWNED_NAMES
      pos:
        line_end: 835
        line_start: 834
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<0)
    - item_type: preproc_def
      name: XML_SCHEMA_NODE_INFO_FLAG_OWNED_VALUES
      pos:
        line_end: 836
        line_start: 835
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<1)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_NILLED
      pos:
        line_end: 837
        line_start: 836
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<2)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_LOCAL_TYPE
      pos:
        line_end: 838
        line_start: 837
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<3)
    - item_type: preproc_def
      name: XML_SCHEMA_NODE_INFO_VALUE_NEEDED
      pos:
        line_end: 840
        line_start: 839
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<4)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_EMPTY
      pos:
        line_end: 841
        line_start: 840
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<5)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_HAS_CONTENT
      pos:
        line_end: 842
        line_start: 841
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<6)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_HAS_ELEM_CONTENT
      pos:
        line_end: 844
        line_start: 843
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<7)
    - item_type: preproc_def
      name: XML_SCHEMA_ELEM_INFO_ERR_BAD_CONTENT
      pos:
        line_end: 845
        line_start: 844
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<8)
    - item_type: preproc_def
      name: XML_SCHEMA_NODE_INFO_ERR_NOT_EXPECTED
      pos:
        line_end: 846
        line_start: 845
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<9)
    - item_type: preproc_def
      name: XML_SCHEMA_NODE_INFO_ERR_BAD_TYPE
      pos:
        line_end: 847
        line_start: 846
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: (1<<10)
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_UNKNOWN
      pos:
        line_end: 883
        line_start: 882
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ASSESSED
      pos:
        line_end: 884
        line_start: 883
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_PROHIBITED
      pos:
        line_end: 885
        line_start: 884
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_MISSING
      pos:
        line_end: 886
        line_start: 885
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '4'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_INVALID_VALUE
      pos:
        line_end: 887
        line_start: 886
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '5'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_NO_TYPE
      pos:
        line_end: 888
        line_start: 887
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '6'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_FIXED_VALUE
      pos:
        line_end: 889
        line_start: 888
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '7'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_DEFAULT
      pos:
        line_end: 890
        line_start: 889
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '8'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_VALIDATE_VALUE
      pos:
        line_end: 891
        line_start: 890
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '9'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_WILD_STRICT_NO_DECL
      pos:
        line_end: 892
        line_start: 891
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '10'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_HAS_ATTR_USE
      pos:
        line_end: 893
        line_start: 892
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '11'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_HAS_ATTR_DECL
      pos:
        line_end: 894
        line_start: 893
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '12'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_WILD_SKIP
      pos:
        line_end: 895
        line_start: 894
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '13'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_WILD_LAX_NO_DECL
      pos:
        line_end: 896
        line_start: 895
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '14'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_WILD_DUPLICATE_ID
      pos:
        line_end: 897
        line_start: 896
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '15'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_ERR_WILD_AND_USE_ID
      pos:
        line_end: 898
        line_start: 897
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '16'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_META
      pos:
        line_end: 899
        line_start: 898
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '17'
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_INFO_META_XSI_TYPE
      pos:
        line_end: 903
        line_start: 902
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_INFO_META_XSI_NIL
      pos:
        line_end: 904
        line_start: 903
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_INFO_META_XSI_SCHEMA_LOC
      pos:
        line_end: 905
        line_start: 904
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_INFO_META_XSI_NO_NS_SCHEMA_LOC
      pos:
        line_end: 906
        line_start: 905
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '4'
    - item_type: preproc_def
      name: XML_SCHEMA_ATTR_INFO_META_XMLNS
      pos:
        line_end: 907
        line_start: 906
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '5'
    - item_type: preproc_def
      name: XML_SCHEMA_VALID_CTXT_FLAG_STREAM
      pos:
        line_end: 931
        line_start: 930
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: WXS_ERROR_TYPE_ERROR
      pos:
        line_end: 2054
        line_start: 2053
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: WXS_ERROR_TYPE_WARNING
      pos:
        line_end: 2055
        line_start: 2054
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: WXS_ATTR_DEF_VAL_DEFAULT
      pos:
        line_end: 6876
        line_start: 6875
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: WXS_ATTR_DEF_VAL_FIXED
      pos:
        line_end: 6877
        line_start: 6876
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMA_ACTION_DERIVE
      pos:
        line_end: 13778
        line_start: 13777
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SCHEMA_ACTION_REDEFINE
      pos:
        line_end: 13779
        line_start: 13778
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FIXHFAILURE
      pos:
        line_end: 20399
        line_start: 20398
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: if (pctxt->err == XML_SCHEMAP_INTERNAL) goto exit_failure;
    - item_type: preproc_def
      name: ACTIVATE_ELEM
      pos:
        line_end: 23740
        line_start: 23739
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: vctxt->inode = vctxt->elemInfos[vctxt->depth];
    - item_type: preproc_def
      name: ACTIVATE_PARENT_ELEM
      pos:
        line_end: 23741
        line_start: 23740
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: vctxt->inode = vctxt->elemInfos[vctxt->depth -1];
    - item_type: preproc_def
      name: XML_SCHEMA_PUSH_TEXT_PERSIST
      pos:
        line_end: 26229
        line_start: 26228
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMA_PUSH_TEXT_CREATED
      pos:
        line_end: 26230
        line_start: 26229
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMA_PUSH_TEXT_VOLATILE
      pos:
        line_end: 26231
        line_start: 26230
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SAX_PLUG_MAGIC
      pos:
        line_end: 27765
        line_start: 27764
        source_file: /src/libxml2/xmlschemas.c
      type_or_value: '0xdc43ba21'
    structs:
    - fields:
      - name: '**items'
        type: void
      - name: nbItems
        type: int
      - name: sizeItems
        type: int
      item_type: struct
      name: _xmlSchemaItemList
      pos:
        line_end: 364
        line_start: 360
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: '*dummy'
        type: void
      item_type: struct
      name: _xmlSchemaAbstractCtxt
      pos:
        line_end: 374
        line_start: 371
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlSchemaSchemaRelationPtr
      - name: type
        type: int
      - name: '*importNamespace'
        type: xmlChar
      - name: bucket
        type: xmlSchemaBucketPtr
      item_type: struct
      name: _xmlSchemaSchemaRelation
      pos:
        line_end: 394
        line_start: 389
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: flags
        type: int
      - name: '*schemaLocation'
        type: xmlChar
      - name: '*origTargetNamespace'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: relations
        type: xmlSchemaSchemaRelationPtr
      - name: located
        type: int
      - name: parsed
        type: int
      - name: imported
        type: int
      - name: preserveDoc
        type: int
      - name: globals
        type: xmlSchemaItemListPtr
      - name: locals
        type: xmlSchemaItemListPtr
      item_type: struct
      name: _xmlSchemaBucket
      pos:
        line_end: 413
        line_start: 399
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: flags
        type: int
      - name: '*schemaLocation'
        type: xmlChar
      - name: '*origTargetNamespace'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: relations
        type: xmlSchemaSchemaRelationPtr
      - name: located
        type: int
      - name: parsed
        type: int
      - name: imported
        type: int
      - name: preserveDoc
        type: int
      - name: globals
        type: xmlSchemaItemListPtr
      - name: locals
        type: xmlSchemaItemListPtr
      - name: schema
        type: xmlSchemaPtr
      item_type: struct
      name: _xmlSchemaImport
      pos:
        line_end: 446
        line_start: 424
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: flags
        type: int
      - name: '*schemaLocation'
        type: xmlChar
      - name: '*origTargetNamespace'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: relations
        type: xmlSchemaSchemaRelationPtr
      - name: located
        type: int
      - name: parsed
        type: int
      - name: imported
        type: int
      - name: preserveDoc
        type: int
      - name: globals
        type: xmlSchemaItemListPtr
      - name: locals
        type: xmlSchemaItemListPtr
      - name: ownerImport
        type: xmlSchemaImportPtr
      item_type: struct
      name: _xmlSchemaInclude
      pos:
        line_end: 470
        line_start: 453
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*dummy'
        type: void
      item_type: struct
      name: _xmlSchemaBasicItem
      pos:
        line_end: 480
        line_start: 477
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      item_type: struct
      name: _xmlSchemaAnnotItem
      pos:
        line_end: 491
        line_start: 488
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      item_type: struct
      name: _xmlSchemaTreeItem
      pos:
        line_end: 504
        line_start: 499
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaAttributeUsePtr
      - name: attrDecl
        type: xmlSchemaAttributePtr
      - name: flags
        type: int
      - name: node
        type: xmlNodePtr
      - name: occurs
        type: int
      - name: '* defValue'
        type: xmlChar
      - name: defVal
        type: xmlSchemaValPtr
      item_type: struct
      name: _xmlSchemaAttributeUse
      pos:
        line_end: 529
        line_start: 514
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: node
        type: xmlNodePtr
      - name: '*name'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: isRef
        type: int
      item_type: struct
      name: _xmlSchemaAttributeUseProhib
      pos:
        line_end: 543
        line_start: 537
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlSchemaRedefPtr
      - name: item
        type: xmlSchemaBasicItemPtr
      - name: reference
        type: xmlSchemaBasicItemPtr
      - name: target
        type: xmlSchemaBasicItemPtr
      - name: '*refName'
        type: xmlChar
      - name: '*refTargetNs'
        type: xmlChar
      - name: targetBucket
        type: xmlSchemaBucketPtr
      item_type: struct
      name: _xmlSchemaRedef
      pos:
        line_end: 558
        line_start: 549
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: mainSchema
        type: xmlSchemaPtr
      - name: mainBucket
        type: xmlSchemaBucketPtr
      - name: dict
        type: xmlDictPtr
      - name: buckets
        type: xmlSchemaItemListPtr
      - name: bucket
        type: xmlSchemaBucketPtr
      - name: pending
        type: xmlSchemaItemListPtr
      - name: substGroups
        type: xmlHashTablePtr
      - name: redefs
        type: xmlSchemaRedefPtr
      - name: lastRedef
        type: xmlSchemaRedefPtr
      item_type: struct
      name: _xmlSchemaConstructionCtxt
      pos:
        line_end: 576
        line_start: 564
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: '*errCtxt'
        type: void
      - name: error
        type: xmlSchemaValidityErrorFunc
      - name: warning
        type: xmlSchemaValidityWarningFunc
      - name: err
        type: int
      - name: nberrors
        type: int
      - name: serror
        type: xmlStructuredErrorFunc
      - name: constructor
        type: xmlSchemaConstructionCtxtPtr
      - name: ownsConstructor
        type: int
      - name: schema
        type: xmlSchemaPtr
      - name: counter
        type: int
      - name: '*URL'
        type: xmlChar
      - name: doc
        type: xmlDocPtr
      - name: preserve
        type: int
      - name: '*buffer'
        type: char
      - name: size
        type: int
      - name: am
        type: xmlAutomataPtr
      - name: start
        type: xmlAutomataStatePtr
      - name: end
        type: xmlAutomataStatePtr
      - name: state
        type: xmlAutomataStatePtr
      - name: dict
        type: xmlDictPtr
      - name: ctxtType
        type: xmlSchemaTypePtr
      - name: options
        type: int
      - name: vctxt
        type: xmlSchemaValidCtxtPtr
      - name: isS4S
        type: int
      - name: isRedefine
        type: int
      - name: xsiAssemble
        type: int
      - name: stop
        type: int
      - name: '*targetNamespace'
        type: xmlChar
      - name: redefined
        type: xmlSchemaBucketPtr
      - name: redef
        type: xmlSchemaRedefPtr
      - name: redefCounter
        type: int
      - name: attrProhibs
        type: xmlSchemaItemListPtr
      - name: resourceLoader
        type: xmlResourceLoader
      - name: '*resourceCtxt'
        type: void
      item_type: struct
      name: _xmlSchemaParserCtxt
      pos:
        line_end: 631
        line_start: 581
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: item
        type: xmlSchemaBasicItemPtr
      - name: itemType
        type: xmlSchemaTypeType
      - name: '*name'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlSchemaQNameRef
      pos:
        line_end: 646
        line_start: 639
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      - name: minOccurs
        type: int
      - name: maxOccurs
        type: int
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlSchemaParticle
      pos:
        line_end: 664
        line_start: 654
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      - name: node
        type: xmlNodePtr
      item_type: struct
      name: _xmlSchemaModelGroup
      pos:
        line_end: 678
        line_start: 672
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaTreeItemPtr
      - name: children
        type: xmlSchemaTreeItemPtr
      - name: '*name'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: node
        type: xmlNodePtr
      - name: flags
        type: int
      item_type: struct
      name: _xmlSchemaModelGroupDef
      pos:
        line_end: 697
        line_start: 688
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlSchemaIDCSelectPtr
      - name: idc
        type: xmlSchemaIDCPtr
      - name: index
        type: int
      - name: '*xpath'
        type: xmlChar
      - name: '*xpathComp'
        type: void
      item_type: struct
      name: _xmlSchemaIDCSelect
      pos:
        line_end: 714
        line_start: 708
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: annot
        type: xmlSchemaAnnotPtr
      - name: next
        type: xmlSchemaIDCPtr
      - name: node
        type: xmlNodePtr
      - name: '*name'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: selector
        type: xmlSchemaIDCSelectPtr
      - name: fields
        type: xmlSchemaIDCSelectPtr
      - name: nbFields
        type: int
      - name: ref
        type: xmlSchemaQNameRefPtr
      item_type: struct
      name: _xmlSchemaIDC
      pos:
        line_end: 732
        line_start: 721
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlSchemaIDCAugPtr
      - name: def
        type: xmlSchemaIDCPtr
      - name: keyrefDepth
        type: int
      item_type: struct
      name: _xmlSchemaIDCAug
      pos:
        line_end: 744
        line_start: 739
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: xmlSchemaTypePtr
      - name: val
        type: xmlSchemaValPtr
      item_type: struct
      name: _xmlSchemaPSVIIDCKey
      pos:
        line_end: 754
        line_start: 751
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: node
        type: xmlNodePtr
      - name: '*keys'
        type: xmlSchemaPSVIIDCKeyPtr
      - name: nodeLine
        type: int
      - name: nodeQNameID
        type: int
      item_type: struct
      name: _xmlSchemaPSVIIDCNode
      pos:
        line_end: 767
        line_start: 761
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlSchemaPSVIIDCBindingPtr
      - name: definition
        type: xmlSchemaIDCPtr
      - name: '*nodeTable'
        type: xmlSchemaPSVIIDCNodePtr
      - name: nbNodes
        type: int
      - name: sizeNodes
        type: int
      - name: dupls
        type: xmlSchemaItemListPtr
      item_type: struct
      name: _xmlSchemaPSVIIDCBinding
      pos:
        line_end: 781
        line_start: 774
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: next
        type: xmlSchemaIDCStateObjPtr
      - name: depth
        type: int
      - name: '*history'
        type: int
      - name: nbHistory
        type: int
      - name: sizeHistory
        type: int
      - name: matcher
        type: xmlSchemaIDCMatcherPtr
      - name: sel
        type: xmlSchemaIDCSelectPtr
      - name: '*xpathCtxt'
        type: void
      item_type: struct
      name: _xmlSchemaIDCStateObj
      pos:
        line_end: 809
        line_start: 798
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: depth
        type: int
      - name: next
        type: xmlSchemaIDCMatcherPtr
      - name: nextCached
        type: xmlSchemaIDCMatcherPtr
      - name: aidc
        type: xmlSchemaIDCAugPtr
      - name: idcType
        type: int
      - name: '**keySeqs'
        type: xmlSchemaPSVIIDCKeyPtr
      - name: sizeKeySeqs
        type: int
      - name: targets
        type: xmlSchemaItemListPtr
      - name: htab
        type: xmlHashTablePtr
      item_type: struct
      name: _xmlSchemaIDCMatcher
      pos:
        line_end: 829
        line_start: 816
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: nodeType
        type: int
      - name: node
        type: xmlNodePtr
      - name: nodeLine
        type: int
      - name: '*localName'
        type: xmlChar
      - name: '*nsName'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: val
        type: xmlSchemaValPtr
      - name: typeDef
        type: xmlSchemaTypePtr
      - name: flags
        type: int
      - name: valNeeded
        type: int
      - name: normVal
        type: int
      - name: decl
        type: xmlSchemaElementPtr
      - name: depth
        type: int
      - name: idcTable
        type: xmlSchemaPSVIIDCBindingPtr
      - name: idcMatchers
        type: xmlSchemaIDCMatcherPtr
      - name: regexCtxt
        type: xmlRegExecCtxtPtr
      - name: '**nsBindings'
        type: xmlChar
      - name: nbNsBindings
        type: int
      - name: sizeNsBindings
        type: int
      - name: hasKeyrefs
        type: int
      - name: appliedXPath
        type: int
      item_type: struct
      name: _xmlSchemaNodeInfo
      pos:
        line_end: 880
        line_start: 851
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: nodeType
        type: int
      - name: node
        type: xmlNodePtr
      - name: nodeLine
        type: int
      - name: '*localName'
        type: xmlChar
      - name: '*nsName'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: val
        type: xmlSchemaValPtr
      - name: typeDef
        type: xmlSchemaTypePtr
      - name: flags
        type: int
      - name: decl
        type: xmlSchemaAttributePtr
      - name: use
        type: xmlSchemaAttributeUsePtr
      - name: state
        type: int
      - name: metaType
        type: int
      - name: '*vcValue'
        type: xmlChar
      - name: parent
        type: xmlSchemaNodeInfoPtr
      item_type: struct
      name: _xmlSchemaAttrInfo
      pos:
        line_end: 927
        line_start: 910
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: type
        type: int
      - name: '*errCtxt'
        type: void
      - name: error
        type: xmlSchemaValidityErrorFunc
      - name: warning
        type: xmlSchemaValidityWarningFunc
      - name: serror
        type: xmlStructuredErrorFunc
      - name: schema
        type: xmlSchemaPtr
      - name: doc
        type: xmlDocPtr
      - name: input
        type: xmlParserInputBufferPtr
      - name: enc
        type: xmlCharEncoding
      - name: sax
        type: xmlSAXHandlerPtr
      - name: parserCtxt
        type: xmlParserCtxtPtr
      - name: '*user_data'
        type: void
      - name: '*filename'
        type: char
      - name: err
        type: int
      - name: nberrors
        type: int
      - name: node
        type: xmlNodePtr
      - name: cur
        type: xmlNodePtr
      - name: regexp
        type: xmlRegExecCtxtPtr
      - name: value
        type: xmlSchemaValPtr
      - name: valueWS
        type: int
      - name: options
        type: int
      - name: validationRoot
        type: xmlNodePtr
      - name: pctxt
        type: xmlSchemaParserCtxtPtr
      - name: xsiAssemble
        type: int
      - name: depth
        type: int
      - name: '*elemInfos'
        type: xmlSchemaNodeInfoPtr
      - name: sizeElemInfos
        type: int
      - name: inode
        type: xmlSchemaNodeInfoPtr
      - name: aidcs
        type: xmlSchemaIDCAugPtr
      - name: xpathStates
        type: xmlSchemaIDCStateObjPtr
      - name: xpathStatePool
        type: xmlSchemaIDCStateObjPtr
      - name: idcMatcherCache
        type: xmlSchemaIDCMatcherPtr
      - name: '*idcNodes'
        type: xmlSchemaPSVIIDCNodePtr
      - name: nbIdcNodes
        type: int
      - name: sizeIdcNodes
        type: int
      - name: '*idcKeys'
        type: xmlSchemaPSVIIDCKeyPtr
      - name: nbIdcKeys
        type: int
      - name: sizeIdcKeys
        type: int
      - name: flags
        type: int
      - name: dict
        type: xmlDictPtr
      - name: '*attrInfos'
        type: xmlSchemaAttrInfoPtr
      - name: nbAttrInfos
        type: int
      - name: sizeAttrInfos
        type: int
      - name: skipDepth
        type: int
      - name: nodeQNames
        type: xmlSchemaItemListPtr
      - name: hasKeyrefs
        type: int
      - name: createIDCNodeTables
        type: int
      - name: psviExposeIDCNodeTables
        type: int
      - name: locFunc
        type: xmlSchemaValidityLocatorFunc
      - name: '*locCtxt'
        type: void
      item_type: struct
      name: _xmlSchemaValidCtxt
      pos:
        line_end: 1006
        line_start: 934
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: head
        type: xmlSchemaElementPtr
      - name: members
        type: xmlSchemaItemListPtr
      item_type: struct
      name: _xmlSchemaSubstGroup
      pos:
        line_end: 1013
        line_start: 1010
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: next
        type: xmlIDCHashEntryPtr
      - name: index
        type: int
      item_type: struct
      name: _xmlIDCHashEntry
      pos:
        line_end: 1023
        line_start: 1020
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: user_sax
        type: xmlSAXHandlerPtr
      - name: '*user_data'
        type: void
      - name: ctxt
        type: xmlSchemaValidCtxtPtr
      - name: schemas_sax
        type: xmlSAXHandlerPtr
      item_type: struct
      name: _xmlSchemaSplitSAXData
      pos:
        line_end: 27762
        line_start: 27757
        source_file: /src/libxml2/xmlschemas.c
    - fields:
      - name: magic
        type: unsigned int
      - name: '*user_sax_ptr'
        type: xmlSAXHandlerPtr
      - name: user_sax
        type: xmlSAXHandlerPtr
      - name: '**user_data_ptr'
        type: void
      - name: '*user_data'
        type: void
      - name: schemas_sax
        type: xmlSAXHandler
      - name: ctxt
        type: xmlSchemaValidCtxtPtr
      item_type: struct
      name: _xmlSchemaSAXPlug
      pos:
        line_end: 27778
        line_start: 27766
        source_file: /src/libxml2/xmlschemas.c
    typedefs:
    - item_type: typedef
      name: xmlSchemaNodeInfo
      pos:
        line_end: 355
        line_start: 355
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaNodeInfo
    - item_type: typedef
      name: '*xmlSchemaNodeInfoPtr'
      pos:
        line_end: 356
        line_start: 356
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaNodeInfo
    - item_type: typedef
      name: xmlSchemaItemList
      pos:
        line_end: 358
        line_start: 358
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaItemList
    - item_type: typedef
      name: '*xmlSchemaItemListPtr'
      pos:
        line_end: 359
        line_start: 359
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaItemList
    - item_type: typedef
      name: xmlSchemaAbstractCtxt
      pos:
        line_end: 369
        line_start: 369
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaAbstractCtxt
    - item_type: typedef
      name: '*xmlSchemaAbstractCtxtPtr'
      pos:
        line_end: 370
        line_start: 370
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaAbstractCtxt
    - item_type: typedef
      name: xmlSchemaBucket
      pos:
        line_end: 376
        line_start: 376
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaBucket
    - item_type: typedef
      name: '*xmlSchemaBucketPtr'
      pos:
        line_end: 377
        line_start: 377
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaBucket
    - item_type: typedef
      name: xmlSchemaSchemaRelation
      pos:
        line_end: 387
        line_start: 387
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaSchemaRelation
    - item_type: typedef
      name: '*xmlSchemaSchemaRelationPtr'
      pos:
        line_end: 388
        line_start: 388
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaSchemaRelation
    - item_type: typedef
      name: xmlSchemaImport
      pos:
        line_end: 422
        line_start: 422
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaImport
    - item_type: typedef
      name: '*xmlSchemaImportPtr'
      pos:
        line_end: 423
        line_start: 423
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaImport
    - item_type: typedef
      name: xmlSchemaInclude
      pos:
        line_end: 451
        line_start: 451
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaInclude
    - item_type: typedef
      name: '*xmlSchemaIncludePtr'
      pos:
        line_end: 452
        line_start: 452
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaInclude
    - item_type: typedef
      name: xmlSchemaBasicItem
      pos:
        line_end: 475
        line_start: 475
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaBasicItem
    - item_type: typedef
      name: '*xmlSchemaBasicItemPtr'
      pos:
        line_end: 476
        line_start: 476
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaBasicItem
    - item_type: typedef
      name: xmlSchemaAnnotItem
      pos:
        line_end: 486
        line_start: 486
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaAnnotItem
    - item_type: typedef
      name: '*xmlSchemaAnnotItemPtr'
      pos:
        line_end: 487
        line_start: 487
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaAnnotItem
    - item_type: typedef
      name: xmlSchemaTreeItem
      pos:
        line_end: 497
        line_start: 497
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaTreeItem
    - item_type: typedef
      name: '*xmlSchemaTreeItemPtr'
      pos:
        line_end: 498
        line_start: 498
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaTreeItem
    - item_type: typedef
      name: xmlSchemaAttributeUse
      pos:
        line_end: 512
        line_start: 512
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaAttributeUse
    - item_type: typedef
      name: '*xmlSchemaAttributeUsePtr'
      pos:
        line_end: 513
        line_start: 513
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaAttributeUse
    - item_type: typedef
      name: xmlSchemaAttributeUseProhib
      pos:
        line_end: 535
        line_start: 535
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaAttributeUseProhib
    - item_type: typedef
      name: '*xmlSchemaAttributeUseProhibPtr'
      pos:
        line_end: 536
        line_start: 536
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaAttributeUseProhib
    - item_type: typedef
      name: xmlSchemaRedef
      pos:
        line_end: 547
        line_start: 547
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaRedef
    - item_type: typedef
      name: '*xmlSchemaRedefPtr'
      pos:
        line_end: 548
        line_start: 548
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaRedef
    - item_type: typedef
      name: xmlSchemaConstructionCtxt
      pos:
        line_end: 562
        line_start: 562
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaConstructionCtxt
    - item_type: typedef
      name: '*xmlSchemaConstructionCtxtPtr'
      pos:
        line_end: 563
        line_start: 563
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaConstructionCtxt
    - item_type: typedef
      name: xmlSchemaQNameRef
      pos:
        line_end: 637
        line_start: 637
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaQNameRef
    - item_type: typedef
      name: '*xmlSchemaQNameRefPtr'
      pos:
        line_end: 638
        line_start: 638
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaQNameRef
    - item_type: typedef
      name: xmlSchemaParticle
      pos:
        line_end: 652
        line_start: 652
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaParticle
    - item_type: typedef
      name: '*xmlSchemaParticlePtr'
      pos:
        line_end: 653
        line_start: 653
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaParticle
    - item_type: typedef
      name: xmlSchemaModelGroup
      pos:
        line_end: 670
        line_start: 670
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaModelGroup
    - item_type: typedef
      name: '*xmlSchemaModelGroupPtr'
      pos:
        line_end: 671
        line_start: 671
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaModelGroup
    - item_type: typedef
      name: xmlSchemaModelGroupDef
      pos:
        line_end: 686
        line_start: 686
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaModelGroupDef
    - item_type: typedef
      name: '*xmlSchemaModelGroupDefPtr'
      pos:
        line_end: 687
        line_start: 687
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaModelGroupDef
    - item_type: typedef
      name: xmlSchemaIDC
      pos:
        line_end: 699
        line_start: 699
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaIDC
    - item_type: typedef
      name: '*xmlSchemaIDCPtr'
      pos:
        line_end: 700
        line_start: 700
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaIDC
    - item_type: typedef
      name: xmlSchemaIDCSelect
      pos:
        line_end: 706
        line_start: 706
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaIDCSelect
    - item_type: typedef
      name: '*xmlSchemaIDCSelectPtr'
      pos:
        line_end: 707
        line_start: 707
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaIDCSelect
    - item_type: typedef
      name: xmlSchemaIDCAug
      pos:
        line_end: 737
        line_start: 737
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaIDCAug
    - item_type: typedef
      name: '*xmlSchemaIDCAugPtr'
      pos:
        line_end: 738
        line_start: 738
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaIDCAug
    - item_type: typedef
      name: xmlSchemaPSVIIDCKey
      pos:
        line_end: 749
        line_start: 749
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaPSVIIDCKey
    - item_type: typedef
      name: '*xmlSchemaPSVIIDCKeyPtr'
      pos:
        line_end: 750
        line_start: 750
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaPSVIIDCKey
    - item_type: typedef
      name: xmlSchemaPSVIIDCNode
      pos:
        line_end: 759
        line_start: 759
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaPSVIIDCNode
    - item_type: typedef
      name: '*xmlSchemaPSVIIDCNodePtr'
      pos:
        line_end: 760
        line_start: 760
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaPSVIIDCNode
    - item_type: typedef
      name: xmlSchemaPSVIIDCBinding
      pos:
        line_end: 772
        line_start: 772
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaPSVIIDCBinding
    - item_type: typedef
      name: '*xmlSchemaPSVIIDCBindingPtr'
      pos:
        line_end: 773
        line_start: 773
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaPSVIIDCBinding
    - item_type: typedef
      name: xmlSchemaIDCMatcher
      pos:
        line_end: 790
        line_start: 790
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaIDCMatcher
    - item_type: typedef
      name: '*xmlSchemaIDCMatcherPtr'
      pos:
        line_end: 791
        line_start: 791
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaIDCMatcher
    - item_type: typedef
      name: xmlSchemaIDCStateObj
      pos:
        line_end: 796
        line_start: 796
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaIDCStateObj
    - item_type: typedef
      name: '*xmlSchemaIDCStateObjPtr'
      pos:
        line_end: 797
        line_start: 797
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaIDCStateObj
    - item_type: typedef
      name: xmlSchemaAttrInfo
      pos:
        line_end: 908
        line_start: 908
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaAttrInfo
    - item_type: typedef
      name: '*xmlSchemaAttrInfoPtr'
      pos:
        line_end: 909
        line_start: 909
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaAttrInfo
    - item_type: typedef
      name: xmlSchemaSubstGroup
      pos:
        line_end: 1008
        line_start: 1008
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaSubstGroup
    - item_type: typedef
      name: '*xmlSchemaSubstGroupPtr'
      pos:
        line_end: 1009
        line_start: 1009
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaSubstGroup
    - item_type: typedef
      name: xmlIDCHashEntry
      pos:
        line_end: 1018
        line_start: 1018
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlIDCHashEntry
    - item_type: typedef
      name: '*xmlIDCHashEntryPtr'
      pos:
        line_end: 1019
        line_start: 1019
        source_file: /src/libxml2/xmlschemas.c
      type: xmlIDCHashEntry
    - item_type: typedef
      name: xmlSchemaSplitSAXData
      pos:
        line_end: 27754
        line_start: 27754
        source_file: /src/libxml2/xmlschemas.c
      type: _xmlSchemaSplitSAXData
    - item_type: typedef
      name: '*xmlSchemaSplitSAXDataPtr'
      pos:
        line_end: 27755
        line_start: 27755
        source_file: /src/libxml2/xmlschemas.c
      type: xmlSchemaSplitSAXData
    union: []
- function_names:
  - ERROR
  - NXT
  - NEXTL
  - xmlUnicodeLookup
  - xmlUCSIsBlock
  - xmlRegexpErrMemory
  - xmlRegexpErrCompile
  - xmlRegCalloc2
  - xmlRegEpxFromParse
  - xmlRegNewParserCtxt
  - xmlRegNewRange
  - xmlRegFreeRange
  - xmlRegCopyRange
  - xmlRegNewAtom
  - xmlRegFreeAtom
  - xmlRegCopyAtom
  - xmlRegNewState
  - xmlRegFreeState
  - xmlRegFreeParserCtxt
  - xmlRegPrintAtomType
  - xmlRegPrintQuantType
  - xmlRegPrintRange
  - xmlRegPrintAtom
  - xmlRegPrintAtomCompact
  - xmlRegPrintTrans
  - xmlRegPrintTransCompact
  - xmlRegPrintState
  - xmlRegPrintStateCompact
  - xmlRegPrintCompact
  - xmlRegexpPrintInternal
  - xmlRegAtomAddRange
  - xmlRegGetCounter
  - xmlRegAtomPush
  - xmlRegStateAddTransTo
  - xmlRegStateAddTrans
  - xmlRegStatePush
  - xmlFAGenerateAllTransition
  - xmlFAGenerateEpsilonTransition
  - xmlFAGenerateCountedEpsilonTransition
  - xmlFAGenerateCountedTransition
  - xmlFAGenerateTransitions
  - xmlFAReduceEpsilonTransitions
  - xmlFAFinishReduceEpsilonTransitions
  - xmlFAEliminateSimpleEpsilonTransitions
  - xmlFAEliminateEpsilonTransitions
  - xmlFACompareRanges
  - xmlFACompareAtomTypes
  - xmlFAEqualAtoms
  - xmlFACompareAtoms
  - xmlFARecurseDeterminism
  - xmlFAFinishRecurseDeterminism
  - xmlFAComputesDeterminism
  - xmlRegCheckCharacterRange
  - xmlRegCheckCharacter
  - xmlFARegExecSave
  - xmlFARegExecRollBack
  - xmlFARegExec
  - xmlRegNewExecCtxt
  - xmlRegFreeExecCtxt
  - xmlRegExecSetErrString
  - xmlFARegExecSaveInputString
  - xmlRegStrEqualWildcard
  - xmlRegCompactPushString
  - xmlRegExecPushStringInternal
  - xmlRegExecPushString
  - xmlRegExecPushString2
  - xmlRegExecGetValues
  - xmlRegExecNextValues
  - xmlRegExecErrInfo
  - xmlRegExecClearErrors
  - xmlFAIsChar
  - xmlFAParseCharProp
  - parse_escaped_codeunit
  - parse_escaped_codepoint
  - xmlFAParseCharClassEsc
  - xmlFAParseCharRange
  - xmlFAParsePosCharGroup
  - xmlFAParseCharGroup
  - xmlFAParseCharClass
  - xmlFAParseQuantExact
  - xmlFAParseQuantifier
  - xmlFAParseAtom
  - xmlFAParsePiece
  - xmlFAParseBranch
  - xmlFAParseRegExp
  - xmlRegexpCompile
  - xmlRegexpExec
  - xmlRegexpIsDeterminist
  - xmlRegFreeRegexp
  - xmlNewAutomata
  - xmlFreeAutomata
  - xmlAutomataSetFlags
  - xmlAutomataGetInitState
  - xmlAutomataSetFinalState
  - xmlAutomataNewTransition
  - xmlAutomataNewTransition2
  - xmlAutomataNewNegTrans
  - xmlAutomataNewCountTrans2
  - xmlAutomataNewCountTrans
  - xmlAutomataNewOnceTrans2
  - xmlAutomataNewOnceTrans
  - xmlAutomataNewState
  - xmlAutomataNewEpsilon
  - xmlAutomataNewAllTrans
  - xmlAutomataNewCounter
  - xmlAutomataNewCountedTrans
  - xmlAutomataNewCounterTrans
  - xmlAutomataCompile
  - xmlAutomataIsDeterminist
  source_file: /src/libxml2/xmlregexp.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: MAX_PUSH
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: '10000000'
    - item_type: preproc_def
      name: NEXT
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: ctxt->cur++
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: (*(ctxt->cur))
    - item_type: preproc_def
      name: XML_REG_STRING_SEPARATOR
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: '''|'''
    - item_type: preproc_def
      name: PREV
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: (ctxt->cur[-1])
    - item_type: preproc_def
      name: AM_AUTOMATA_RNG
      pos:
        line_end: 286
        line_start: 285
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: '1'
    - item_type: preproc_def
      name: REGEXP_ALL_COUNTER
      pos:
        line_end: 401
        line_start: 400
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: '0x123456'
    - item_type: preproc_def
      name: REGEXP_ALL_LAX_COUNTER
      pos:
        line_end: 402
        line_start: 401
        source_file: /src/libxml2/xmlregexp.c
      type_or_value: '0x123457'
    structs:
    - fields:
      - name: '*rangename'
        type: char
      - name: group
        type: xmlChRangeGroup
      item_type: struct
      name: xmlUnicodeRange
      pos:
        line_end: 69
        line_start: 66
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: neg
        type: int
      - name: type
        type: xmlRegAtomType
      - name: start
        type: int
      - name: end
        type: int
      - name: '*blockName'
        type: xmlChar
      item_type: struct
      name: _xmlRegRange
      pos:
        line_end: 220
        line_start: 214
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: 'no'
        type: int
      - name: type
        type: xmlRegAtomType
      - name: quant
        type: xmlRegQuantType
      - name: min
        type: int
      - name: max
        type: int
      - name: '*valuep'
        type: void
      - name: '*valuep2'
        type: void
      - name: neg
        type: int
      - name: codepoint
        type: int
      - name: start
        type: xmlRegStatePtr
      - name: start0
        type: xmlRegStatePtr
      - name: stop
        type: xmlRegStatePtr
      - name: maxRanges
        type: int
      - name: nbRanges
        type: int
      - name: '*ranges'
        type: xmlRegRangePtr
      - name: '*data'
        type: void
      item_type: struct
      name: _xmlRegAtom
      pos:
        line_end: 246
        line_start: 228
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: min
        type: int
      - name: max
        type: int
      item_type: struct
      name: _xmlRegCounter
      pos:
        line_end: 254
        line_start: 251
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: atom
        type: xmlRegAtomPtr
      - name: to
        type: int
      - name: counter
        type: int
      - name: count
        type: int
      - name: nd
        type: int
      item_type: struct
      name: _xmlRegTrans
      pos:
        line_end: 265
        line_start: 259
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: type
        type: xmlRegStateType
      - name: mark
        type: xmlRegMarkedType
      - name: markd
        type: xmlRegMarkedType
      - name: reached
        type: xmlRegMarkedType
      - name: 'no'
        type: int
      - name: maxTrans
        type: int
      - name: nbTrans
        type: int
      - name: '*trans'
        type: xmlRegTrans
      - name: maxTransTo
        type: int
      - name: nbTransTo
        type: int
      - name: '*transTo'
        type: int
      item_type: struct
      name: _xmlAutomataState
      pos:
        line_end: 280
        line_start: 267
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: '*string'
        type: xmlChar
      - name: '*cur'
        type: xmlChar
      - name: error
        type: int
      - name: neg
        type: int
      - name: start
        type: xmlRegStatePtr
      - name: end
        type: xmlRegStatePtr
      - name: state
        type: xmlRegStatePtr
      - name: atom
        type: xmlRegAtomPtr
      - name: maxAtoms
        type: int
      - name: nbAtoms
        type: int
      - name: '*atoms'
        type: xmlRegAtomPtr
      - name: maxStates
        type: int
      - name: nbStates
        type: int
      - name: '*states'
        type: xmlRegStatePtr
      - name: maxCounters
        type: int
      - name: nbCounters
        type: int
      - name: '*counters'
        type: xmlRegCounter
      - name: determinist
        type: int
      - name: negs
        type: int
      - name: flags
        type: int
      - name: depth
        type: int
      item_type: struct
      name: _xmlAutomata
      pos:
        line_end: 317
        line_start: 287
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: '*string'
        type: xmlChar
      - name: nbStates
        type: int
      - name: '*states'
        type: xmlRegStatePtr
      - name: nbAtoms
        type: int
      - name: '*atoms'
        type: xmlRegAtomPtr
      - name: nbCounters
        type: int
      - name: '*counters'
        type: xmlRegCounter
      - name: determinist
        type: int
      - name: flags
        type: int
      - name: nbstates
        type: int
      - name: '*compact'
        type: int
      - name: '**transdata'
        type: void
      - name: nbstrings
        type: int
      - name: '**stringMap'
        type: xmlChar
      item_type: struct
      name: _xmlRegexp
      pos:
        line_end: 337
        line_start: 319
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: state
        type: xmlRegStatePtr
      - name: index
        type: int
      - name: nextbranch
        type: int
      - name: '*counts'
        type: int
      item_type: struct
      name: _xmlRegExecRollback
      pos:
        line_end: 347
        line_start: 342
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: '*value'
        type: xmlChar
      - name: '*data'
        type: void
      item_type: struct
      name: _xmlRegInputToken
      pos:
        line_end: 355
        line_start: 352
        source_file: /src/libxml2/xmlregexp.c
    - fields:
      - name: status
        type: int
      - name: determinist
        type: int
      - name: comp
        type: xmlRegexpPtr
      - name: callback
        type: xmlRegExecCallbacks
      - name: '*data'
        type: void
      - name: state
        type: xmlRegStatePtr
      - name: transno
        type: int
      - name: transcount
        type: int
      - name: maxRollbacks
        type: int
      - name: nbRollbacks
        type: int
      - name: '*rollbacks'
        type: xmlRegExecRollback
      - name: '*counts'
        type: int
      - name: inputStackMax
        type: int
      - name: inputStackNr
        type: int
      - name: index
        type: int
      - name: '*charStack'
        type: int
      - name: '*inputString'
        type: xmlChar
      - name: inputStack
        type: xmlRegInputTokenPtr
      - name: errStateNo
        type: int
      - name: errState
        type: xmlRegStatePtr
      - name: '*errString'
        type: xmlChar
      - name: '*errCounts'
        type: int
      - name: nbPush
        type: int
      item_type: struct
      name: _xmlRegExecCtxt
      pos:
        line_end: 398
        line_start: 357
        source_file: /src/libxml2/xmlregexp.c
    typedefs:
    - item_type: typedef
      name: xmlRegRange
      pos:
        line_end: 211
        line_start: 211
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegRange
    - item_type: typedef
      name: '*xmlRegRangePtr'
      pos:
        line_end: 212
        line_start: 212
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegRange
    - item_type: typedef
      name: xmlRegAtom
      pos:
        line_end: 222
        line_start: 222
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegAtom
    - item_type: typedef
      name: '*xmlRegAtomPtr'
      pos:
        line_end: 223
        line_start: 223
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegAtom
    - item_type: typedef
      name: xmlRegState
      pos:
        line_end: 225
        line_start: 225
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlAutomataState
    - item_type: typedef
      name: '*xmlRegStatePtr'
      pos:
        line_end: 226
        line_start: 226
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegState
    - item_type: typedef
      name: xmlRegCounter
      pos:
        line_end: 248
        line_start: 248
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegCounter
    - item_type: typedef
      name: '*xmlRegCounterPtr'
      pos:
        line_end: 249
        line_start: 249
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegCounter
    - item_type: typedef
      name: xmlRegTrans
      pos:
        line_end: 256
        line_start: 256
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegTrans
    - item_type: typedef
      name: '*xmlRegTransPtr'
      pos:
        line_end: 257
        line_start: 257
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegTrans
    - item_type: typedef
      name: xmlRegParserCtxt
      pos:
        line_end: 282
        line_start: 282
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlAutomata
    - item_type: typedef
      name: '*xmlRegParserCtxtPtr'
      pos:
        line_end: 283
        line_start: 283
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegParserCtxt
    - item_type: typedef
      name: xmlRegExecRollback
      pos:
        line_end: 339
        line_start: 339
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegExecRollback
    - item_type: typedef
      name: '*xmlRegExecRollbackPtr'
      pos:
        line_end: 340
        line_start: 340
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegExecRollback
    - item_type: typedef
      name: xmlRegInputToken
      pos:
        line_end: 349
        line_start: 349
        source_file: /src/libxml2/xmlregexp.c
      type: _xmlRegInputToken
    - item_type: typedef
      name: '*xmlRegInputTokenPtr'
      pos:
        line_end: 350
        line_start: 350
        source_file: /src/libxml2/xmlregexp.c
      type: xmlRegInputToken
    union: []
- function_names:
  - xmlC11NNormalizeAttr
  - xmlC11NNormalizeComment
  - xmlC11NNormalizePI
  - xmlC11NNormalizeText
  - xmlC14NIsVisible
  - xmlC14NIsExclusive
  - xmlC14NErrMemory
  - xmlC14NErrFull
  - xmlC14NErrParam
  - xmlC14NErrInvalidNode
  - xmlC14NErrUnknownNode
  - xmlC14NErrRelativeNamespace
  - xmlC14NErr
  - xmlC14NIsNodeInNodeset
  - xmlC14NVisibleNsStackCreate
  - xmlC14NVisibleNsStackDestroy
  - xmlC14NVisibleNsStackAdd
  - xmlC14NVisibleNsStackSave
  - xmlC14NVisibleNsStackRestore
  - xmlC14NVisibleNsStackShift
  - xmlC14NStrEqual
  - xmlC14NVisibleNsStackFind
  - xmlExcC14NVisibleNsStackFind
  - xmlC14NIsXmlNs
  - xmlC14NNsCompare
  - xmlC14NPrintNamespaces
  - xmlC14NPrintNamespacesWalker
  - xmlC14NProcessNamespacesAxis
  - xmlExcC14NProcessNamespacesAxis
  - xmlC14NIsXmlAttr
  - xmlC14NAttrsCompare
  - xmlC14NPrintAttrs
  - xmlC14NFindHiddenParentAttr
  - xmlC14NFixupBaseAttr
  - xmlC14NProcessAttrsAxis
  - xmlC14NCheckForRelativeNamespaces
  - xmlC14NProcessElementNode
  - xmlC14NProcessNode
  - xmlC14NProcessNodeList
  - xmlC14NFreeCtx
  - xmlC14NNewCtx
  - xmlC14NExecute
  - xmlC14NDocSaveTo
  - xmlC14NDocDumpMemory
  - xmlC14NDocSave
  - xmlC11NNormalizeString
  source_file: /src/libxml2/c14n.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_NAMESPACES_DEFAULT
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/libxml2/c14n.c
      type_or_value: '16'
    structs:
    - fields:
      - name: nsCurEnd
        type: int
      - name: nsPrevStart
        type: int
      - name: nsPrevEnd
        type: int
      - name: nsMax
        type: int
      - name: '*nsTab'
        type: xmlNsPtr
      - name: '*nodeTab'
        type: xmlNodePtr
      item_type: struct
      name: _xmlC14NVisibleNsStack
      pos:
        line_end: 48
        line_start: 41
        source_file: /src/libxml2/c14n.c
    - fields:
      - name: doc
        type: xmlDocPtr
      - name: is_visible_callback
        type: xmlC14NIsVisibleCallback
      - name: '* user_data'
        type: void
      - name: with_comments
        type: int
      - name: buf
        type: xmlOutputBufferPtr
      - name: pos
        type: xmlC14NPosition
      - name: parent_is_doc
        type: int
      - name: ns_rendered
        type: xmlC14NVisibleNsStackPtr
      - name: mode
        type: xmlC14NMode
      - name: '**inclusive_ns_prefixes'
        type: xmlChar
      - name: error
        type: int
      item_type: struct
      name: _xmlC14NCtx
      pos:
        line_end: 71
        line_start: 50
        source_file: /src/libxml2/c14n.c
    typedefs: []
    union: []
- function_names:
  - xmlShellReadline
  - usershell
  - usage
  - main
  - main
  source_file: /src/libxml2/xmlcatalog.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: STDIN_FILENO
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/xmlcatalog.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SGML_DEFAULT_CATALOG
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxml2/xmlcatalog.c
      type_or_value: XML_SYSCONFDIR "/sgml/catalog"
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSaveErrMemory
  - xmlSaveErr
  - xmlSaveSetIndentString
  - xmlSaveCtxtInit
  - xmlFreeSaveCtxt
  - xmlNewSaveCtxt
  - xmlSaveWriteText
  - xmlSaveWriteAttrContent
  - xmlBufDumpNotationDecl
  - xmlBufDumpNotationDeclScan
  - xmlBufDumpNotationTable
  - xmlBufDumpElementOccur
  - xmlBufDumpElementContent
  - xmlBufDumpElementDecl
  - xmlBufDumpEnumeration
  - xmlSaveWriteAttributeDecl
  - xmlBufDumpEntityContent
  - xmlBufDumpEntityDecl
  - xmlSaveSwitchEncoding
  - xmlSaveClearEncoding
  - xmlSaveWriteIndent
  - xmlOutputBufferWriteWSNonSig
  - xmlNsDumpOutput
  - xmlNsListDumpOutputCtxt
  - xmlNsListDumpOutput
  - xmlDtdDumpOutput
  - xmlAttrDumpOutput
  - htmlNodeDumpOutputInternal
  - xmlNodeDumpOutputInternal
  - xmlSaveDocInternal
  - xhtmlIsEmpty
  - xhtmlAttrListDumpOutput
  - xhtmlNodeDumpOutput
  - xmlSaveToFd
  - xmlSaveToFilename
  - xmlSaveToBuffer
  - xmlSaveToIO
  - xmlSaveDoc
  - xmlSaveTree
  - xmlSaveNotationDecl
  - xmlSaveNotationTable
  - xmlSaveFlush
  - xmlSaveClose
  - xmlSaveFinish
  - xmlSaveSetEscape
  - xmlSaveSetAttrEscape
  - xmlBufAttrSerializeTxtContent
  - xmlAttrSerializeTxtContent
  - xmlNodeDump
  - xmlBufNodeDump
  - xmlElemDump
  - xmlNodeDumpOutput
  - xmlDocDumpInternal
  - xmlDocDumpFormatMemoryEnc
  - xmlDocDumpMemory
  - xmlDocDumpFormatMemory
  - xmlDocDumpMemoryEnc
  - xmlDocFormatDump
  - xmlDocDump
  - xmlSaveFileTo
  - xmlSaveFormatFileTo
  - xmlSaveFormatFileEnc
  - xmlSaveFileEnc
  - xmlSaveFormatFile
  - xmlSaveFile
  source_file: /src/libxml2/xmlsave.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_INDENT
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/xmlsave.c
      type_or_value: '60'
    - item_type: preproc_def
      name: XHTML_NS_NAME
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/xmlsave.c
      type_or_value: BAD_CAST "http://www.w3.org/1999/xhtml"
    structs:
    - fields:
      - name: '*encoding'
        type: xmlChar
      - name: handler
        type: xmlCharEncodingHandlerPtr
      - name: buf
        type: xmlOutputBufferPtr
      - name: options
        type: int
      - name: level
        type: int
      - name: format
        type: int
      - name: indent[MAX_INDENT + 1]
        type: char
      - name: indent_nr
        type: int
      - name: indent_size
        type: int
      - name: escape
        type: xmlCharEncodingOutputFunc
      item_type: struct
      name: _xmlSaveCtxt
      pos:
        line_end: 45
        line_start: 34
        source_file: /src/libxml2/xmlsave.c
    typedefs: []
    union: []
- function_names:
  - xmlPosixStrdup
  - xmlInitGlobals
  - xmlInitGlobalsInternal
  - xmlCleanupGlobals
  - xmlCleanupGlobalsInternal
  - xmlFreeGlobalState
  - xmlGlobalStateDtor
  - xmlRegisterGlobalStateDtor
  - xmlNewGlobalState
  - xmlGetThreadLocalStorage
  - xmlGetThreadLocalStorage
  - xmlInitGlobalState
  - __xmlLastError
  - __xmlDoValidityCheckingDefaultValue
  - __xmlGetWarningsDefaultValue
  - __xmlKeepBlanksDefaultValue
  - __xmlLineNumbersDefaultValue
  - __xmlLoadExtDtdDefaultValue
  - __xmlPedanticParserDefaultValue
  - __xmlSubstituteEntitiesDefaultValue
  - __xmlIndentTreeOutput
  - __xmlTreeIndentString
  - __xmlSaveNoEmptyTags
  - __xmlGenericError
  - __xmlGenericErrorContext
  - __xmlStructuredError
  - __xmlStructuredErrorContext
  - __xmlRegisterNodeDefaultValue
  - __xmlDeregisterNodeDefaultValue
  - __xmlParserInputBufferCreateFilenameValue
  - __xmlOutputBufferCreateFilenameValue
  - __xmlMalloc
  - __xmlMallocAtomic
  - __xmlRealloc
  - __xmlFree
  - __xmlMemStrdup
  - xmlGetLocalRngState
  - xmlCheckThreadLocalStorage
  - xmlGetLastErrorInternal
  - DllMain
  - xmlThrDefSetGenericErrorFunc
  - xmlThrDefSetStructuredErrorFunc
  - xmlThrDefDoValidityCheckingDefaultValue
  - xmlThrDefGetWarningsDefaultValue
  - xmlThrDefIndentTreeOutput
  - xmlThrDefTreeIndentString
  - xmlThrDefSaveNoEmptyTags
  - xmlThrDefKeepBlanksDefaultValue
  - xmlThrDefLineNumbersDefaultValue
  - xmlThrDefLoadExtDtdDefaultValue
  - xmlThrDefPedanticParserDefaultValue
  - xmlThrDefSubstituteEntitiesDefaultValue
  - xmlThrDefRegisterNodeDefault
  - xmlThrDefDeregisterNodeDefault
  - xmlThrDefParserInputBufferCreateFilenameDefault
  - xmlThrDefOutputBufferCreateFilenameDefault
  source_file: /src/libxml2/globals.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: localRngState[2]
        type: unsigned
      - name: lastError
        type: xmlError
      - name: doValidityCheckingDefaultValue
        type: int
      - name: getWarningsDefaultValue
        type: int
      - name: keepBlanksDefaultValue
        type: int
      - name: loadExtDtdDefaultValue
        type: int
      - name: pedanticParserDefaultValue
        type: int
      - name: substituteEntitiesDefaultValue
        type: int
      - name: genericError
        type: xmlGenericErrorFunc
      - name: '*genericErrorContext'
        type: void
      - name: structuredError
        type: xmlStructuredErrorFunc
      - name: '*structuredErrorContext'
        type: void
      - name: registerNodeDefaultValue
        type: xmlRegisterNodeFunc
      - name: deregisterNodeDefaultValue
        type: xmlDeregisterNodeFunc
      - name: parserInputBufferCreateFilenameValue
        type: xmlParserInputBufferCreateFilenameFunc
      - name: outputBufferCreateFilenameValue
        type: xmlOutputBufferCreateFilenameFunc
      item_type: struct
      name: _xmlGlobalState
      pos:
        line_end: 169
        line_start: 124
        source_file: /src/libxml2/globals.c
    typedefs:
    - item_type: typedef
      name: xmlGlobalState
      pos:
        line_end: 171
        line_start: 171
        source_file: /src/libxml2/globals.c
      type: _xmlGlobalState
    - item_type: typedef
      name: '*xmlGlobalStatePtr'
      pos:
        line_end: 172
        line_start: 172
        source_file: /src/libxml2/globals.c
      type: xmlGlobalState
    union: []
- function_names:
  - IS_HEX_DIGIT
  - IS_UPPER
  - IS_ALNUM
  - htmlErrMemory
  - htmlParseErr
  - htmlnamePush
  - htmlnamePop
  - htmlNodeInfoPush
  - htmlNodeInfoPop
  - SKIP
  - NXT
  - UPP
  - htmlFindEncoding
  - htmlMaskMatch
  - htmlValidateUtf8
  - htmlSkipBlankChars
  - htmlParserFinishElementParsing
  - htmlInitAutoClose
  - htmlCompareTags
  - htmlTagLookup
  - htmlGetEndPriority
  - htmlCompareStartClose
  - htmlCheckAutoClose
  - htmlAutoCloseOnClose
  - htmlAutoCloseOnEnd
  - htmlAutoClose
  - htmlAutoCloseTag
  - htmlIsAutoClosed
  - htmlCheckImplied
  - htmlStartCharData
  - htmlIsScriptAttribute
  - htmlEntityLookup
  - htmlCompareEntityDesc
  - htmlEntityValueLookup
  - htmlUTF8ToHtml
  - htmlEncodeEntities
  - areBlanks
  - htmlNewDocNoDtD
  - htmlNewDoc
  - htmlParseHTMLName
  - htmlCodePointToUtf8
  - htmlFindEntityPrefix
  - htmlParseData
  - htmlParseEntityRef
  - htmlParseAttValue
  - htmlCharDataSAXCallback
  - htmlParseCharData
  - htmlParseComment
  - htmlParseDoctypeLiteral
  - htmlSkipBogusDoctype
  - htmlParseDocTypeDecl
  - htmlParseAttribute
  - htmlCharEncCheckAsciiCompatible
  - htmlCheckMeta
  - htmlAttrHashInsert
  - htmlParseStartTag
  - htmlParseEndTag
  - htmlParseContent
  - htmlParseElementInternal
  - htmlParseElement
  - htmlCtxtParseContentInternal
  - htmlParseDocument
  - htmlInitParserCtxt
  - htmlFreeParserCtxt
  - htmlNewParserCtxt
  - htmlNewSAXParserCtxt
  - htmlCreateMemoryParserCtxtInternal
  - htmlCreateMemoryParserCtxt
  - htmlCreateDocParserCtxt
  - htmlParseLookupGt
  - htmlParseLookupString
  - htmlParseLookupCommentEnd
  - htmlParseTryOrFinish
  - htmlParseChunk
  - htmlCreatePushParserCtxt
  - htmlSAXParseDoc
  - htmlParseDoc
  - htmlCreateFileParserCtxt
  - htmlSAXParseFile
  - htmlParseFile
  - htmlHandleOmittedElem
  - htmlElementAllowedHere
  - htmlElementStatusHere
  - htmlAttrAllowed
  - htmlCtxtReset
  - htmlCtxtSetOptionsInternal
  - htmlCtxtSetOptions
  - htmlCtxtUseOptions
  - htmlCtxtParseDocument
  - htmlReadDoc
  - htmlReadFile
  - htmlReadMemory
  - htmlReadFd
  - htmlReadIO
  - htmlCtxtReadDoc
  - htmlCtxtReadFile
  - htmlCtxtReadMemory
  - htmlCtxtReadFd
  - htmlCtxtReadIO
  source_file: /src/libxml2/HTMLparser.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: HTML_MAX_NAMELEN
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: '1000'
    - item_type: preproc_def
      name: HTML_MAX_ATTRS
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: '100000000 '
    - item_type: preproc_def
      name: HTML_PARSER_BIG_BUFFER_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: '1000'
    - item_type: preproc_def
      name: HTML_PARSER_BUFFER_SIZE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: '100'
    - item_type: preproc_def
      name: UPPER
      pos:
        line_end: 284
        line_start: 283
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: (toupper(*ctxt->input->cur))
    - item_type: preproc_def
      name: CUR_PTR
      pos:
        line_end: 292
        line_start: 291
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: ctxt->input->cur
    - item_type: preproc_def
      name: BASE_PTR
      pos:
        line_end: 293
        line_start: 292
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: ctxt->input->base
    - item_type: preproc_def
      name: SHRINK
      pos:
        line_end: 299
        line_start: 294
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: "if ((!PARSER_PROGRESSIVE(ctxt)) && \\\n        (ctxt->input->cur
        - ctxt->input->base > 2 * INPUT_CHUNK) && \\\n\t(ctxt->input->end - ctxt->input->cur
        < 2 * INPUT_CHUNK)) \\\n\txmlParserShrink(ctxt);"
    - item_type: preproc_def
      name: GROW
      pos:
        line_end: 304
        line_start: 300
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: "if ((!PARSER_PROGRESSIVE(ctxt)) && \\\n        (ctxt->input->end
        - ctxt->input->cur < INPUT_CHUNK)) \\\n\txmlParserGrow(ctxt);"
    - item_type: preproc_def
      name: SKIP_BLANKS
      pos:
        line_end: 306
        line_start: 305
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: htmlSkipBlankChars(ctxt)
    - item_type: preproc_def
      name: CUR
      pos:
        line_end: 310
        line_start: 309
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: (*ctxt->input->cur)
    - item_type: preproc_def
      name: ENT_F_SEMICOLON
      pos:
        line_end: 2437
        line_start: 2436
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: 0x80u
    - item_type: preproc_def
      name: ENT_F_SUBTABLE
      pos:
        line_end: 2438
        line_start: 2437
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: 0x40u
    - item_type: preproc_def
      name: ENT_F_ALL
      pos:
        line_end: 2439
        line_start: 2438
        source_file: /src/libxml2/HTMLparser.c
      type_or_value: 0xC0u
    structs:
    - fields:
      - name: '*oldTag'
        type: char
      - name: '*newTag'
        type: char
      item_type: struct
      name: htmlStartCloseEntry
      pos:
        line_end: 908
        line_start: 905
        source_file: /src/libxml2/HTMLparser.c
    - fields:
      - name: '*name'
        type: char
      - name: priority
        type: int
      item_type: struct
      name: elementPriority
      pos:
        line_end: 1202
        line_start: 1199
        source_file: /src/libxml2/HTMLparser.c
    typedefs:
    - item_type: typedef
      name: htmlAsciiMask[2]
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/libxml2/HTMLparser.c
      type: unsigned
    union: []
- function_names:
  - XML_HAS_ATTRIBUTE
  - XML_HAS_ATTRIBUTE
  - XML_PTR_TO_INT
  - XML_INT_TO_PTR
  - ATTRIBUTE_COUNTED_BY
  - ATTRIBUTE_NO_SANITIZE
  source_file: /src/libxml2/libxml.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _FILE_OFFSET_BITS
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxml2/libxml.h
      type_or_value: '64'
    - item_type: preproc_def
      name: XML_INLINE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/libxml.h
      type_or_value: inline
    - item_type: preproc_def
      name: XML_INLINE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/libxml.h
      type_or_value: inline
    - item_type: preproc_def
      name: XML_INLINE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxml2/libxml.h
      type_or_value: _inline
    - item_type: preproc_def
      name: XML_INTPTR_T
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/libxml2/libxml.h
      type_or_value: intptr_t
    - item_type: preproc_def
      name: XML_INTPTR_T
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxml2/libxml.h
      type_or_value: ptrdiff_t
    - item_type: preproc_def
      name: XML_HIDDEN
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/libxml2/libxml.h
      type_or_value: __attribute__((visibility("hidden")))
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/libxml2/libxml.h
      type_or_value: __attribute__((unused))
    - item_type: preproc_def
      name: ATTRIBUTE_DESTRUCTOR
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libxml2/libxml.h
      type_or_value: __attribute__((destructor))
    - item_type: preproc_def
      name: ATTRIBUTE_NO_SANITIZE_INTEGER
      pos:
        line_end: 98
        line_start: 95
        source_file: /src/libxml2/libxml.h
      type_or_value: "ATTRIBUTE_NO_SANITIZE(\"unsigned-integer-overflow\") \\\n      ATTRIBUTE_NO_SANITIZE(\"unsigned-shift-base\")"
    - item_type: preproc_def
      name: ATTRIBUTE_NO_SANITIZE_INTEGER
      pos:
        line_end: 101
        line_start: 99
        source_file: /src/libxml2/libxml.h
      type_or_value: ATTRIBUTE_NO_SANITIZE("unsigned-integer-overflow")
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlFreeEntity
  - xmlCreateEntity
  - xmlAddEntity
  - xmlGetPredefinedEntity
  - xmlAddDtdEntity
  - xmlAddDocEntity
  - xmlNewEntity
  - xmlGetEntityFromTable
  - xmlGetParameterEntity
  - xmlGetDtdEntity
  - xmlGetDocEntity
  - xmlEncodeEntitiesReentrant
  - xmlEncodeSpecialChars
  - xmlCreateEntitiesTable
  - xmlFreeEntityWrapper
  - xmlFreeEntitiesTable
  - xmlCopyEntity
  - xmlCopyEntitiesTable
  - xmlDumpEntityDecl
  - xmlDumpEntityDeclScan
  - xmlDumpEntitiesTable
  source_file: /src/libxml2/entities.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/entities.c
      type_or_value: ((size_t) -1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlPythonFileCloseRaw
  - xmlPythonFileReadRaw
  - xmlPythonFileRead
  - xmlPythonFileWrite
  - xmlPythonFileClose
  - xmlOutputBufferCreatePythonFile
  - libxml_xmlCreateOutputBuffer
  - libxml_outputBufferGetPythonFile
  - libxml_xmlOutputBufferClose
  - libxml_xmlOutputBufferFlush
  - libxml_xmlSaveFileTo
  - libxml_xmlSaveFormatFileTo
  - xmlParserInputBufferCreatePythonFile
  - libxml_xmlCreateInputBuffer
  - pythonExternalEntityLoader
  - libxml_xmlSetEntityLoader
  - pythonInputMatchCallback
  - pythonInputOpenCallback
  - libxml_xmlRegisterInputCallback
  - libxml_xmlUnregisterInputCallback
  - pythonStartElement
  - pythonStartDocument
  - pythonEndDocument
  - pythonEndElement
  - pythonReference
  - pythonCharacters
  - pythonIgnorableWhitespace
  - pythonProcessingInstruction
  - pythonComment
  - pythonWarning
  - pythonError
  - pythonFatalError
  - pythonCdataBlock
  - pythonExternalSubset
  - pythonEntityDecl
  - pythonNotationDecl
  - pythonAttributeDecl
  - pythonElementDecl
  - pythonUnparsedEntityDecl
  - pythonInternalSubset
  - libxml_xmlCreatePushParser
  - libxml_htmlCreatePushParser
  - libxml_xmlSAXParseFile
  - libxml_htmlSAXParseFile
  - libxml_buildMessage
  - libxml_xmlErrorFuncHandler
  - libxml_xmlErrorInitialize
  - libxml_xmlRegisterErrorHandler
  - libxml_xmlParserCtxtErrorHandler
  - libxml_xmlParserCtxtSetErrorHandler
  - libxml_xmlParserCtxtGetErrorHandler
  - libxml_xmlFreeParserCtxt
  - libxml_xmlValidCtxtGenericErrorFuncHandler
  - libxml_xmlValidCtxtGenericWarningFuncHandler
  - libxml_xmlValidCtxtErrorFuncHandler
  - libxml_xmlValidCtxtWarningFuncHandler
  - libxml_xmlSetValidErrors
  - libxml_xmlFreeValidCtxt
  - libxml_xmlTextReaderErrorCallback
  - libxml_xmlTextReaderSetErrorHandler
  - libxml_xmlTextReaderGetErrorHandler
  - libxml_xmlFreeTextReader
  - libxml_xmlXPathFuncCallback
  - libxml_xmlXPathFuncLookupFunc
  - libxml_xpathCallbacksInitialize
  - libxml_xmlRegisterXPathFunction
  - libxml_xmlXPathRegisterVariable
  - libxml_name
  - libxml_doc
  - libxml_properties
  - libxml_next
  - libxml_prev
  - libxml_children
  - libxml_last
  - libxml_parent
  - libxml_type
  - libxml_xmlNodeGetNsDefs
  - libxml_xmlNodeRemoveNsDef
  - libxml_xmlNodeGetNs
  - libxml_serializeNode
  - libxml_saveNodeTo
  - libxml_xmlNewNode
  - libxml_addLocalCatalog
  - libxml_xmlRelaxNGValidityGenericErrorFuncHandler
  - libxml_xmlRelaxNGValidityGenericWarningFuncHandler
  - libxml_xmlRelaxNGValidityErrorFunc
  - libxml_xmlRelaxNGValidityWarningFunc
  - libxml_xmlRelaxNGSetValidErrors
  - libxml_xmlRelaxNGFreeValidCtxt
  - libxml_xmlSchemaValidityGenericErrorFuncHandler
  - libxml_xmlSchemaValidityGenericWarningFuncHandler
  - libxml_xmlSchemaValidityErrorFunc
  - libxml_xmlSchemaValidityWarningFunc
  - libxml_xmlSchemaSetValidErrors
  - libxml_xmlSchemaFreeValidCtxt
  - PyxmlNodeSet_Convert
  - PystringSet_Convert
  - libxml_C14NDocDumpMemory
  - libxml_C14NDocSaveTo
  - libxml_getObjDesc
  - libxml_compareNodesEqual
  - libxml_nodeHash
  - libxml_deprecationWarning
  source_file: /src/libxml2/python/libxml.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/libxml2/python/libxml.c
      type_or_value: PyUnicode_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/python/libxml.c
      type_or_value: PyUnicode_FromString
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/python/libxml.c
      type_or_value: PyString_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxml2/python/libxml.c
      type_or_value: PyString_FromString
    - item_type: preproc_def
      name: TODO
      pos:
        line_end: 52
        line_start: 48
        source_file: /src/libxml2/python/libxml.c
      type_or_value: "xmlGenericError(xmlGenericErrorContext,\t\t\t\t\\\n\t    \"Unimplemented
        block at %s:%d\\n\",\t\t\t\t\\\n            __FILE__, __LINE__);"
    - item_type: preproc_def
      name: INITERROR
      pos:
        line_end: 3616
        line_start: 3615
        source_file: /src/libxml2/python/libxml.c
      type_or_value: return NULL
    - item_type: preproc_def
      name: INITERROR
      pos:
        line_end: 3631
        line_start: 3630
        source_file: /src/libxml2/python/libxml.c
      type_or_value: return
    structs:
    - fields:
      - name: ctx
        type: xmlXPathContextPtr
      - name: '*name'
        type: xmlChar
      - name: '*ns_uri'
        type: xmlChar
      - name: '*function'
        type: PyObject
      item_type: struct
      name: libxml_xpathCallback
      pos:
        line_end: 65
        line_start: 60
        source_file: /src/libxml2/python/libxml.c
    - fields:
      - name: '*f'
        type: PyObject
      - name: '*arg'
        type: PyObject
      item_type: struct
      name: xmlParserCtxtPyCtxt
      pos:
        line_end: 1562
        line_start: 1558
        source_file: /src/libxml2/python/libxml.c
    - fields:
      - name: '*warn'
        type: PyObject
      - name: '*error'
        type: PyObject
      - name: '*arg'
        type: PyObject
      item_type: struct
      name: xmlValidCtxtPyCtxt
      pos:
        line_end: 1717
        line_start: 1712
        source_file: /src/libxml2/python/libxml.c
    - fields:
      - name: '*f'
        type: PyObject
      - name: '*arg'
        type: PyObject
      item_type: struct
      name: xmlTextReaderPyCtxt
      pos:
        line_end: 1868
        line_start: 1864
        source_file: /src/libxml2/python/libxml.c
    - fields:
      - name: '*warn'
        type: PyObject
      - name: '*error'
        type: PyObject
      - name: '*arg'
        type: PyObject
      item_type: struct
      name: xmlRelaxNGValidCtxtPyCtxt
      pos:
        line_end: 2886
        line_start: 2881
        source_file: /src/libxml2/python/libxml.c
    - fields:
      - name: '*warn'
        type: PyObject
      - name: '*error'
        type: PyObject
      - name: '*arg'
        type: PyObject
      item_type: struct
      name: xmlSchemaValidCtxtPyCtxt
      pos:
        line_end: 3040
        line_start: 3035
        source_file: /src/libxml2/python/libxml.c
    typedefs:
    - item_type: typedef
      name: libxml_xpathCallbackArray[]
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/libxml2/python/libxml.c
      type: libxml_xpathCallback
    - item_type: typedef
      name: '*xmlParserCtxtPyCtxtPtr'
      pos:
        line_end: 1563
        line_start: 1563
        source_file: /src/libxml2/python/libxml.c
      type: xmlParserCtxtPyCtxt
    - item_type: typedef
      name: '*xmlValidCtxtPyCtxtPtr'
      pos:
        line_end: 1718
        line_start: 1718
        source_file: /src/libxml2/python/libxml.c
      type: xmlValidCtxtPyCtxt
    - item_type: typedef
      name: '*xmlTextReaderPyCtxtPtr'
      pos:
        line_end: 1869
        line_start: 1869
        source_file: /src/libxml2/python/libxml.c
      type: xmlTextReaderPyCtxt
    - item_type: typedef
      name: '*xmlRelaxNGValidCtxtPyCtxtPtr'
      pos:
        line_end: 2887
        line_start: 2887
        source_file: /src/libxml2/python/libxml.c
      type: xmlRelaxNGValidCtxtPyCtxt
    - item_type: typedef
      name: '*xmlSchemaValidCtxtPyCtxtPtr'
      pos:
        line_end: 3041
        line_start: 3041
        source_file: /src/libxml2/python/libxml.c
      type: xmlSchemaValidCtxtPyCtxt
    union: []
- function_names:
  - myInvalidParameterHandler
  - libxml_PyFileGet
  - libxml_PyFileRelease
  - libxml_intWrap
  - libxml_longWrap
  - libxml_doubleWrap
  - libxml_charPtrWrap
  - libxml_charPtrConstWrap
  - libxml_xmlCharPtrWrap
  - libxml_xmlCharPtrConstWrap
  - libxml_constcharPtrWrap
  - libxml_constxmlCharPtrWrap
  - libxml_xmlDocPtrWrap
  - libxml_xmlNodePtrWrap
  - libxml_xmlURIPtrWrap
  - libxml_xmlNsPtrWrap
  - libxml_xmlAttrPtrWrap
  - libxml_xmlAttributePtrWrap
  - libxml_xmlElementPtrWrap
  - libxml_xmlParserCtxtPtrWrap
  - libxml_xmlXPathContextPtrWrap
  - libxml_xmlXPathParserContextPtrWrap
  - libxml_xmlXPathDestructNsNode
  - libxml_xmlXPathObjectPtrWrap
  - libxml_xmlXPathObjectPtrConvert
  - libxml_xmlValidCtxtPtrWrap
  - libxml_xmlCatalogPtrWrap
  - libxml_xmlOutputBufferPtrWrap
  - libxml_xmlParserInputBufferPtrWrap
  - libxml_xmlRegexpPtrWrap
  - libxml_xmlTextReaderPtrWrap
  - libxml_xmlTextReaderLocatorPtrWrap
  - libxml_xmlRelaxNGPtrWrap
  - libxml_xmlRelaxNGParserCtxtPtrWrap
  - libxml_xmlRelaxNGValidCtxtPtrWrap
  - libxml_xmlSchemaPtrWrap
  - libxml_xmlSchemaParserCtxtPtrWrap
  - libxml_xmlSchemaValidCtxtPtrWrap
  - libxml_xmlDestructError
  - libxml_xmlErrorPtrWrap
  source_file: /src/libxml2/python/types.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/libxml2/python/types.c
      type_or_value: PyUnicode_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/libxml2/python/types.c
      type_or_value: PyUnicode_FromString
    - item_type: preproc_def
      name: PY_IMPORT_INT
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxml2/python/types.c
      type_or_value: PyLong_FromLong
    - item_type: preproc_def
      name: PY_IMPORT_STRING_SIZE
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/libxml2/python/types.c
      type_or_value: PyString_FromStringAndSize
    - item_type: preproc_def
      name: PY_IMPORT_STRING
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/libxml2/python/types.c
      type_or_value: PyString_FromString
    - item_type: preproc_def
      name: PY_IMPORT_INT
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/python/types.c
      type_or_value: PyInt_FromLong
    structs:
    - fields:
      - name: DUMMYUNIONNAME
        type: "union {\n    NTSTATUS Status;\n    PVOID    Pointer;\n  }"
      - name: Information
        type: ULONG_PTR
      item_type: struct
      name: _IO_STATUS_BLOCK
      pos:
        line_end: 38
        line_start: 32
        source_file: /src/libxml2/python/types.c
    - fields:
      - name: AccessFlags
        type: ACCESS_MASK
      item_type: struct
      name: _FILE_ACCESS_INFORMATION
      pos:
        line_end: 42
        line_start: 40
        source_file: /src/libxml2/python/types.c
    typedefs:
    - item_type: typedef
      name: "(*t_NtQueryInformationFile) (HANDLE           FileHandle,\n                                              IO_STATUS_BLOCK
        *IoStatusBlock,\n                                              PVOID            FileInformation,\n
        \                                             ULONG            Length,\n                                              int
        \             FileInformationClass)"
      pos:
        line_end: 48
        line_start: 44
        source_file: /src/libxml2/python/types.c
      type: NTSTATUS
    union: []
- function_names:
  - PyCapsule_GetPointer
  - PyxmlNode_Get
  - PyxmlXPathContext_Get
  - PyxmlXPathParserContext_Get
  - PyparserCtxt_Get
  - PyValidCtxt_Get
  - Pycatalog_Get
  - PyxmlReg_Get
  - PyxmlTextReader_Get
  - PyxmlTextReaderLocator_Get
  - PyURI_Get
  - PyError_Get
  - PyoutputBuffer_Get
  - PyinputBuffer_Get
  - PyFile_Get
  - PyFile_Release
  - PyFile_Get
  - PyrelaxNgSchema_Get
  - PyrelaxNgParserCtxt_Get
  - PyrelaxNgValidCtxt_Get
  - PySchema_Get
  - PySchemaParserCtxt_Get
  - PySchemaValidCtxt_Get
  source_file: /src/libxml2/python/libxml_wrap.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PyBytes_Check
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyString_Check
    - item_type: preproc_def
      name: PyBytes_Size
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyString_Size
    - item_type: preproc_def
      name: PyBytes_AsString
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyString_AsString
    - item_type: preproc_def
      name: PyBytes_AS_STRING
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyString_AS_STRING
    - item_type: preproc_def
      name: PyBytes_GET_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyString_GET_SIZE
    - item_type: preproc_def
      name: PyCapsule_New
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyCObject_FromVoidPtrAndDesc
    - item_type: preproc_def
      name: PyCapsule_CheckExact
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: PyCObject_Check
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: __attribute__ ((__unused__))
    - item_type: preproc_def
      name: XML_IGNORE_DEPRECATION_WARNINGS
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: _Pragma("diag_suppress 1215")
    - item_type: preproc_def
      name: XML_POP_WARNINGS
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: _Pragma("diag_default 1215")
    - item_type: preproc_def
      name: XML_IGNORE_DEPRECATION_WARNINGS
      pos:
        line_end: 74
        line_start: 71
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: "_Pragma(\"GCC diagnostic push\") \\\n    _Pragma(\"GCC diagnostic
        ignored \\\"-Wdeprecated-declarations\\\"\")"
    - item_type: preproc_def
      name: XML_POP_WARNINGS
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: _Pragma("GCC diagnostic pop")
    - item_type: preproc_def
      name: XML_IGNORE_DEPRECATION_WARNINGS
      pos:
        line_end: 79
        line_start: 76
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: "__pragma(warning(push)) \\\n    __pragma(warning(disable : 4996))"
    - item_type: preproc_def
      name: XML_POP_WARNINGS
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libxml2/python/libxml_wrap.h
      type_or_value: __pragma(warning(pop))
    structs:
    - fields:
      - name: xmlNodePtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlNode_Object
      pos:
        line_end: 91
        line_start: 88
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlXPathContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlXPathContext_Object
      pos:
        line_end: 100
        line_start: 97
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlXPathParserContextPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlXPathParserContext_Object
      pos:
        line_end: 108
        line_start: 105
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlParserCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyparserCtxt_Object
      pos:
        line_end: 117
        line_start: 114
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlValidCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyValidCtxt_Object
      pos:
        line_end: 125
        line_start: 122
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlCatalogPtr
        type: PyObject_HEAD
      item_type: struct
      name: Pycatalog_Object
      pos:
        line_end: 134
        line_start: 131
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlRegexpPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlReg_Object
      pos:
        line_end: 144
        line_start: 141
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlTextReaderPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlTextReader_Object
      pos:
        line_end: 154
        line_start: 151
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlTextReaderLocatorPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyxmlTextReaderLocator_Object
      pos:
        line_end: 162
        line_start: 159
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlErrorPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyError_Object
      pos:
        line_end: 171
        line_start: 168
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlOutputBufferPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyoutputBuffer_Object
      pos:
        line_end: 179
        line_start: 176
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlParserInputBufferPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyinputBuffer_Object
      pos:
        line_end: 187
        line_start: 184
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlURIPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyURI_Object
      pos:
        line_end: 195
        line_start: 192
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlRelaxNGPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyrelaxNgSchema_Object
      pos:
        line_end: 213
        line_start: 210
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlRelaxNGParserCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyrelaxNgParserCtxt_Object
      pos:
        line_end: 221
        line_start: 218
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlRelaxNGValidCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PyrelaxNgValidCtxt_Object
      pos:
        line_end: 229
        line_start: 226
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlSchemaPtr
        type: PyObject_HEAD
      item_type: struct
      name: PySchema_Object
      pos:
        line_end: 240
        line_start: 237
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlSchemaParserCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PySchemaParserCtxt_Object
      pos:
        line_end: 248
        line_start: 245
        source_file: /src/libxml2/python/libxml_wrap.h
    - fields:
      - name: xmlSchemaValidCtxtPtr
        type: PyObject_HEAD
      item_type: struct
      name: PySchemaValidCtxt_Object
      pos:
        line_end: 256
        line_start: 253
        source_file: /src/libxml2/python/libxml_wrap.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/lint.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - HASH_ROL
  - HASH_ROR
  - HASH_INIT
  - HASH_UPDATE
  - HASH_FINISH
  source_file: /src/libxml2/include/private/dict.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: hashValue
        type: unsigned
      - name: '*name'
        type: xmlChar
      item_type: struct
      name: xmlHashedString
      pos:
        line_end: 50
        line_start: 47
        source_file: /src/libxml2/include/private/dict.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/entities.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_ENT_PARSED
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/libxml2/include/private/entities.h
      type_or_value: (1u << 0)
    - item_type: preproc_def
      name: XML_ENT_CHECKED
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/include/private/entities.h
      type_or_value: (1u << 1)
    - item_type: preproc_def
      name: XML_ENT_VALIDATED
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxml2/include/private/entities.h
      type_or_value: (1u << 2)
    - item_type: preproc_def
      name: XML_ENT_EXPANDING
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxml2/include/private/entities.h
      type_or_value: (1u << 3)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/globals.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_WS_HTML
  source_file: /src/libxml2/include/private/html.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DATA_RCDATA
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '1'
    - item_type: preproc_def
      name: DATA_RAWTEXT
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '2'
    - item_type: preproc_def
      name: DATA_PLAINTEXT
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '3'
    - item_type: preproc_def
      name: DATA_SCRIPT
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '4'
    - item_type: preproc_def
      name: DATA_SCRIPT_ESC1
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '5'
    - item_type: preproc_def
      name: DATA_SCRIPT_ESC2
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/libxml2/include/private/html.h
      type_or_value: '6'
    structs:
    - fields:
      - name: start
        type: size_t
      - name: end
        type: size_t
      - name: size
        type: size_t
      item_type: struct
      name: htmlMetaEncodingOffsets
      pos:
        line_end: 22
        line_start: 18
        source_file: /src/libxml2/include/private/html.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/string.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - PARSER_STOPPED
  - PARSER_PROGRESSIVE
  - PARSER_IN_PE
  - PARSER_EXTERNAL
  - xmlSaturatedAdd
  - xmlSaturatedAddSizeT
  source_file: /src/libxml2/include/private/parser.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_INVALID_CHAR
      pos:
        line_end: 9
        line_start: 8
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '0x200000'
    - item_type: preproc_def
      name: XML_MAX_URI_LENGTH
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '2000'
    - item_type: preproc_def
      name: XML_VCTXT_DTD_VALIDATED
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 0)
    - item_type: preproc_def
      name: XML_VCTXT_USE_PCTXT
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 1)
    - item_type: preproc_def
      name: XML_VCTXT_VALIDATE
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 2)
    - item_type: preproc_def
      name: XML_VCTXT_IN_ENTITY
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 3)
    - item_type: preproc_def
      name: XML_INPUT_HAS_ENCODING
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 0)
    - item_type: preproc_def
      name: XML_INPUT_AUTO_ENCODING
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (7u << 1)
    - item_type: preproc_def
      name: XML_INPUT_AUTO_UTF8
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 1)
    - item_type: preproc_def
      name: XML_INPUT_AUTO_UTF16LE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (2u << 1)
    - item_type: preproc_def
      name: XML_INPUT_AUTO_UTF16BE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (3u << 1)
    - item_type: preproc_def
      name: XML_INPUT_AUTO_OTHER
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (4u << 1)
    - item_type: preproc_def
      name: XML_INPUT_USES_ENC_DECL
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 4)
    - item_type: preproc_def
      name: XML_INPUT_ENCODING_ERROR
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 5)
    - item_type: preproc_def
      name: XML_INPUT_PROGRESSIVE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 6)
    - item_type: preproc_def
      name: XML_INPUT_MARKUP_DECL
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: (1u << 7)
    - item_type: preproc_def
      name: INPUT_CHUNK
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '250'
    - item_type: preproc_def
      name: XML_SCAN_NC
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCAN_NMTOKEN
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCAN_OLD10
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/libxml2/include/private/parser.h
      type_or_value: '4'
    structs:
    - fields:
      - name: index
        type: int
      item_type: struct
      name: _xmlAttrHashBucket
      pos:
        line_end: 66
        line_start: 64
        source_file: /src/libxml2/include/private/parser.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/threads.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _WIN32_WINNT
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/libxml2/include/private/threads.h
      type_or_value: '0x0600'
    structs:
    - fields: []
      item_type: struct
      name: _xmlMutex
      pos:
        line_end: 31
        line_start: 23
        source_file: /src/libxml2/include/private/threads.h
    - fields: []
      item_type: struct
      name: _xmlRMutex
      pos:
        line_end: 48
        line_start: 36
        source_file: /src/libxml2/include/private/threads.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/save.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/enc.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlGrowCapacity
  source_file: /src/libxml2/include/private/memory.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 10
        line_start: 9
        source_file: /src/libxml2/include/private/memory.h
      type_or_value: ((size_t) -1)
    - item_type: preproc_def
      name: XML_MAX_ITEMS
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/libxml2/include/private/memory.h
      type_or_value: '1000000000 '
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/regexp.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_REGEXP_OK
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_REGEXP_NOT_FOUND
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: (-1)
    - item_type: preproc_def
      name: XML_REGEXP_INTERNAL_ERROR
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: (-4)
    - item_type: preproc_def
      name: XML_REGEXP_OUT_OF_MEMORY
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: (-5)
    - item_type: preproc_def
      name: XML_REGEXP_INTERNAL_LIMIT
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: (-6)
    - item_type: preproc_def
      name: XML_REGEXP_INVALID_UTF8
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/libxml2/include/private/regexp.h
      type_or_value: (-7)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/xinclude.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/error.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ERR_MSG_SIZE
      pos:
        line_end: 9
        line_start: 8
        source_file: /src/libxml2/include/private/error.h
      type_or_value: '64000'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/cata.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/tree.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/io.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SIZE_MAX
      pos:
        line_end: 9
        line_start: 8
        source_file: /src/libxml2/include/private/io.h
      type_or_value: ((size_t)(-1))
    - item_type: preproc_def
      name: XML_IO_BUFFER_SIZE
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/include/private/io.h
      type_or_value: '6000'
    - item_type: preproc_def
      name: XML_ESCAPE_ATTR
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxml2/include/private/io.h
      type_or_value: (1u << 0)
    - item_type: preproc_def
      name: XML_ESCAPE_NON_ASCII
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxml2/include/private/io.h
      type_or_value: (1u << 1)
    - item_type: preproc_def
      name: XML_ESCAPE_HTML
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxml2/include/private/io.h
      type_or_value: (1u << 2)
    - item_type: preproc_def
      name: XML_ESCAPE_QUOT
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxml2/include/private/io.h
      type_or_value: (1u << 3)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/buf.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/private/xpath.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlunicode.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/list.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlLink
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxml2/include/libxml/list.h
      type: _xmlLink
    - item_type: typedef
      name: '*xmlLinkPtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/list.h
      type: xmlLink
    - item_type: typedef
      name: xmlList
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/libxml2/include/libxml/list.h
      type: _xmlList
    - item_type: typedef
      name: '*xmlListPtr'
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/libxml2/include/libxml/list.h
      type: xmlList
    - item_type: typedef
      name: (*xmlListDeallocator) (xmlLink *lk)
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxml2/include/libxml/list.h
      type: void
    - item_type: typedef
      name: (*xmlListDataCompare) (const void *data0, const void *data1)
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/libxml2/include/libxml/list.h
      type: int
    - item_type: typedef
      name: (*xmlListWalker) (const void *data, void *user)
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/libxml2/include/libxml/list.h
      type: int
    union: []
- function_names:
  - LIBXML_ATTR_ALLOC_SIZE
  - LIBXML_ATTR_FORMAT
  source_file: /src/libxml2/include/libxml/xmlexports.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLPUBFUN
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: XMLPUBVAR
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __declspec(dllexport) extern
    - item_type: preproc_def
      name: XMLPUBFUN
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: XMLPUBVAR
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __declspec(dllimport) extern
    - item_type: preproc_def
      name: XMLPUBVAR
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: extern
    - item_type: preproc_def
      name: LIBXML_DLL_IMPORT
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: XMLPUBVAR
    - item_type: preproc_def
      name: XML_DEPRECATED
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __attribute__((deprecated("See https://gnome.pages.gitlab.gnome.org/libxml2/html/deprecated.html")))
    - item_type: preproc_def
      name: XML_DEPRECATED
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __attribute__((deprecated))
    - item_type: preproc_def
      name: XML_DEPRECATED
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __declspec(deprecated("See https://gnome.pages.gitlab.gnome.org/libxml2/html/deprecated.html"))
    - item_type: preproc_def
      name: XML_DEPRECATED_MEMBER
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libxml2/include/libxml/xmlexports.h
      type_or_value: __attribute__((deprecated))
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/dict.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlDict
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxml2/include/libxml/dict.h
      type: _xmlDict
    - item_type: typedef
      name: '*xmlDictPtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/dict.h
      type: xmlDict
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/entities.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlDtd
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: '*orig'
        type: xmlChar
      - name: '*content'
        type: xmlChar
      - name: length
        type: int
      - name: etype
        type: xmlEntityType
      - name: '*ExternalID'
        type: xmlChar
      - name: '*SystemID'
        type: xmlChar
      - name: '*nexte'
        type: struct _xmlEntity
      - name: '*URI'
        type: xmlChar
      - name: owner
        type: int
      - name: flags
        type: int
      - name: expandedSize
        type: unsigned long
      item_type: struct
      name: _xmlEntity
      pos:
        line_end: 88
        line_start: 45
        source_file: /src/libxml2/include/libxml/entities.h
    typedefs:
    - item_type: typedef
      name: xmlEntitiesTable
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/libxml2/include/libxml/entities.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlEntitiesTablePtr'
      pos:
        line_end: 91
        line_start: 91
        source_file: /src/libxml2/include/libxml/entities.h
      type: xmlEntitiesTable
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/debugXML.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xpointer.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/globals.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - XML_CAST_FPTR
  source_file: /src/libxml2/include/libxml/hash.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlHashTable
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxml2/include/libxml/hash.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlHashTablePtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/hash.h
      type: xmlHashTable
    - item_type: typedef
      name: (*xmlHashDeallocator)(void *payload, const xmlChar *name)
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxml2/include/libxml/hash.h
      type: void
    - item_type: typedef
      name: '*(*xmlHashCopier)(void *payload, const xmlChar *name)'
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/libxml2/include/libxml/hash.h
      type: void
    - item_type: typedef
      name: (*xmlHashScanner)(void *payload, void *data, const xmlChar *name)
      pos:
        line_end: 76
        line_start: 76
        source_file: /src/libxml2/include/libxml/hash.h
      type: void
    - item_type: typedef
      name: "(*xmlHashScannerFull)(void *payload, void *data,\n\t\t\t\t   const xmlChar
        *name, const xmlChar *name2,\n\t\t\t\t   const xmlChar *name3)"
      pos:
        line_end: 88
        line_start: 86
        source_file: /src/libxml2/include/libxml/hash.h
      type: void
    union: []
- function_names:
  - xmlXPathSetError
  - xmlXPathSetArityError
  - xmlXPathSetTypeError
  - xmlXPathGetError
  - xmlXPathCheckError
  - xmlXPathGetDocument
  - xmlXPathGetContextNode
  - xmlXPathReturnBoolean
  - xmlXPathReturnTrue
  - xmlXPathReturnFalse
  - xmlXPathReturnNumber
  - xmlXPathReturnString
  - xmlXPathReturnEmptyString
  - xmlXPathReturnNodeSet
  - xmlXPathReturnEmptyNodeSet
  - xmlXPathReturnExternal
  - xmlXPathStackIsNodeSet
  - xmlXPathStackIsExternal
  - xmlXPathEmptyNodeSet
  - XP_ERROR
  - XP_ERROR0
  - CHECK_TYPE
  - CHECK_TYPE0
  - CHECK_ARITY
  source_file: /src/libxml2/include/libxml/xpathInternals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: valuePush
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: xmlXPathValuePush
    - item_type: preproc_def
      name: valuePop
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: xmlXPathValuePop
    - item_type: preproc_def
      name: CHECK_ERROR
      pos:
        line_end: 230
        line_start: 228
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: if (ctxt->error != XPATH_EXPRESSION_OK) return
    - item_type: preproc_def
      name: CHECK_ERROR0
      pos:
        line_end: 236
        line_start: 234
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: if (ctxt->error != XPATH_EXPRESSION_OK) return(0)
    - item_type: preproc_def
      name: CAST_TO_STRING
      pos:
        line_end: 291
        line_start: 288
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: "if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_STRING))\t\\\n
        \       xmlXPathStringFunction(ctxt, 1);"
    - item_type: preproc_def
      name: CAST_TO_NUMBER
      pos:
        line_end: 298
        line_start: 295
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: "if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_NUMBER))\t\\\n
        \       xmlXPathNumberFunction(ctxt, 1);"
    - item_type: preproc_def
      name: CAST_TO_BOOLEAN
      pos:
        line_end: 305
        line_start: 302
        source_file: /src/libxml2/include/libxml/xpathInternals.h
      type_or_value: "if ((ctxt->value != NULL) && (ctxt->value->type != XPATH_BOOLEAN))\t\\\n
        \       xmlXPathBooleanFunction(ctxt, 1);"
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/parser.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_DEFAULT_VERSION
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: '"1.0"'
    - item_type: preproc_def
      name: XML_DETECT_IDS
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_COMPLETE_ATTRS
      pos:
        line_end: 209
        line_start: 208
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: '4'
    - item_type: preproc_def
      name: XML_SKIP_IDS
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: '8'
    - item_type: preproc_def
      name: XML_SAX2_MAGIC
      pos:
        line_end: 953
        line_start: 952
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: '0xDEEDBEAF'
    - item_type: preproc_def
      name: xmlDoValidityCheckingDefaultValue
      pos:
        line_end: 1302
        line_start: 1300
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlDoValidityCheckingDefaultValue())
    - item_type: preproc_def
      name: xmlGetWarningsDefaultValue
      pos:
        line_end: 1309
        line_start: 1307
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlGetWarningsDefaultValue())
    - item_type: preproc_def
      name: xmlKeepBlanksDefaultValue
      pos:
        line_end: 1316
        line_start: 1315
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlKeepBlanksDefaultValue())
    - item_type: preproc_def
      name: xmlLineNumbersDefaultValue
      pos:
        line_end: 1324
        line_start: 1322
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlLineNumbersDefaultValue())
    - item_type: preproc_def
      name: xmlLoadExtDtdDefaultValue
      pos:
        line_end: 1331
        line_start: 1330
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlLoadExtDtdDefaultValue())
    - item_type: preproc_def
      name: xmlPedanticParserDefaultValue
      pos:
        line_end: 1339
        line_start: 1337
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlPedanticParserDefaultValue())
    - item_type: preproc_def
      name: xmlSubstituteEntitiesDefaultValue
      pos:
        line_end: 1347
        line_start: 1345
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlSubstituteEntitiesDefaultValue())
    - item_type: preproc_def
      name: xmlIndentTreeOutput
      pos:
        line_end: 1356
        line_start: 1355
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlIndentTreeOutput())
    - item_type: preproc_def
      name: xmlTreeIndentString
      pos:
        line_end: 1364
        line_start: 1363
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlTreeIndentString())
    - item_type: preproc_def
      name: xmlSaveNoEmptyTags
      pos:
        line_end: 1372
        line_start: 1371
        source_file: /src/libxml2/include/libxml/parser.h
      type_or_value: (*__xmlSaveNoEmptyTags())
    structs:
    - fields:
      - name: '*buf XML_DEPRECATED_MEMBER'
        type: xmlParserInputBuffer
      - name: '*filename'
        type: char
      - name: '*directory XML_DEPRECATED_MEMBER'
        type: char
      - name: '*base'
        type: xmlChar
      - name: '*cur'
        type: xmlChar
      - name: '*end'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: line
        type: int
      - name: col
        type: int
      - name: consumed
        type: unsigned long
      - name: XML_DEPRECATED_MEMBER
        type: xmlParserInputDeallocate
      - name: '*encoding XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*version XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: unsigned long parentConsumed
      - name: '*entity XML_DEPRECATED_MEMBER'
        type: xmlEntity
      item_type: struct
      name: _xmlParserInput
      pos:
        line_end: 155
        line_start: 100
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: '* node'
        type: struct _xmlNode
      - name: begin_pos
        type: unsigned long
      - name: begin_line
        type: unsigned long
      - name: end_pos
        type: unsigned long
      - name: end_line
        type: unsigned long
      item_type: struct
      name: _xmlParserNodeInfo
      pos:
        line_end: 169
        line_start: 162
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: maximum
        type: unsigned long
      - name: length
        type: unsigned long
      - name: '* buffer'
        type: xmlParserNodeInfo
      item_type: struct
      name: _xmlParserNodeInfoSeq
      pos:
        line_end: 177
        line_start: 173
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: '*sax'
        type: struct _xmlSAXHandler
      - name: '*userData'
        type: void
      - name: '*myDoc'
        type: xmlDoc
      - name: wellFormed
        type: int
      - name: replaceEntities
        type: int
      - name: '*version'
        type: xmlChar
      - name: '*encoding'
        type: xmlChar
      - name: standalone
        type: int
      - name: html
        type: int
      - name: '*input'
        type: xmlParserInput
      - name: inputNr
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '**inputTab'
        type: xmlParserInput
      - name: '*node'
        type: xmlNode
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '**nodeTab XML_DEPRECATED_MEMBER'
        type: xmlNode
      - name: record_info
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: xmlParserNodeInfoSeq
      - name: errNo
        type: int
      - name: hasExternalSubset
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: valid
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: vctxt
        type: xmlValidCtxt
      - name: XML_DEPRECATED_MEMBER
        type: xmlParserInputState
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*directory'
        type: char
      - name: '*name XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '**nameTab XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: long nbChars
      - name: XML_DEPRECATED_MEMBER
        type: long checkIndex
      - name: keepBlanks
        type: int
      - name: disableSAX
        type: int
      - name: inSubset
        type: int
      - name: '*intSubName'
        type: xmlChar
      - name: '*extSubURI'
        type: xmlChar
      - name: '*extSubSystem'
        type: xmlChar
      - name: '*space XML_DEPRECATED_MEMBER'
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*spaceTab XML_DEPRECATED_MEMBER'
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*entity XML_DEPRECATED_MEMBER'
        type: xmlParserInput
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*_private'
        type: void
      - name: loadsubset
        type: int
      - name: linenumbers
        type: int
      - name: '*catalogs XML_DEPRECATED_MEMBER'
        type: void
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: progressive
        type: int
      - name: '*dict'
        type: xmlDict
      - name: '**atts XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*str_xml XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*str_xmlns XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*str_xml_ns'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '**nsTab XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*attallocs XML_DEPRECATED_MEMBER'
        type: unsigned
      - name: '*pushTab XML_DEPRECATED_MEMBER'
        type: xmlStartTag
      - name: '*attsDefault'
        type: xmlHashTable
      - name: '*attsSpecial'
        type: xmlHashTable
      - name: nsWellFormed
        type: int
      - name: options
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: freeElemsNr
        type: int
      - name: '*freeElems XML_DEPRECATED_MEMBER'
        type: xmlNode
      - name: freeAttrsNr
        type: int
      - name: '*freeAttrs XML_DEPRECATED_MEMBER'
        type: xmlAttr
      - name: XML_DEPRECATED_MEMBER
        type: xmlError
      - name: XML_DEPRECATED_MEMBER
        type: xmlParserMode
      - name: XML_DEPRECATED_MEMBER
        type: unsigned long nbentities
      - name: XML_DEPRECATED_MEMBER
        type: unsigned long sizeentities
      - name: '*nodeInfo XML_DEPRECATED_MEMBER'
        type: xmlParserNodeInfo
      - name: nodeInfoNr
        type: int
      - name: nodeInfoMax
        type: int
      - name: '*nodeInfoTab'
        type: xmlParserNodeInfo
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: unsigned long sizeentcopy
      - name: endCheckState
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: unsigned short nbErrors
      - name: XML_DEPRECATED_MEMBER
        type: unsigned short nbWarnings
      - name: XML_DEPRECATED_MEMBER
        type: unsigned maxAmpl
      - name: '*nsdb XML_DEPRECATED_MEMBER'
        type: xmlParserNsData
      - name: XML_DEPRECATED_MEMBER
        type: unsigned attrHashMax
      - name: '*attrHash XML_DEPRECATED_MEMBER'
        type: xmlAttrHashBucket
      - name: errorHandler
        type: xmlStructuredErrorFunc
      - name: '*errorCtxt XML_DEPRECATED_MEMBER'
        type: void
      - name: resourceLoader
        type: xmlResourceLoader
      - name: '*resourceCtxt'
        type: void
      - name: XML_DEPRECATED_MEMBER
        type: xmlCharEncConvImpl
      - name: '*convCtxt XML_DEPRECATED_MEMBER'
        type: void
      item_type: struct
      name: _xmlParserCtxt
      pos:
        line_end: 643
        line_start: 256
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: '*(*getPublicId)(void *ctx)'
        type: xmlChar
      - name: '*(*getSystemId)(void *ctx)'
        type: xmlChar
      - name: (*getLineNumber)(void *ctx)
        type: int
      - name: (*getColumnNumber)(void *ctx)
        type: int
      item_type: struct
      name: _xmlSAXLocator
      pos:
        line_end: 653
        line_start: 648
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: internalSubset
        type: internalSubsetSAXFunc
      - name: isStandalone
        type: isStandaloneSAXFunc
      - name: hasInternalSubset
        type: hasInternalSubsetSAXFunc
      - name: hasExternalSubset
        type: hasExternalSubsetSAXFunc
      - name: resolveEntity
        type: resolveEntitySAXFunc
      - name: getEntity
        type: getEntitySAXFunc
      - name: entityDecl
        type: entityDeclSAXFunc
      - name: notationDecl
        type: notationDeclSAXFunc
      - name: attributeDecl
        type: attributeDeclSAXFunc
      - name: elementDecl
        type: elementDeclSAXFunc
      - name: unparsedEntityDecl
        type: unparsedEntityDeclSAXFunc
      - name: setDocumentLocator
        type: setDocumentLocatorSAXFunc
      - name: startDocument
        type: startDocumentSAXFunc
      - name: endDocument
        type: endDocumentSAXFunc
      - name: startElement
        type: startElementSAXFunc
      - name: endElement
        type: endElementSAXFunc
      - name: reference
        type: referenceSAXFunc
      - name: characters
        type: charactersSAXFunc
      - name: ignorableWhitespace
        type: ignorableWhitespaceSAXFunc
      - name: processingInstruction
        type: processingInstructionSAXFunc
      - name: comment
        type: commentSAXFunc
      - name: warning
        type: warningSAXFunc
      - name: error
        type: errorSAXFunc
      - name: fatalError
        type: fatalErrorSAXFunc
      - name: getParameterEntity
        type: getParameterEntitySAXFunc
      - name: cdataBlock
        type: cdataBlockSAXFunc
      - name: externalSubset
        type: externalSubsetSAXFunc
      - name: initialized
        type: unsigned int
      - name: '*_private'
        type: void
      - name: startElementNs
        type: startElementNsSAX2Func
      - name: endElementNs
        type: endElementNsSAX2Func
      - name: serror
        type: xmlStructuredErrorFunc
      item_type: struct
      name: _xmlSAXHandler
      pos:
        line_end: 1189
        line_start: 1006
        source_file: /src/libxml2/include/libxml/parser.h
    - fields:
      - name: internalSubset
        type: internalSubsetSAXFunc
      - name: isStandalone
        type: isStandaloneSAXFunc
      - name: hasInternalSubset
        type: hasInternalSubsetSAXFunc
      - name: hasExternalSubset
        type: hasExternalSubsetSAXFunc
      - name: resolveEntity
        type: resolveEntitySAXFunc
      - name: getEntity
        type: getEntitySAXFunc
      - name: entityDecl
        type: entityDeclSAXFunc
      - name: notationDecl
        type: notationDeclSAXFunc
      - name: attributeDecl
        type: attributeDeclSAXFunc
      - name: elementDecl
        type: elementDeclSAXFunc
      - name: unparsedEntityDecl
        type: unparsedEntityDeclSAXFunc
      - name: setDocumentLocator
        type: setDocumentLocatorSAXFunc
      - name: startDocument
        type: startDocumentSAXFunc
      - name: endDocument
        type: endDocumentSAXFunc
      - name: startElement
        type: startElementSAXFunc
      - name: endElement
        type: endElementSAXFunc
      - name: reference
        type: referenceSAXFunc
      - name: characters
        type: charactersSAXFunc
      - name: ignorableWhitespace
        type: ignorableWhitespaceSAXFunc
      - name: processingInstruction
        type: processingInstructionSAXFunc
      - name: comment
        type: commentSAXFunc
      - name: warning
        type: warningSAXFunc
      - name: error
        type: errorSAXFunc
      - name: fatalError
        type: fatalErrorSAXFunc
      - name: getParameterEntity
        type: getParameterEntitySAXFunc
      - name: cdataBlock
        type: cdataBlockSAXFunc
      - name: externalSubset
        type: externalSubsetSAXFunc
      - name: initialized
        type: unsigned int
      item_type: struct
      name: _xmlSAXHandlerV1
      pos:
        line_end: 1232
        line_start: 1203
        source_file: /src/libxml2/include/libxml/parser.h
    typedefs:
    - item_type: typedef
      name: (* xmlParserInputDeallocate)(xmlChar *str)
      pos:
        line_end: 95
        line_start: 95
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: xmlParserNodeInfo
      pos:
        line_end: 159
        line_start: 159
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlParserNodeInfo
    - item_type: typedef
      name: '*xmlParserNodeInfoPtr'
      pos:
        line_end: 160
        line_start: 160
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlParserNodeInfo
    - item_type: typedef
      name: xmlParserNodeInfoSeq
      pos:
        line_end: 171
        line_start: 171
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlParserNodeInfoSeq
    - item_type: typedef
      name: '*xmlParserNodeInfoSeqPtr'
      pos:
        line_end: 172
        line_start: 172
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlParserNodeInfoSeq
    - item_type: typedef
      name: xmlStartTag
      pos:
        line_end: 223
        line_start: 223
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlStartTag
    - item_type: typedef
      name: xmlParserNsData
      pos:
        line_end: 224
        line_start: 224
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlParserNsData
    - item_type: typedef
      name: xmlAttrHashBucket
      pos:
        line_end: 225
        line_start: 225
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlAttrHashBucket
    - item_type: typedef
      name: "(*xmlResourceLoader)(void *ctxt, const char *url, const char *publicId,\n
        \                    xmlResourceType type, xmlParserInputFlags flags,\n                     xmlParserInput
        **out)"
      pos:
        line_end: 251
        line_start: 248
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlParserErrors
    - item_type: typedef
      name: "*(*resolveEntitySAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *publicId,\n\t\t\t\tconst
        xmlChar *systemId)"
      pos:
        line_end: 668
        line_start: 666
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlParserInput
    - item_type: typedef
      name: "(*internalSubsetSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar *publicId,\n\t\t\t\tconst xmlChar *systemId)"
      pos:
        line_end: 680
        line_start: 677
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*externalSubsetSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar *publicId,\n\t\t\t\tconst xmlChar *systemId)"
      pos:
        line_end: 692
        line_start: 689
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "*(*getEntitySAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name)"
      pos:
        line_end: 701
        line_start: 700
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlEntity
    - item_type: typedef
      name: "*(*getParameterEntitySAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name)"
      pos:
        line_end: 710
        line_start: 709
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlEntity
    - item_type: typedef
      name: "(*entityDeclSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tint
        type,\n\t\t\t\tconst xmlChar *publicId,\n\t\t\t\tconst xmlChar *systemId,\n\t\t\t\txmlChar
        *content)"
      pos:
        line_end: 726
        line_start: 721
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*notationDeclSAXFunc)(void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar *publicId,\n\t\t\t\tconst xmlChar *systemId)"
      pos:
        line_end: 738
        line_start: 735
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*attributeDeclSAXFunc)(void *ctx,\n\t\t\t\tconst xmlChar *elem,\n\t\t\t\tconst
        xmlChar *fullname,\n\t\t\t\tint type,\n\t\t\t\tint def,\n\t\t\t\tconst xmlChar
        *defaultValue,\n\t\t\t\txmlEnumeration *tree)"
      pos:
        line_end: 756
        line_start: 750
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*elementDeclSAXFunc)(void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tint
        type,\n\t\t\t\txmlElementContent *content)"
      pos:
        line_end: 768
        line_start: 765
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*unparsedEntityDeclSAXFunc)(void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar *publicId,\n\t\t\t\tconst xmlChar *systemId,\n\t\t\t\tconst xmlChar
        *notationName)"
      pos:
        line_end: 782
        line_start: 778
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*setDocumentLocatorSAXFunc) (void *ctx,\n\t\t\t\txmlSAXLocator *loc)"
      pos:
        line_end: 794
        line_start: 793
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: (*startDocumentSAXFunc) (void *ctx)
      pos:
        line_end: 800
        line_start: 800
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: (*endDocumentSAXFunc) (void *ctx)
      pos:
        line_end: 806
        line_start: 806
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*startElementSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar **atts)"
      pos:
        line_end: 816
        line_start: 814
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*endElementSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name)"
      pos:
        line_end: 824
        line_start: 823
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*attributeSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name,\n\t\t\t\tconst
        xmlChar *value)"
      pos:
        line_end: 836
        line_start: 834
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*referenceSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *name)"
      pos:
        line_end: 844
        line_start: 843
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*charactersSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *ch,\n\t\t\t\tint
        len)"
      pos:
        line_end: 854
        line_start: 852
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*ignorableWhitespaceSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *ch,\n\t\t\t\tint
        len)"
      pos:
        line_end: 864
        line_start: 862
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*processingInstructionSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *target,\n\t\t\t\tconst
        xmlChar *data)"
      pos:
        line_end: 874
        line_start: 872
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*commentSAXFunc) (void *ctx,\n\t\t\t\tconst xmlChar *value)"
      pos:
        line_end: 882
        line_start: 881
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*cdataBlockSAXFunc) (\n\t                        void *ctx,\n\t\t\t\tconst
        xmlChar *value,\n\t\t\t\tint len)"
      pos:
        line_end: 893
        line_start: 890
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*warningSAXFunc) (void *ctx,\n\t\t\t\tconst char *msg, ...)"
      pos:
        line_end: 902
        line_start: 901
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*errorSAXFunc) (void *ctx,\n\t\t\t\tconst char *msg, ...)"
      pos:
        line_end: 911
        line_start: 910
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*fatalErrorSAXFunc) (void *ctx,\n\t\t\t\tconst char *msg, ...)"
      pos:
        line_end: 920
        line_start: 919
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: (*isStandaloneSAXFunc) (void *ctx)
      pos:
        line_end: 927
        line_start: 927
        source_file: /src/libxml2/include/libxml/parser.h
      type: int
    - item_type: typedef
      name: (*hasInternalSubsetSAXFunc) (void *ctx)
      pos:
        line_end: 934
        line_start: 934
        source_file: /src/libxml2/include/libxml/parser.h
      type: int
    - item_type: typedef
      name: (*hasExternalSubsetSAXFunc) (void *ctx)
      pos:
        line_end: 942
        line_start: 942
        source_file: /src/libxml2/include/libxml/parser.h
      type: int
    - item_type: typedef
      name: "(*startElementNsSAX2Func) (void *ctx,\n\t\t\t\t\tconst xmlChar *localname,\n\t\t\t\t\tconst
        xmlChar *prefix,\n\t\t\t\t\tconst xmlChar *URI,\n\t\t\t\t\tint nb_namespaces,\n\t\t\t\t\tconst
        xmlChar **namespaces,\n\t\t\t\t\tint nb_attributes,\n\t\t\t\t\tint nb_defaulted,\n\t\t\t\t\tconst
        xmlChar **attributes)"
      pos:
        line_end: 981
        line_start: 973
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: "(*endElementNsSAX2Func)   (void *ctx,\n\t\t\t\t\tconst xmlChar *localname,\n\t\t\t\t\tconst
        xmlChar *prefix,\n\t\t\t\t\tconst xmlChar *URI)"
      pos:
        line_end: 997
        line_start: 994
        source_file: /src/libxml2/include/libxml/parser.h
      type: void
    - item_type: typedef
      name: xmlSAXHandlerV1
      pos:
        line_end: 1196
        line_start: 1196
        source_file: /src/libxml2/include/libxml/parser.h
      type: _xmlSAXHandlerV1
    - item_type: typedef
      name: '*xmlSAXHandlerV1Ptr'
      pos:
        line_end: 1197
        line_start: 1197
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlSAXHandlerV1
    - item_type: typedef
      name: "*(*xmlExternalEntityLoader) (const char *URL,\n\t\t\t\t\t const char
        *publicId,\n\t\t\t\t\t xmlParserCtxt *context)"
      pos:
        line_end: 1248
        line_start: 1246
        source_file: /src/libxml2/include/libxml/parser.h
      type: xmlParserInput
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/catalog.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_CATALOGS_NAMESPACE
      pos:
        line_end: 39
        line_start: 37
        source_file: /src/libxml2/include/libxml/catalog.h
      type_or_value: (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog"
    - item_type: preproc_def
      name: XML_CATALOG_PI
      pos:
        line_end: 44
        line_start: 42
        source_file: /src/libxml2/include/libxml/catalog.h
      type_or_value: (const xmlChar *) "oasis-xml-catalog"
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlCatalog
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/libxml2/include/libxml/catalog.h
      type: _xmlCatalog
    - item_type: typedef
      name: '*xmlCatalogPtr'
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/libxml2/include/libxml/catalog.h
      type: xmlCatalog
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/threads.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlMutex
      pos:
        line_end: 23
        line_start: 23
        source_file: /src/libxml2/include/libxml/threads.h
      type: _xmlMutex
    - item_type: typedef
      name: '*xmlMutexPtr'
      pos:
        line_end: 24
        line_start: 24
        source_file: /src/libxml2/include/libxml/threads.h
      type: xmlMutex
    - item_type: typedef
      name: xmlRMutex
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxml2/include/libxml/threads.h
      type: _xmlRMutex
    - item_type: typedef
      name: '*xmlRMutexPtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/threads.h
      type: xmlRMutex
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/nanoftp.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlmemory.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlMalloc
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type_or_value: (*__xmlMalloc())
    - item_type: preproc_def
      name: xmlMallocAtomic
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type_or_value: (*__xmlMallocAtomic())
    - item_type: preproc_def
      name: xmlRealloc
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type_or_value: (*__xmlRealloc())
    - item_type: preproc_def
      name: xmlFree
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type_or_value: (*__xmlFree())
    - item_type: preproc_def
      name: xmlMemStrdup
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type_or_value: (*__xmlMemStrdup())
    structs: []
    typedefs:
    - item_type: typedef
      name: (*xmlFreeFunc)(void *mem)
      pos:
        line_end: 32
        line_start: 32
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type: void
    - item_type: typedef
      name: '*(*xmlMallocFunc)(size_t size)'
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type: void
    - item_type: typedef
      name: '*(*xmlReallocFunc)(void *mem, size_t size)'
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type: void
    - item_type: typedef
      name: '*(*xmlStrdupFunc)(const char *str)'
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/include/libxml/xmlmemory.h
      type: char
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/SAX.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IS_BYTE_CHAR
  - IS_CHAR
  - IS_CHAR_CH
  - IS_BLANK
  - IS_BLANK_CH
  - IS_BASECHAR
  - IS_DIGIT
  - IS_DIGIT_CH
  - IS_COMBINING
  - IS_COMBINING_CH
  - IS_EXTENDER
  - IS_EXTENDER_CH
  - IS_IDEOGRAPHIC
  - IS_LETTER
  - IS_LETTER_CH
  - IS_ASCII_LETTER
  - IS_ASCII_DIGIT
  - IS_PUBIDCHAR
  - IS_PUBIDCHAR_CH
  source_file: /src/libxml2/include/libxml/parserInternals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: inputPush
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: xmlCtxtPushInput
    - item_type: preproc_def
      name: inputPop
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: xmlCtxtPopInput
    - item_type: preproc_def
      name: xmlParserMaxDepth
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '256'
    - item_type: preproc_def
      name: XML_MAX_TEXT_LENGTH
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '10000000'
    - item_type: preproc_def
      name: XML_MAX_HUGE_LENGTH
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '1000000000'
    - item_type: preproc_def
      name: XML_MAX_NAME_LENGTH
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '50000'
    - item_type: preproc_def
      name: XML_MAX_DICTIONARY_LIMIT
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '100000000'
    - item_type: preproc_def
      name: XML_MAX_LOOKUP_LIMIT
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '10000000'
    - item_type: preproc_def
      name: XML_MAX_NAMELEN
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '100'
    - item_type: preproc_def
      name: XML_SUBSTITUTE_NONE
      pos:
        line_end: 486
        line_start: 485
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SUBSTITUTE_REF
      pos:
        line_end: 487
        line_start: 486
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SUBSTITUTE_PEREF
      pos:
        line_end: 488
        line_start: 487
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SUBSTITUTE_BOTH
      pos:
        line_end: 489
        line_start: 488
        source_file: /src/libxml2/include/libxml/parserInternals.h
      type_or_value: '3'
    structs: []
    typedefs: []
    union: []
- function_names:
  - htmlDefaultSubelement
  - htmlElementAllowedHereDesc
  - htmlRequiredAttrs
  source_file: /src/libxml2/include/libxml/HTMLparser.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UTF8ToHtml
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type_or_value: htmlUTF8ToHtml
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: startTag
        type: char
      - name: endTag
        type: char
      - name: saveEndTag
        type: char
      - name: empty
        type: char
      - name: depr
        type: char
      - name: dtd
        type: char
      - name: isinline
        type: char
      - name: '*desc'
        type: char
      - name: '** subelts XML_DEPRECATED_MEMBER'
        type: char
      - name: '* defaultsubelt'
        type: char
      - name: '** attrs_opt XML_DEPRECATED_MEMBER'
        type: char
      - name: '** attrs_depr XML_DEPRECATED_MEMBER'
        type: char
      - name: '** attrs_req XML_DEPRECATED_MEMBER'
        type: char
      - name: dataMode
        type: int
      item_type: struct
      name: _htmlElemDesc
      pos:
        line_end: 80
        line_start: 62
        source_file: /src/libxml2/include/libxml/HTMLparser.h
    - fields:
      - name: value
        type: unsigned int
      - name: '*name'
        type: char
      - name: '*desc'
        type: char
      item_type: struct
      name: _htmlEntityDesc
      pos:
        line_end: 91
        line_start: 87
        source_file: /src/libxml2/include/libxml/HTMLparser.h
    typedefs:
    - item_type: typedef
      name: htmlParserCtxt
      pos:
        line_end: 42
        line_start: 42
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlParserCtxt
    - item_type: typedef
      name: htmlParserCtxtPtr
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlParserCtxtPtr
    - item_type: typedef
      name: htmlParserNodeInfo
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlParserNodeInfo
    - item_type: typedef
      name: htmlSAXHandler
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlSAXHandler
    - item_type: typedef
      name: htmlSAXHandlerPtr
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlSAXHandlerPtr
    - item_type: typedef
      name: htmlParserInput
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlParserInput
    - item_type: typedef
      name: htmlParserInputPtr
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlParserInputPtr
    - item_type: typedef
      name: htmlDocPtr
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlDocPtr
    - item_type: typedef
      name: htmlNodePtr
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: xmlNodePtr
    - item_type: typedef
      name: htmlElemDesc
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: _htmlElemDesc
    - item_type: typedef
      name: '*htmlElemDescPtr'
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: htmlElemDesc
    - item_type: typedef
      name: htmlEntityDesc
      pos:
        line_end: 85
        line_start: 85
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: _htmlEntityDesc
    - item_type: typedef
      name: '*htmlEntityDescPtr'
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/libxml2/include/libxml/HTMLparser.h
      type: htmlEntityDesc
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/SAX2.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlIsBaseChar_ch
  - xmlIsBaseCharQ
  - xmlIsBlank_ch
  - xmlIsBlankQ
  - xmlIsChar_ch
  - xmlIsCharQ
  - xmlIsCombiningQ
  - xmlIsDigit_ch
  - xmlIsDigitQ
  - xmlIsExtender_ch
  - xmlIsExtenderQ
  - xmlIsIdeographicQ
  - xmlIsPubidChar_ch
  - xmlIsPubidCharQ
  source_file: /src/libxml2/include/libxml/chvalid.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: low
        type: unsigned short
      - name: high
        type: unsigned short
      item_type: struct
      name: _xmlChSRange
      pos:
        line_end: 30
        line_start: 27
        source_file: /src/libxml2/include/libxml/chvalid.h
    - fields:
      - name: low
        type: unsigned int
      - name: high
        type: unsigned int
      item_type: struct
      name: _xmlChLRange
      pos:
        line_end: 37
        line_start: 34
        source_file: /src/libxml2/include/libxml/chvalid.h
    - fields:
      - name: nbShortRange
        type: int
      - name: nbLongRange
        type: int
      - name: '*shortRange'
        type: xmlChSRange
      - name: '*longRange'
        type: xmlChLRange
      item_type: struct
      name: _xmlChRangeGroup
      pos:
        line_end: 46
        line_start: 41
        source_file: /src/libxml2/include/libxml/chvalid.h
    typedefs:
    - item_type: typedef
      name: xmlChSRange
      pos:
        line_end: 25
        line_start: 25
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: _xmlChSRange
    - item_type: typedef
      name: '*xmlChSRangePtr'
      pos:
        line_end: 26
        line_start: 26
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: xmlChSRange
    - item_type: typedef
      name: xmlChLRange
      pos:
        line_end: 32
        line_start: 32
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: _xmlChLRange
    - item_type: typedef
      name: '*xmlChLRangePtr'
      pos:
        line_end: 33
        line_start: 33
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: xmlChLRange
    - item_type: typedef
      name: xmlChRangeGroup
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: _xmlChRangeGroup
    - item_type: typedef
      name: '*xmlChRangeGroupPtr'
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/libxml2/include/libxml/chvalid.h
      type: xmlChRangeGroup
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlwriter.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlTextWriterWriteProcessingInstruction
      pos:
        line_end: 277
        line_start: 276
        source_file: /src/libxml2/include/libxml/xmlwriter.h
      type_or_value: xmlTextWriterWritePI
    - item_type: preproc_def
      name: xmlTextWriterWriteDocType
      pos:
        line_end: 337
        line_start: 336
        source_file: /src/libxml2/include/libxml/xmlwriter.h
      type_or_value: xmlTextWriterWriteDTD
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlTextWriter
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxml2/include/libxml/xmlwriter.h
      type: _xmlTextWriter
    - item_type: typedef
      name: '*xmlTextWriterPtr'
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/libxml2/include/libxml/xmlwriter.h
      type: xmlTextWriter
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/nanohttp.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/pattern.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlPattern
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxml2/include/libxml/pattern.h
      type: _xmlPattern
    - item_type: typedef
      name: '*xmlPatternPtr'
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/libxml2/include/libxml/pattern.h
      type: xmlPattern
    - item_type: typedef
      name: xmlStreamCtxt
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/libxml2/include/libxml/pattern.h
      type: _xmlStreamCtxt
    - item_type: typedef
      name: '*xmlStreamCtxtPtr'
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/libxml2/include/libxml/pattern.h
      type: xmlStreamCtxt
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/uri.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*scheme'
        type: char
      - name: '*opaque'
        type: char
      - name: '*authority'
        type: char
      - name: '*server'
        type: char
      - name: '*user'
        type: char
      - name: port
        type: int
      - name: '*path'
        type: char
      - name: '*query'
        type: char
      - name: '*fragment'
        type: char
      - name: cleanup
        type: int
      - name: '*query_raw'
        type: char
      item_type: struct
      name: _xmlURI
      pos:
        line_end: 49
        line_start: 37
        source_file: /src/libxml2/include/libxml/uri.h
    typedefs:
    - item_type: typedef
      name: xmlURI
      pos:
        line_end: 25
        line_start: 25
        source_file: /src/libxml2/include/libxml/uri.h
      type: _xmlURI
    - item_type: typedef
      name: '*xmlURIPtr'
      pos:
        line_end: 26
        line_start: 26
        source_file: /src/libxml2/include/libxml/uri.h
      type: xmlURI
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlstring.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BAD_CAST
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/include/libxml/xmlstring.h
      type_or_value: (xmlChar *)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlChar
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/xmlstring.h
      type: unsigned char
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/schematron.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSchematron
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/libxml2/include/libxml/schematron.h
      type: _xmlSchematron
    - item_type: typedef
      name: '*xmlSchematronPtr'
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/libxml2/include/libxml/schematron.h
      type: xmlSchematron
    - item_type: typedef
      name: (*xmlSchematronValidityErrorFunc) (void *ctx, const char *msg, ...)
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/libxml2/include/libxml/schematron.h
      type: void
    - item_type: typedef
      name: (*xmlSchematronValidityWarningFunc) (void *ctx, const char *msg, ...)
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/libxml2/include/libxml/schematron.h
      type: void
    - item_type: typedef
      name: xmlSchematronParserCtxt
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxml2/include/libxml/schematron.h
      type: _xmlSchematronParserCtxt
    - item_type: typedef
      name: '*xmlSchematronParserCtxtPtr'
      pos:
        line_end: 71
        line_start: 71
        source_file: /src/libxml2/include/libxml/schematron.h
      type: xmlSchematronParserCtxt
    - item_type: typedef
      name: xmlSchematronValidCtxt
      pos:
        line_end: 74
        line_start: 74
        source_file: /src/libxml2/include/libxml/schematron.h
      type: _xmlSchematronValidCtxt
    - item_type: typedef
      name: '*xmlSchematronValidCtxtPtr'
      pos:
        line_end: 75
        line_start: 75
        source_file: /src/libxml2/include/libxml/schematron.h
      type: xmlSchematronValidCtxt
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlmodule.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlModule
      pos:
        line_end: 27
        line_start: 27
        source_file: /src/libxml2/include/libxml/xmlmodule.h
      type: _xmlModule
    - item_type: typedef
      name: '*xmlModulePtr'
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/xmlmodule.h
      type: xmlModule
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/relaxng.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlRelaxNG
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: _xmlRelaxNG
    - item_type: typedef
      name: '*xmlRelaxNGPtr'
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: xmlRelaxNG
    - item_type: typedef
      name: "(*xmlRelaxNGValidityErrorFunc) (void *ctx,\n\t\t\t\t\t\t      const char
        *msg,\n\t\t\t\t\t\t      ...)"
      pos:
        line_end: 41
        line_start: 39
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: void
    - item_type: typedef
      name: "(*xmlRelaxNGValidityWarningFunc) (void *ctx,\n\t\t\t\t\t\t\tconst char
        *msg,\n\t\t\t\t\t\t\t...)"
      pos:
        line_end: 52
        line_start: 50
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: void
    - item_type: typedef
      name: xmlRelaxNGParserCtxt
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: _xmlRelaxNGParserCtxt
    - item_type: typedef
      name: '*xmlRelaxNGParserCtxtPtr'
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: xmlRelaxNGParserCtxt
    - item_type: typedef
      name: xmlRelaxNGValidCtxt
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: _xmlRelaxNGValidCtxt
    - item_type: typedef
      name: '*xmlRelaxNGValidCtxtPtr'
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxml2/include/libxml/relaxng.h
      type: xmlRelaxNGValidCtxt
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xinclude.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XINCLUDE_NS
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "http://www.w3.org/2003/XInclude"
    - item_type: preproc_def
      name: XINCLUDE_OLD_NS
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "http://www.w3.org/2001/XInclude"
    - item_type: preproc_def
      name: XINCLUDE_NODE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "include"
    - item_type: preproc_def
      name: XINCLUDE_FALLBACK
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "fallback"
    - item_type: preproc_def
      name: XINCLUDE_HREF
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "href"
    - item_type: preproc_def
      name: XINCLUDE_PARSE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "parse"
    - item_type: preproc_def
      name: XINCLUDE_PARSE_XML
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "xml"
    - item_type: preproc_def
      name: XINCLUDE_PARSE_TEXT
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "text"
    - item_type: preproc_def
      name: XINCLUDE_PARSE_ENCODING
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "encoding"
    - item_type: preproc_def
      name: XINCLUDE_PARSE_XPOINTER
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/libxml2/include/libxml/xinclude.h
      type_or_value: (const xmlChar *) "xpointer"
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlXIncludeCtxt
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/libxml2/include/libxml/xinclude.h
      type: _xmlXIncludeCtxt
    - item_type: typedef
      name: '*xmlXIncludeCtxtPtr'
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxml2/include/libxml/xinclude.h
      type: xmlXIncludeCtxt
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/valid.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*userData'
        type: void
      - name: error
        type: xmlValidityErrorFunc
      - name: warning
        type: xmlValidityWarningFunc
      - name: '*node'
        type: xmlNode
      - name: nodeNr
        type: int
      - name: nodeMax
        type: int
      - name: '**nodeTab'
        type: xmlNode
      - name: flags
        type: unsigned int
      - name: '*doc'
        type: xmlDoc
      - name: valid
        type: int
      - name: '*vstate'
        type: xmlValidState
      - name: vstateNr
        type: int
      - name: vstateMax
        type: int
      - name: '*vstateTab'
        type: xmlValidState
      item_type: struct
      name: _xmlValidCtxt
      pos:
        line_end: 91
        line_start: 63
        source_file: /src/libxml2/include/libxml/valid.h
    typedefs:
    - item_type: typedef
      name: xmlValidState
      pos:
        line_end: 33
        line_start: 33
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlValidState
    - item_type: typedef
      name: '*xmlValidStatePtr'
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlValidState
    - item_type: typedef
      name: "(*xmlValidityErrorFunc) (void *ctx,\n\t\t\t     const char *msg,\n\t\t\t
        \    ...)"
      pos:
        line_end: 45
        line_start: 43
        source_file: /src/libxml2/include/libxml/valid.h
      type: void
    - item_type: typedef
      name: "(*xmlValidityWarningFunc) (void *ctx,\n\t\t\t       const char *msg,\n\t\t\t
        \      ...)"
      pos:
        line_end: 56
        line_start: 54
        source_file: /src/libxml2/include/libxml/valid.h
      type: void
    - item_type: typedef
      name: xmlValidCtxt
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlValidCtxt
    - item_type: typedef
      name: '*xmlValidCtxtPtr'
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlValidCtxt
    - item_type: typedef
      name: xmlNotationTable
      pos:
        line_end: 93
        line_start: 93
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlNotationTablePtr'
      pos:
        line_end: 94
        line_start: 94
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlNotationTable
    - item_type: typedef
      name: xmlElementTable
      pos:
        line_end: 96
        line_start: 96
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlElementTablePtr'
      pos:
        line_end: 97
        line_start: 97
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlElementTable
    - item_type: typedef
      name: xmlAttributeTable
      pos:
        line_end: 99
        line_start: 99
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlAttributeTablePtr'
      pos:
        line_end: 100
        line_start: 100
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlAttributeTable
    - item_type: typedef
      name: xmlIDTable
      pos:
        line_end: 102
        line_start: 102
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlIDTablePtr'
      pos:
        line_end: 103
        line_start: 103
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlIDTable
    - item_type: typedef
      name: xmlRefTable
      pos:
        line_end: 105
        line_start: 105
        source_file: /src/libxml2/include/libxml/valid.h
      type: _xmlHashTable
    - item_type: typedef
      name: '*xmlRefTablePtr'
      pos:
        line_end: 106
        line_start: 106
        source_file: /src/libxml2/include/libxml/valid.h
      type: xmlRefTable
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlautomata.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlAutomata
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/libxml2/include/libxml/xmlautomata.h
      type: _xmlAutomata
    - item_type: typedef
      name: '*xmlAutomataPtr'
      pos:
        line_end: 31
        line_start: 31
        source_file: /src/libxml2/include/libxml/xmlautomata.h
      type: xmlAutomata
    - item_type: typedef
      name: xmlAutomataState
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/libxml2/include/libxml/xmlautomata.h
      type: _xmlAutomataState
    - item_type: typedef
      name: '*xmlAutomataStatePtr'
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/libxml2/include/libxml/xmlautomata.h
      type: xmlAutomataState
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/c14n.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: "(*xmlC14NIsVisibleCallback)\t(void* user_data,\n\t\t\t\t\t xmlNode *node,\n\t\t\t\t\t
        xmlNode *parent)"
      pos:
        line_end: 98
        line_start: 96
        source_file: /src/libxml2/include/libxml/c14n.h
      type: int
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/schemasInternals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_SCHEMAS_ANYATTR_SKIP
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMAS_ANYATTR_LAX
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMAS_ANYATTR_STRICT
      pos:
        line_end: 183
        line_start: 182
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMAS_ANY_SKIP
      pos:
        line_end: 187
        line_start: 186
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMAS_ANY_LAX
      pos:
        line_end: 192
        line_start: 191
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMAS_ANY_STRICT
      pos:
        line_end: 197
        line_start: 196
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_USE_PROHIBITED
      pos:
        line_end: 202
        line_start: 201
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_USE_REQUIRED
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_USE_OPTIONAL
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_GLOBAL
      pos:
        line_end: 214
        line_start: 213
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_NSDEFAULT
      pos:
        line_end: 218
        line_start: 217
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 7
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_INTERNAL_RESOLVED
      pos:
        line_end: 223
        line_start: 222
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 8
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTR_FIXED
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 9
    - item_type: preproc_def
      name: XML_SCHEMAS_WILDCARD_COMPLETE
      pos:
        line_end: 273
        line_start: 272
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTRGROUP_WILDCARD_BUILDED
      pos:
        line_end: 309
        line_start: 308
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTRGROUP_GLOBAL
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 1
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTRGROUP_MARKED
      pos:
        line_end: 317
        line_start: 316
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 2
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTRGROUP_REDEFINED
      pos:
        line_end: 322
        line_start: 321
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 3
    - item_type: preproc_def
      name: XML_SCHEMAS_ATTRGROUP_HAS_REFS
      pos:
        line_end: 326
        line_start: 325
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 4
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_MIXED
      pos:
        line_end: 382
        line_start: 381
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_DERIVATION_METHOD_EXTENSION
      pos:
        line_end: 386
        line_start: 385
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 1
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_DERIVATION_METHOD_RESTRICTION
      pos:
        line_end: 390
        line_start: 389
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 2
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_GLOBAL
      pos:
        line_end: 394
        line_start: 393
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 3
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_OWNED_ATTR_WILDCARD
      pos:
        line_end: 399
        line_start: 398
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '1 << 4 '
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_VARIETY_ABSENT
      pos:
        line_end: 406
        line_start: 405
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 5
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_VARIETY_LIST
      pos:
        line_end: 410
        line_start: 409
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 6
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_VARIETY_UNION
      pos:
        line_end: 414
        line_start: 413
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 7
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_VARIETY_ATOMIC
      pos:
        line_end: 418
        line_start: 417
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 8
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FINAL_EXTENSION
      pos:
        line_end: 422
        line_start: 421
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 9
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FINAL_RESTRICTION
      pos:
        line_end: 426
        line_start: 425
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 10
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FINAL_LIST
      pos:
        line_end: 430
        line_start: 429
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 11
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FINAL_UNION
      pos:
        line_end: 434
        line_start: 433
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 12
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FINAL_DEFAULT
      pos:
        line_end: 438
        line_start: 437
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 13
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE
      pos:
        line_end: 442
        line_start: 441
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 14
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_MARKED
      pos:
        line_end: 446
        line_start: 445
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 16
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_BLOCK_DEFAULT
      pos:
        line_end: 451
        line_start: 450
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 17
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_BLOCK_EXTENSION
      pos:
        line_end: 455
        line_start: 454
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 18
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_BLOCK_RESTRICTION
      pos:
        line_end: 459
        line_start: 458
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 19
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_ABSTRACT
      pos:
        line_end: 463
        line_start: 462
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 20
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FACETSNEEDVALUE
      pos:
        line_end: 467
        line_start: 466
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 21
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_INTERNAL_RESOLVED
      pos:
        line_end: 471
        line_start: 470
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 22
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_INTERNAL_INVALID
      pos:
        line_end: 475
        line_start: 474
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 23
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE
      pos:
        line_end: 479
        line_start: 478
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 24
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_WHITESPACE_REPLACE
      pos:
        line_end: 483
        line_start: 482
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 25
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE
      pos:
        line_end: 487
        line_start: 486
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 26
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_HAS_FACETS
      pos:
        line_end: 491
        line_start: 490
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 27
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_NORMVALUENEEDED
      pos:
        line_end: 495
        line_start: 494
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 28
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_FIXUP_1
      pos:
        line_end: 500
        line_start: 499
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 29
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_REDEFINED
      pos:
        line_end: 505
        line_start: 504
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 30
    - item_type: preproc_def
      name: XML_SCHEMAS_TYPE_REDEFINING
      pos:
        line_end: 510
        line_start: 509
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 31
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_NILLABLE
      pos:
        line_end: 554
        line_start: 553
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_GLOBAL
      pos:
        line_end: 558
        line_start: 557
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 1
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_DEFAULT
      pos:
        line_end: 562
        line_start: 561
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 2
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_FIXED
      pos:
        line_end: 566
        line_start: 565
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 3
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_ABSTRACT
      pos:
        line_end: 570
        line_start: 569
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 4
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_TOPLEVEL
      pos:
        line_end: 575
        line_start: 574
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 5
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_REF
      pos:
        line_end: 579
        line_start: 578
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 6
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_NSDEFAULT
      pos:
        line_end: 584
        line_start: 583
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 7
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_INTERNAL_RESOLVED
      pos:
        line_end: 589
        line_start: 588
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 8
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_CIRCULAR
      pos:
        line_end: 593
        line_start: 592
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 9
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_BLOCK_ABSENT
      pos:
        line_end: 597
        line_start: 596
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 10
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_BLOCK_EXTENSION
      pos:
        line_end: 601
        line_start: 600
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 11
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_BLOCK_RESTRICTION
      pos:
        line_end: 605
        line_start: 604
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 12
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION
      pos:
        line_end: 609
        line_start: 608
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 13
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_FINAL_ABSENT
      pos:
        line_end: 613
        line_start: 612
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 14
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_FINAL_EXTENSION
      pos:
        line_end: 617
        line_start: 616
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 15
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_FINAL_RESTRICTION
      pos:
        line_end: 621
        line_start: 620
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 16
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD
      pos:
        line_end: 625
        line_start: 624
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 17
    - item_type: preproc_def
      name: XML_SCHEMAS_ELEM_INTERNAL_CHECKED
      pos:
        line_end: 630
        line_start: 629
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 18
    - item_type: preproc_def
      name: XML_SCHEMAS_FACET_UNKNOWN
      pos:
        line_end: 675
        line_start: 674
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XML_SCHEMAS_FACET_PRESERVE
      pos:
        line_end: 679
        line_start: 678
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XML_SCHEMAS_FACET_REPLACE
      pos:
        line_end: 683
        line_start: 682
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XML_SCHEMAS_FACET_COLLAPSE
      pos:
        line_end: 687
        line_start: 686
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: '3'
    - item_type: preproc_def
      name: XML_SCHEMAS_QUALIF_ELEM
      pos:
        line_end: 728
        line_start: 727
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 0
    - item_type: preproc_def
      name: XML_SCHEMAS_QUALIF_ATTR
      pos:
        line_end: 733
        line_start: 732
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 1
    - item_type: preproc_def
      name: XML_SCHEMAS_FINAL_DEFAULT_EXTENSION
      pos:
        line_end: 737
        line_start: 736
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 2
    - item_type: preproc_def
      name: XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION
      pos:
        line_end: 741
        line_start: 740
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 3
    - item_type: preproc_def
      name: XML_SCHEMAS_FINAL_DEFAULT_LIST
      pos:
        line_end: 745
        line_start: 744
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 4
    - item_type: preproc_def
      name: XML_SCHEMAS_FINAL_DEFAULT_UNION
      pos:
        line_end: 749
        line_start: 748
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 5
    - item_type: preproc_def
      name: XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION
      pos:
        line_end: 753
        line_start: 752
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 6
    - item_type: preproc_def
      name: XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION
      pos:
        line_end: 757
        line_start: 756
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 7
    - item_type: preproc_def
      name: XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION
      pos:
        line_end: 761
        line_start: 760
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 8
    - item_type: preproc_def
      name: XML_SCHEMAS_INCLUDING_CONVERT_NS
      pos:
        line_end: 766
        line_start: 765
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type_or_value: 1 << 9
    structs:
    - fields:
      - name: '*next'
        type: struct _xmlSchemaAnnot
      - name: '*content'
        type: xmlNode
      item_type: struct
      name: _xmlSchemaAnnot
      pos:
        line_end: 166
        line_start: 163
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*next'
        type: struct _xmlSchemaAttribute
      - name: '*name'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*ref'
        type: xmlChar
      - name: '*refNs'
        type: xmlChar
      - name: '*typeName'
        type: xmlChar
      - name: '*typeNs'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*base'
        type: xmlSchemaType
      - name: occurs
        type: int
      - name: '*defValue'
        type: xmlChar
      - name: '*subtypes'
        type: xmlSchemaType
      - name: '*node'
        type: xmlNode
      - name: '*targetNamespace'
        type: xmlChar
      - name: flags
        type: int
      - name: '*refPrefix'
        type: xmlChar
      - name: '*defVal'
        type: xmlSchemaVal
      - name: '*refDecl'
        type: xmlSchemaAttribute
      item_type: struct
      name: _xmlSchemaAttribute
      pos:
        line_end: 255
        line_start: 234
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: '*next'
        type: struct _xmlSchemaAttributeLink
      - name: '*attr'
        type: struct _xmlSchemaAttribute
      item_type: struct
      name: _xmlSchemaAttributeLink
      pos:
        line_end: 267
        line_start: 264
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: '*next'
        type: struct _xmlSchemaWildcardNs
      - name: '*value'
        type: xmlChar
      item_type: struct
      name: _xmlSchemaWildcardNs
      pos:
        line_end: 283
        line_start: 280
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*id'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*node'
        type: xmlNode
      - name: minOccurs
        type: int
      - name: maxOccurs
        type: int
      - name: processContents
        type: int
      - name: any
        type: int
      - name: '*nsSet'
        type: xmlSchemaWildcardNs
      - name: '*negNsSet'
        type: xmlSchemaWildcardNs
      - name: flags
        type: int
      item_type: struct
      name: _xmlSchemaWildcard
      pos:
        line_end: 303
        line_start: 291
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*next'
        type: struct _xmlSchemaAttribute
      - name: '*name'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*ref'
        type: xmlChar
      - name: '*refNs'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*attributes'
        type: xmlSchemaAttribute
      - name: '*node'
        type: xmlNode
      - name: flags
        type: int
      - name: '*attributeWildcard'
        type: xmlSchemaWildcard
      - name: '*refPrefix'
        type: xmlChar
      - name: '*refItem'
        type: xmlSchemaAttributeGroup
      - name: '*targetNamespace'
        type: xmlChar
      - name: '*attrUses'
        type: void
      item_type: struct
      name: _xmlSchemaAttributeGroup
      pos:
        line_end: 353
        line_start: 336
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: '*next'
        type: struct _xmlSchemaTypeLink
      - name: '*type'
        type: xmlSchemaType
      item_type: struct
      name: _xmlSchemaTypeLink
      pos:
        line_end: 365
        line_start: 362
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: '*next'
        type: struct _xmlSchemaFacetLink
      - name: '*facet'
        type: xmlSchemaFacet
      item_type: struct
      name: _xmlSchemaFacetLink
      pos:
        line_end: 376
        line_start: 373
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*next'
        type: struct _xmlSchemaType
      - name: '*name'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*ref'
        type: xmlChar
      - name: '*refNs'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*subtypes'
        type: xmlSchemaType
      - name: '*attributes'
        type: xmlSchemaAttribute
      - name: '*node'
        type: xmlNode
      - name: minOccurs
        type: int
      - name: maxOccurs
        type: int
      - name: flags
        type: int
      - name: contentType
        type: xmlSchemaContentType
      - name: '*base'
        type: xmlChar
      - name: '*baseNs'
        type: xmlChar
      - name: '*baseType'
        type: xmlSchemaType
      - name: '*facets'
        type: xmlSchemaFacet
      - name: '*redef'
        type: struct _xmlSchemaType
      - name: recurse
        type: int
      - name: '**attributeUses'
        type: xmlSchemaAttributeLink
      - name: '*attributeWildcard'
        type: xmlSchemaWildcard
      - name: builtInType
        type: int
      - name: '*memberTypes'
        type: xmlSchemaTypeLink
      - name: '*facetSet'
        type: xmlSchemaFacetLink
      - name: '*refPrefix'
        type: xmlChar
      - name: '*contentTypeDef'
        type: xmlSchemaType
      - name: '*contModel'
        type: xmlRegexp
      - name: '*targetNamespace'
        type: xmlChar
      - name: '*attrUses'
        type: void
      item_type: struct
      name: _xmlSchemaType
      pos:
        line_end: 548
        line_start: 515
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*next'
        type: struct _xmlSchemaType
      - name: '*name'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*ref'
        type: xmlChar
      - name: '*refNs'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*subtypes'
        type: xmlSchemaType
      - name: '*attributes'
        type: xmlSchemaAttribute
      - name: '*node'
        type: xmlNode
      - name: minOccurs
        type: int
      - name: maxOccurs
        type: int
      - name: flags
        type: int
      - name: '*targetNamespace'
        type: xmlChar
      - name: '*namedType'
        type: xmlChar
      - name: '*namedTypeNs'
        type: xmlChar
      - name: '*substGroup'
        type: xmlChar
      - name: '*substGroupNs'
        type: xmlChar
      - name: '*scope'
        type: xmlChar
      - name: '*value'
        type: xmlChar
      - name: '*refDecl'
        type: struct _xmlSchemaElement
      - name: '*contModel'
        type: xmlRegexp
      - name: contentType
        type: xmlSchemaContentType
      - name: '*refPrefix'
        type: xmlChar
      - name: '*defVal'
        type: xmlSchemaVal
      - name: '*idcs'
        type: void
      item_type: struct
      name: _xmlSchemaElement
      pos:
        line_end: 669
        line_start: 640
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*next'
        type: struct _xmlSchemaFacet
      - name: '*value'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*node'
        type: xmlNode
      - name: fixed
        type: int
      - name: whitespace
        type: int
      - name: '*val'
        type: xmlSchemaVal
      - name: '*regexp'
        type: xmlRegexp
      item_type: struct
      name: _xmlSchemaFacet
      pos:
        line_end: 701
        line_start: 690
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: type
        type: xmlSchemaTypeType
      - name: '*name'
        type: xmlChar
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: '*identifier'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      item_type: struct
      name: _xmlSchemaNotation
      pos:
        line_end: 715
        line_start: 709
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: '*targetNamespace'
        type: xmlChar
      - name: '*version'
        type: xmlChar
      - name: '*id'
        type: xmlChar
      - name: '*doc'
        type: xmlDoc
      - name: '*annot'
        type: xmlSchemaAnnot
      - name: flags
        type: int
      - name: '*typeDecl'
        type: xmlHashTable
      - name: '*attrDecl'
        type: xmlHashTable
      - name: '*attrgrpDecl'
        type: xmlHashTable
      - name: '*elemDecl'
        type: xmlHashTable
      - name: '*notaDecl'
        type: xmlHashTable
      - name: '*schemasImports'
        type: xmlHashTable
      - name: '*_private'
        type: void
      - name: '*groupDecl'
        type: xmlHashTable
      - name: '*dict'
        type: xmlDict
      - name: '*includes'
        type: void
      - name: preserve
        type: int
      - name: counter
        type: int
      - name: '*idcDef'
        type: xmlHashTable
      - name: '*volatiles'
        type: void
      item_type: struct
      name: _xmlSchema
      pos:
        line_end: 794
        line_start: 769
        source_file: /src/libxml2/include/libxml/schemasInternals.h
    typedefs:
    - item_type: typedef
      name: xmlSchemaVal
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaVal
    - item_type: typedef
      name: '*xmlSchemaValPtr'
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaVal
    - item_type: typedef
      name: xmlSchemaType
      pos:
        line_end: 150
        line_start: 150
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaType
    - item_type: typedef
      name: '*xmlSchemaTypePtr'
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaType
    - item_type: typedef
      name: xmlSchemaFacet
      pos:
        line_end: 154
        line_start: 154
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaFacet
    - item_type: typedef
      name: '*xmlSchemaFacetPtr'
      pos:
        line_end: 155
        line_start: 155
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaFacet
    - item_type: typedef
      name: xmlSchemaAnnot
      pos:
        line_end: 158
        line_start: 158
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaAnnot
    - item_type: typedef
      name: '*xmlSchemaAnnotPtr'
      pos:
        line_end: 159
        line_start: 159
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaAnnot
    - item_type: typedef
      name: xmlSchemaAttribute
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaAttribute
    - item_type: typedef
      name: '*xmlSchemaAttributePtr'
      pos:
        line_end: 230
        line_start: 230
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaAttribute
    - item_type: typedef
      name: xmlSchemaAttributeLink
      pos:
        line_end: 258
        line_start: 258
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaAttributeLink
    - item_type: typedef
      name: '*xmlSchemaAttributeLinkPtr'
      pos:
        line_end: 259
        line_start: 259
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaAttributeLink
    - item_type: typedef
      name: xmlSchemaWildcardNs
      pos:
        line_end: 275
        line_start: 275
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaWildcardNs
    - item_type: typedef
      name: '*xmlSchemaWildcardNsPtr'
      pos:
        line_end: 276
        line_start: 276
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaWildcardNs
    - item_type: typedef
      name: xmlSchemaWildcard
      pos:
        line_end: 286
        line_start: 286
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaWildcard
    - item_type: typedef
      name: '*xmlSchemaWildcardPtr'
      pos:
        line_end: 287
        line_start: 287
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaWildcard
    - item_type: typedef
      name: xmlSchemaAttributeGroup
      pos:
        line_end: 328
        line_start: 328
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaAttributeGroup
    - item_type: typedef
      name: '*xmlSchemaAttributeGroupPtr'
      pos:
        line_end: 329
        line_start: 329
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaAttributeGroup
    - item_type: typedef
      name: xmlSchemaTypeLink
      pos:
        line_end: 356
        line_start: 356
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaTypeLink
    - item_type: typedef
      name: '*xmlSchemaTypeLinkPtr'
      pos:
        line_end: 357
        line_start: 357
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaTypeLink
    - item_type: typedef
      name: xmlSchemaFacetLink
      pos:
        line_end: 368
        line_start: 368
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaFacetLink
    - item_type: typedef
      name: '*xmlSchemaFacetLinkPtr'
      pos:
        line_end: 369
        line_start: 369
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaFacetLink
    - item_type: typedef
      name: xmlSchemaElement
      pos:
        line_end: 632
        line_start: 632
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaElement
    - item_type: typedef
      name: '*xmlSchemaElementPtr'
      pos:
        line_end: 633
        line_start: 633
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaElement
    - item_type: typedef
      name: xmlSchemaNotation
      pos:
        line_end: 704
        line_start: 704
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: _xmlSchemaNotation
    - item_type: typedef
      name: '*xmlSchemaNotationPtr'
      pos:
        line_end: 705
        line_start: 705
        source_file: /src/libxml2/include/libxml/schemasInternals.h
      type: xmlSchemaNotation
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/encoding.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UTF8Toisolat1
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/libxml2/include/libxml/encoding.h
      type_or_value: xmlUTF8ToIsolat1
    - item_type: preproc_def
      name: isolat1ToUTF8
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxml2/include/libxml/encoding.h
      type_or_value: xmlIsolat1ToUTF8
    structs:
    - fields:
      - name: '*name XML_DEPRECATED_MEMBER'
        type: char
      - name: XML_DEPRECATED_MEMBER
        type: "union {\n        xmlCharEncConvFunc func;\n        xmlCharEncodingInputFunc
          legacyFunc;\n    }"
      - name: XML_DEPRECATED_MEMBER
        type: "union {\n        xmlCharEncConvFunc func;\n        xmlCharEncodingOutputFunc
          legacyFunc;\n    }"
      - name: '*inputCtxt XML_DEPRECATED_MEMBER'
        type: void
      - name: '*outputCtxt'
        type: void
      - name: XML_DEPRECATED_MEMBER
        type: xmlCharEncConvCtxtDtor
      - name: XML_DEPRECATED_MEMBER
        type: int
      item_type: struct
      name: _xmlCharEncodingHandler
      pos:
        line_end: 212
        line_start: 198
        source_file: /src/libxml2/include/libxml/encoding.h
    typedefs:
    - item_type: typedef
      name: "(*xmlCharEncodingInputFunc)(unsigned char *out, int *outlen,\n                                        const
        unsigned char *in, int *inlen)"
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/libxml2/include/libxml/encoding.h
      type: int
    - item_type: typedef
      name: "(*xmlCharEncodingOutputFunc)(unsigned char *out, int *outlen,\n                                         const
        unsigned char *in, int *inlen)"
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libxml2/include/libxml/encoding.h
      type: int
    - item_type: typedef
      name: "(*xmlCharEncConvFunc)(void *vctxt, unsigned char *out, int *outlen,\n
        \                     const unsigned char *in, int *inlen, int flush)"
      pos:
        line_end: 180
        line_start: 178
        source_file: /src/libxml2/include/libxml/encoding.h
      type: xmlCharEncError
    - item_type: typedef
      name: (*xmlCharEncConvCtxtDtor)(void *vctxt)
      pos:
        line_end: 188
        line_start: 187
        source_file: /src/libxml2/include/libxml/encoding.h
      type: void
    - item_type: typedef
      name: xmlCharEncodingHandler
      pos:
        line_end: 191
        line_start: 191
        source_file: /src/libxml2/include/libxml/encoding.h
      type: _xmlCharEncodingHandler
    - item_type: typedef
      name: '*xmlCharEncodingHandlerPtr'
      pos:
        line_end: 192
        line_start: 192
        source_file: /src/libxml2/include/libxml/encoding.h
      type: xmlCharEncodingHandler
    - item_type: typedef
      name: "(*xmlCharEncConvImpl)(void *vctxt, const char *name, xmlCharEncFlags
        flags,\n                      xmlCharEncodingHandler **out)"
      pos:
        line_end: 229
        line_start: 227
        source_file: /src/libxml2/include/libxml/encoding.h
      type: xmlParserErrors
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlschemastypes.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xlink.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: simple
        type: xlinkSimpleLinkFunk
      - name: extended
        type: xlinkExtendedLinkFunk
      - name: set
        type: xlinkExtendedLinkSetFunk
      item_type: struct
      name: _xlinkHandler
      pos:
        line_end: 158
        line_start: 154
        source_file: /src/libxml2/include/libxml/xlink.h
    typedefs:
    - item_type: typedef
      name: '*xlinkHRef'
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/libxml2/include/libxml/xlink.h
      type: xmlChar
    - item_type: typedef
      name: '*xlinkRole'
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/libxml2/include/libxml/xlink.h
      type: xmlChar
    - item_type: typedef
      name: '*xlinkTitle'
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/libxml2/include/libxml/xlink.h
      type: xmlChar
    - item_type: typedef
      name: (*xlinkNodeDetectFunc) (void *ctx, xmlNode *node)
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxml2/include/libxml/xlink.h
      type: void
    - item_type: typedef
      name: "(*xlinkSimpleLinkFunk)\t(void *ctx,\n\t\t\t xmlNode *node,\n\t\t\t const
        xlinkHRef href,\n\t\t\t const xlinkRole role,\n\t\t\t const xlinkTitle title)"
      pos:
        line_end: 90
        line_start: 85
        source_file: /src/libxml2/include/libxml/xlink.h
      type: void
    - item_type: typedef
      name: "(*xlinkExtendedLinkFunk)(void *ctx,\n\t\t\t xmlNode *node,\n\t\t\t int
        nbLocators,\n\t\t\t const xlinkHRef *hrefs,\n\t\t\t const xlinkRole *roles,\n\t\t\t
        int nbArcs,\n\t\t\t const xlinkRole *from,\n\t\t\t const xlinkRole *to,\n\t\t\t
        xlinkShow *show,\n\t\t\t xlinkActuate *actuate,\n\t\t\t int nbTitles,\n\t\t\t
        const xlinkTitle *titles,\n\t\t\t const xmlChar **langs)"
      pos:
        line_end: 122
        line_start: 109
        source_file: /src/libxml2/include/libxml/xlink.h
      type: void
    - item_type: typedef
      name: "(*xlinkExtendedLinkSetFunk)\t(void *ctx,\n\t\t\t\t xmlNode *node,\n\t\t\t\t
        int nbLocators,\n\t\t\t\t const xlinkHRef *hrefs,\n\t\t\t\t const xlinkRole
        *roles,\n\t\t\t\t int nbTitles,\n\t\t\t\t const xlinkTitle *titles,\n\t\t\t\t
        const xmlChar **langs)"
      pos:
        line_end: 144
        line_start: 136
        source_file: /src/libxml2/include/libxml/xlink.h
      type: void
    - item_type: typedef
      name: xlinkHandler
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/libxml2/include/libxml/xlink.h
      type: _xlinkHandler
    - item_type: typedef
      name: '*xlinkHandlerPtr'
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/libxml2/include/libxml/xlink.h
      type: xlinkHandler
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlsave.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSaveCtxt
      pos:
        line_end: 89
        line_start: 89
        source_file: /src/libxml2/include/libxml/xmlsave.h
      type: _xmlSaveCtxt
    - item_type: typedef
      name: '*xmlSaveCtxtPtr'
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/libxml2/include/libxml/xmlsave.h
      type: xmlSaveCtxt
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlreader.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlTextReader
      pos:
        line_end: 115
        line_start: 115
        source_file: /src/libxml2/include/libxml/xmlreader.h
      type: _xmlTextReader
    - item_type: typedef
      name: '*xmlTextReaderPtr'
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/libxml2/include/libxml/xmlreader.h
      type: xmlTextReader
    - item_type: typedef
      name: '*  xmlTextReaderLocatorPtr'
      pos:
        line_end: 406
        line_start: 406
        source_file: /src/libxml2/include/libxml/xmlreader.h
      type: void
    - item_type: typedef
      name: "(*xmlTextReaderErrorFunc)(void *arg,\n\t\t\t\t\t       const char *msg,\n\t\t\t\t\t
        \      xmlParserSeverities severity,\n\t\t\t\t\t       xmlTextReaderLocatorPtr
        locator)"
      pos:
        line_end: 419
        line_start: 416
        source_file: /src/libxml2/include/libxml/xmlreader.h
      type: void
    union: []
- function_names:
  - XML_GET_CONTENT
  - XML_GET_LINE
  source_file: /src/libxml2/include/libxml/tree.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlBufferAllocScheme
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: XML_BUFFER_ALLOC_EXACT
    - item_type: preproc_def
      name: xmlDefaultBufferSize
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: '4096'
    - item_type: preproc_def
      name: XML_XML_NAMESPACE
      pos:
        line_end: 146
        line_start: 144
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
    - item_type: preproc_def
      name: XML_XML_ID
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: (const xmlChar *) "xml:id"
    - item_type: preproc_def
      name: XML_DOCB_DOCUMENT_NODE
      pos:
        line_end: 285
        line_start: 284
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: '21'
    - item_type: preproc_def
      name: XML_LOCAL_NAMESPACE
      pos:
        line_end: 500
        line_start: 499
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: XML_NAMESPACE_DECL
    - item_type: preproc_def
      name: xmlChildrenNode
      pos:
        line_end: 908
        line_start: 907
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: children
    - item_type: preproc_def
      name: xmlRootNode
      pos:
        line_end: 916
        line_start: 915
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: children
    - item_type: preproc_def
      name: xmlRegisterNodeDefaultValue
      pos:
        line_end: 932
        line_start: 930
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: (*__xmlRegisterNodeDefaultValue())
    - item_type: preproc_def
      name: xmlDeregisterNodeDefaultValue
      pos:
        line_end: 934
        line_start: 932
        source_file: /src/libxml2/include/libxml/tree.h
      type_or_value: (*__xmlDeregisterNodeDefaultValue())
    structs:
    - fields:
      - name: '*content XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: unsigned int
      - name: XML_DEPRECATED_MEMBER
        type: unsigned int
      - name: XML_DEPRECATED_MEMBER
        type: xmlBufferAllocationScheme
      - name: '*contentIO XML_DEPRECATED_MEMBER'
        type: xmlChar
      item_type: struct
      name: _xmlBuffer
      pos:
        line_end: 127
        line_start: 108
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: '*PublicID'
        type: xmlChar
      - name: '*SystemID'
        type: xmlChar
      item_type: struct
      name: _xmlNotation
      pos:
        line_end: 303
        line_start: 296
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*next XML_DEPRECATED_MEMBER'
        type: struct _xmlEnumeration
      - name: '*name XML_DEPRECATED_MEMBER'
        type: xmlChar
      item_type: struct
      name: _xmlEnumeration
      pos:
        line_end: 345
        line_start: 340
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlDtd
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: '*nexth'
        type: struct _xmlAttribute
      - name: atype
        type: xmlAttributeType
      - name: def
        type: xmlAttributeDefault
      - name: '*defaultValue'
        type: xmlChar
      - name: '*tree XML_DEPRECATED_MEMBER'
        type: xmlEnumeration
      - name: '*prefix'
        type: xmlChar
      - name: '*elem'
        type: xmlChar
      item_type: struct
      name: _xmlAttribute
      pos:
        line_end: 390
        line_start: 356
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: XML_DEPRECATED_MEMBER
        type: xmlElementContentType
      - name: XML_DEPRECATED_MEMBER
        type: xmlElementContentOccur
      - name: '*name XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*c1 XML_DEPRECATED_MEMBER'
        type: struct _xmlElementContent
      - name: '*c2 XML_DEPRECATED_MEMBER'
        type: struct _xmlElementContent
      - name: '*parent XML_DEPRECATED_MEMBER'
        type: struct _xmlElementContent
      - name: '*prefix XML_DEPRECATED_MEMBER'
        type: xmlChar
      item_type: struct
      name: _xmlElementContent
      pos:
        line_end: 437
        line_start: 422
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlDtd
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: etype
        type: xmlElementTypeVal
      - name: '*content'
        type: xmlElementContent
      - name: '*attributes'
        type: xmlAttribute
      - name: '*prefix'
        type: xmlChar
      item_type: struct
      name: _xmlElement
      pos:
        line_end: 493
        line_start: 459
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*next'
        type: struct _xmlNs
      - name: type
        type: xmlNsType
      - name: '*href'
        type: xmlChar
      - name: '*prefix'
        type: xmlChar
      - name: '*_private'
        type: void
      - name: '*context XML_DEPRECATED_MEMBER'
        type: struct _xmlDoc
      item_type: struct
      name: _xmlNs
      pos:
        line_end: 531
        line_start: 518
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlDoc
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: '*notations'
        type: void
      - name: '*elements'
        type: void
      - name: '*attributes'
        type: void
      - name: '*entities'
        type: void
      - name: '*ExternalID'
        type: xmlChar
      - name: '*SystemID'
        type: xmlChar
      - name: '*pentities'
        type: void
      item_type: struct
      name: _xmlDtd
      pos:
        line_end: 579
        line_start: 543
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlNode
      - name: '*next'
        type: struct _xmlAttr
      - name: '*prev'
        type: struct _xmlAttr
      - name: '*doc'
        type: struct _xmlDoc
      - name: '*ns'
        type: xmlNs
      - name: atype
        type: xmlAttributeType
      - name: '*psvi'
        type: void
      - name: '*id XML_DEPRECATED_MEMBER'
        type: struct _xmlID
      item_type: struct
      name: _xmlAttr
      pos:
        line_end: 614
        line_start: 587
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*next XML_DEPRECATED_MEMBER'
        type: struct _xmlID
      - name: '*value XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*attr XML_DEPRECATED_MEMBER'
        type: xmlAttr
      - name: '*name XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: '*doc XML_DEPRECATED_MEMBER'
        type: struct _xmlDoc
      item_type: struct
      name: _xmlID
      pos:
        line_end: 638
        line_start: 625
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*next XML_DEPRECATED_MEMBER'
        type: struct _xmlRef
      - name: '*value XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: '*attr XML_DEPRECATED_MEMBER'
        type: xmlAttr
      - name: '*name XML_DEPRECATED_MEMBER'
        type: xmlChar
      - name: XML_DEPRECATED_MEMBER
        type: int
      item_type: struct
      name: _xmlRef
      pos:
        line_end: 657
        line_start: 646
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: xmlChar
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlNode
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: '*ns'
        type: xmlNs
      - name: '*content'
        type: xmlChar
      - name: '*properties'
        type: struct _xmlAttr
      - name: '*nsDef'
        type: xmlNs
      - name: '*psvi'
        type: void
      - name: line
        type: unsigned short
      - name: extra
        type: unsigned short
      item_type: struct
      name: _xmlNode
      pos:
        line_end: 755
        line_start: 694
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '*_private'
        type: void
      - name: type
        type: xmlElementType
      - name: '*name'
        type: char
      - name: '*children'
        type: struct _xmlNode
      - name: '*last'
        type: struct _xmlNode
      - name: '*parent'
        type: struct _xmlNode
      - name: '*next'
        type: struct _xmlNode
      - name: '*prev'
        type: struct _xmlNode
      - name: '*doc'
        type: struct _xmlDoc
      - name: compression
        type: int
      - name: standalone
        type: int
      - name: '*intSubset'
        type: struct _xmlDtd
      - name: '*extSubset'
        type: struct _xmlDtd
      - name: '*oldNs'
        type: struct _xmlNs
      - name: '*version'
        type: xmlChar
      - name: '*encoding'
        type: xmlChar
      - name: '*ids'
        type: void
      - name: '*refs XML_DEPRECATED_MEMBER'
        type: void
      - name: '*URL'
        type: xmlChar
      - name: charset
        type: int
      - name: '*dict'
        type: struct _xmlDict
      - name: '*psvi'
        type: void
      - name: parseFlags
        type: int
      - name: properties
        type: int
      item_type: struct
      name: _xmlDoc
      pos:
        line_end: 846
        line_start: 786
        source_file: /src/libxml2/include/libxml/tree.h
    - fields:
      - name: '* _private'
        type: void
      - name: type
        type: int
      - name: '* namespaceMap'
        type: void
      - name: getNsForNodeFunc
        type: xmlDOMWrapAcquireNsFunction
      item_type: struct
      name: _xmlDOMWrapCtxt
      pos:
        line_end: 886
        line_start: 870
        source_file: /src/libxml2/include/libxml/tree.h
    typedefs:
    - item_type: typedef
      name: xmlParserInputBuffer
      pos:
        line_end: 60
        line_start: 60
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlParserInputBuffer
    - item_type: typedef
      name: '*xmlParserInputBufferPtr'
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlParserInputBuffer
    - item_type: typedef
      name: xmlOutputBuffer
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlOutputBuffer
    - item_type: typedef
      name: '*xmlOutputBufferPtr'
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlOutputBuffer
    - item_type: typedef
      name: xmlParserInput
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlParserInput
    - item_type: typedef
      name: '*xmlParserInputPtr'
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlParserInput
    - item_type: typedef
      name: xmlParserCtxt
      pos:
        line_end: 73
        line_start: 73
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlParserCtxt
    - item_type: typedef
      name: '*xmlParserCtxtPtr'
      pos:
        line_end: 74
        line_start: 74
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlParserCtxt
    - item_type: typedef
      name: xmlSAXLocator
      pos:
        line_end: 77
        line_start: 77
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlSAXLocator
    - item_type: typedef
      name: '*xmlSAXLocatorPtr'
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlSAXLocator
    - item_type: typedef
      name: xmlSAXHandler
      pos:
        line_end: 81
        line_start: 81
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlSAXHandler
    - item_type: typedef
      name: '*xmlSAXHandlerPtr'
      pos:
        line_end: 82
        line_start: 82
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlSAXHandler
    - item_type: typedef
      name: xmlEntity
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlEntity
    - item_type: typedef
      name: '*xmlEntityPtr'
      pos:
        line_end: 87
        line_start: 87
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlEntity
    - item_type: typedef
      name: xmlBuffer
      pos:
        line_end: 102
        line_start: 102
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlBuffer
    - item_type: typedef
      name: '*xmlBufferPtr'
      pos:
        line_end: 103
        line_start: 103
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlBuffer
    - item_type: typedef
      name: xmlBuf
      pos:
        line_end: 130
        line_start: 130
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlBuf
    - item_type: typedef
      name: '*xmlBufPtr'
      pos:
        line_end: 131
        line_start: 131
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlBuf
    - item_type: typedef
      name: xmlNotation
      pos:
        line_end: 288
        line_start: 288
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlNotation
    - item_type: typedef
      name: '*xmlNotationPtr'
      pos:
        line_end: 289
        line_start: 289
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlNotation
    - item_type: typedef
      name: xmlEnumeration
      pos:
        line_end: 332
        line_start: 332
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlEnumeration
    - item_type: typedef
      name: '*xmlEnumerationPtr'
      pos:
        line_end: 333
        line_start: 333
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlEnumeration
    - item_type: typedef
      name: xmlAttribute
      pos:
        line_end: 348
        line_start: 348
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlAttribute
    - item_type: typedef
      name: '*xmlAttributePtr'
      pos:
        line_end: 349
        line_start: 349
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlAttribute
    - item_type: typedef
      name: xmlElementContent
      pos:
        line_end: 413
        line_start: 413
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlElementContent
    - item_type: typedef
      name: '*xmlElementContentPtr'
      pos:
        line_end: 414
        line_start: 414
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlElementContent
    - item_type: typedef
      name: xmlElement
      pos:
        line_end: 451
        line_start: 451
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlElement
    - item_type: typedef
      name: '*xmlElementPtr'
      pos:
        line_end: 452
        line_start: 452
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlElement
    - item_type: typedef
      name: xmlNsType
      pos:
        line_end: 500
        line_start: 500
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlElementType
    - item_type: typedef
      name: xmlNs
      pos:
        line_end: 503
        line_start: 503
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlNs
    - item_type: typedef
      name: '*xmlNsPtr'
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlNs
    - item_type: typedef
      name: xmlDtd
      pos:
        line_end: 534
        line_start: 534
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlDtd
    - item_type: typedef
      name: '*xmlDtdPtr'
      pos:
        line_end: 535
        line_start: 535
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlDtd
    - item_type: typedef
      name: xmlAttr
      pos:
        line_end: 582
        line_start: 582
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlAttr
    - item_type: typedef
      name: '*xmlAttrPtr'
      pos:
        line_end: 583
        line_start: 583
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlAttr
    - item_type: typedef
      name: xmlID
      pos:
        line_end: 617
        line_start: 617
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlID
    - item_type: typedef
      name: '*xmlIDPtr'
      pos:
        line_end: 618
        line_start: 618
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlID
    - item_type: typedef
      name: xmlRef
      pos:
        line_end: 641
        line_start: 641
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlRef
    - item_type: typedef
      name: '*xmlRefPtr'
      pos:
        line_end: 642
        line_start: 642
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlRef
    - item_type: typedef
      name: xmlNode
      pos:
        line_end: 661
        line_start: 661
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlNode
    - item_type: typedef
      name: '*xmlNodePtr'
      pos:
        line_end: 662
        line_start: 662
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlNode
    - item_type: typedef
      name: xmlDoc
      pos:
        line_end: 781
        line_start: 781
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlDoc
    - item_type: typedef
      name: '*xmlDocPtr'
      pos:
        line_end: 782
        line_start: 782
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlDoc
    - item_type: typedef
      name: xmlDOMWrapCtxt
      pos:
        line_end: 850
        line_start: 850
        source_file: /src/libxml2/include/libxml/tree.h
      type: _xmlDOMWrapCtxt
    - item_type: typedef
      name: '*xmlDOMWrapCtxtPtr'
      pos:
        line_end: 851
        line_start: 851
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlDOMWrapCtxt
    - item_type: typedef
      name: "*(*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxt *ctxt,\n\t\t\t\t\t\t
        xmlNode *node,\n\t\t\t\t\t\t const xmlChar *nsName,\n\t\t\t\t\t\t const xmlChar
        *nsPrefix)"
      pos:
        line_end: 865
        line_start: 862
        source_file: /src/libxml2/include/libxml/tree.h
      type: xmlNs
    - item_type: typedef
      name: (*xmlRegisterNodeFunc) (xmlNode *node)
      pos:
        line_end: 893
        line_start: 893
        source_file: /src/libxml2/include/libxml/tree.h
      type: void
    - item_type: typedef
      name: (*xmlDeregisterNodeFunc) (xmlNode *node)
      pos:
        line_end: 900
        line_start: 900
        source_file: /src/libxml2/include/libxml/tree.h
      type: void
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlIO.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlParserInputBufferCreateFilenameValue
      pos:
        line_end: 179
        line_start: 177
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type_or_value: (*__xmlParserInputBufferCreateFilenameValue())
    - item_type: preproc_def
      name: xmlOutputBufferCreateFilenameValue
      pos:
        line_end: 181
        line_start: 179
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type_or_value: (*__xmlOutputBufferCreateFilenameValue())
    structs:
    - fields:
      - name: '*                  context XML_DEPRECATED_MEMBER'
        type: void
      - name: readcallback
        type: xmlInputReadCallback
      - name: closecallback
        type: xmlInputCloseCallback
      - name: '*encoder XML_DEPRECATED_MEMBER'
        type: xmlCharEncodingHandler
      - name: '*buffer XML_DEPRECATED_MEMBER'
        type: xmlBuf
      - name: '*raw XML_DEPRECATED_MEMBER'
        type: xmlBuf
      - name: compressed
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: int
      - name: XML_DEPRECATED_MEMBER
        type: unsigned long rawconsumed
      item_type: struct
      name: _xmlParserInputBuffer
      pos:
        line_end: 142
        line_start: 125
        source_file: /src/libxml2/include/libxml/xmlIO.h
    - fields:
      - name: '*                   context'
        type: void
      - name: writecallback
        type: xmlOutputWriteCallback
      - name: closecallback
        type: xmlOutputCloseCallback
      - name: '*encoder'
        type: xmlCharEncodingHandler
      - name: '*buffer'
        type: xmlBuf
      - name: '*conv'
        type: xmlBuf
      - name: written
        type: int
      - name: error
        type: int
      item_type: struct
      name: _xmlOutputBuffer
      pos:
        line_end: 164
        line_start: 149
        source_file: /src/libxml2/include/libxml/xmlIO.h
    typedefs:
    - item_type: typedef
      name: (*xmlInputMatchCallback) (const char *filename)
      pos:
        line_end: 33
        line_start: 33
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: '* (*xmlInputOpenCallback) (const char *filename)'
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: void
    - item_type: typedef
      name: (*xmlInputReadCallback) (void * context, char * buffer, int len)
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: (*xmlInputCloseCallback) (void * context)
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: (*xmlOutputMatchCallback) (const char *filename)
      pos:
        line_end: 66
        line_start: 66
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: '* (*xmlOutputOpenCallback) (const char *filename)'
      pos:
        line_end: 73
        line_start: 73
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: void
    - item_type: typedef
      name: "(*xmlOutputWriteCallback) (void * context, const char * buffer,\n                                       int
        len)"
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: (*xmlOutputCloseCallback) (void * context)
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: int
    - item_type: typedef
      name: '*

        (*xmlParserInputBufferCreateFilenameFunc)(const char *URI, xmlCharEncoding
        enc)'
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: xmlParserInputBuffer
    - item_type: typedef
      name: "*\n(*xmlOutputBufferCreateFilenameFunc)(const char *URI,\n        xmlCharEncodingHandler
        *encoder, int compression)"
      pos:
        line_end: 117
        line_start: 115
        source_file: /src/libxml2/include/libxml/xmlIO.h
      type: xmlOutputBuffer
    union: []
- function_names:
  - initGenericErrorDefaultFunc
  source_file: /src/libxml2/include/libxml/xmlerror.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlLastError
      pos:
        line_end: 970
        line_start: 969
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type_or_value: (*__xmlLastError())
    - item_type: preproc_def
      name: xmlGenericError
      pos:
        line_end: 976
        line_start: 975
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type_or_value: (*__xmlGenericError())
    - item_type: preproc_def
      name: xmlGenericErrorContext
      pos:
        line_end: 983
        line_start: 982
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type_or_value: (*__xmlGenericErrorContext())
    - item_type: preproc_def
      name: xmlStructuredError
      pos:
        line_end: 990
        line_start: 989
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type_or_value: (*__xmlStructuredError())
    - item_type: preproc_def
      name: xmlStructuredErrorContext
      pos:
        line_end: 997
        line_start: 996
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type_or_value: (*__xmlStructuredErrorContext())
    structs:
    - fields:
      - name: domain
        type: int
      - name: code
        type: int
      - name: '*message'
        type: char
      - name: level
        type: xmlErrorLevel
      - name: '*file'
        type: char
      - name: line
        type: int
      - name: '*str1'
        type: char
      - name: '*str2'
        type: char
      - name: '*str3'
        type: char
      - name: int1
        type: int
      - name: int2
        type: int
      - name: '*ctxt'
        type: void
      - name: '*node'
        type: void
      item_type: struct
      name: _xmlError
      pos:
        line_end: 173
        line_start: 146
        source_file: /src/libxml2/include/libxml/xmlerror.h
    typedefs:
    - item_type: typedef
      name: xmlError
      pos:
        line_end: 141
        line_start: 141
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type: _xmlError
    - item_type: typedef
      name: '*xmlErrorPtr'
      pos:
        line_end: 142
        line_start: 142
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type: xmlError
    - item_type: typedef
      name: "(*xmlGenericErrorFunc) (void *ctx,\n\t\t\t\t const char *msg,\n\t\t\t\t
        ...)"
      pos:
        line_end: 945
        line_start: 943
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type: void
    - item_type: typedef
      name: (*xmlStructuredErrorFunc) (void *userData, const xmlError *error)
      pos:
        line_end: 952
        line_start: 952
        source_file: /src/libxml2/include/libxml/xmlerror.h
      type: void
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlregexp.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlRegexp
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/libxml2/include/libxml/xmlregexp.h
      type: _xmlRegexp
    - item_type: typedef
      name: '*xmlRegexpPtr'
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/libxml2/include/libxml/xmlregexp.h
      type: xmlRegexp
    - item_type: typedef
      name: xmlRegExecCtxt
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/libxml2/include/libxml/xmlregexp.h
      type: _xmlRegExecCtxt
    - item_type: typedef
      name: '*xmlRegExecCtxtPtr'
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/libxml2/include/libxml/xmlregexp.h
      type: xmlRegExecCtxt
    - item_type: typedef
      name: "(*xmlRegExecCallbacks) (xmlRegExecCtxt *exec,\n\t                             const
        xmlChar *token,\n\t\t\t\t     void *transdata,\n\t\t\t\t     void *inputdata)"
      pos:
        line_end: 65
        line_start: 62
        source_file: /src/libxml2/include/libxml/xmlregexp.h
      type: void
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/HTMLtree.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: HTML_TEXT_NODE
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxml2/include/libxml/HTMLtree.h
      type_or_value: XML_TEXT_NODE
    - item_type: preproc_def
      name: HTML_ENTITY_REF_NODE
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxml2/include/libxml/HTMLtree.h
      type_or_value: XML_ENTITY_REF_NODE
    - item_type: preproc_def
      name: HTML_COMMENT_NODE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/include/libxml/HTMLtree.h
      type_or_value: XML_COMMENT_NODE
    - item_type: preproc_def
      name: HTML_PRESERVE_NODE
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/include/libxml/HTMLtree.h
      type_or_value: XML_CDATA_SECTION_NODE
    - item_type: preproc_def
      name: HTML_PI_NODE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/include/libxml/HTMLtree.h
      type_or_value: XML_PI_NODE
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlXPathNodeSetGetLength
  - xmlXPathNodeSetItem
  - xmlXPathNodeSetIsEmpty
  source_file: /src/libxml2/include/libxml/xpath.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XPATH_POINT
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/libxml2/include/libxml/xpath.h
      type_or_value: '5'
    - item_type: preproc_def
      name: XPATH_RANGE
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/libxml2/include/libxml/xpath.h
      type_or_value: '6'
    - item_type: preproc_def
      name: XPATH_LOCATIONSET
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/libxml2/include/libxml/xpath.h
      type_or_value: '7'
    - item_type: preproc_def
      name: XML_XPATH_CHECKNS
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/libxml2/include/libxml/xpath.h
      type_or_value: (1<<0)
    - item_type: preproc_def
      name: XML_XPATH_NOVAR
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/libxml2/include/libxml/xpath.h
      type_or_value: (1<<1)
    structs:
    - fields:
      - name: nodeNr
        type: int
      - name: nodeMax
        type: int
      - name: '**nodeTab'
        type: xmlNode
      item_type: struct
      name: _xmlNodeSet
      pos:
        line_end: 90
        line_start: 83
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: type
        type: xmlXPathObjectType
      - name: '*nodesetval'
        type: xmlNodeSet
      - name: boolval
        type: int
      - name: floatval
        type: double
      - name: '*stringval'
        type: xmlChar
      - name: '*user'
        type: void
      - name: index
        type: int
      - name: '*user2'
        type: void
      - name: index2
        type: int
      item_type: struct
      name: _xmlXPathObject
      pos:
        line_end: 138
        line_start: 123
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: func
        type: xmlXPathConvertFunc
      item_type: struct
      name: _xmlXPathType
      pos:
        line_end: 151
        line_start: 148
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: '*value'
        type: xmlXPathObject
      item_type: struct
      name: _xmlXPathVariable
      pos:
        line_end: 161
        line_start: 158
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: func
        type: xmlXPathEvalFunc
      item_type: struct
      name: _xmlXPathFunct
      pos:
        line_end: 173
        line_start: 170
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*name'
        type: xmlChar
      - name: func
        type: xmlXPathAxisFunc
      item_type: struct
      name: _xmlXPathAxis
      pos:
        line_end: 185
        line_start: 182
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*doc'
        type: xmlDoc
      - name: '*node'
        type: xmlNode
      - name: nb_variables_unused
        type: int
      - name: max_variables_unused
        type: int
      - name: '*varHash'
        type: xmlHashTable
      - name: nb_types
        type: int
      - name: max_types
        type: int
      - name: '*types'
        type: xmlXPathType
      - name: nb_funcs_unused
        type: int
      - name: max_funcs_unused
        type: int
      - name: '*funcHash'
        type: xmlHashTable
      - name: nb_axis
        type: int
      - name: max_axis
        type: int
      - name: '*axis'
        type: xmlXPathAxis
      - name: '**namespaces'
        type: xmlNs
      - name: nsNr
        type: int
      - name: '*user'
        type: void
      - name: contextSize
        type: int
      - name: proximityPosition
        type: int
      - name: xptr
        type: int
      - name: '*here'
        type: xmlNode
      - name: '*origin'
        type: xmlNode
      - name: '*nsHash'
        type: xmlHashTable
      - name: varLookupFunc
        type: xmlXPathVariableLookupFunc
      - name: '*varLookupData'
        type: void
      - name: '*extra'
        type: void
      - name: '*function'
        type: xmlChar
      - name: '*functionURI'
        type: xmlChar
      - name: funcLookupFunc
        type: xmlXPathFuncLookupFunc
      - name: '*funcLookupData'
        type: void
      - name: '**tmpNsList'
        type: xmlNs
      - name: tmpNsNr
        type: int
      - name: '*userData'
        type: void
      - name: error
        type: xmlStructuredErrorFunc
      - name: lastError
        type: xmlError
      - name: '*debugNode'
        type: xmlNode
      - name: '*dict'
        type: xmlDict
      - name: flags
        type: int
      - name: '*cache'
        type: void
      - name: opLimit
        type: unsigned long
      - name: opCount
        type: unsigned long
      - name: depth
        type: int
      item_type: struct
      name: _xmlXPathContext
      pos:
        line_end: 356
        line_start: 256
        source_file: /src/libxml2/include/libxml/xpath.h
    - fields:
      - name: '*cur'
        type: xmlChar
      - name: '*base'
        type: xmlChar
      - name: error
        type: int
      - name: '*context'
        type: xmlXPathContext
      - name: '*value'
        type: xmlXPathObject
      - name: valueNr
        type: int
      - name: valueMax
        type: int
      - name: '**valueTab'
        type: xmlXPathObject
      - name: '*comp'
        type: xmlXPathCompExpr
      - name: xptr
        type: int
      - name: '*ancestor'
        type: xmlNode
      - name: valueFrame
        type: int
      item_type: struct
      name: _xmlXPathParserContext
      pos:
        line_end: 397
        line_start: 368
        source_file: /src/libxml2/include/libxml/xpath.h
    typedefs:
    - item_type: typedef
      name: xmlXPathContext
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathContext
    - item_type: typedef
      name: '*xmlXPathContextPtr'
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathContext
    - item_type: typedef
      name: xmlXPathParserContext
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathParserContext
    - item_type: typedef
      name: '*xmlXPathParserContextPtr'
      pos:
        line_end: 41
        line_start: 41
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathParserContext
    - item_type: typedef
      name: xmlNodeSet
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlNodeSet
    - item_type: typedef
      name: '*xmlNodeSetPtr'
      pos:
        line_end: 79
        line_start: 79
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlNodeSet
    - item_type: typedef
      name: xmlXPathObject
      pos:
        line_end: 118
        line_start: 118
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathObject
    - item_type: typedef
      name: '*xmlXPathObjectPtr'
      pos:
        line_end: 119
        line_start: 119
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathObject
    - item_type: typedef
      name: (*xmlXPathConvertFunc) (xmlXPathObject *obj, int type)
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/libxml2/include/libxml/xpath.h
      type: int
    - item_type: typedef
      name: xmlXPathType
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathType
    - item_type: typedef
      name: '*xmlXPathTypePtr'
      pos:
        line_end: 147
        line_start: 147
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathType
    - item_type: typedef
      name: xmlXPathVariable
      pos:
        line_end: 156
        line_start: 156
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathVariable
    - item_type: typedef
      name: '*xmlXPathVariablePtr'
      pos:
        line_end: 157
        line_start: 157
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathVariable
    - item_type: typedef
      name: "(*xmlXPathEvalFunc)(xmlXPathParserContext *ctxt,\n\t                         int
        nargs)"
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/libxml2/include/libxml/xpath.h
      type: void
    - item_type: typedef
      name: xmlXPathFunct
      pos:
        line_end: 168
        line_start: 168
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathFunct
    - item_type: typedef
      name: '*xmlXPathFuncPtr'
      pos:
        line_end: 169
        line_start: 169
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathFunct
    - item_type: typedef
      name: "*(*xmlXPathAxisFunc) (xmlXPathParserContext *ctxt,\n\t\t\t\t xmlXPathObject
        *cur)"
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathObject
    - item_type: typedef
      name: xmlXPathAxis
      pos:
        line_end: 180
        line_start: 180
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathAxis
    - item_type: typedef
      name: '*xmlXPathAxisPtr'
      pos:
        line_end: 181
        line_start: 181
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathAxis
    - item_type: typedef
      name: (*xmlXPathFunction) (xmlXPathParserContext *ctxt, int nargs)
      pos:
        line_end: 198
        line_start: 198
        source_file: /src/libxml2/include/libxml/xpath.h
      type: void
    - item_type: typedef
      name: "*(*xmlXPathVariableLookupFunc) (void *ctxt,\n                                         const
        xmlChar *name,\n                                         const xmlChar *ns_uri)"
      pos:
        line_end: 215
        line_start: 213
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathObject
    - item_type: typedef
      name: "(*xmlXPathFuncLookupFunc) (void *ctxt,\n\t\t\t\t\t const xmlChar *name,\n\t\t\t\t\t
        const xmlChar *ns_uri)"
      pos:
        line_end: 228
        line_start: 226
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathFunction
    - item_type: typedef
      name: xmlXPathCompExpr
      pos:
        line_end: 359
        line_start: 359
        source_file: /src/libxml2/include/libxml/xpath.h
      type: _xmlXPathCompExpr
    - item_type: typedef
      name: '*xmlXPathCompExprPtr'
      pos:
        line_end: 360
        line_start: 360
        source_file: /src/libxml2/include/libxml/xpath.h
      type: xmlXPathCompExpr
    union: []
- function_names: []
  source_file: /src/libxml2/include/libxml/xmlschemas.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSchema
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: _xmlSchema
    - item_type: typedef
      name: '*xmlSchemaPtr'
      pos:
        line_end: 87
        line_start: 87
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: xmlSchema
    - item_type: typedef
      name: "(*xmlSchemaValidityErrorFunc)\n                 (void *ctx, const char
        *msg, ...)"
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: void
    - item_type: typedef
      name: "(*xmlSchemaValidityWarningFunc)\n                 (void *ctx, const char
        *msg, ...)"
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: void
    - item_type: typedef
      name: xmlSchemaParserCtxt
      pos:
        line_end: 110
        line_start: 110
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: _xmlSchemaParserCtxt
    - item_type: typedef
      name: '*xmlSchemaParserCtxtPtr'
      pos:
        line_end: 111
        line_start: 111
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: xmlSchemaParserCtxt
    - item_type: typedef
      name: xmlSchemaValidCtxt
      pos:
        line_end: 114
        line_start: 114
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: _xmlSchemaValidCtxt
    - item_type: typedef
      name: '*xmlSchemaValidCtxtPtr'
      pos:
        line_end: 115
        line_start: 115
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: xmlSchemaValidCtxt
    - item_type: typedef
      name: "(*xmlSchemaValidityLocatorFunc) (void *ctx,\n                           const
        char **file, unsigned long *line)"
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: int
    - item_type: typedef
      name: xmlSchemaSAXPlugStruct
      pos:
        line_end: 226
        line_start: 226
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: _xmlSchemaSAXPlug
    - item_type: typedef
      name: '*xmlSchemaSAXPlugPtr'
      pos:
        line_end: 227
        line_start: 227
        source_file: /src/libxml2/include/libxml/xmlschemas.h
      type: xmlSchemaSAXPlugStruct
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/html.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/xml.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/regexp.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/libxml2/fuzz/fuzz.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ATTRIBUTE_UNUSED
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/libxml2/fuzz/fuzz.h
      type_or_value: __attribute__((unused))
    - item_type: preproc_def
      name: XML_FUZZ_PROB_ONE
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/libxml2/fuzz/fuzz.h
      type_or_value: (1u << 16)
    structs:
    - fields:
      - name: size
        type: unsigned
      - name: mutateProb
        type: unsigned
      item_type: struct
      name: xmlFuzzChunkDesc
      pos:
        line_end: 62
        line_start: 59
        source_file: /src/libxml2/fuzz/fuzz.h
    typedefs:
    - item_type: typedef
      name: (*xmlFuzzMutator)(char *data, size_t size, size_t maxSize)
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/libxml2/fuzz/fuzz.h
      type: size_t
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/schema.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - fuzzResourceRecorder
  - fuzzRecorderInit
  - fuzzRecorderWriteAndFree
  - fuzzRecorderWrite
  - fuzzRecorderCleanup
  - processXml
  - processHtml
  - processPattern
  - processSchema
  - processSchemaPattern
  - processXPath
  - processXPathDir
  - main
  source_file: /src/libxml2/fuzz/genSeed.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PATH_SIZE
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: '500'
    - item_type: preproc_def
      name: SEED_BUF_SIZE
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: '16384'
    - item_type: preproc_def
      name: EXPR_SIZE
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: '4500'
    - item_type: preproc_def
      name: FLAG_READER
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: (1 << 0)
    - item_type: preproc_def
      name: FLAG_LINT
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: (1 << 1)
    - item_type: preproc_def
      name: FLAG_PUSH_CHUNK_SIZE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/fuzz/genSeed.c
      type_or_value: (1 << 2)
    structs:
    - fields:
      - name: '*out'
        type: FILE
      - name: entities
        type: xmlHashTablePtr
      - name: oldLoader
        type: xmlExternalEntityLoader
      - name: processFile
        type: fileFunc
      - name: '*fuzzer'
        type: char
      - name: counter
        type: int
      - name: cwd[PATH_SIZE]
        type: char
      - name: flags
        type: int
      item_type: struct
      name: globalData
      pos:
        line_end: 48
        line_start: 39
        source_file: /src/libxml2/fuzz/genSeed.c
    typedefs:
    - item_type: typedef
      name: (*fileFunc)(const char *base, FILE *out)
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/fuzz/genSeed.c
      type: int
    - item_type: typedef
      name: (*mainFunc)(const char *arg)
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/libxml2/fuzz/genSeed.c
      type: int
    union: []
- function_names:
  - startOp
  - endOp
  - getInt
  - setInt
  - incIntIdx
  - getStr
  - getCStr
  - setStr
  - moveStr
  - uncheckedStrndup
  - uncheckedStrdup
  - copyStr
  - incStrIdx
  - getNode
  - getDoc
  - getAttr
  - getDtd
  - setNode
  - incNodeIdx
  - isValidChildType
  - isValidChild
  - isTextContentNode
  - isDtdChild
  - nodeGetTree
  - dropNode
  - removeNode
  - removeChildren
  - nodeGetNs
  - checkContent
  - countNodes
  - checkCopy
  - fixNs
  - opNodeAccessor
  - opDup
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/api.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DEBUG
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: printf
    - item_type: preproc_def
      name: MAX_CONTENT
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: '100'
    - item_type: preproc_def
      name: MAX_COPY_NODES
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: '50'
    - item_type: preproc_def
      name: MAX_COPY_OPS
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: '20'
    - item_type: preproc_def
      name: NODE_MASK_TEXT_CONTENT
      pos:
        line_end: 308
        line_start: 303
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    (1 << XML_TEXT_NODE) | \\\n    (1 << XML_CDATA_SECTION_NODE)
        | \\\n    (1 << XML_COMMENT_NODE) | \\\n    (1 << XML_PI_NODE))"
    - item_type: preproc_def
      name: CHILD_MASK_DOCUMENT
      pos:
        line_end: 313
        line_start: 309
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    (1 << XML_ELEMENT_NODE) | \\\n    (1 << XML_PI_NODE)
        | \\\n    (1 << XML_COMMENT_NODE))"
    - item_type: preproc_def
      name: CHILD_MASK_CONTENT
      pos:
        line_end: 321
        line_start: 314
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    (1 << XML_ELEMENT_NODE) | \\\n    (1 << XML_TEXT_NODE)
        | \\\n    (1 << XML_CDATA_SECTION_NODE) | \\\n    (1 << XML_ENTITY_REF_NODE)
        | \\\n    (1 << XML_PI_NODE) | \\\n    (1 << XML_COMMENT_NODE))"
    - item_type: preproc_def
      name: CHILD_MASK_ELEMENT
      pos:
        line_end: 325
        line_start: 322
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    CHILD_MASK_CONTENT | \\\n    (1 << XML_ATTRIBUTE_NODE))"
    - item_type: preproc_def
      name: CHILD_MASK_ATTRIBUTE
      pos:
        line_end: 329
        line_start: 326
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    (1 << XML_TEXT_NODE) | \\\n    (1 << XML_ENTITY_REF_NODE))"
    - item_type: preproc_def
      name: CHILD_MASK_DTD
      pos:
        line_end: 334
        line_start: 330
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: "( \\\n    (1 << XML_ELEMENT_DECL) | \\\n    (1 << XML_ATTRIBUTE_DECL)
        | \\\n    (1 << XML_ENTITY_DECL))"
    - item_type: preproc_def
      name: REG_MAX
      pos:
        line_end: 361
        line_start: 360
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: '8'
    - item_type: preproc_def
      name: REG_MASK
      pos:
        line_end: 362
        line_start: 361
        source_file: /src/libxml2/fuzz/api.c
      type_or_value: (REG_MAX - 1)
    structs:
    - fields:
      - name: intIdx
        type: int
      - name: stringIdx
        type: int
      - name: nodeIdx
        type: int
      - name: numCopyOps
        type: int
      - name: '*opName'
        type: char
      - name: integers[REG_MAX]
        type: int
      - name: '*strings[REG_MAX]'
        type: xmlChar
      - name: nodes[REG_MAX]
        type: xmlNodePtr
      item_type: struct
      name: xmlFuzzApiVars
      pos:
        line_end: 377
        line_start: 363
        source_file: /src/libxml2/fuzz/api.c
    typedefs: []
    union: []
- function_names:
  - xmlFuzzErrorFunc
  - xmlFuzzSErrorFunc
  - xmlFuzzInjectFailure
  - xmlFuzzTryMalloc
  - xmlFuzzTryIo
  - xmlFuzzMalloc
  - xmlFuzzRealloc
  - xmlFuzzMemSetup
  - xmlFuzzMallocFailed
  - xmlFuzzResetFailure
  - xmlFuzzCheckFailureReport
  - xmlFuzzDataInit
  - xmlFuzzDataCleanup
  - xmlFuzzWriteInt
  - xmlFuzzReadInt
  - xmlFuzzBytesRemaining
  - xmlFuzzReadRemaining
  - xmlFuzzWriteString
  - xmlFuzzReadString
  - xmlFuzzReadEntities
  - xmlFuzzMainUrl
  - xmlFuzzMainEntity
  - xmlFuzzSecondaryUrl
  - xmlFuzzSecondaryEntity
  - xmlFuzzResourceLoader
  - xmlSlurpFile
  - xmlFuzzOutputWrite
  - xmlFuzzOutputClose
  - xmlFuzzMutateChunks
  source_file: /src/libxml2/fuzz/fuzz.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XML_FUZZ_FAILURE_ABORT
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/libxml2/fuzz/fuzz.c
      type_or_value: '0'
    structs:
    - fields:
      - name: '*data'
        type: char
      - name: size
        type: size_t
      item_type: struct
      name: xmlFuzzEntityInfo
      pos:
        line_end: 21
        line_start: 18
        source_file: /src/libxml2/fuzz/fuzz.c
    - fields:
      - name: '*data'
        type: char
      - name: size
        type: size_t
      - name: '*ptr'
        type: char
      - name: remaining
        type: size_t
      - name: '*outBuf'
        type: char
      - name: '*outPtr'
        type: char
      - name: entities
        type: xmlHashTablePtr
      - name: '*mainUrl'
        type: char
      - name: '*mainEntity'
        type: xmlFuzzEntityInfo
      - name: '*secondaryUrl'
        type: char
      - name: '*secondaryEntity'
        type: xmlFuzzEntityInfo
      item_type: struct
      name: fuzzData
      pos:
        line_end: 44
        line_start: 24
        source_file: /src/libxml2/fuzz/fuzz.c
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerMutate
  - testFuzzer
  - testEntityLoader
  - main
  source_file: /src/libxml2/fuzz/testFuzzer.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzHtmlInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzHtml
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzHtmlMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzReaderInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzReader
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzReaderMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzRegexpInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzRegexp
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzRegexpMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzSchemaInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzSchema
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzSchemaMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzUriInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzUri
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzUriMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzValidInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzValid
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzValidMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXIncludeInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXInclude
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXIncludeMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXmlInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXml
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXmlMutate
    - item_type: preproc_def
      name: LLVMFuzzerInitialize
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXPathInit
    - item_type: preproc_def
      name: LLVMFuzzerTestOneInput
      pos:
        line_end: 145
        line_start: 144
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXPath
    - item_type: preproc_def
      name: LLVMFuzzerCustomMutator
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type_or_value: fuzzXPathMutate
    structs: []
    typedefs:
    - item_type: typedef
      name: (*initFunc)(int *argc, char ***argv)
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type: int
    - item_type: typedef
      name: (*fuzzFunc)(const char *data, size_t size)
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type: int
    - item_type: typedef
      name: (*mutateFunc)(char *data, size_t size, size_t maxSize, unsigned seed)
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/libxml2/fuzz/testFuzzer.c
      type: size_t
    union: []
- function_names:
  - startOp
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - READ_BYTE
  - FREE_STRING
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/reader.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/uri.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - pushArg
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/lint.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '**argv'
        type: char
      - name: argi
        type: size_t
      item_type: struct
      name: vars
      pos:
        line_end: 96
        line_start: 93
        source_file: /src/libxml2/fuzz/lint.c
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/xpath.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/xinclude.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerInitialize
  - LLVMFuzzerTestOneInput
  - LLVMFuzzerCustomMutator
  source_file: /src/libxml2/fuzz/valid.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - sqlMatch
  - sqlOpen
  - sqlClose
  - sqlRead
  - main
  - main
  source_file: /src/libxml2/example/io1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - testXmlwriterFilename
  - testXmlwriterMemory
  - testXmlwriterDoc
  - testXmlwriterTree
  - main
  source_file: /src/libxml2/example/testWriter.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MY_ENCODING
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/libxml2/example/testWriter.c
      type_or_value: '"ISO-8859-1"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - processDoc
  - main
  - main
  source_file: /src/libxml2/example/reader4.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - extractFile
  - main
  - main
  source_file: /src/libxml2/example/reader3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - processNode
  - streamFile
  - main
  - main
  source_file: /src/libxml2/example/reader2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - main
  source_file: /src/libxml2/example/io2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - main
  source_file: /src/libxml2/example/tree2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - example3Func
  - main
  source_file: /src/libxml2/example/parse3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - DEBUG
  - parsePerson
  - printPerson
  - parseJob
  - printJob
  - parseGjobFile
  - handleGjob
  - main
  source_file: /src/libxml2/example/gjobread.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*name'
        type: xmlChar
      - name: '*email'
        type: xmlChar
      - name: '*company'
        type: xmlChar
      - name: '*organisation'
        type: xmlChar
      - name: '*smail'
        type: xmlChar
      - name: '*webPage'
        type: xmlChar
      - name: '*phone'
        type: xmlChar
      item_type: struct
      name: person
      pos:
        line_end: 39
        line_start: 31
        source_file: /src/libxml2/example/gjobread.c
    - fields:
      - name: '*projectID'
        type: xmlChar
      - name: '*application'
        type: xmlChar
      - name: '*category'
        type: xmlChar
      - name: contact
        type: personPtr
      - name: nbDevelopers
        type: int
      - name: developers[100]
        type: personPtr
      item_type: struct
      name: job
      pos:
        line_end: 102
        line_start: 95
        source_file: /src/libxml2/example/gjobread.c
    - fields:
      - name: nbJobs
        type: int
      - name: jobs[500]
        type: jobPtr
      item_type: struct
      name: gjob
      pos:
        line_end: 175
        line_start: 172
        source_file: /src/libxml2/example/gjobread.c
    typedefs: []
    union: []
- function_names:
  - main
  - if
  - usage
  - example4
  - update_xpath_nodes
  - main
  source_file: /src/libxml2/example/xpath2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - icuConvert
  - icuOpen
  - icuClose
  - icuConvCtxtDtor
  - icuConvImpl
  - main
  source_file: /src/libxml2/example/icu.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ICU_PIVOT_BUF_SIZE
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/libxml2/example/icu.c
      type_or_value: '1024'
    structs:
    - fields:
      - name: '*uconv'
        type: UConverter
      - name: '*utf8'
        type: UConverter
      - name: '*pivot_source'
        type: UChar
      - name: '*pivot_target'
        type: UChar
      - name: isInput
        type: int
      - name: pivot_buf[ICU_PIVOT_BUF_SIZE]
        type: UChar
      item_type: struct
      name: myConvCtxt
      pos:
        line_end: 30
        line_start: 23
        source_file: /src/libxml2/example/icu.c
    typedefs: []
    union: []
- function_names:
  - main
  - if
  - usage
  - execute_xpath_expression
  - register_namespaces
  - print_xpath_nodes
  - main
  source_file: /src/libxml2/example/xpath1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - processNode
  - streamFile
  - main
  - main
  source_file: /src/libxml2/example/reader1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - exampleFunc
  - main
  source_file: /src/libxml2/example/parse2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - example1Func
  - main
  source_file: /src/libxml2/example/parse1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - readPacket
  - example4Func
  - main
  - main
  source_file: /src/libxml2/example/parse4.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - print_element_names
  - main
  source_file: /src/libxml2/example/tree1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ignore
  - LLVMFuzzerTestOneInput
  source_file: /src/xmlsec/tests/oss-fuzz/xmlsec_target.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/globals.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - XMLSEC_XSLT_COPY_SEC_PREF
  - xmlSecTransformXsltInitialize
  - xmlSecTransformXsltShutdown
  - xmlSecTransformXsltSetDefaultSecurityPrefs
  - xmlSecTransformXsltGetKlass
  - xmlSecXsltInitialize
  - xmlSecXsltFinalize
  - xmlSecXsltReadNode
  - xmlSecXsltPushBin
  - xmlSecXsltExecute
  - xmlSecXslProcess
  - xmlSecXsApplyStylesheet
  source_file: /src/xmlsec/src/xslt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecXsltSize
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/src/xslt.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(Xslt)
    structs:
    - fields:
      - name: xslt
        type: xsltStylesheetPtr
      - name: parserCtx
        type: xmlParserCtxtPtr
      item_type: struct
      name: _xmlSecXsltCtx
      pos:
        line_end: 49
        line_start: 46
        source_file: /src/xmlsec/src/xslt.c
    typedefs:
    - item_type: typedef
      name: xmlSecXsltCtx
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/xmlsec/src/xslt.c
      type: _xmlSecXsltCtx
    union: []
- function_names:
  - xmlSecTmplSignatureCreate
  - xmlSecTmplSignatureCreateNsPref
  - xmlSecTmplSignatureEnsureKeyInfo
  - xmlSecTmplSignatureAddReference
  - xmlSecTmplAddReference
  - xmlSecTmplSignatureAddObject
  - xmlSecTmplSignatureGetSignMethodNode
  - xmlSecTmplSignatureGetC14NMethodNode
  - xmlSecTmplReferenceAddTransform
  - xmlSecTmplObjectAddSignProperties
  - xmlSecTmplObjectAddManifest
  - xmlSecTmplManifestAddReference
  - xmlSecTmplEncDataCreate
  - xmlSecTmplPrepareEncData
  - xmlSecTmplEncDataEnsureKeyInfo
  - xmlSecTmplEncDataEnsureEncProperties
  - xmlSecTmplEncDataAddEncProperty
  - xmlSecTmplEncDataEnsureCipherValue
  - xmlSecTmplEncDataEnsureCipherReference
  - xmlSecTmplEncDataGetEncMethodNode
  - xmlSecTmplCipherReferenceAddTransform
  - xmlSecTmplReferenceListAddDataReference
  - xmlSecTmplReferenceListAddKeyReference
  - xmlSecTmplKeyInfoAddKeyName
  - xmlSecTmplKeyInfoAddKeyValue
  - xmlSecTmplKeyInfoAddX509Data
  - xmlSecTmplKeyInfoAddRetrievalMethod
  - xmlSecTmplRetrievalMethodAddTransform
  - xmlSecTmplKeyInfoAddEncryptedKey
  - xmlSecTmplX509DataAddIssuerSerial
  - xmlSecTmplX509IssuerSerialAddIssuerName
  - xmlSecTmplX509IssuerSerialAddSerialNumber
  - xmlSecTmplX509DataAddSubjectName
  - xmlSecTmplX509DataAddSKI
  - xmlSecTmplX509DataAddDigest
  - xmlSecTmplX509DataAddCertificate
  - xmlSecTmplX509DataAddCRL
  - xmlSecTmplTransformAddHmacOutputLength
  - xmlSecTmplTransformAddRsaOaepParam
  - xmlSecTmplTransformAddRsaMgf
  - xmlSecTmplTransformAddRsaDigest
  - xmlSecTmplTransformAddXsltStylesheet
  - xmlSecTmplTransformAddC14NInclNamespaces
  - xmlSecTmplTransformAddXPath
  - xmlSecTmplTransformAddXPath2
  - xmlSecTmplTransformAddXPointer
  - xmlSecTmplNodeWriteNsList
  source_file: /src/xmlsec/src/templates.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecPtrListSetDefaultAllocMode
  - xmlSecPtrListCreate
  - xmlSecPtrListDestroy
  - xmlSecPtrListInitialize
  - xmlSecPtrListFinalize
  - xmlSecPtrListEmpty
  - xmlSecPtrListCopy
  - xmlSecPtrListDuplicate
  - xmlSecPtrListGetSize
  - xmlSecPtrListGetItem
  - xmlSecPtrListAdd
  - xmlSecPtrListInsert
  - xmlSecPtrListSet
  - xmlSecPtrListRemove
  - xmlSecPtrListRemoveAndReturn
  - xmlSecPtrListDebugDump
  - xmlSecPtrListDebugXmlDump
  - xmlSecPtrListEnsureSize
  - xmlSecStringListGetKlass
  - xmlSecStringListDuplicateItem
  - xmlSecStringListDestroyItem
  source_file: /src/xmlsec/src/list.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformXmlParserGetKlass
  - xmlSecParserInitialize
  - xmlSecParserFinalize
  - xmlSecParserPushBin
  - xmlSecParserPopXml
  - xmlSecParseFile
  - xmlSecParseMemoryExt
  - xmlSecParseMemory
  - xmlSecParsePrepareCtxt
  - xmlSecParserGetDefaultOptions
  - xmlSecParserSetDefaultOptions
  source_file: /src/xmlsec/src/parser.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlCtxtPushInput
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/src/parser.c
      type_or_value: inputPush
    - item_type: preproc_def
      name: xmlSecParserSize
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/xmlsec/src/parser.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(Parser)
    structs:
    - fields:
      - name: parserCtx
        type: xmlParserCtxtPtr
      item_type: struct
      name: _xmlSecParserCtx
      pos:
        line_end: 48
        line_start: 46
        source_file: /src/xmlsec/src/parser.c
    - fields:
      - name: '*prefix'
        type: xmlSecByte
      - name: prefixSize
        type: xmlSecSize
      - name: '*buffer'
        type: xmlSecByte
      - name: bufferSize
        type: xmlSecSize
      - name: '*postfix'
        type: xmlSecByte
      - name: postfixSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecExtMemoryParserCtx
      pos:
        line_end: 341
        line_start: 334
        source_file: /src/xmlsec/src/parser.c
    typedefs:
    - item_type: typedef
      name: xmlSecParserCtx
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/parser.c
      type: _xmlSecParserCtx
    union: []
- function_names:
  - xmlSecDSigCtxCreate
  - xmlSecDSigCtxDestroy
  - xmlSecDSigCtxInitialize
  - xmlSecDSigCtxFinalize
  - xmlSecDSigCtxEnableReferenceTransform
  - xmlSecDSigCtxEnableSignatureTransform
  - xmlSecDSigCtxGetPreSignBuffer
  - xmlSecDSigCtxSign
  - xmlSecDSigCtxVerify
  - xmlSecDSigCtxMarkAsSucceeded
  - xmlSecDSigCtxMarkAsFailed
  - xmlSecDSigCtxProcessSignatureNode
  - xmlSecDSigCtxProcessSignedInfoNode
  - xmlSecDSigCtxProcessReferences
  - xmlSecDSigCtxProcessKeyInfoNode
  - xmlSecDSigCtxProcessObjectNode
  - xmlSecDSigCtxProcessManifestNode
  - xmlSecDSigCtxGetStatusString
  - xmlSecDSigCtxGetFailureReasonString
  - xmlSecDSigCtxDebugDump
  - xmlSecDSigCtxDebugXmlDump
  - xmlSecDSigReferenceCtxCreate
  - xmlSecDSigReferenceCtxDestroy
  - xmlSecDSigReferenceCtxInitialize
  - xmlSecDSigReferenceCtxFinalize
  - xmlSecDSigReferenceCtxGetPreDigestBuffer
  - xmlSecDSigReferenceCtxProcessNode
  - xmlSecDSigReferenceCtxDebugDump
  - xmlSecDSigReferenceCtxDebugXmlDump
  - xmlSecDSigReferenceCtxListGetKlass
  source_file: /src/xmlsec/src/xmldsig.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformMemBufGetKlass
  - xmlSecTransformMemBufGetBuffer
  - xmlSecTransformMemBufInitialize
  - xmlSecTransformMemBufFinalize
  - xmlSecTransformMemBufExecute
  source_file: /src/xmlsec/src/membuf.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMemBufSize
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/membuf.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MemBuf)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGetParent
  - xmlSecNodeSetCreate
  - xmlSecNodeSetDestroy
  - xmlSecNodeSetDocDestroy
  - xmlSecNodeSetOneContains
  - xmlSecNodeSetContains
  - xmlSecNodeSetAdd
  - xmlSecNodeSetAddList
  - xmlSecNodeSetWalk
  - xmlSecNodeSetWalkRecursive
  - xmlSecNodeSetGetChildren
  - xmlSecNodeSetDumpTextNodesWalkCallback
  - xmlSecNodeSetDumpTextNodes
  - xmlSecNodeSetDebugDump
  source_file: /src/xmlsec/src/nodeset.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecIOCallbackCreate
  - xmlSecIOCallbackDestroy
  - xmlSecIOCallbackPtrListGetKlass
  - xmlSecIOCallbackPtrListFind
  - xmlSecIOInit
  - xmlSecIOShutdown
  - xmlSecIOCleanupCallbacks
  - xmlSecIORegisterCallbacks
  - xmlSecIOFileExtractFilename
  - xmlSecIOFileMatch
  - xmlSecIOFileOpen
  - xmlSecIOFileRead
  - xmlSecIOFilClose
  - xmlSecIORegisterDefaultCallbacks
  - xmlSecTransformInputURIGetKlass
  - xmlSecTransformInputURIOpen
  - xmlSecTransformInputURIClose
  - xmlSecTransformInputURIInitialize
  - xmlSecTransformInputURIFinalize
  - xmlSecTransformInputURIPopBin
  source_file: /src/xmlsec/src/io.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NO_HTTP
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/io.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_FTP
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/io.c
      type_or_value: '1'
    - item_type: preproc_def
      name: xmlSecIOCallbackPtrListId
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/src/io.c
      type_or_value: xmlSecIOCallbackPtrListGetKlass ()
    - item_type: preproc_def
      name: xmlSecInputUriSize
      pos:
        line_end: 466
        line_start: 465
        source_file: /src/xmlsec/src/io.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(InputUri)
    structs:
    - fields:
      - name: matchcallback
        type: xmlInputMatchCallback
      - name: opencallback
        type: xmlInputOpenCallback
      - name: readcallback
        type: xmlInputReadCallback
      - name: closecallback
        type: xmlInputCloseCallback
      item_type: struct
      name: _xmlSecIOCallback
      pos:
        line_end: 63
        line_start: 58
        source_file: /src/xmlsec/src/io.c
    - fields:
      - name: clbks
        type: xmlSecIOCallbackPtr
      - name: '*                       clbksCtx'
        type: void
      item_type: struct
      name: _xmlSecInputURICtx
      pos:
        line_end: 462
        line_start: 459
        source_file: /src/xmlsec/src/io.c
    typedefs:
    - item_type: typedef
      name: xmlSecInputURICtx
      pos:
        line_end: 458
        line_start: 457
        source_file: /src/xmlsec/src/io.c
      type: _xmlSecInputURICtx
    union: []
- function_names: []
  source_file: /src/xmlsec/src/strings.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecBase64Encode1
  - xmlSecBase64Encode2
  - xmlSecBase64Encode3
  - xmlSecBase64Encode4
  - xmlSecBase64Decode1
  - xmlSecBase64Decode2
  - xmlSecBase64Decode3
  - xmlSecIsBase64Char
  - xmlSecIsBase64Space
  - xmlSecBase64GetDefaultLineSize
  - xmlSecBase64SetDefaultLineSize
  - xmlSecBase64CtxCreate
  - xmlSecBase64CtxDestroy
  - xmlSecBase64CtxInitialize
  - xmlSecBase64CtxFinalize
  - xmlSecBase64CtxUpdate_ex
  - xmlSecBase64CtxFinal_ex
  - xmlSecBase64CtxEncodeByte
  - xmlSecBase64CtxEncodeByteFinal
  - xmlSecBase64CtxDecodeByte
  - xmlSecBase64CtxEncode
  - xmlSecBase64CtxEncodeFinal
  - xmlSecBase64CtxDecode
  - xmlSecBase64CtxDecodeIsFinished
  - xmlSecBase64GetEncodeSize
  - xmlSecBase64GetDecodeSize
  - xmlSecBase64Encode
  - xmlSecBase64Decode_ex
  - xmlSecBase64DecodeInPlace
  - xmlSecTransformBase64GetKlass
  - xmlSecTransformBase64SetLineSize
  - xmlSecBase64Initialize
  - xmlSecBase64Finalize
  - xmlSecBase64Execute
  source_file: /src/xmlsec/src/base64.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecBase64Size
      pos:
        line_end: 751
        line_start: 750
        source_file: /src/xmlsec/src/base64.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(Base64)
    structs:
    - fields:
      - name: encode
        type: int
      - name: columns
        type: xmlSecSize
      - name: inByte
        type: int
      - name: inPos
        type: xmlSecSize
      - name: linePos
        type: xmlSecSize
      - name: finished
        type: int
      item_type: struct
      name: _xmlSecBase64Ctx
      pos:
        line_end: 88
        line_start: 81
        source_file: /src/xmlsec/src/base64.c
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformIdsGet
  - xmlSecTransformIdsInit
  - xmlSecTransformIdsShutdown
  - xmlSecTransformIdsRegister
  - xmlSecTransformIdsRegisterDefault
  - xmlSecTransformUriTypeCheck
  - xmlSecTransformCtxGetDefaultBinaryChunkSize
  - xmlSecTransformCtxSetDefaultBinaryChunkSize
  - xmlSecTransformCtxCreate
  - xmlSecTransformCtxDestroy
  - xmlSecTransformCtxInitialize
  - xmlSecTransformCtxFinalize
  - xmlSecTransformCtxReset
  - xmlSecTransformCtxCopyUserPref
  - xmlSecTransformCtxAppend
  - xmlSecTransformCtxPrepend
  - xmlSecTransformCtxCreateAndAppend
  - xmlSecTransformCtxCreateAndPrepend
  - xmlSecTransformCtxNodeRead
  - xmlSecTransformCtxNodesListRead
  - xmlSecTransformCtxSetUri
  - xmlSecTransformCtxPrepare
  - xmlSecTransformCtxBinaryExecute
  - xmlSecTransformCtxUriExecute
  - xmlSecTransformCtxXmlExecute
  - xmlSecTransformCtxExecute
  - xmlSecTransformCtxDebugDump
  - xmlSecTransformCtxDebugXmlDump
  - xmlSecTransformCreate
  - xmlSecTransformDestroy
  - xmlSecTransformNodeRead
  - xmlSecTransformPump
  - xmlSecTransformSetKey
  - xmlSecTransformSetKeyReq
  - xmlSecTransformVerify
  - xmlSecTransformVerifyNodeContent
  - xmlSecTransformGetDataType
  - xmlSecTransformPushBin
  - xmlSecTransformPopBin
  - xmlSecTransformPushXml
  - xmlSecTransformPopXml
  - xmlSecTransformExecute
  - xmlSecTransformDebugDump
  - xmlSecTransformDebugXmlDump
  - xmlSecTransformConnect
  - xmlSecTransformRemove
  - xmlSecTransformDefaultGetDataType
  - xmlSecTransformDefaultPushBin
  - xmlSecTransformDefaultPopBin
  - xmlSecTransformDefaultPushXml
  - xmlSecTransformDefaultPopXml
  - xmlSecTransformIdListGetKlass
  - xmlSecTransformIdListFind
  - xmlSecTransformIdListFindByHref
  - xmlSecTransformIdListFindByName
  - xmlSecTransformIdListDebugDump
  - xmlSecTransformIdListDebugXmlDump
  - xmlSecTransformCreateOutputBuffer
  - xmlSecTransformCreateInputBuffer
  - xmlSecTransformIOBufferCreate
  - xmlSecTransformIOBufferDestroy
  - xmlSecTransformIOBufferRead
  - xmlSecTransformIOBufferWrite
  - xmlSecTransformIOBufferClose
  - xmlSecTransformConcatKdfParamsReadsBitsAttr
  - xmlSecTransformConcatKdfParamsInitialize
  - xmlSecTransformConcatKdfParamsFinalize
  - xmlSecTransformConcatKdfParamsRead
  - xmlSecTransformConcatKdfParamsGetFixedInfo
  - xmlSecTransformKeyAgreementParamsInitialize
  - xmlSecTransformKeyAgreementParamsFinalize
  - xmlSecTransformKeyAgreementReadKey
  - xmlSecTransformKeyAgreementWriteKey
  - xmlSecTransformKeyAgreementParamsRead
  - xmlSecTransformKeyAgreementParamsWrite
  - xmlSecTransformHmacGetMinOutputBitsSize
  - xmlSecTransformHmacSetMinOutputBitsSize
  - xmlSecTransformHmacReadOutputBitsSize
  - xmlSecTransformHmacWriteOutput
  - xmlSecTransformHmacVerify
  - xmlSecTransformPbkdf2ParamsInitialize
  - xmlSecTransformPbkdf2ParamsFinalize
  - xmlSecTransformPbkdf2ParamsReadSalt
  - xmlSecTransformPbkdf2ParamsRead
  - xmlSecTransformRsaOaepParamsInitialize
  - xmlSecTransformRsaOaepParamsFinalize
  - xmlSecTransformRsaOaepParamsRead
  source_file: /src/xmlsec/src/transforms.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_XPOINTER_TMPL
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/src/transforms.c
      type_or_value: '"xpointer(id(\''%s\''))"'
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_CONCATKDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 2619
        line_start: 2618
        source_file: /src/xmlsec/src/transforms.c
      type_or_value: '64'
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_PBKDF2_DEFAULT_BUF_SIZE
      pos:
        line_end: 3349
        line_start: 3348
        source_file: /src/xmlsec/src/transforms.c
      type_or_value: '64'
    structs:
    - fields:
      - name: mode
        type: xmlSecTransformIOBufferMode
      - name: transform
        type: xmlSecTransformPtr
      - name: transformCtx
        type: xmlSecTransformCtxPtr
      item_type: struct
      name: _xmlSecTransformIOBuffer
      pos:
        line_end: 2400
        line_start: 2396
        source_file: /src/xmlsec/src/transforms.c
    typedefs:
    - item_type: typedef
      name: xmlSecTransformIOBuffer
      pos:
        line_end: 2390
        line_start: 2389
        source_file: /src/xmlsec/src/transforms.c
      type: _xmlSecTransformIOBuffer
    union: []
- function_names:
  - xmlSecCryptoInit
  - xmlSecCryptoShutdown
  - xmlSecCryptoKeysMngrInit
  - xmlSecKeyDataAesGetKlass
  - xmlSecKeyDataConcatKdfGetKlass
  - xmlSecKeyDataDesGetKlass
  - xmlSecKeyDataDhGetKlass
  - xmlSecKeyDataDsaGetKlass
  - xmlSecKeyDataEcGetKlass
  - xmlSecKeyDataGost2001GetKlass
  - xmlSecKeyDataGostR3410_2012_256GetKlass
  - xmlSecKeyDataGostR3410_2012_512GetKlass
  - xmlSecKeyDataHmacGetKlass
  - xmlSecKeyDataPbkdf2GetKlass
  - xmlSecKeyDataRsaGetKlass
  - xmlSecKeyDataX509GetKlass
  - xmlSecKeyDataRawX509CertGetKlass
  - xmlSecKeyDataDEREncodedKeyValueGetKlass
  - xmlSecX509StoreGetKlass
  - xmlSecTransformAes128CbcGetKlass
  - xmlSecTransformAes192CbcGetKlass
  - xmlSecTransformAes256CbcGetKlass
  - xmlSecTransformAes128GcmGetKlass
  - xmlSecTransformAes192GcmGetKlass
  - xmlSecTransformAes256GcmGetKlass
  - xmlSecTransformConcatKdfGetKlass
  - xmlSecTransformKWAes128GetKlass
  - xmlSecTransformKWAes192GetKlass
  - xmlSecTransformKWAes256GetKlass
  - xmlSecTransformDes3CbcGetKlass
  - xmlSecTransformKWDes3GetKlass
  - xmlSecTransformDhEsGetKlass
  - xmlSecTransformDsaSha1GetKlass
  - xmlSecTransformDsaSha256GetKlass
  - xmlSecTransformEcdhGetKlass
  - xmlSecTransformEcdsaRipemd160GetKlass
  - xmlSecTransformEcdsaSha1GetKlass
  - xmlSecTransformEcdsaSha224GetKlass
  - xmlSecTransformEcdsaSha256GetKlass
  - xmlSecTransformEcdsaSha384GetKlass
  - xmlSecTransformEcdsaSha512GetKlass
  - xmlSecTransformEcdsaSha3_224GetKlass
  - xmlSecTransformEcdsaSha3_256GetKlass
  - xmlSecTransformEcdsaSha3_384GetKlass
  - xmlSecTransformEcdsaSha3_512GetKlass
  - xmlSecTransformGost2001GostR3411_94GetKlass
  - xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass
  - xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass
  - xmlSecTransformHmacMd5GetKlass
  - xmlSecTransformHmacRipemd160GetKlass
  - xmlSecTransformHmacSha1GetKlass
  - xmlSecTransformHmacSha224GetKlass
  - xmlSecTransformHmacSha256GetKlass
  - xmlSecTransformHmacSha384GetKlass
  - xmlSecTransformHmacSha512GetKlass
  - xmlSecTransformMd5GetKlass
  - xmlSecTransformPbkdf2GetKlass
  - xmlSecTransformRipemd160GetKlass
  - xmlSecTransformRsaMd5GetKlass
  - xmlSecTransformRsaRipemd160GetKlass
  - xmlSecTransformRsaSha1GetKlass
  - xmlSecTransformRsaSha224GetKlass
  - xmlSecTransformRsaSha256GetKlass
  - xmlSecTransformRsaSha384GetKlass
  - xmlSecTransformRsaSha512GetKlass
  - xmlSecTransformRsaPssSha1GetKlass
  - xmlSecTransformRsaPssSha224GetKlass
  - xmlSecTransformRsaPssSha256GetKlass
  - xmlSecTransformRsaPssSha384GetKlass
  - xmlSecTransformRsaPssSha512GetKlass
  - xmlSecTransformRsaPssSha3_224GetKlass
  - xmlSecTransformRsaPssSha3_256GetKlass
  - xmlSecTransformRsaPssSha3_384GetKlass
  - xmlSecTransformRsaPssSha3_512GetKlass
  - xmlSecTransformRsaPkcs1GetKlass
  - xmlSecTransformRsaOaepGetKlass
  - xmlSecTransformRsaOaepEnc11GetKlass
  - xmlSecTransformGostR3411_94GetKlass
  - xmlSecTransformGostR3411_2012_256GetKlass
  - xmlSecTransformGostR3411_2012_512GetKlass
  - xmlSecTransformSha1GetKlass
  - xmlSecTransformSha224GetKlass
  - xmlSecTransformSha256GetKlass
  - xmlSecTransformSha384GetKlass
  - xmlSecTransformSha512GetKlass
  - xmlSecTransformSha3_224GetKlass
  - xmlSecTransformSha3_256GetKlass
  - xmlSecTransformSha3_384GetKlass
  - xmlSecTransformSha3_512GetKlass
  - xmlSecCryptoAppInit
  - xmlSecCryptoAppShutdown
  - xmlSecCryptoAppDefaultKeysMngrInit
  - xmlSecCryptoAppDefaultKeysMngrAdoptKey
  - xmlSecCryptoAppDefaultKeysMngrVerifyKey
  - xmlSecCryptoAppDefaultKeysMngrLoad
  - xmlSecCryptoAppDefaultKeysMngrSave
  - xmlSecCryptoAppKeysMngrCertLoad
  - xmlSecCryptoAppKeysMngrCertLoadMemory
  - xmlSecCryptoAppKeysMngrCrlLoad
  - xmlSecCryptoAppKeysMngrCrlLoadMemory
  - xmlSecCryptoAppKeyLoadEx
  - xmlSecCryptoAppKeyLoadMemory
  - xmlSecCryptoAppPkcs12Load
  - xmlSecCryptoAppPkcs12LoadMemory
  - xmlSecCryptoAppKeyCertLoad
  - xmlSecCryptoAppKeyCertLoadMemory
  - xmlSecCryptoAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - XMLSEC_ENUM_CAST
  - XMLSEC_SAFE_CAST_MIN_MAX_CHECK
  - XMLSEC_SAFE_CAST_MAX_CHECK
  - XMLSEC_SAFE_CAST_MIN_CHECK
  - XMLSEC_SAFE_CAST_INT_TO_BYTE
  - XMLSEC_SAFE_CAST_UINT_TO_BYTE
  - XMLSEC_SAFE_CAST_SIZE_TO_BYTE
  - XMLSEC_SAFE_CAST_UINT_TO_INT
  - XMLSEC_SAFE_CAST_ULONG_TO_INT
  - XMLSEC_SAFE_CAST_LONG_TO_INT
  - XMLSEC_SAFE_CAST_SIZE_T_TO_INT
  - XMLSEC_SAFE_CAST_SIZE_T_TO_INT
  - XMLSEC_SAFE_CAST_SIZE_TO_INT
  - XMLSEC_SAFE_CAST_SIZE_TO_INT
  - XMLSEC_SAFE_CAST_PTRDIFF_TO_INT
  - XMLSEC_SAFE_CAST_INT_TO_UINT
  - XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
  - XMLSEC_SAFE_CAST_SIZE_T_TO_UINT
  - XMLSEC_SAFE_CAST_SIZE_TO_UINT
  - XMLSEC_SAFE_CAST_SIZE_TO_UINT
  - XMLSEC_SAFE_CAST_UINT_TO_LONG
  - XMLSEC_SAFE_CAST_UINT_TO_LONG
  - XMLSEC_SAFE_CAST_SIZE_T_TO_LONG
  - XMLSEC_SAFE_CAST_SIZE_T_TO_LONG
  - XMLSEC_SAFE_CAST_SIZE_TO_LONG
  - XMLSEC_SAFE_CAST_SIZE_TO_LONG
  - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
  - XMLSEC_SAFE_CAST_SIZE_TO_ULONG
  - XMLSEC_SAFE_CAST_INT_TO_ULONG
  - XMLSEC_SAFE_CAST_INT_TO_ULONG
  - XMLSEC_SAFE_CAST_INT_TO_SIZE
  - XMLSEC_SAFE_CAST_INT_TO_SIZE
  - XMLSEC_SAFE_CAST_UINT_TO_SIZE
  - XMLSEC_SAFE_CAST_UINT_TO_SIZE
  - XMLSEC_SAFE_CAST_LONG_TO_SIZE
  - XMLSEC_SAFE_CAST_LONG_TO_SIZE
  - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
  - XMLSEC_SAFE_CAST_ULONG_TO_SIZE
  - XMLSEC_SAFE_CAST_SIZE_T_TO_SIZE
  - XMLSEC_CHILD_STRUCT_DECLARE
  - XMLSEC_CHILD_STRUCT_SIZE
  - XMLSEC_TRANSFORM_DECLARE
  - XMLSEC_TRANSFORM_SIZE
  - XMLSEC_KEY_DATA_DECLARE
  - XMLSEC_KEY_DATA_SIZE
  - XMLSEC_KEY_DATA_STORE_DECLARE
  - XMLSEC_KEY_DATA_STORE_SIZE
  - XMLSEC_KEY_STORE_DECLARE
  - XMLSEC_KEY_STORE_SIZE
  source_file: /src/xmlsec/src/cast_helpers.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_ENUM_FMT
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/src/cast_helpers.h
      type_or_value: '"%d"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecX509EscapedStringRead
  - xmlSecX509AttrValueStringRead
  - xmlSecX509NameRead
  source_file: /src/xmlsec/src/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_X509_NAME_SIZE
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '256'
    - item_type: preproc_def
      name: XMLSEC_X509_VALUE_SIZE
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '1024'
    - item_type: preproc_def
      name: XMLSEC_X509_NAME_READ_STATE_NORMAL
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XMLSEC_X509_NAME_READ_STATE_AFTER_SLASH1
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_X509_NAME_READ_STATE_AFTER_SLASH2
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '2'
    - item_type: preproc_def
      name: XMLSEC_X509_NAME_READ_STATE_DELIMETER
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/x509.c
      type_or_value: '3'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecInternalError
  - xmlSecInternalError2
  - xmlSecInternalError3
  - xmlSecInternalError4
  - xmlSecMallocError
  - xmlSecStrdupError
  - xmlSecXmlError
  - xmlSecXmlError2
  - xmlSecXmlParserError
  - xmlSecXmlParserError2
  - xmlSecXsltError
  - xmlSecIOError
  - xmlSecNotImplementedError
  - xmlSecNotImplementedError2
  - xmlSecInvalidSizeError
  - xmlSecInvalidSizeLessThanError
  - xmlSecInvalidSizeMoreThanError
  - xmlSecInvalidSizeNotMultipleOfError
  - xmlSecInvalidSizeOtherError
  - xmlSecInvalidDataError
  - xmlSecInvalidStringDataError
  - xmlSecInvalidIntegerDataError
  - xmlSecInvalidIntegerDataError2
  - xmlSecInvalidSizeDataError
  - xmlSecInvalidSizeDataError2
  - xmlSecInvalidTypeError
  - xmlSecInvalidStringTypeError
  - xmlSecInvalidIntegerTypeError
  - xmlSecInvalidIntegerTypeError2
  - xmlSecUnsupportedEnumValueError
  - xmlSecInvalidNodeError
  - xmlSecInvalidNodeContentError
  - xmlSecInvalidNodeContentError2
  - xmlSecInvalidNodeContentError3
  - xmlSecInvalidNodeAttributeError
  - xmlSecNodeAlreadyPresentError
  - xmlSecUnexpectedNodeError
  - xmlSecNodeNotFoundError
  - xmlSecInvalidTransfromError
  - xmlSecInvalidTransfromError2
  - xmlSecInvalidTransfromError3
  - xmlSecInvalidTransfromStatusError
  - xmlSecInvalidTransfromStatusError2
  - xmlSecInvalidKeyDataSizeError
  - xmlSecInvalidZeroKeyDataSizeError
  - xmlSecImpossibleCastError
  - xmlSecOtherError
  - xmlSecOtherError2
  - xmlSecOtherError3
  - xmlSecOtherError4
  - xmlSecOtherError5
  source_file: /src/xmlsec/src/errors_helpers.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecBufferSetDefaultAllocMode
  - xmlSecBufferCreate
  - xmlSecBufferDestroy
  - xmlSecBufferInitialize
  - xmlSecBufferFinalize
  - xmlSecBufferEmpty
  - xmlSecBufferIsEmpty
  - xmlSecBufferGetData
  - xmlSecBufferSetData
  - xmlSecBufferGetSize
  - xmlSecBufferSetSize
  - xmlSecBufferGetMaxSize
  - xmlSecBufferSetMaxSize
  - SWAP
  - xmlSecBufferSwap
  - xmlSecBufferAppend
  - xmlSecBufferPrepend
  - xmlSecBufferRemoveHead
  - xmlSecBufferRemoveTail
  - xmlSecBufferReverse
  - xmlSecBufferReadFile
  - xmlSecBufferBase64NodeContentRead
  - xmlSecBufferBase64NodeContentWrite
  - xmlSecBufferHexRead
  - xmlSecBufferCreateOutputBuffer
  - xmlSecBufferIOWrite
  - xmlSecBufferIOClose
  source_file: /src/xmlsec/src/buffer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - XMLSEC_TRANSFORM_HMAC_BITS_TO_BYTES
  source_file: /src/xmlsec/src/transform_helpers.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_HMAC_MAX_OUTPUT_SIZE
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/src/transform_helpers.h
      type_or_value: 128U
    structs:
    - fields:
      - name: kdfTransform
        type: xmlSecTransformPtr
      - name: kdfKeyInfoCtx
        type: xmlSecKeyInfoCtx
      - name: memBufTransform
        type: xmlSecTransformPtr
      - name: keyOriginator
        type: xmlSecKeyPtr
      - name: keyRecipient
        type: xmlSecKeyPtr
      item_type: struct
      name: _xmlSecTransformKeyAgreementParams
      pos:
        line_end: 33
        line_start: 25
        source_file: /src/xmlsec/src/transform_helpers.h
    - fields:
      - name: '* digestMethod'
        type: xmlChar
      - name: bufAlgorithmID
        type: xmlSecBuffer
      - name: bufPartyUInfo
        type: xmlSecBuffer
      - name: bufPartyVInfo
        type: xmlSecBuffer
      - name: bufSuppPubInfo
        type: xmlSecBuffer
      - name: bufSuppPrivInfo
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecTransformConcatKdfParams
      pos:
        line_end: 58
        line_start: 51
        source_file: /src/xmlsec/src/transform_helpers.h
    - fields:
      - name: salt
        type: xmlSecBuffer
      - name: iterationCount
        type: xmlSecSize
      - name: keyLength
        type: xmlSecSize
      - name: '* prfAlgorithmHref'
        type: xmlChar
      item_type: struct
      name: _xmlSecTransformPbkdf2Params
      pos:
        line_end: 103
        line_start: 98
        source_file: /src/xmlsec/src/transform_helpers.h
    - fields:
      - name: oaepParams
        type: xmlSecBuffer
      - name: '*    digestAlgorithm'
        type: xmlChar
      - name: '*    mgf1DigestAlgorithm'
        type: xmlChar
      item_type: struct
      name: _xmlSecTransformRsaOaepParams
      pos:
        line_end: 122
        line_start: 118
        source_file: /src/xmlsec/src/transform_helpers.h
    typedefs:
    - item_type: typedef
      name: xmlSecTransformKeyAgreementParams
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/xmlsec/src/transform_helpers.h
      type: _xmlSecTransformKeyAgreementParams
    - item_type: typedef
      name: xmlSecTransformConcatKdfParams
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/xmlsec/src/transform_helpers.h
      type: _xmlSecTransformConcatKdfParams
    - item_type: typedef
      name: xmlSecTransformPbkdf2Params
      pos:
        line_end: 104
        line_start: 104
        source_file: /src/xmlsec/src/transform_helpers.h
      type: _xmlSecTransformPbkdf2Params
    - item_type: typedef
      name: xmlSecTransformRsaOaepParams
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/src/transform_helpers.h
      type: _xmlSecTransformRsaOaepParams
    union: []
- function_names: []
  source_file: /src/xmlsec/src/xslt.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformKWDes3Initialize
  - xmlSecTransformKWDes3Finalize
  - xmlSecTransformKWDes3SetKeyReq
  - xmlSecTransformKWDes3SetKey
  - xmlSecTransformKWDes3Execute
  - xmlSecKWDes3Encode
  - xmlSecKWDes3Decode
  - xmlSecKWDes3BufferReverse
  - xmlSecTransformKWAesInitialize
  - xmlSecTransformKWAesFinalize
  - xmlSecTransformKWAesSetKeyReq
  - xmlSecTransformKWAesSetKey
  - xmlSecTransformKWAesExecute
  - xmlSecKWAesEncode
  - xmlSecKWAesDecode
  source_file: /src/xmlsec/src/kw_aes_des.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformRelationshipGetKlass
  - xmlSecRelationshipInitialize
  - xmlSecRelationshipFinalize
  - xmlSecRelationshipReadNode
  - xmlSecTransformRelationshipCompare
  - xmlSecTransformRelationshipProcessNode
  - xmlSecTransformRelationshipProcessNodeList
  - xmlSecTransformRelationshipWriteProp
  - xmlSecTransformRelationshipWriteNs
  - xmlSecTransformRelationshipProcessElementNode
  - xmlSecTransformRelationshipExecute
  - xmlSecTransformRelationshipPushXml
  - xmlSecTransformRelationshipPopBin
  source_file: /src/xmlsec/src/relationship.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecRelationshipSize
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/src/relationship.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(Relationship)
    structs:
    - fields:
      - name: sourceIdList
        type: xmlSecPtrListPtr
      item_type: struct
      name: _xmlSecRelationshipCtx
      pos:
        line_end: 104
        line_start: 102
        source_file: /src/xmlsec/src/relationship.c
    typedefs:
    - item_type: typedef
      name: xmlSecRelationshipCtx
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/src/relationship.c
      type: _xmlSecRelationshipCtx
    union: []
- function_names:
  - xmlSecXPathHereFunction
  - xmlSecXPathDataCreate
  - xmlSecXPathDataDestroy
  - xmlSecXPathDataSetExpr
  - xmlSecXPathDataRegisterNamespaces
  - xmlSecXPathDataNodeRead
  - xmlSecXPathDataExecute
  - xmlSecXPathDataListGetKlass
  - xmlSecXPathDataListExecute
  - xmlSecTransformXPathCheckId
  - xmlSecTransformXPathInitialize
  - xmlSecTransformXPathFinalize
  - xmlSecTransformXPathExecute
  - xmlSecTransformXPathGetKlass
  - xmlSecTransformXPathNodeRead
  - xmlSecTransformXPath2GetKlass
  - xmlSecTransformXPath2NodeRead
  - xmlSecTransformXPointerGetKlass
  - xmlSecTransformXPointerSetExpr
  - xmlSecTransformXPointerNodeRead
  - xmlSecTransformVisa3DHackCheckId
  - xmlSecTransformVisa3DHackGetKlass
  - xmlSecTransformVisa3DHackSetID
  - xmlSecTransformVisa3DHackInitialize
  - xmlSecTransformVisa3DHackFinalize
  - xmlSecTransformVisa3DHackExecute
  source_file: /src/xmlsec/src/xpath.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecXPathDataListId
      pos:
        line_end: 287
        line_start: 285
        source_file: /src/xmlsec/src/xpath.c
      type_or_value: xmlSecXPathDataListGetKlass()
    - item_type: preproc_def
      name: xmlSecXPathSize
      pos:
        line_end: 363
        line_start: 362
        source_file: /src/xmlsec/src/xpath.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(XPath)
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_XPATH_TMPL
      pos:
        line_end: 486
        line_start: 485
        source_file: /src/xmlsec/src/xpath.c
      type_or_value: '"(//. | //@* | //namespace::*)[boolean(%s)]"'
    - item_type: preproc_def
      name: xmlSecVisa3DHackSize
      pos:
        line_end: 884
        line_start: 883
        source_file: /src/xmlsec/src/xpath.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(Visa3DHack)
    structs:
    - fields:
      - name: type
        type: xmlSecXPathDataType
      - name: ctx
        type: xmlXPathContextPtr
      - name: '*                            expr'
        type: xmlChar
      - name: nodeSetOp
        type: xmlSecNodeSetOp
      - name: nodeSetType
        type: xmlSecNodeSetType
      item_type: struct
      name: _xmlSecXPathData
      pos:
        line_end: 73
        line_start: 67
        source_file: /src/xmlsec/src/xpath.c
    typedefs:
    - item_type: typedef
      name: xmlSecXPathData
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/src/xpath.c
      type: _xmlSecXPathData
    union: []
- function_names: []
  source_file: /src/xmlsec/src/x509_helpers.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_X509_VALUE_TYPE_UF8_STRING
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/xmlsec/src/x509_helpers.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XMLSEC_X509_VALUE_TYPE_OCTET_STRING
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/src/x509_helpers.h
      type_or_value: '1'
    structs:
    - fields:
      - name: '* original'
        type: xmlChar
      - name: '* replacement'
        type: xmlChar
      item_type: struct
      name: _xmlSecx509NameReplacements
      pos:
        line_end: 33
        line_start: 30
        source_file: /src/xmlsec/src/x509_helpers.h
    typedefs:
    - item_type: typedef
      name: "(*xmlSecX509NameReadCallback)   (const xmlChar * name,\n                                                         const
        xmlChar * value,\n                                                         xmlSecSize
        valueSize,\n                                                         int type,\n
        \                                                        void * context)"
      pos:
        line_end: 29
        line_start: 25
        source_file: /src/xmlsec/src/x509_helpers.h
      type: int
    union: []
- function_names:
  - xmlSecKeyUseWithInitialize
  - xmlSecKeyUseWithFinalize
  - xmlSecKeyUseWithReset
  - xmlSecKeyUseWithCopy
  - xmlSecKeyUseWithCreate
  - xmlSecKeyUseWithDuplicate
  - xmlSecKeyUseWithDestroy
  - xmlSecKeyUseWithSet
  - xmlSecKeyUseWithDebugDump
  - xmlSecKeyUseWithDebugXmlDump
  - xmlSecKeyUseWithPtrListGetKlass
  - xmlSecKeyReqInitialize
  - xmlSecKeyReqFinalize
  - xmlSecKeyReqReset
  - xmlSecKeyReqCopy
  - xmlSecKeyReqMatchKey
  - xmlSecKeyReqMatchKeyValue
  - xmlSecKeyReqDebugDump
  - xmlSecKeyReqDebugXmlDump
  - xmlSecKeyCreate
  - xmlSecKeyEmpty
  - xmlSecKeyDestroy
  - xmlSecKeyCopy
  - XMLSEC_SWAP
  - xmlSecKeySwap
  - xmlSecKeyDuplicate
  - xmlSecKeyMatch
  - xmlSecKeyGetType
  - xmlSecKeyGetName
  - xmlSecKeySetName
  - xmlSecKeySetNameEx
  - xmlSecKeyGetValue
  - xmlSecKeySetValue
  - xmlSecKeyGetSize
  - xmlSecKeyGetData
  - xmlSecKeyEnsureData
  - xmlSecKeyAdoptData
  - xmlSecKeyDebugDump
  - xmlSecKeyDebugXmlDump
  - xmlSecKeyGenerate
  - xmlSecKeyGenerateByName
  - xmlSecKeyReadBuffer
  - xmlSecKeyReadBinaryFile
  - xmlSecKeyReadMemory
  - xmlSecKeysMngrGetKey
  - xmlSecKeyPtrListGetKlass
  source_file: /src/xmlsec/src/keys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecErrorsInit
  - xmlSecErrorsShutdown
  - xmlSecErrorsSetCallback
  - xmlSecErrorsDefaultCallback
  - xmlSecErrorsDefaultCallbackEnableOutput
  - xmlSecErrorsGetCode
  - xmlSecErrorsGetMsg
  - xmlSecError
  - xmlSecErrorsPrintCryptoLibraryLogOnExitSet
  - xmlSecErrorsPrintCryptoLibraryLogOnExitIsEnabled
  source_file: /src/xmlsec/src/errors.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_ERRORS_BUFFER_SIZE
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/errors.c
      type_or_value: '1024'
    structs:
    - fields:
      - name: errorCode
        type: int
      - name: '*         errorMsg'
        type: char
      item_type: struct
      name: _xmlSecErrorDescription
      pos:
        line_end: 41
        line_start: 38
        source_file: /src/xmlsec/src/errors.c
    typedefs:
    - item_type: typedef
      name: xmlSecErrorDescription
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/xmlsec/src/errors.c
      type: _xmlSecErrorDescription
    union: []
- function_names:
  - xmlSecTransformEnvelopedGetKlass
  - xmlSecTransformEnvelopedExecute
  source_file: /src/xmlsec/src/enveloped.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCryptoDLLibraryCreate
  - xmlSecCryptoDLLibraryDestroy
  - xmlSecCryptoDLLibraryDuplicate
  - xmlSecCryptoDLLibraryConstructFilename
  - xmlSecCryptoDLLibraryConstructGetFunctionsName
  - xmlSecCryptoDLLibrariesListGetKlass
  - xmlSecCryptoDLLibrariesListFindByName
  - xmlSecCryptoDLInit
  - xmlSecCryptoDLShutdown
  - xmlSecCryptoDLLoadLibrary
  - xmlSecCryptoDLGetLibraryFunctions
  - xmlSecCryptoDLUnloadLibrary
  - xmlSecCryptoDLSetFunctions
  - xmlSecCryptoDLGetFunctions
  - XMLSEC_REGISTER_KEY_DATA
  - XMLSEC_REGISTER_DISABLED_KEY_DATA
  - XMLSEC_REGISTER_TRANSFORM
  - xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
  source_file: /src/xmlsec/src/dl.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_DL_LIB_TMPL
      pos:
        line_end: 251
        line_start: 250
        source_file: /src/xmlsec/src/dl.c
      type_or_value: '"lib%s-%s"'
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_DL_GET_FUNCTIONS_TMPL
      pos:
        line_end: 283
        line_start: 282
        source_file: /src/xmlsec/src/dl.c
      type_or_value: '"xmlSecCryptoGetFunctions_%s"'
    structs:
    - fields:
      - name: '*    name'
        type: xmlChar
      - name: '*    filename'
        type: xmlChar
      - name: '*    getFunctionsName'
        type: xmlChar
      - name: functions
        type: xmlSecCryptoDLFunctionsPtr
      item_type: struct
      name: _xmlSecCryptoDLLibrary
      pos:
        line_end: 69
        line_start: 56
        source_file: /src/xmlsec/src/dl.c
    typedefs:
    - item_type: typedef
      name: xmlSecCryptoDLLibrary
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/dl.c
      type: _xmlSecCryptoDLLibrary
    - item_type: typedef
      name: xmlSecCryptoGetFunctionsCallback(void)
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/xmlsec/src/dl.c
      type: xmlSecCryptoDLFunctionsPtr
    union: []
- function_names:
  - xmlSecBnCreate
  - xmlSecBnDestroy
  - xmlSecBnInitialize
  - xmlSecBnFinalize
  - xmlSecBnGetData
  - xmlSecBnSetData
  - xmlSecBnGetSize
  - xmlSecBnZero
  - xmlSecBnFromString
  - xmlSecBnToString
  - xmlSecBnFromHexString
  - xmlSecBnToHexString
  - xmlSecBnFromDecString
  - xmlSecBnToDecString
  - xmlSecBnMul
  - xmlSecBnDiv
  - xmlSecBnAdd
  - xmlSecBnReverse
  - xmlSecBnCompare
  - xmlSecBnCompareReverse
  - xmlSecBnGetNodeValue
  - xmlSecBnSetNodeValue
  - xmlSecBnBlobSetNodeValue
  source_file: /src/xmlsec/src/bn.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_BN_REV_MAX
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/bn.c
      type_or_value: '16'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecEncCtxCreate
  - xmlSecEncCtxDestroy
  - xmlSecEncCtxSetDefaults
  - xmlSecEncCtxInitialize
  - xmlSecEncCtxFinalize
  - xmlSecEncCtxReset
  - xmlSecEncCtxCopyUserPref
  - xmlSecEncCtxBinaryEncrypt
  - xmlSecEncCtxXmlEncrypt
  - xmlSecEncCtxUriEncrypt
  - xmlSecEncCtxDecrypt
  - xmlSecEncCtxDecryptToBuffer
  - xmlSecEncCtxEncDataNodeRead
  - xmlSecEncCtxEncDataNodeWrite
  - xmlSecEncCtxCipherDataNodeRead
  - xmlSecEncCtxCipherReferenceNodeRead
  - xmlSecEncCtxMarkAsFailed
  - xmlSecEncCtxDebugDump
  - xmlSecEncCtxDebugXmlDump
  - xmlSecEncCtxGenerateKey
  - xmlSecEncCtxDerivedKeyGenerate
  - xmlSecEncCtxAgreementMethodGenerate
  - xmlSecEncCtxAgreementMethodXmlWrite
  - xmlSecEncCtxGetFailureReasonString
  source_file: /src/xmlsec/src/xmlenc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformC14NCheckId
  - xmlSecTransformInclC14NCheckId
  - xmlSecTransformInclC14N11CheckId
  - xmlSecTransformExclC14NCheckId
  - xmlSecTransformC14NInitialize
  - xmlSecTransformC14NFinalize
  - xmlSecTransformC14NNodeRead
  - xmlSecTransformC14NPushXml
  - xmlSecTransformC14NPopBin
  - xmlSecTransformC14NExecute
  - xmlSecTransformInclC14NGetKlass
  - xmlSecTransformInclC14NWithCommentsGetKlass
  - xmlSecTransformInclC14N11GetKlass
  - xmlSecTransformInclC14N11WithCommentsGetKlass
  - xmlSecTransformExclC14NGetKlass
  - xmlSecTransformExclC14NWithCommentsGetKlass
  - xmlSecTransformRemoveXmlTagsC14NGetKlass
  source_file: /src/xmlsec/src/c14n.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecC14NSize
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/c14n.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(C14N)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecKeysMngrCreate
  - xmlSecKeysMngrDestroy
  - xmlSecKeysMngrFindKey
  - xmlSecKeysMngrFindKeyFromX509Data
  - xmlSecKeysMngrAdoptKeysStore
  - xmlSecKeysMngrGetKeysStore
  - xmlSecKeysMngrAdoptDataStore
  - xmlSecKeysMngrGetDataStore
  - xmlSecKeyStoreCreate
  - xmlSecKeyStoreDestroy
  - xmlSecKeyStoreFindKey
  - xmlSecKeyStoreFindKeyFromX509Data
  - xmlSecSimpleKeysStoreGetKlass
  - xmlSecSimpleKeysStoreAdoptKey
  - xmlSecSimpleKeysStoreLoad
  - xmlSecSimpleKeysStoreEnableAllKeyData
  - xmlSecSimpleKeysStoreLoad_ex
  - xmlSecSimpleKeysStoreSave
  - xmlSecSimpleKeysStoreGetKeys
  - xmlSecSimpleKeysStoreInitialize
  - xmlSecSimpleKeysStoreFinalize
  - xmlSecSimpleKeysStoreFindKey
  source_file: /src/xmlsec/src/keysmngr.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecSimpleKeysStoreSize
      pos:
        line_end: 364
        line_start: 363
        source_file: /src/xmlsec/src/keysmngr.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(SimpleKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecKeyInfoNodeRead
  - xmlSecKeyInfoNodeWrite
  - xmlSecKeyInfoCtxCreate
  - xmlSecKeyInfoCtxDestroy
  - xmlSecKeyInfoCtxInitialize
  - xmlSecKeyInfoCtxFinalize
  - xmlSecKeyInfoCtxReset
  - xmlSecKeyInfoCtxCreateEncCtx
  - xmlSecKeyInfoCtxCopyUserPref
  - xmlSecKeyInfoCtxDebugDump
  - xmlSecKeyInfoCtxDebugXmlDump
  - xmlSecKeyDataNameGetKlass
  - xmlSecKeyDataNameXmlRead
  - xmlSecKeyDataNameXmlWrite
  - xmlSecKeyDataValueGetKlass
  - xmlSecKeyDataValueXmlRead
  - xmlSecKeyDataValueXmlWrite
  - xmlSecKeyDataRetrievalMethodGetKlass
  - xmlSecKeyDataRetrievalMethodXmlRead
  - xmlSecKeyDataRetrievalMethodXmlWrite
  - xmlSecKeyDataRetrievalMethodReadXmlResult
  - xmlSecKeyDataKeyInfoReferenceGetKlass
  - xmlSecKeyDataKeyInfoReferenceXmlRead
  - xmlSecKeyDataKeyInfoReferenceXmlWrite
  - xmlSecKeyDataKeyInfoReferenceReadXmlResult
  - xmlSecKeyDataEncryptedKeyGetKlass
  - xmlSecKeyDataEncryptedKeyXmlRead
  - xmlSecKeyDataEncryptedKeyXmlWrite
  - xmlSecKeyDataDerivedKeyGetKlass
  - xmlSecKeyDataDerivedKeyXmlRead
  - xmlSecKeyDataDerivedKeyXmlWrite
  - xmlSecKeyDataAgreementMethodGetKlass
  - xmlSecKeyDataAgreementMethodXmlRead
  - xmlSecKeyDataAgreementMethodXmlWrite
  source_file: /src/xmlsec/src/keyinfo.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGetDefaultLineFeed
  - xmlSecSetDefaultLineFeed
  - xmlSecGetNodeContentAndTrim
  - xmlSecGetNodeContentAsSize
  - xmlSecFindSibling
  - xmlSecFindChild
  - xmlSecFindParent
  - xmlSecFindNode
  - xmlSecGetNodeNsHref
  - xmlSecCheckNodeName
  - xmlSecAddChild
  - xmlSecAddChildNode
  - xmlSecEnsureEmptyChild
  - xmlSecAddNextSibling
  - xmlSecAddPrevSibling
  - xmlSecGetNextElementNode
  - xmlSecReplaceNode
  - xmlSecReplaceNodeAndReturn
  - xmlSecReplaceContent
  - xmlSecReplaceContentAndReturn
  - xmlSecReplaceNodeBuffer
  - xmlSecReplaceNodeBufferAndReturn
  - xmlSecNodeEncodeAndSetContent
  - xmlSecAddIDs
  - xmlSecCreateTree
  - xmlSecIsEmptyNode
  - xmlSecIsEmptyString
  - xmlSecPrintXmlString
  - xmlSecGetQName
  - xmlSecQName2IntegerGetInfo
  - xmlSecQName2IntegerGetInteger
  - xmlSecQName2IntegerGetIntegerFromString
  - xmlSecQName2IntegerGetStringFromInteger
  - xmlSecQName2IntegerNodeRead
  - xmlSecQName2IntegerNodeWrite
  - xmlSecQName2IntegerAttributeRead
  - xmlSecQName2IntegerAttributeWrite
  - xmlSecQName2IntegerDebugDump
  - xmlSecQName2IntegerDebugXmlDump
  - xmlSecQName2BitMaskGetInfo
  - xmlSecQName2BitMaskGetBitMask
  - xmlSecQName2BitMaskGetBitMaskFromString
  - xmlSecQName2BitMaskGetStringFromBitMask
  - xmlSecQName2BitMaskNodesRead
  - xmlSecQName2BitMaskNodesWrite
  - xmlSecQName2BitMaskDebugDump
  - xmlSecQName2BitMaskDebugXmlDump
  - xmlSecWin32ConvertUtf8ToUnicode
  - xmlSecWin32ConvertUnicodeToUtf8
  - xmlSecWin32ConvertLocaleToUnicode
  - xmlSecWin32ConvertLocaleToUtf8
  - xmlSecWin32ConvertUtf8ToLocale
  - xmlSecWin32ConvertTstrToUtf8
  - xmlSecWin32ConvertUtf8ToTstr
  source_file: /src/xmlsec/src/xmltree.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecNoXxeExternalEntityLoader
  - xmlSecSetExternalEntityLoader
  - xmlSecInit
  - xmlSecShutdown
  - xmlSecGetDefaultCrypto
  - xmlSecCheckVersionExt
  - xmlSecStrlen
  source_file: /src/xmlsec/src/xmlsec.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecKWDes3CheckId
  source_file: /src/xmlsec/src/kw_aes_des.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_KW_DES3_KEY_LENGTH
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)24)
    - item_type: preproc_def
      name: XMLSEC_KW_DES3_IV_LENGTH
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)8)
    - item_type: preproc_def
      name: XMLSEC_KW_DES3_BLOCK_LENGTH
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)8)
    - item_type: preproc_def
      name: XMLSEC_KW_DES3_SHA_DIGEST_LENGTH
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)20)
    - item_type: preproc_def
      name: XMLSEC_KW_AES_IN_SIZE_MULTIPLY
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)8)
    - item_type: preproc_def
      name: XMLSEC_KW_AES_MAGIC_BLOCK_SIZE
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)8)
    - item_type: preproc_def
      name: XMLSEC_KW_AES_BLOCK_SIZE
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)16)
    - item_type: preproc_def
      name: XMLSEC_KW_AES128_KEY_SIZE
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)16)
    - item_type: preproc_def
      name: XMLSEC_KW_AES192_KEY_SIZE
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)24)
    - item_type: preproc_def
      name: XMLSEC_KW_AES256_KEY_SIZE
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/src/kw_aes_des.h
      type_or_value: ((xmlSecSize)32)
    structs:
    - fields:
      - name: generateRandom
        type: xmlSecKWDes3GenerateRandomMethod
      - name: sha1
        type: xmlSecKWDes3Sha1Method
      - name: encrypt
        type: xmlSecKWDes3BlockEncryptMethod
      - name: decrypt
        type: xmlSecKWDes3BlockDecryptMethod
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKWDes3Klass
      pos:
        line_end: 77
        line_start: 67
        source_file: /src/xmlsec/src/kw_aes_des.h
    - fields:
      - name: kwDes3Id
        type: xmlSecKWDes3Id
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyBuffer
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecTransformKWDes3Ctx
      pos:
        line_end: 103
        line_start: 99
        source_file: /src/xmlsec/src/kw_aes_des.h
    - fields:
      - name: encrypt
        type: xmlSecKWAesBlockEncryptMethod
      - name: decrypt
        type: xmlSecKWAesBlockDecryptMethod
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKWAesKlass
      pos:
        line_end: 157
        line_start: 149
        source_file: /src/xmlsec/src/kw_aes_des.h
    - fields:
      - name: kwAesId
        type: xmlSecKWAesId
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyBuffer
        type: xmlSecBuffer
      - name: keyExpectedSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecTransformKWAesCtx
      pos:
        line_end: 173
        line_start: 168
        source_file: /src/xmlsec/src/kw_aes_des.h
    typedefs:
    - item_type: typedef
      name: "(*xmlSecKWDes3Sha1Method)              (xmlSecTransformPtr transform,\n
        \                                                    const xmlSecByte * in,\n
        \                                                    xmlSecSize inSize,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 44
        line_start: 39
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKWDes3GenerateRandomMethod)    (xmlSecTransformPtr transform,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 48
        line_start: 45
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKWDes3BlockEncryptMethod)      (xmlSecTransformPtr transform,\n
        \                                                    const xmlSecByte * iv,\n
        \                                                    xmlSecSize ivSize,\n
        \                                                    const xmlSecByte * in,\n
        \                                                    xmlSecSize inSize,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 56
        line_start: 49
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKWDes3BlockDecryptMethod)      (xmlSecTransformPtr transform,\n
        \                                                    const xmlSecByte * iv,\n
        \                                                    xmlSecSize ivSize,\n
        \                                                    const xmlSecByte * in,\n
        \                                                    xmlSecSize inSize,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 64
        line_start: 57
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: xmlSecKWDes3Klass
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: _xmlSecKWDes3Klass
    - item_type: typedef
      name: xmlSecTransformKWDes3Ctx
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: _xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: "(*xmlSecKWAesBlockEncryptMethod)       (xmlSecTransformPtr transform,\n
        \                                                    const xmlSecByte * in,\n
        \                                                    xmlSecSize inSize,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 140
        line_start: 135
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKWAesBlockDecryptMethod)       (xmlSecTransformPtr transform,\n
        \                                                    const xmlSecByte * in,\n
        \                                                    xmlSecSize inSize,\n
        \                                                    xmlSecByte * out,\n                                                     xmlSecSize
        outSize,\n                                                     xmlSecSize
        * outWritten)"
      pos:
        line_end: 146
        line_start: 141
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: int
    - item_type: typedef
      name: xmlSecKWAesKlass
      pos:
        line_end: 159
        line_start: 158
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: _xmlSecKWAesKlass
    - item_type: typedef
      name: xmlSecTransformKWAesCtx
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/xmlsec/src/kw_aes_des.h
      type: _xmlSecTransformKWAesCtx
    union: []
- function_names:
  - xmlSecKeyDataIdsGet
  - xmlSecKeyDataIdsGetEnabled
  - xmlSecKeyDataIdsInit
  - xmlSecKeyDataIdsShutdown
  - xmlSecKeyDataIdsRegister
  - xmlSecKeyDataIdsRegisterDisabled
  - xmlSecKeyDataIdsRegisterDefault
  - xmlSecKeyDataCreate
  - xmlSecKeyDataDuplicate
  - xmlSecKeyDataDestroy
  - xmlSecKeyDataXmlRead
  - xmlSecKeyDataXmlWrite
  - xmlSecKeyDataBinRead
  - xmlSecKeyDataBinWrite
  - xmlSecKeyDataGenerate
  - xmlSecKeyDataGetType
  - xmlSecKeyDataGetSize
  - xmlSecKeyDataGetIdentifier
  - xmlSecKeyDataDebugDump
  - xmlSecKeyDataDebugXmlDump
  - xmlSecKeyDataBinaryValueInitialize
  - xmlSecKeyDataBinaryValueDuplicate
  - xmlSecKeyDataBinaryValueFinalize
  - xmlSecKeyDataBinaryValueXmlRead
  - xmlSecKeyDataBinaryValueXmlWrite
  - xmlSecKeyDataBinaryValueBinRead
  - xmlSecKeyDataBinaryValueBinWrite
  - xmlSecKeyDataBinaryValueDebugDump
  - xmlSecKeyDataBinaryValueDebugXmlDump
  - xmlSecKeyDataBinaryValueGetSize
  - xmlSecKeyDataBinaryValueGetBuffer
  - xmlSecKeyDataBinaryValueSetBuffer
  - xmlSecKeyDataEcXmlRead
  - xmlSecKeyDataEcXmlWrite
  - xmlSecKeyValueEcInitialize
  - xmlSecKeyValueEcFinalize
  - xmlSecKeyDataEcPublicKeySplitComponents
  - xmlSecKeyDataEcPublicKeyCombineComponents
  - xmlSecKeyValueEcXmlRead
  - xmlSecKeyValueEcXmlWrite
  - xmlSecKeyDataDhXmlRead
  - xmlSecKeyDataDhXmlWrite
  - xmlSecKeyValueDhInitialize
  - xmlSecKeyValueDhFinalize
  - xmlSecKeyValueDhXmlRead
  - xmlSecKeyValueDhXmlWrite
  - xmlSecKeyDataDsaXmlRead
  - xmlSecKeyDataDsaXmlWrite
  - xmlSecKeyValueDsaInitialize
  - xmlSecKeyValueDsaFinalize
  - xmlSecKeyValueDsaXmlRead
  - xmlSecKeyValueDsaXmlWrite
  - xmlSecKeyDataRsaXmlRead
  - xmlSecKeyDataRsaXmlWrite
  - xmlSecKeyValueRsaInitialize
  - xmlSecKeyValueRsaFinalize
  - xmlSecKeyValueRsaXmlRead
  - xmlSecKeyValueRsaXmlWrite
  - xmlSecKeyDataX509XmlRead
  - xmlSecX509DataGetNodeContent
  - xmlSecKeyDataX509XmlWrite
  - xmlSecKeyX509DataValueInitialize
  - xmlSecKeyX509DataValueFinalize
  - xmlSecKeyX509DataValueReset
  - xmlSecKeyX509DataValueXmlReadBase64Blob
  - xmlSecKeyX509DataValueXmlReadString
  - xmlSecKeyX509DataValueXmlReadIssuerSerial
  - xmlSecKeyX509DataValueXmlRead
  - xmlSecKeyX509DataValueXmlWriteBase64Blob
  - xmlSecKeyX509DataValueXmlWriteString
  - xmlSecKeyX509DataValueXmlWrite
  - xmlSecKeyDataListGetKlass
  - xmlSecKeyDataIdListGetKlass
  - xmlSecKeyDataIdListFind
  - xmlSecKeyDataIdListFindByNode
  - xmlSecKeyDataIdListFindByHref
  - xmlSecKeyDataIdListFindByName
  - xmlSecKeyDataIdListDebugDump
  - xmlSecKeyDataIdListDebugXmlDump
  - xmlSecKeyDataStoreCreate
  - xmlSecKeyDataStoreDestroy
  - xmlSecKeyDataStorePtrListGetKlass
  - xmlSecImportSetPersistKey
  - xmlSecImportGetPersistKey
  source_file: /src/xmlsec/src/keysdata.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_KEY_DATA_EC_INIT_BUF_SIZE
      pos:
        line_end: 1033
        line_start: 1032
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '256'
    - item_type: preproc_def
      name: XMLSEC_ECKEYVALYU_ECPOINT_MAGIC_BYTE
      pos:
        line_end: 1255
        line_start: 1254
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '0x04'
    - item_type: preproc_def
      name: XMLSEC_KEYVALUE_EC_OID_PREFIX
      pos:
        line_end: 1368
        line_start: 1367
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: (BAD_CAST "urn:oid:")
    - item_type: preproc_def
      name: XMLSEC_KEY_DATA_DH_INIT_BUF_SIZE
      pos:
        line_end: 1516
        line_start: 1515
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '512'
    - item_type: preproc_def
      name: XMLSEC_KEY_DATA_DSA_INIT_BUF_SIZE
      pos:
        line_end: 1977
        line_start: 1976
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '512'
    - item_type: preproc_def
      name: XMLSEC_KEY_DATA_RSA_INIT_BUF_SIZE
      pos:
        line_end: 2427
        line_start: 2426
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '512'
    - item_type: preproc_def
      name: XMLSEC_KEY_DATA_X509_INIT_BUF_SIZE
      pos:
        line_end: 2865
        line_start: 2864
        source_file: /src/xmlsec/src/keysdata.c
      type_or_value: '512'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/keysdata_helpers.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecKeyDataBinarySize
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type_or_value: (sizeof(xmlSecKeyDataBinary))
    structs:
    - fields:
      - name: keyData
        type: xmlSecKeyData
      - name: buffer
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyDataBinary
      pos:
        line_end: 40
        line_start: 37
        source_file: /src/xmlsec/src/keysdata_helpers.h
    - fields:
      - name: '* curve'
        type: xmlChar
      - name: pubkey
        type: xmlSecBuffer
      - name: pub_x
        type: xmlSecBuffer
      - name: pub_y
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyValueEc
      pos:
        line_end: 85
        line_start: 80
        source_file: /src/xmlsec/src/keysdata_helpers.h
    - fields:
      - name: modulus
        type: xmlSecBuffer
      - name: publicExponent
        type: xmlSecBuffer
      - name: privateExponent
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyValueRsa
      pos:
        line_end: 143
        line_start: 139
        source_file: /src/xmlsec/src/keysdata_helpers.h
    - fields:
      - name: p
        type: xmlSecBuffer
      - name: q
        type: xmlSecBuffer
      - name: generator
        type: xmlSecBuffer
      - name: public
        type: xmlSecBuffer
      - name: seed
        type: xmlSecBuffer
      - name: pgenCounter
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyValueDh
      pos:
        line_end: 201
        line_start: 194
        source_file: /src/xmlsec/src/keysdata_helpers.h
    - fields:
      - name: p
        type: xmlSecBuffer
      - name: q
        type: xmlSecBuffer
      - name: g
        type: xmlSecBuffer
      - name: x
        type: xmlSecBuffer
      - name: y
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyValueDsa
      pos:
        line_end: 258
        line_start: 252
        source_file: /src/xmlsec/src/keysdata_helpers.h
    typedefs:
    - item_type: typedef
      name: "(*xmlSecKeyDataEcRead)                   (xmlSecKeyDataId id,\n                                                                         xmlSecKeyValueEcPtr
        ecValue)"
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: xmlSecKeyDataPtr
    - item_type: typedef
      name: "(*xmlSecKeyDataEcWrite)                  (xmlSecKeyDataId id,\n                                                                         xmlSecKeyDataPtr
        data,\n                                                                         xmlSecKeyValueEcPtr
        ecValue)"
      pos:
        line_end: 111
        line_start: 109
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataRsaRead)                  (xmlSecKeyDataId id,\n                                                                         xmlSecKeyValueRsaPtr
        rsaValue)"
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: xmlSecKeyDataPtr
    - item_type: typedef
      name: "(*xmlSecKeyDataRsaWrite)                 (xmlSecKeyDataId id,\n                                                                         xmlSecKeyDataPtr
        data,\n                                                                         xmlSecKeyValueRsaPtr
        rsaValue,\n                                                                         int
        writePrivateKey)"
      pos:
        line_end: 171
        line_start: 168
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataDhRead)                  (xmlSecKeyDataId id,\n                                                                         xmlSecKeyValueDhPtr
        dhValue)"
      pos:
        line_end: 213
        line_start: 212
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: xmlSecKeyDataPtr
    - item_type: typedef
      name: "(*xmlSecKeyDataDhWrite)                  (xmlSecKeyDataId id,\n                                                                         xmlSecKeyDataPtr
        data,\n                                                                         xmlSecKeyValueDhPtr
        dhValue,\n                                                                         int
        writePrivateKey)"
      pos:
        line_end: 229
        line_start: 226
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataDsaRead)                  (xmlSecKeyDataId id,\n                                                                         xmlSecKeyValueDsaPtr
        dsaValue)"
      pos:
        line_end: 270
        line_start: 269
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: xmlSecKeyDataPtr
    - item_type: typedef
      name: "(*xmlSecKeyDataDsaWrite)                 (xmlSecKeyDataId id,\n                                                                         xmlSecKeyDataPtr
        data,\n                                                                         xmlSecKeyValueDsaPtr
        dsaValue,\n                                                                         int
        writePrivateKey)"
      pos:
        line_end: 286
        line_start: 283
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataX509Read)                 (xmlSecKeyDataPtr data,\n                                                                         xmlSecKeyX509DataValuePtr
        x509Value,\n                                                                         xmlSecKeysMngrPtr
        keysMngr,\n                                                                         unsigned
        int flags)"
      pos:
        line_end: 323
        line_start: 320
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataX509Write)                (xmlSecKeyDataPtr data,\n                                                                         xmlSecKeyX509DataValuePtr
        x509Value,\n                                                                         int
        content,\n                                                                         void*
        context)"
      pos:
        line_end: 340
        line_start: 337
        source_file: /src/xmlsec/src/keysdata_helpers.h
      type: int
    union: []
- function_names:
  - xmlSecMSCngGcmBlockCipherCheckId
  - xmlSecMSCngGcmBlockCipherInitialize
  - xmlSecMSCngGcmBlockCipherFinalize
  - xmlSecMSCngGcmBlockCipherSetKeyReq
  - xmlSecMSCngGcmBlockCipherSetKey
  - xmlSecMSCngGcmBlockCipherCtxInit
  - xmlSecMSCngGcmBlockCipherCtxUpdate
  - xmlSecMSCngGcmBlockCipherCtxFinal
  - xmlSecMSCngGcmBlockCipherExecute
  - xmlSecMSCngTransformAes128GcmGetKlass
  - xmlSecMSCngTransformAes192GcmGetKlass
  - xmlSecMSCngTransformAes256GcmGetKlass
  source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngGcmBlockCipherSize
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngGcmBlockCipher)
    - item_type: preproc_def
      name: xmlSecMSCngAesGcmNonceLengthInBytes
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
      type_or_value: '12'
    - item_type: preproc_def
      name: xmlSecMSCngAesGcmTagLengthInBytes
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
      type_or_value: '16'
    structs:
    - fields:
      - name: pszAlgId
        type: LPCWSTR
      - name: hAlg
        type: BCRYPT_ALG_HANDLE
      - name: hKey
        type: BCRYPT_KEY_HANDLE
      - name: authInfo
        type: BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO
      - name: pbIV
        type: PBYTE
      - name: cbIV
        type: ULONG
      - name: pbKeyObject
        type: PBYTE
      - name: dwBlockLen
        type: DWORD
      - name: keyId
        type: xmlSecKeyDataId
      - name: keySize
        type: xmlSecSize
      - name: ctxInitialized
        type: int
      item_type: struct
      name: _xmlSecMSCngGcmBlockCipherCtx
      pos:
        line_end: 48
        line_start: 36
        source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngGcmBlockCipherCtx
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/xmlsec/src/mscng/ciphers_gcm.c
      type: _xmlSecMSCngGcmBlockCipherCtx
    union: []
- function_names:
  - xmlSecMSCngLastError
  - xmlSecMSCngLastError2
  - xmlSecMSCngNtError
  - xmlSecMSCngNtError2
  - xmlSecMSCngNtError3
  source_file: /src/xmlsec/src/mscng/globals.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCngKWAesCheckId
  - xmlSecMSCngKWAesInitialize
  - xmlSecMSCngKWAesFinalize
  - xmlSecMSCngKWAesSetKeyReq
  - xmlSecMSCngKWAesSetKey
  - xmlSecMSCngKWAesExecute
  - xmlSecMSCngTransformKWAes128GetKlass
  - xmlSecMSCngTransformKWAes192GetKlass
  - xmlSecMSCngTransformKWAes256GetKlass
  - xmlSecMSCngKWAesBlockEncrypt
  - xmlSecMSCngKWAesBlockDecrypt
  source_file: /src/xmlsec/src/mscng/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKWAesSize
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/src/mscng/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      - name: pszAlgId
        type: LPCWSTR
      item_type: struct
      name: _xmlSecMSCngKWAesCtx
      pos:
        line_end: 60
        line_start: 56
        source_file: /src/xmlsec/src/mscng/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngKWAesCtx
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/xmlsec/src/mscng/kw_aes.c
      type: _xmlSecMSCngKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 657
        line_start: 657
        source_file: /src/xmlsec/src/mscng/kw_aes.c
      type: int
    union: []
- function_names:
  - xmlSecMSCngCbcBlockCipherCheckId
  - xmlSecMSCngCbcBlockCipherInitialize
  - xmlSecMSCngCbcBlockCipherFinalize
  - xmlSecMSCngCbcBlockCipherSetKeyReq
  - xmlSecMSCngCbcBlockCipherSetKey
  - xmlSecMSCngCbcBlockCipherCtxInit
  - xmlSecMSCngCbcBlockCipherCtxUpdate
  - xmlSecMSCngCbcBlockCipherCtxFinal
  - xmlSecMSCngCbcBlockCipherExecute
  - xmlSecMSCngTransformAes128CbcGetKlass
  - xmlSecMSCngTransformAes192CbcGetKlass
  - xmlSecMSCngTransformAes256CbcGetKlass
  - xmlSecMSCngTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/mscng/ciphers_cbc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngCbcBlockCipherSize
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/src/mscng/ciphers_cbc.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngCbcBlockCipher)
    structs:
    - fields:
      - name: pszAlgId
        type: LPCWSTR
      - name: hAlg
        type: BCRYPT_ALG_HANDLE
      - name: hKey
        type: BCRYPT_KEY_HANDLE
      - name: pbIV
        type: PBYTE
      - name: cbIV
        type: ULONG
      - name: pbKeyObject
        type: PBYTE
      - name: dwBlockLen
        type: DWORD
      - name: keyId
        type: xmlSecKeyDataId
      - name: keySize
        type: xmlSecSize
      - name: ctxInitialized
        type: int
      item_type: struct
      name: _xmlSecMSCngCbcBlockCipherCtx
      pos:
        line_end: 47
        line_start: 36
        source_file: /src/xmlsec/src/mscng/ciphers_cbc.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngCbcBlockCipherCtx
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/xmlsec/src/mscng/ciphers_cbc.c
      type: _xmlSecMSCngCbcBlockCipherCtx
    union: []
- function_names:
  - xmlSecMSCngPbkdf2CheckId
  - xmlSecMSCngPbkdf2Initialize
  - xmlSecMSCngPbkdf2Finalize
  - xmlSecMSCngPbkdf2SetKeyReq
  - xmlSecMSCngPbkdf2SetKey
  - xmlSecMSCngPbkdf2GetMacFromHref
  - xmlSecMSCngPbkdf2NodeRead
  - xmlSecMSCngPbkdf2PeformKeyDerivation
  - xmlSecMSCngPbkdf2Derive
  - xmlSecMSCngPbkdf2Execute
  - xmlSecMSCngTransformPbkdf2GetKlass
  source_file: /src/xmlsec/src/mscng/pbkdf2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: KDF_SALT
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type_or_value: '0xF'
    - item_type: preproc_def
      name: KDF_ITERATION_COUNT
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type_or_value: '0x10'
    - item_type: preproc_def
      name: XMLSEC_MSCNG_KDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type_or_value: '64'
    - item_type: preproc_def
      name: xmlSecMSCngPbkdf2CtxSize
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngPbkdf2)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformPbkdf2Params
      - name: pszAlgId
        type: LPCWSTR
      - name: key
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecMSCngPbkdf2Ctx
      pos:
        line_end: 58
        line_start: 54
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngPbkdf2Ctx
      pos:
        line_end: 53
        line_start: 53
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type: _xmlSecMSCngPbkdf2Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 515
        line_start: 515
        source_file: /src/xmlsec/src/mscng/pbkdf2.c
      type: int
    union: []
- function_names:
  - xmlSecMSCngKWDes3GenerateRandom
  - xmlSecMSCngKWDes3Sha1
  - xmlSecMSCngKWDes3BlockEncrypt
  - xmlSecMSCngKWDes3BlockDecrypt
  - xmlSecMSCngKWDes3Initialize
  - xmlSecMSCngKWDes3Finalize
  - xmlSecMSCngKWDes3SetKeyReq
  - xmlSecMSCngKWDes3SetKey
  - xmlSecMSCngKWDes3Execute
  - xmlSecMSCngTransformKWDes3GetKlass
  source_file: /src/xmlsec/src/mscng/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKWDes3Size
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscng/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngKWDes3)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngKWDes3Ctx
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/mscng/kw_des.c
      type: xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 701
        line_start: 701
        source_file: /src/xmlsec/src/mscng/kw_des.c
      type: int
    union: []
- function_names:
  - xmlSecMSCngAppInit
  - xmlSecMSCngAppShutdown
  - xmlSecMSCngAppGetCertStoreName
  - xmlSecMSCngAppKeyLoadEx
  - xmlSecMSCngAppKeyLoadMemory
  - xmlSecMSCngAppKeyCertLoad
  - xmlSecMSCngAppKeyCertLoadMemory
  - xmlSecMSCngAppPkcs12Load
  - xmlSecMSCngIsPrivateKeyCert
  - xmlSecMSCngAppPkcs12LoadMemory
  - xmlSecMSCngAppKeysMngrCertLoad
  - xmlSecMSCngAppKeysMngrCertLoadMemory
  - xmlSecMSCngAppKeysMngrCrlLoad
  - xmlSecMSCngAppKeysMngrCrlLoadMemory
  - xmlSecMSCngAppDefaultKeysMngrInit
  - xmlSecMSCngAppDefaultKeysMngrAdoptKey
  - xmlSecMSCngAppDefaultKeysMngrVerifyKey
  - xmlSecMSCngAppDefaultKeysMngrLoad
  - xmlSecMSCngAppDefaultKeysMngrSave
  - xmlSecMSCngAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/mscng/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/mscng/private.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: wcSubjectName
        type: LPTSTR
      - name: wcIssuerName
        type: LPTSTR
      - name: issuerSerialBn
        type: xmlSecBnPtr
      - name: '* ski'
        type: xmlSecByte
      - name: skiLen
        type: DWORD
      - name: '* digestValue'
        type: xmlSecByte
      - name: digestLen
        type: DWORD
      item_type: struct
      name: _xmlSecMSCngX509FindCertCtx
      pos:
        line_end: 60
        line_start: 49
        source_file: /src/xmlsec/src/mscng/private.h
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCngKeyDataX509Initialize
  - xmlSecMSCngKeyDataX509Finalize
  - xmlSecMSCngKeyDataX509Duplicate
  - xmlSecMSCngX509CertDerRead
  - xmlSecMSCngKeyDataX509AddCertInternal
  - xmlSecMSCngKeyDataX509AdoptKeyCert
  - xmlSecMSCngKeyDataX509AdoptCert
  - xmlSecMSCngKeyDataX509AdoptCrl
  - xmlSecMSCngKeyDataX509GetKeyCert
  - xmlSecMSCngKeyDataX509GetCertStore
  - xmlSecMSCngX509CrlDerRead
  - xmlSecMSCngX509CertGetTime
  - xmlSecMSCnVerifyAndAdoptX509KeyData
  - xmlSecMSCngKeyDataX509Read
  - xmlSecMSCngKeyDataX509XmlRead
  - xmlSecMSCngX509NameWrite
  - xmlSecMSCngASN1IntegerWrite
  - xmlSecMSCngX509SKIWrite
  - xmlSecMSCngX509DigestWrite
  - xmlSecMSCngKeyDataX509Write
  - xmlSecMSCngKeyDataX509XmlWrite
  - xmlSecMSCngKeyDataX509DebugDump
  - xmlSecMSCngKeyDataX509DebugXmlDump
  - xmlSecMSCngKeyDataX509GetKlass
  - xmlSecMSCngKeyDataRawX509CertBinRead
  - xmlSecMSCngKeyDataRawX509CertGetKlass
  source_file: /src/xmlsec/src/mscng/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngX509DataSize
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/src/mscng/x509.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(MSCngX509Data)
    - item_type: preproc_def
      name: XMLSEC_MSCNG_SHA1_DIGEST_SIZE
      pos:
        line_end: 740
        line_start: 739
        source_file: /src/xmlsec/src/mscng/x509.c
      type_or_value: '20'
    structs:
    - fields:
      - name: hMemStore
        type: HCERTSTORE
      - name: keyCert
        type: PCCERT_CONTEXT
      item_type: struct
      name: _xmlSecMSCngX509DataCtx
      pos:
        line_end: 50
        line_start: 47
        source_file: /src/xmlsec/src/mscng/x509.c
    - fields:
      - name: store
        type: HCERTSTORE
      - name: crt
        type: PCCERT_CONTEXT
      - name: crl
        type: PCCRL_CONTEXT
      - name: doneCrts
        type: int
      - name: doneCrls
        type: int
      item_type: struct
      name: _xmlSecMSCngKeyDataX5099WriteContext
      pos:
        line_end: 784
        line_start: 778
        source_file: /src/xmlsec/src/mscng/x509.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngX509DataCtx
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/mscng/x509.c
      type: _xmlSecMSCngX509DataCtx
    union: []
- function_names:
  - xmlSecMSCngKeyDataCertGetPubkey
  - xmlSecMSCngKeyDataCertGetPrivkey
  - xmlSecMSCngKeyDataAdoptCert
  - xmlSecMSCngKeyDataAdoptKey
  - xmlSecMSCngKeyDataFromAlgorithm
  - xmlSecMSCngCertAdopt
  - xmlSecMSCngKeyDataGetPubKey
  - xmlSecMSCngKeyDataGetPrivKey
  - xmlSecMSCngKeyDataInitialize
  - xmlSecMSCngKeyDataFinalize
  - xmlSecMSCngKeyDataDuplicate
  - xmlSecMSCngKeyDataDEREncodedKeyValueGetKlass
  - xmlSecMSCngKeyDataDEREncodedKeyValueXmlRead
  - xmlSecMSCngKeyDataDEREncodedKeyValueXmlWrite
  - xmlSecMSCngKeyDataDsaRead
  - xmlSecMSCngKeyDataDsaWrite
  - xmlSecMSCngKeyDataDsaDuplicate
  - xmlSecMSCngKeyDataDsaGetType
  - xmlSecMSCngKeyDataDsaGetSize
  - xmlSecMSCngKeyDataDsaXmlRead
  - xmlSecMSCngKeyDataDsaXmlWrite
  - xmlSecMSCngKeyDataDsaDebugDump
  - xmlSecMSCngKeyDataDsaDebugXmlDump
  - xmlSecMSCngKeyDataDsaGenerate
  - xmlSecMSCngKeyDataDsaGetKlass
  - xmlSecMSCngKeyDataRsaRead
  - xmlSecMSCngKeyDataRsaWrite
  - xmlSecMSCngKeyDataRsaDuplicate
  - xmlSecMSCngKeyDataRsaGetType
  - xmlSecMSCngKeyDataGetSize
  - xmlSecMSCngKeyDataRsaGetSize
  - xmlSecMSCngKeyDataRsaDebugDump
  - xmlSecMSCngKeyDataRsaDebugXmlDump
  - xmlSecMSCngKeyDataRsaXmlRead
  - xmlSecMSCngKeyDataRsaXmlWrite
  - xmlSecMSCngKeyDataRsaGenerate
  - xmlSecMSCngKeyDataRsaGetKlass
  - xmlSecMSCngKeyDataEcDuplicate
  - xmlSecMSCngKeyDataEcGetType
  - xmlSecMSCngKeyDataEcGetSize
  - xmlSecMSCngKeyDataEcDebugDump
  - xmlSecMSCngKeyDataEcDebugXmlDump
  - xmlSecOpenSSLKeyDataEcGetOidFromMagic
  - xmlSecOpenSSLKeyDataEcGetTypeAndMagicFromOid
  - xmlSecMSCngKeyDataEcRead
  - xmlSecMSCngKeyDataEcWrite
  - xmlSecMSCngKeyDataEcXmlRead
  - xmlSecMSCngKeyDataEcXmlWrite
  - xmlSecMSCngKeyDataEcGetKlass
  source_file: /src/xmlsec/src/mscng/certkeys.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataSize
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscng/certkeys.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(MSCngKeyData)
    - item_type: preproc_def
      name: XMLSEC_MSCNG_DSA_MAX_Q_SIZE
      pos:
        line_end: 805
        line_start: 804
        source_file: /src/xmlsec/src/mscng/certkeys.c
      type_or_value: (20U)
    structs:
    - fields:
      - name: cert
        type: PCCERT_CONTEXT
      - name: privkey
        type: NCRYPT_KEY_HANDLE
      - name: pubkey
        type: BCRYPT_KEY_HANDLE
      - name: privkeyNeedsFree
        type: BOOL
      item_type: struct
      name: _xmlSecMSCngKeyDataCtx
      pos:
        line_end: 45
        line_start: 40
        source_file: /src/xmlsec/src/mscng/certkeys.c
    - fields:
      - name: magic
        type: ULONG
      - name: blobType
        type: LPCWSTR
      - name: oid[128]
        type: xmlChar
      item_type: struct
      name: _xmlSecMSCngKeyDataEccCurveNameAndMagic
      pos:
        line_end: 1785
        line_start: 1781
        source_file: /src/xmlsec/src/mscng/certkeys.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngKeyDataCtx
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/mscng/certkeys.c
      type: _xmlSecMSCngKeyDataCtx
    union: []
- function_names:
  - xmlSecMSCngEcdhInitialize
  - xmlSecMSCngEcdhFinalize
  - xmlSecMSCngEcdhSetKeyReq
  - xmlSecMSCngEcdhSetKey
  - xmlSecMSCngEcdhNodeRead
  - xmlSecMSCngEcdhNodeWrite
  - xmlSecMSCngEcdhGetPublicKey
  - xmlSecMSCngEcdhGenerateSecret
  - xmlSecMSCngEcdhCreateKdfKey
  - xmlSecMSCngEcdhGenerateExecuteKdf
  - xmlSecMSCngEcdhExecute
  - xmlSecMSCngTransformEcdhGetKlass
  source_file: /src/xmlsec/src/mscng/key_agrmnt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BCRYPT_ECDSA_PUBLIC_GENERIC_MAGIC
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
      type_or_value: 0x50444345  // ECDP
    - item_type: preproc_def
      name: BCRYPT_ECDH_PUBLIC_GENERIC_MAGIC
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
      type_or_value: 0x504B4345  // ECKP
    - item_type: preproc_def
      name: BCRYPT_KDF_RAW_SECRET
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
      type_or_value: L"TRUNCATE"
    - item_type: preproc_def
      name: xmlSecMSCngEcdhSize
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngEcdh)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformKeyAgreementParams
      - name: secretKey
        type: xmlSecKeyPtr
      item_type: struct
      name: _xmlSecMSCngEcdhCtx
      pos:
        line_end: 62
        line_start: 59
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngEcdhCtx
      pos:
        line_end: 58
        line_start: 58
        source_file: /src/xmlsec/src/mscng/key_agrmnt.c
      type: _xmlSecMSCngEcdhCtx
    union: []
- function_names:
  - xmlSecMSCngX509StoreFinalize
  - xmlSecMSCngX509StoreAdoptKeyStore
  - xmlSecMSCngX509StoreAdoptTrustedStore
  - xmlSecMSCngX509StoreAdoptUntrustedStore
  - xmlSecMSCngX509StoreInitialize
  - xmlSecMSCngX509StoreGetKlass
  - xmlSecMSCngX509StoreAdoptCert
  - xmlSecMSCngCheckRevocation
  - xmlSecMSCngX509StoreVerifySubject
  - xmlSecMSCngX509StoreContainsCert
  - xmlSecMSCngVerifyCertTime
  - xmlSecMSCngX509StoreVerifyCertificateOwn
  - xmlSecMSCngX509StoreVerifyCertificateSystem
  - xmlSecMSCngUnixTimeToFileTime
  - xmlSecMSCngX509StoreVerifyCertificate
  - xmlSecMSCngX509StoreVerifyKey
  - xmlSecMSCngX509StoreVerify
  - xmlSecMSCngX509GetCertName
  - xmlSecMSCngCertStrToName
  - xmlSecMSCngX509FindCertByIssuerNameAndSerial
  - xmlSecMSCngX509FindCertBySki
  - xmlSecMSCngX509FindCertByDigest
  - xmlSecMSCngX509FindCert
  - xmlSecMSCngX509GetFriendlyNameUnicode
  - xmlSecMSCngX509GetFriendlyNameUtf8
  - xmlSecMSCngX509StoreFindCert
  - xmlSecMSCngX509StoreFindCert_ex
  - xmlSecMSCngX509StoreFindCertByValue
  - xmlSecMSCngX509FindCertBySubject
  - xmlSecMSCngX509FindCertCtxInitialize
  - xmlSecMSCngX509FindCertCtxInitializeFromValue
  - xmlSecMSCngX509FindCertCtxFinalize
  source_file: /src/xmlsec/src/mscng/x509vfy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngX509StoreSize
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscng/x509vfy.c
      type_or_value: XMLSEC_KEY_DATA_STORE_SIZE(MSCngX509Store)
    - item_type: preproc_def
      name: XMLSEC_CLOSE_STORE_FLAG
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/mscng/x509vfy.c
      type_or_value: (CERT_CLOSE_STORE_CHECK_FLAG)
    - item_type: preproc_def
      name: XMLSEC_CLOSE_STORE_FLAG
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/xmlsec/src/mscng/x509vfy.c
      type_or_value: (0)
    structs:
    - fields:
      - name: trusted
        type: HCERTSTORE
      - name: trustedMemStore
        type: HCERTSTORE
      - name: untrusted
        type: HCERTSTORE
      - name: untrustedMemStore
        type: HCERTSTORE
      item_type: struct
      name: _xmlSecMSCngX509StoreCtx
      pos:
        line_end: 44
        line_start: 39
        source_file: /src/xmlsec/src/mscng/x509vfy.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngX509StoreCtx
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/mscng/x509vfy.c
      type: _xmlSecMSCngX509StoreCtx
    union: []
- function_names:
  - xmlSecMSCngHmacCheckId
  - xmlSecMSCngHmacInitialize
  - xmlSecMSCngHmacFinalize
  - xmlSecMSCngHmacNodeRead
  - xmlSecMSCngHmacSetKeyReq
  - xmlSecMSCngHmacSetKey
  - xmlSecMSCngHmacVerify
  - xmlSecMSCngHmacExecute
  - xmlSecMSCngTransformHmacMd5GetKlass
  - xmlSecMSCngTransformHmacSha1GetKlass
  - xmlSecMSCngTransformHmacSha256GetKlass
  - xmlSecMSCngTransformHmacSha384GetKlass
  - xmlSecMSCngTransformHmacSha512GetKlass
  source_file: /src/xmlsec/src/mscng/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngHmacSize
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscng/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngHmac)
    - item_type: preproc_def
      name: XMLSEC_MSCNG_HMAC_MIN_LENGTH
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscng/hmac.c
      type_or_value: '80'
    structs:
    - fields:
      - name: pszAlgId
        type: LPCWSTR
      - name: initialized
        type: int
      - name: hAlg
        type: BCRYPT_ALG_HANDLE
      - name: hash
        type: PBYTE
      - name: hashLength
        type: DWORD
      - name: dgstSizeInBits
        type: xmlSecSize
      - name: hHash
        type: BCRYPT_HASH_HANDLE
      item_type: struct
      name: _xmlSecMSCngHmacCtx
      pos:
        line_end: 42
        line_start: 34
        source_file: /src/xmlsec/src/mscng/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngHmacCtx
      pos:
        line_end: 32
        line_start: 32
        source_file: /src/xmlsec/src/mscng/hmac.c
      type: _xmlSecMSCngHmacCtx
    union: []
- function_names:
  - xmlSecMSCngSymKeyDataCheckId
  - xmlSecMSCngSymKeyDataKlassCheck
  - xmlSecMSCngSymKeyDataInitialize
  - xmlSecMSCngSymKeyDataDuplicate
  - xmlSecMSCngSymKeyDataFinalize
  - xmlSecMSCngSymKeyDataGenerate
  - xmlSecMSCngSymKeyDataGetType
  - xmlSecMSCngSymKeyDataGetSize
  - xmlSecMSCngSymKeyDataXmlRead
  - xmlSecMSCngSymKeyDataXmlWrite
  - xmlSecMSCngSymKeyDataBinRead
  - xmlSecMSCngSymKeyDataBinWrite
  - xmlSecMSCngSymKeyDataDebugDump
  - xmlSecMSCngSymKeyDataDebugXmlDump
  - xmlSecMSCngKeyDataAesGetKlass
  - xmlSecMSCngKeyDataConcatKdfGetKlass
  - xmlSecMSCngKeyDataDesGetKlass
  - xmlSecMSCngKeyDataHmacGetKlass
  - xmlSecMSCngKeyDataPbkdf2GetKlass
  source_file: /src/xmlsec/src/mscng/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCngSignatureCheckId
  - xmlSecMSCngSignatureInitialize
  - xmlSecMSCngSignatureFinalize
  - xmlSecMSCngSignatureSetKey
  - xmlSecMSCngSignatureSetKeyReq
  - xmlSecMSCngSignatureFixBrokenJava
  - xmlSecMSCngSignatureVerify
  - xmlSecMSCngSignatureExecute
  - xmlSecMSCngTransformDsaSha1GetKlass
  - xmlSecMSCngTransformRsaMd5GetKlass
  - xmlSecMSCngTransformRsaSha1GetKlass
  - xmlSecMSCngTransformRsaSha256GetKlass
  - xmlSecMSCngTransformRsaSha384GetKlass
  - xmlSecMSCngTransformRsaSha512GetKlass
  - xmlSecMSCngTransformRsaPssSha1GetKlass
  - xmlSecMSCngTransformRsaPssSha256GetKlass
  - xmlSecMSCngTransformRsaPssSha384GetKlass
  - xmlSecMSCngTransformRsaPssSha512GetKlass
  - xmlSecMSCngTransformEcdsaSha1GetKlass
  - xmlSecMSCngTransformEcdsaSha256GetKlass
  - xmlSecMSCngTransformEcdsaSha384GetKlass
  - xmlSecMSCngTransformEcdsaSha512GetKlass
  source_file: /src/xmlsec/src/mscng/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_MSCNG_SIGNATURE_DSA_SHA1_HALF_LEN
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/mscng/signatures.c
      type_or_value: '20'
    - item_type: preproc_def
      name: XMLSEC_MSCNG_SIGNATURE_DSA_SHA256_HALF_LEN
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/mscng/signatures.c
      type_or_value: (256 / 8)
    - item_type: preproc_def
      name: xmlSecMSCngSignatureSize
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/src/mscng/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngSignature)
    structs:
    - fields:
      - name: data
        type: xmlSecKeyDataPtr
      - name: keyId
        type: xmlSecKeyDataId
      - name: signatureHalfSize
        type: DWORD
      - name: pszHashAlgId
        type: LPCWSTR
      - name: cbHash
        type: DWORD
      - name: pbHash
        type: PBYTE
      - name: hHashAlg
        type: BCRYPT_ALG_HANDLE
      - name: pbHashObject
        type: PBYTE
      - name: hHash
        type: BCRYPT_HASH_HANDLE
      - name: dwInfoFlags
        type: ULONG
      - name: dwRsaPssSaltSize
        type: ULONG
      item_type: struct
      name: _xmlSecMSCngSignatureCtx
      pos:
        line_end: 61
        line_start: 49
        source_file: /src/xmlsec/src/mscng/signatures.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngSignatureCtx
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscng/signatures.c
      type: _xmlSecMSCngSignatureCtx
    union: []
- function_names:
  - xmlSecMSCngDigestCheckId
  - xmlSecMSCngDigestInitialize
  - xmlSecMSCngDigestFinalize
  - xmlSecMSCngDigestVerify
  - xmlSecMSCngDigestExecute
  - xmlSecMSCngTransformMd5GetKlass
  - xmlSecMSCngTransformSha1GetKlass
  - xmlSecMSCngTransformSha256GetKlass
  - xmlSecMSCngTransformSha384GetKlass
  - xmlSecMSCngTransformSha512GetKlass
  source_file: /src/xmlsec/src/mscng/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngDigestSize
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/mscng/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngDigest)
    structs:
    - fields:
      - name: pszAlgId
        type: LPCWSTR
      - name: cbHash
        type: DWORD
      - name: pbHash
        type: PBYTE
      - name: hAlg
        type: BCRYPT_ALG_HANDLE
      - name: pbHashObject
        type: PBYTE
      - name: hHash
        type: BCRYPT_HASH_HANDLE
      item_type: struct
      name: _xmlSecMSCngDigestCtx
      pos:
        line_end: 36
        line_start: 29
        source_file: /src/xmlsec/src/mscng/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngDigestCtx
      pos:
        line_end: 28
        line_start: 28
        source_file: /src/xmlsec/src/mscng/digests.c
      type: _xmlSecMSCngDigestCtx
    union: []
- function_names:
  - xmlSecMSCngKeysStoreInitialize
  - xmlSecMSCngKeysStoreFinalize
  - xmlSecMSCngKeysStoreFindCert
  - xmlSecMSCngKeysStoreAddCertDataToKey
  - xmlSecMSCngKeysStoreSetKeyValueFromCert
  - xmlSecMSCngKeysStoreCreateKeyFromCert
  - xmlSecMSCngKeysStoreFindKey
  - xmlSecMSCngKeysStoreFindKeyFromX509Data
  - xmlSecMSCngKeysStoreGetKlass
  - xmlSecMSCngKeysStoreAdoptKey
  - xmlSecMSCngKeysStoreLoad
  - xmlSecMSCngKeysStoreSave
  source_file: /src/xmlsec/src/mscng/keysstore.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_MSCNG_APP_DEFAULT_CERT_STORE_NAME
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/mscng/keysstore.c
      type_or_value: TEXT("MY")
    - item_type: preproc_def
      name: xmlSecMSCngKeysStoreSize
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscng/keysstore.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(MSCngKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCryptoGetFunctions_mscng
  - xmlSecMSCngInit
  - xmlSecMSCngShutdown
  - xmlSecMSCngGenerateRandom
  - xmlSecMSCngKeysMngrInit
  source_file: /src/xmlsec/src/mscng/crypto.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCngRsaPkcs1OaepCheckId
  - xmlSecMSCngRsaPkcs1OaepInitialize
  - xmlSecMSCngRsaPkcs1OaepFinalize
  - xmlSecMSCngRsaPkcs1OaepSetKeyReq
  - xmlSecMSCngRsaPkcs1OaepSetKey
  - xmlSecMSCngRsaPkcs1OaepProcess
  - xmlSecMSCngRsaPkcs1OaepExecute
  - xmlSecMSCngRsaOaepNodeRead
  - xmlSecMSCngTransformRsaOaepGetKlass
  - xmlSecMSCngTransformRsaOaepEnc11GetKlass
  - xmlSecMSCngTransformRsaPkcs1GetKlass
  source_file: /src/xmlsec/src/mscng/kt_rsa.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSeccMSCngRsaPkcs1OaepSize
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/mscng/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngRsaPkcs1Oaep)
    structs:
    - fields:
      - name: data
        type: xmlSecKeyDataPtr
      - name: oaepParams
        type: xmlSecBuffer
      - name: pszDigestAlgId
        type: LPCWSTR
      item_type: struct
      name: _xmlSecMSCngRsaPkcs1OaepCtx
      pos:
        line_end: 46
        line_start: 42
        source_file: /src/xmlsec/src/mscng/kt_rsa.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngRsaPkcs1OaepCtx
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/xmlsec/src/mscng/kt_rsa.c
      type: _xmlSecMSCngRsaPkcs1OaepCtx
    union: []
- function_names:
  - xmlSecMSCngConcatKdfCheckId
  - xmlSecMSCngConcatKdfInitialize
  - xmlSecMSCngConcatKdfFinalize
  - xmlSecMSCngConcatKdfSetKeyReq
  - xmlSecMSCngConcatKdfSetKey
  - xmlSecMSCngConcatKdfGetDigestFromHref
  - xmlSecMSCngConcatKdfNodeRead
  - xmlSecMSCngConcatKdfPeformKeyDerivation
  - xmlSecMSCngConcatKdfDerive
  - xmlSecMSCngConcatKdfExecute
  - xmlSecMSCngTransformConcatKdfGetKlass
  source_file: /src/xmlsec/src/mscng/concatkdf.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: KDF_GENERIC_PARAMETER
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/mscng/concatkdf.c
      type_or_value: '0x11'
    - item_type: preproc_def
      name: XMLSEC_MSCNG_KDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscng/concatkdf.c
      type_or_value: '64'
    - item_type: preproc_def
      name: xmlSecMSCngConcatKdfCtxSize
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/mscng/concatkdf.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCngConcatKdf)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformConcatKdfParams
      - name: pszAlgId
        type: LPCWSTR
      - name: key
        type: xmlSecBuffer
      - name: fixedInfo
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecMSCngConcatKdfCtx
      pos:
        line_end: 55
        line_start: 50
        source_file: /src/xmlsec/src/mscng/concatkdf.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCngConcatKdfCtx
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/xmlsec/src/mscng/concatkdf.c
      type: _xmlSecMSCngConcatKdfCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 515
        line_start: 515
        source_file: /src/xmlsec/src/mscng/concatkdf.c
      type: int
    union: []
- function_names:
  - xmlSecMSCryptoError
  - xmlSecMSCryptoError2
  - xmlSecMSCryptoError3
  source_file: /src/xmlsec/src/mscrypto/globals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/mscrypto/globals.h
      type_or_value: '4096'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoKWAesCheckId
  - xmlSecMSCryptoKWAesInitialize
  - xmlSecMSCryptoKWAesFinalize
  - xmlSecMSCryptoKWAesSetKeyReq
  - xmlSecMSCryptoKWAesSetKey
  - xmlSecMSCryptoKWAesExecute
  - xmlSecMSCryptoKWAesBlockEncrypt
  - xmlSecMSCryptoKWAesBlockDecrypt
  - xmlSecMSCryptoTransformKWAes128GetKlass
  - xmlSecMSCryptoTransformKWAes192GetKlass
  - xmlSecMSCryptoTransformKWAes256GetKlass
  source_file: /src/xmlsec/src/mscrypto/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoKWAesSize
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/src/mscrypto/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      - name: algorithmIdentifier
        type: ALG_ID
      - name: '* providers'
        type: xmlSecMSCryptoProviderInfo
      - name: cryptProvider
        type: HCRYPTPROV
      - name: pubPrivKey
        type: HCRYPTKEY
      item_type: struct
      name: _xmlSecMSCryptoKWAesCtx
      pos:
        line_end: 78
        line_start: 71
        source_file: /src/xmlsec/src/mscrypto/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoKWAesCtx
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/src/mscrypto/kw_aes.c
      type: _xmlSecMSCryptoKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 548
        line_start: 548
        source_file: /src/xmlsec/src/mscrypto/kw_aes.c
      type: int
    union: []
- function_names: []
  source_file: /src/xmlsec/src/mscrypto/csp_calg.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ALG_TYPE_GR3410
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (7 << 9)
    - item_type: preproc_def
      name: ALG_SID_MAGPRO_R3410_94
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '64'
    - item_type: preproc_def
      name: ALG_SID_MAGPRO_R3410_94_EPHEM
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '65'
    - item_type: preproc_def
      name: ALG_SID_MAGPRO_R3410_2001
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '66'
    - item_type: preproc_def
      name: ALG_SID_MAGPRO_R3410_2001_EPHEM
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '67'
    - item_type: preproc_def
      name: ALG_SID_MAGPRO_28147_89
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '68'
    - item_type: preproc_def
      name: ALG_SID_GR3411
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '30'
    - item_type: preproc_def
      name: ALG_SID_G28147
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '30'
    - item_type: preproc_def
      name: ALG_SID_GR3411_2012_256
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '33'
    - item_type: preproc_def
      name: ALG_SID_GR3411_2012_512
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '34'
    - item_type: preproc_def
      name: ALG_SID_GR3410
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '30'
    - item_type: preproc_def
      name: ALG_SID_DH_EX_SF
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '30'
    - item_type: preproc_def
      name: ALG_SID_DH_EX_EPHEM
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '31'
    - item_type: preproc_def
      name: ALG_SID_PRO_AGREEDKEY_DH
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '33'
    - item_type: preproc_def
      name: ALG_SID_PRO_SIMMETRYKEY
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '34'
    - item_type: preproc_def
      name: ALG_SID_GR3410EL
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '35'
    - item_type: preproc_def
      name: ALG_SID_DH_EL_SF
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '36'
    - item_type: preproc_def
      name: ALG_SID_DH_EL_EPHEM
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '37'
    - item_type: preproc_def
      name: CALG_MAGPRO_SIGN_R3410_94
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_SIGNATURE | ALG_TYPE_GR3410 | ALG_SID_MAGPRO_R3410_94)
    - item_type: preproc_def
      name: CALG_MAGPRO_SIGN_R3410_2001
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_SIGNATURE | ALG_TYPE_GR3410 | ALG_SID_MAGPRO_R3410_2001)
    - item_type: preproc_def
      name: CALG_MAGPRO_DH_R3410_94
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_MAGPRO_R3410_94)
    - item_type: preproc_def
      name: CALG_MAGPRO_DH_R3410_2001
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_MAGPRO_R3410_2001)
    - item_type: preproc_def
      name: CALG_MAGPRO_DH_R3410_94_EPHEM
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_MAGPRO_R3410_94_EPHEM)
    - item_type: preproc_def
      name: CALG_MAGPRO_DH_R3410_2001_EPHEM
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_MAGPRO_R3410_2001_EPHEM)
    - item_type: preproc_def
      name: CALG_MAGPRO_HASH_R3411_94
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_GR3411)
    - item_type: preproc_def
      name: CALG_MAGPRO_HASH_28147_89
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MAGPRO_28147_89)
    - item_type: preproc_def
      name: CALG_GR3411_2012_256
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_GR3411_2012_256)
    - item_type: preproc_def
      name: CALG_GR3411_2012_512
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_GR3411_2012_512)
    - item_type: preproc_def
      name: CALG_MAGPRO_ENCR_28147_89
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_G28147)
    - item_type: preproc_def
      name: CALG_GR3410
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_SIGNATURE | ALG_TYPE_GR3410 | ALG_SID_GR3410)
    - item_type: preproc_def
      name: CALG_GR3410EL
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_SIGNATURE | ALG_TYPE_GR3410 | ALG_SID_GR3410EL)
    - item_type: preproc_def
      name: CALG_DH_EX_SF
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_EX_SF)
    - item_type: preproc_def
      name: CALG_DH_EX_EPHEM
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_EX_EPHEM)
    - item_type: preproc_def
      name: CALG_DH_EL_SF
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_EL_SF)
    - item_type: preproc_def
      name: CALG_DH_EL_EPHEM
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_EL_EPHEM)
    - item_type: preproc_def
      name: PROV_MAGPRO_GOST
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '501'
    - item_type: preproc_def
      name: MAGPRO_CSP_A
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '"MagPro CSP"'
    - item_type: preproc_def
      name: MAGPRO_CSP_W
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: L"MagPro CSP"
    - item_type: preproc_def
      name: MAGPRO_CSP
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: MAGPRO_CSP_W
    - item_type: preproc_def
      name: MAGPRO_CSP
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: MAGPRO_CSP_A
    - item_type: preproc_def
      name: PROV_CRYPTOPRO_GOST
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '75'
    - item_type: preproc_def
      name: PROV_GOST_2012_256
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '80'
    - item_type: preproc_def
      name: PROV_GOST_2012_512
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '81'
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_A
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '"Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"'
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_W
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: L"Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_256_A
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '"Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider"'
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_256_W
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: L"Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider"
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_512_A
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '"Crypto-Pro GOST R 34.10-2012 Strong Cryptographic Service Provider"'
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_512_W
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: L"Crypto-Pro GOST R 34.10-2012 Strong Cryptographic Service Provider"
    - item_type: preproc_def
      name: CRYPTOPRO_CSP
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_W
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_256
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_256_W
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_512
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_512_W
    - item_type: preproc_def
      name: CRYPTOPRO_CSP
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_A
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_256
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_256_A
    - item_type: preproc_def
      name: CRYPTOPRO_CSP_512
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: CRYPTOPRO_CSP_512_A
    - item_type: preproc_def
      name: PP_RNGTYPE
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '201'
    - item_type: preproc_def
      name: PP_RNGSHARED
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '202'
    - item_type: preproc_def
      name: PP_SETUP_UI
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/src/mscrypto/csp_calg.h
      type_or_value: '203'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/mscrypto/csp_oid.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: szOID_MAGPRO_DH_R3410_94
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_DH_R3410_2001
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.2"'
    - item_type: preproc_def
      name: szOID_MAGPRO_DH_R3410_94_EPHEM
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_DH_R3410_2001_EPHEM
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.2"'
    - item_type: preproc_def
      name: szOID_MAGPRO_SIGN_R3410_94
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.3"'
    - item_type: preproc_def
      name: szOID_MAGPRO_SIGN_R3410_2001
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.3.4"'
    - item_type: preproc_def
      name: szOID_MAGPRO_HASH_28147_89
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.4.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_DH_R3410_94
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.5.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_DH_R3410_2001
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.5.2"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_SIGN_R3410_94
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.5.3"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_SIGN_R3410_2001
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.5.4"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PARAM_ENCR_28147_89
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.6.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PARAM_PK_CC_01
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.9.1.8.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_ENCR_28147_89
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.21"'
    - item_type: preproc_def
      name: szOID_MAGPRO_SIGN_R3410_2001_CP
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.3"'
    - item_type: preproc_def
      name: szOID_MAGPRO_SIGN_R3410_94_CP
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.4"'
    - item_type: preproc_def
      name: szOID_MAGPRO_HASH_R3411_94
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.9"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_SIGN_R3410_2001_CP
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.19"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PUBKEY_SIGN_R3410_94_CP
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.20"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PARAM_HASH_3411_94
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.30.1"'
    - item_type: preproc_def
      name: szOID_MAGPRO_PARAM_PK_CC_94
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.32.2"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_R3411_94_DEF
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.30.1"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_R3411_94_1
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.30.2"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_R3411_94_2
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.30.3"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_R3411_94_3
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.30.4"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_DEF
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.1"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_1
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.2"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_2
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.3"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_3
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.4"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_4
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.5"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_5
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.6"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_28147_89_6
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.31.7"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_DEF
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.32.2"      '
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_S1
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.32.3"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_S2
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.32.4"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_S3
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.32.5"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_E1
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.33.1"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_E2
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.33.2"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_94_E3
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.33.3"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_2001_DEF
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.35.1"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_2001_S0
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.35.2"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_2001_S1
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.35.3"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_2001_E0
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.36.0"'
    - item_type: preproc_def
      name: szOID_CP_PARAM_PK_R3410_2001_E1
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.2.2.36.1"'
    - item_type: preproc_def
      name: szOID_CP_GOST_R3410_12_256
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.1.1"'
    - item_type: preproc_def
      name: szOID_CP_GOST_R3410_12_512
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.1.2"'
    - item_type: preproc_def
      name: szOID_CP_DH_12_256
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.6.1"'
    - item_type: preproc_def
      name: szOID_CP_DH_12_512
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.6.2"'
    - item_type: preproc_def
      name: szOID_CP_GOST_R3411_12_256_R3410
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.3.2"'
    - item_type: preproc_def
      name: szOID_CP_GOST_R3411_12_512_R3410
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/xmlsec/src/mscrypto/csp_oid.h
      type_or_value: '"1.2.643.7.1.1.3.3"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoTransformKWDes3GetKlass
  - xmlSecMSCryptoKWDes3Initialize
  - xmlSecMSCryptoKWDes3Finalize
  - xmlSecMSCryptoKWDes3SetKeyReq
  - xmlSecMSCryptoKWDes3SetKey
  - xmlSecMSCryptoKWDes3Execute
  - xmlSecMSCryptoKWDes3Sha1
  - xmlSecMSCryptoKWDes3GenerateRandom
  - xmlSecMSCryptoKWDes3BlockEncrypt
  - xmlSecMSCryptoKWDes3BlockDecrypt
  source_file: /src/xmlsec/src/mscrypto/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoKWDes3Size
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/src/mscrypto/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoKWDes3)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWDes3Ctx
      - name: desAlgorithmIdentifier
        type: ALG_ID
      - name: '* desProviders'
        type: xmlSecMSCryptoProviderInfo
      - name: sha1AlgorithmIdentifier
        type: ALG_ID
      - name: '* sha1Providers'
        type: xmlSecMSCryptoProviderInfo
      - name: desCryptProvider
        type: HCRYPTPROV
      - name: sha1CryptProvider
        type: HCRYPTPROV
      - name: pubPrivKey
        type: HCRYPTKEY
      item_type: struct
      name: _xmlSecMSCryptoKWDes3Ctx
      pos:
        line_end: 96
        line_start: 85
        source_file: /src/xmlsec/src/mscrypto/kw_des.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoKWDes3Ctx
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/src/mscrypto/kw_des.c
      type: _xmlSecMSCryptoKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 587
        line_start: 587
        source_file: /src/xmlsec/src/mscrypto/kw_des.c
      type: int
    union: []
- function_names:
  - xmlSecMSCryptoAppInit
  - xmlSecMSCryptoAppShutdown
  - xmlSecMSCryptoAppGetCertStoreName
  - xmlSecMSCryptoAppKeyLoadEx
  - xmlSecMSCryptoAppKeyLoadMemory
  - xmlSecMSCryptoAppKeyCertLoad
  - xmlSecMSCryptoAppKeyCertLoadMemory
  - xmlSecMSCryptoAppPkcs12Load
  - xmlSecMSCryptoAppPkcs12LoadMemory
  - xmlSecMSCryptoAppKeysMngrCertLoad
  - xmlSecMSCryptoAppKeysMngrCertLoadMemory
  - xmlSecMSCryptoAppKeysMngrCrlLoad
  - xmlSecMSCryptoAppKeysMngrCrlLoadMemory
  - xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore
  - xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore
  - xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore
  - xmlSecMSCryptoAppDefaultKeysMngrInit
  - xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
  - xmlSecMSCryptoAppDefaultKeysMngrVerifyKey
  - xmlSecMSCryptoAppDefaultKeysMngrLoad
  - xmlSecMSCryptoAppDefaultKeysMngrSave
  - xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad
  - xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad
  - xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad
  - xmlSecMSCryptoAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/mscrypto/app.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PKCS12_NO_PERSIST_KEY
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/src/mscrypto/app.c
      type_or_value: '0x00008000'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/mscrypto/private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE_A
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: '"Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"'
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE_W
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: L"Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE_W
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_PROTOTYPE_A
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_A
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: '"Microsoft Enhanced RSA and AES Cryptographic Provider"'
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_W
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: L"Microsoft Enhanced RSA and AES Cryptographic Provider"
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_W
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/mscrypto/private.h
      type_or_value: XMLSEC_CRYPTO_MS_ENH_RSA_AES_PROV_A
    structs:
    - fields:
      - name: providerName
        type: LPCTSTR
      - name: providerType
        type: DWORD
      item_type: struct
      name: _xmlSecMSCryptoProviderInfo
      pos:
        line_end: 68
        line_start: 65
        source_file: /src/xmlsec/src/mscrypto/private.h
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoKeyDataX509GetKlass
  - xmlSecMSCryptoKeyDataX509GetKeyCert
  - xmlSecMSCryptoKeyDataX509AdoptKeyCert
  - xmlSecMSCryptoKeyDataX509AdoptCert
  - xmlSecMSCryptoKeyDataX509GetCert
  - xmlSecMSCryptoKeyDataX509GetCertsSize
  - xmlSecMSCryptoKeyDataX509AdoptCrl
  - xmlSecMSCryptoKeyDataX509GetCrl
  - xmlSecMSCryptoKeyDataX509GetCrlsSize
  - xmlSecMSCryptoKeyDataX509Initialize
  - xmlSecMSCryptoKeyDataX509Duplicate
  - xmlSecMSCryptoKeyDataX509Finalize
  - xmlSecMSCryptoKeyDataX509XmlRead
  - xmlSecMSCryptoKeyDataX509XmlWrite
  - xmlSecMSCryptoKeyDataX509DebugDump
  - xmlSecMSCryptoKeyDataX509DebugXmlDump
  - xmlSecMSCryptoKeyDataX509Read
  - xmlSecMSCryptoKeyDataX509Write
  - xmlSecMSCryptoKeyDataX509VerifyAndExtractKey
  - xmlSecMSCryptoX509CertGetTime
  - xmlSecMSCryptoX509CertDerRead
  - xmlSecMSCryptoX509CrlDerRead
  - xmlSecMSCryptoX509NameWrite
  - xmlSecMSCryptoASN1IntegerWrite
  - xmlSecMSCryptoX509SKIWrite
  - xmlSecMSCryptoX509CertDebugDump
  - xmlSecMSCryptoX509CertDebugXmlDump
  - xmlSecMSCryptoKeyDataRawX509CertGetKlass
  - xmlSecMSCryptoKeyDataRawX509CertBinRead
  source_file: /src/xmlsec/src/mscrypto/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoX509DataSize
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/src/mscrypto/x509.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(MSCryptoX509Data)
    structs:
    - fields:
      - name: keyCert
        type: PCCERT_CONTEXT
      - name: hMemStore
        type: HCERTSTORE
      - name: numCerts
        type: unsigned int
      - name: numCrls
        type: unsigned int
      item_type: struct
      name: _xmlSecMSCryptoX509DataCtx
      pos:
        line_end: 88
        line_start: 82
        source_file: /src/xmlsec/src/mscrypto/x509.c
    - fields:
      - name: crtPos
        type: xmlSecSize
      - name: crtSize
        type: xmlSecSize
      - name: crlPos
        type: xmlSecSize
      - name: crlSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecMSCryptoKeyDataX509Context
      pos:
        line_end: 121
        line_start: 116
        source_file: /src/xmlsec/src/mscrypto/x509.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoX509DataCtx
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/src/mscrypto/x509.c
      type: _xmlSecMSCryptoX509DataCtx
    union: []
- function_names:
  - xmlSecMSCryptoKeyDataCtxGetProvider
  - xmlSecMSCryptoKeyDataCtxCreateProvider
  - xmlSecMSCryptoKeyDataCtxDestroyProvider
  - xmlSecMSCryptoKeyDataCtxSetProvider
  - xmlSecMSCryptoKeyDataCtxDuplicateProvider
  - xmlSecMSCryptoKeyDataCtxGetKey
  - xmlSecMSCryptoKeyDataCtxCreateKey
  - xmlSecMSCryptoKeyDataCtxDestroyKey
  - xmlSecMSCryptoKeyDataCtxSetKey
  - xmlSecMSCryptoKeyDataCtxDuplicateKey
  - xmlSecMSCryptoKeyDataCtxGetProvider
  - xmlSecMSCryptoKeyDataCtxCreateProvider
  - xmlSecMSCryptoKeyDataCtxDestroyProvider
  - xmlSecMSCryptoKeyDataCtxSetProvider
  - xmlSecMSCryptoKeyDataCtxDuplicateProvider
  - xmlSecMSCryptoKeyDataCtxGetKey
  - xmlSecMSCryptoKeyDataCtxCreateKey
  - xmlSecMSCryptoKeyDataCtxDestroyKey
  - xmlSecMSCryptoKeyDataCtxSetKey
  - xmlSecMSCryptoKeyDataCtxDuplicateKey
  - xmlSecMSCryptoKeyDataCtxGetCert
  - xmlSecMSCryptoKeyDataCtxCreateCert
  - xmlSecMSCryptoKeyDataCtxDestroyCert
  - xmlSecMSCryptoKeyDataCtxSetCert
  - xmlSecMSCryptoKeyDataCtxDuplicateCert
  - xmlSecMSCryptoKeyDataAdoptCert
  - xmlSecMSCryptoKeyDataAdoptKey
  - xmlSecMSCryptoKeyDataGetKey
  - xmlSecMSCryptoKeyDataGetDecryptKey
  - xmlSecMSCryptoKeyDataGetCert
  - xmlSecMSCryptoKeyDataGetMSCryptoProvider
  - xmlSecMSCryptoKeyDataGetMSCryptoKeySpec
  - xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo
  - xmlSecMSCryptoKeyDataDuplicate
  - xmlSecMSCryptoKeyDataInitialize
  - xmlSecMSCryptoKeyDataFinalize
  - xmlSecMSCryptoKeyDataGetSize
  - xmlSecMSCryptoKeyDataGetType
  - xmlSecMSCryptoCertDup
  - xmlSecMSCryptoCertAdopt
  - xmlSecMSCryptoKeyDataRsaGetKlass
  - xmlSecMSCryptoKeyDataRsaInitialize
  - xmlSecMSCryptoKeyDataRsaDuplicate
  - xmlSecMSCryptoKeyDataRsaFinalize
  - xmlSecMSCryptoKeyDataRsaXmlRead
  - xmlSecMSCryptoKeyDataRsaXmlWrite
  - xmlSecMSCryptoKeyDataRsaGenerate
  - xmlSecMSCryptoKeyDataRsaGetType
  - xmlSecMSCryptoKeyDataRsaGetSize
  - xmlSecMSCryptoKeyDataRsaDebugDump
  - xmlSecMSCryptoKeyDataRsaDebugXmlDump
  - xmlSecMSCryptoKeyValueRsaReverse
  - xmlSecMSCryptoKeyDataRsaRead
  - xmlSecMSCryptoKeyDataRsaWrite
  - xmlSecMSCryptoKeyDataDsaGetKlass
  - xmlSecMSCryptoKeyDataDsaInitialize
  - xmlSecMSCryptoKeyDataDsaDuplicate
  - xmlSecMSCryptoKeyDataDsaFinalize
  - xmlSecMSCryptoKeyDataDsaXmlRead
  - xmlSecMSCryptoKeyDataDsaXmlWrite
  - xmlSecMSCryptoKeyDataDsaGenerate
  - xmlSecMSCryptoKeyDataDsaGetType
  - xmlSecMSCryptoKeyDataDsaGetSize
  - xmlSecMSCryptoKeyDataDsaDebugDump
  - xmlSecMSCryptoKeyDataDsaDebugXmlDump
  - xmlSecMSCryptoKeyValueDsaReverse
  - xmlSecMSCryptoKeyDataDsaRead
  - xmlSecMSCryptoKeyDataDsaWrite
  - xmlSecMSCryptoKeyDataGost2001GetKlass
  - xmlSecMSCryptoKeyDataGost2001Initialize
  - xmlSecMSCryptoKeyDataGost2001Duplicate
  - xmlSecMSCryptoKeyDataGost2001Finalize
  - xmlSecMSCryptoKeyDataGost2001GetType
  - xmlSecMSCryptoKeyDataGost2001GetSize
  - xmlSecMSCryptoKeyDataGost2001DebugDump
  - xmlSecMSCryptoKeyDataGost2001DebugXmlDump
  - xmlSecMSCryptoKeyDataGost2012_256GetKlass
  - xmlSecMSCryptoKeyDataGost2012_256Initialize
  - xmlSecMSCryptoKeyDataGost2012_256Duplicate
  - xmlSecMSCryptoKeyDataGost2012_256Finalize
  - xmlSecMSCryptoKeyDataGost2012_256GetType
  - xmlSecMSCryptoKeyDataGost2012_256GetSize
  - xmlSecMSCryptoKeyDataGost2012_256DebugDump
  - xmlSecMSCryptoKeyDataGost2012_256DebugXmlDump
  - xmlSecMSCryptoKeyDataGost2012_512GetKlass
  - xmlSecMSCryptoKeyDataGost2012_512Initialize
  - xmlSecMSCryptoKeyDataGost2012_512Duplicate
  - xmlSecMSCryptoKeyDataGost2012_512Finalize
  - xmlSecMSCryptoKeyDataGost2012_512GetType
  - xmlSecMSCryptoKeyDataGost2012_512GetSize
  - xmlSecMSCryptoKeyDataGost2012_512DebugDump
  - xmlSecMSCryptoKeyDataGost2012_512DebugXmlDump
  source_file: /src/xmlsec/src/mscrypto/certkeys.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_DSA_MAX_Q_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
      type_or_value: ((xmlSecSize)0x14U)
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataSize
      pos:
        line_end: 407
        line_start: 406
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(MSCryptoKeyData)
    structs:
    - fields:
      - name: hKey
        type: HCRYPTKEY
      - name: refcnt
        type: LONG
      item_type: struct
      name: _mscrypt_key
      pos:
        line_end: 68
        line_start: 65
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
    - fields:
      - name: hProv
        type: HCRYPTPROV
      - name: fCallerFreeProv
        type: BOOL
      - name: refcnt
        type: LONG
      item_type: struct
      name: _mscrypt_prov
      pos:
        line_end: 79
        line_start: 75
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
    - fields:
      - name: pCert
        type: PCCERT_CONTEXT
      - name: '* providers'
        type: xmlSecMSCryptoProviderInfo
      - name: dwKeySpec
        type: DWORD
      - name: type
        type: xmlSecKeyDataType
      item_type: struct
      name: _xmlSecMSCryptoKeyDataCtx
      pos:
        line_end: 102
        line_start: 89
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoKeyDataCtx
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/xmlsec/src/mscrypto/certkeys.c
      type: _xmlSecMSCryptoKeyDataCtx
    union: []
- function_names:
  - xmlSecMSCryptoBlockCipherCtxInit
  - xmlSecMSCryptoBlockCipherCtxUpdate
  - xmlSecMSCryptoBlockCipherCtxFinal
  - xmlSecMSCryptoBlockCipherCheckId
  - xmlSecMSCryptoBlockCipherInitialize
  - xmlSecMSCryptoBlockCipherFinalize
  - xmlSecMSCryptoBlockCipherSetKeyReq
  - xmlSecMSCryptoBlockCipherSetKey
  - xmlSecMSCryptoBlockCipherExecute
  - xmlSecMSCryptoTransformAes128CbcGetKlass
  - xmlSecMSCryptoTransformAes192CbcGetKlass
  - xmlSecMSCryptoTransformAes256CbcGetKlass
  - xmlSecMSCryptoTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/mscrypto/ciphers.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoBlockCipherSize
      pos:
        line_end: 364
        line_start: 363
        source_file: /src/xmlsec/src/mscrypto/ciphers.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoBlockCipher)
    structs:
    - fields:
      - name: algorithmIdentifier
        type: ALG_ID
      - name: '* providers'
        type: xmlSecMSCryptoProviderInfo
      - name: keyId
        type: xmlSecKeyDataId
      - name: keySize
        type: xmlSecSize
      - name: cryptProvider
        type: HCRYPTPROV
      - name: pubPrivKey
        type: HCRYPTKEY
      - name: cryptKey
        type: HCRYPTKEY
      - name: ctxInitialized
        type: int
      item_type: struct
      name: _xmlSecMSCryptoBlockCipherCtx
      pos:
        line_end: 47
        line_start: 37
        source_file: /src/xmlsec/src/mscrypto/ciphers.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoBlockCipherCtx
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/mscrypto/ciphers.c
      type: _xmlSecMSCryptoBlockCipherCtx
    union: []
- function_names: []
  source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ALG_SID_HMAC
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '9'
    - item_type: preproc_def
      name: ALG_SID_SHA_256
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '12'
    - item_type: preproc_def
      name: ALG_SID_SHA_384
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '13'
    - item_type: preproc_def
      name: ALG_SID_SHA_512
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '14'
    - item_type: preproc_def
      name: CALG_HMAC
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (ALG_CLASS_HASH|ALG_TYPE_ANY|ALG_SID_HMAC)
    - item_type: preproc_def
      name: CALG_SHA_256
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (ALG_CLASS_HASH|ALG_TYPE_ANY|ALG_SID_SHA_256)
    - item_type: preproc_def
      name: CALG_SHA_384
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (ALG_CLASS_HASH|ALG_TYPE_ANY|ALG_SID_SHA_384)
    - item_type: preproc_def
      name: CALG_SHA_512
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (ALG_CLASS_HASH|ALG_TYPE_ANY|ALG_SID_SHA_512)
    - item_type: preproc_def
      name: KP_OAEP_PARAMS
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '36'
    - item_type: preproc_def
      name: CERT_CLOSE_STORE_FORCE_FLAG
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '1'
    - item_type: preproc_def
      name: CERT_CLOSE_STORE_CHECK_FLAG
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '2'
    - item_type: preproc_def
      name: CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '1'
    - item_type: preproc_def
      name: CERT_STORE_ADD_ALWAYS
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '4'
    - item_type: preproc_def
      name: CERT_STORE_CREATE_NEW_FLAG
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (2<<12)
    - item_type: preproc_def
      name: CERT_STORE_SIGNATURE_FLAG
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '1'
    - item_type: preproc_def
      name: CERT_STORE_TIME_VALIDITY_FLAG
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '2'
    - item_type: preproc_def
      name: CERT_STORE_REVOCATION_FLAG
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '4'
    - item_type: preproc_def
      name: CERT_STORE_NO_CRL_FLAG
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (1<<16)
    - item_type: preproc_def
      name: CERT_STORE_PROV_COLLECTION
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: ((LPCSTR) 11)
    - item_type: preproc_def
      name: CERT_STORE_PROV_MEMORY
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: ((LPCSTR) 2)
    - item_type: preproc_def
      name: CERT_KEY_SPEC_PROP_ID
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '6'
    - item_type: preproc_def
      name: CERT_FRIENDLY_NAME_PROP_ID
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '11'
    - item_type: preproc_def
      name: CERT_KEY_IDENTIFIER_PROP_ID
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '20'
    - item_type: preproc_def
      name: CERT_NAME_ISSUER_FLAG
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '1'
    - item_type: preproc_def
      name: CERT_NAME_RDN_TYPE
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '2'
    - item_type: preproc_def
      name: CERT_NAME_STR_ENABLE_UTF8_UNICODE_FLAG
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (4<<16)
    - item_type: preproc_def
      name: CERT_CHAIN_REVOCATION_CHECK_CHAIN
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (2<<28)
    - item_type: preproc_def
      name: CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: (4<<28)
    - item_type: preproc_def
      name: szOID_SUBJECT_KEY_IDENTIFIER
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '"2.5.29.14"'
    - item_type: preproc_def
      name: CRYPT_ACQUIRE_COMPARE_KEY_FLAG
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: '4'
    - item_type: preproc_def
      name: CertStrToName
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: CertStrToNameW
    - item_type: preproc_def
      name: CertStrToName
      pos:
        line_end: 184
        line_start: 183
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
      type_or_value: CertStrToNameA
    structs:
    - fields:
      - name: magic
        type: DWORD
      - name: bitlen
        type: DWORD
      item_type: struct
      name: _PUBKEY
      pos:
        line_end: 154
        line_start: 151
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
    - fields:
      - name: counter
        type: DWORD
      - name: seed[20]
        type: BYTE
      item_type: struct
      name: _DSSSEED
      pos:
        line_end: 159
        line_start: 156
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
    - fields:
      - name: aiAlgid
        type: ALG_ID
      - name: dwDefaultLen
        type: DWORD
      - name: dwMinLen
        type: DWORD
      - name: dwMaxLen
        type: DWORD
      - name: dwProtocols
        type: DWORD
      - name: dwNameLen
        type: DWORD
      - name: szName[20]
        type: CHAR
      - name: dwLongNameLen
        type: DWORD
      - name: szLongName[40]
        type: CHAR
      item_type: struct
      name: _PROV_ENUMALGS_EX
      pos:
        line_end: 172
        line_start: 162
        source_file: /src/xmlsec/src/mscrypto/xmlsec-mingw.h
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoX509StoreGetKlass
  - xmlSecMSCryptoX509StoreFindCert
  - xmlSecMSCryptoX509StoreFindCert_ex
  - xmlSecMSCryptoUnixTimeToFileTime
  - xmlSecMSCryptoVerifyCertTime
  - xmlSecMSCryptoCheckRevocation
  - xmlSecBuildChainUsingWinapi
  - xmlSecMSCryptoX509StoreVerifySubject
  - xmlSecMSCryptoX509StoreContainsCert
  - xmlSecMSCryptoBuildCertChainManually
  - xmlSecMSCryptoX509StoreConstructCertsChain
  - xmlSecMSCryptoX509StoreVerify
  - xmlSecMSCryptoX509StoreAdoptCert
  - xmlSecMSCryptoX509StoreAdoptKeyStore
  - xmlSecMSCryptoX509StoreAdoptTrustedStore
  - xmlSecMSCryptoX509StoreAdoptUntrustedStore
  - xmlSecMSCryptoX509StoreEnableSystemTrustedCerts
  - xmlSecMSCryptoX509StoreInitialize
  - xmlSecMSCryptoX509StoreFinalize
  - xmlSecMSCryptoCertStrToName
  - xmlSecMSCryptoX509FindCertBySubject
  - xmlSecMSCryptoX509FindCertByIssuer
  - xmlSecMSCryptoX509GetCertName
  - xmlSecMSCryptoX509FindCertBySki
  - xmlSecMSCryptoX509FindCert
  - xmlSecMSCryptoX509GetNameString
  source_file: /src/xmlsec/src/mscrypto/x509vfy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoX509StoreSize
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/xmlsec/src/mscrypto/x509vfy.c
      type_or_value: XMLSEC_KEY_DATA_STORE_SIZE(MSCryptoX509Store)
    structs:
    - fields:
      - name: trusted
        type: HCERTSTORE
      - name: untrusted
        type: HCERTSTORE
      - name: dont_use_system_trusted_certs
        type: int
      item_type: struct
      name: _xmlSecMSCryptoX509StoreCtx
      pos:
        line_end: 53
        line_start: 49
        source_file: /src/xmlsec/src/mscrypto/x509vfy.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoX509StoreCtx
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/mscrypto/x509vfy.c
      type: _xmlSecMSCryptoX509StoreCtx
    union: []
- function_names:
  - xmlSecMSCryptoHmacCheckId
  - xmlSecMSCryptoHmacInitialize
  - xmlSecMSCryptoHmacFinalize
  - xmlSecMSCryptoHmacNodeRead
  - xmlSecMSCryptoHmacSetKeyReq
  - xmlSecMSCryptoHmacSetKey
  - xmlSecMSCryptoHmacVerify
  - xmlSecMSCryptoHmacExecute
  - xmlSecMSCryptoTransformHmacMd5GetKlass
  - xmlSecMSCryptoTransformHmacRipemd160GetKlass
  - xmlSecMSCryptoTransformHmacSha1GetKlass
  - xmlSecMSCryptoTransformHmacSha224GetKlass
  - xmlSecMSCryptoTransformHmacSha256GetKlass
  - xmlSecMSCryptoTransformHmacSha384GetKlass
  - xmlSecMSCryptoTransformHmacSha512GetKlass
  source_file: /src/xmlsec/src/mscrypto/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoHmacSize
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/src/mscrypto/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoHmac)
    structs:
    - fields:
      - name: provider
        type: HCRYPTPROV
      - name: cryptKey
        type: HCRYPTKEY
      - name: pubPrivKey
        type: HCRYPTKEY
      - name: alg_id
        type: ALG_ID
      - name: '* providers'
        type: xmlSecMSCryptoProviderInfo
      - name: mscHash
        type: HCRYPTHASH
      - name: dgst[XMLSEC_TRANSFORM_HMAC_MAX_OUTPUT_SIZE]
        type: unsigned char
      - name: dgstSize
        type: xmlSecSize
      - name: dgstSizeInBits
        type: xmlSecSize
      - name: ctxInitialized
        type: int
      item_type: struct
      name: _xmlSecMSCryptoHmacCtx
      pos:
        line_end: 71
        line_start: 60
        source_file: /src/xmlsec/src/mscrypto/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoHmacCtx
      pos:
        line_end: 59
        line_start: 59
        source_file: /src/xmlsec/src/mscrypto/hmac.c
      type: _xmlSecMSCryptoHmacCtx
    union: []
- function_names:
  - xmlSecMSCryptoSymKeyDataCheckId
  - xmlSecMSCryptoSymKeyDataInitialize
  - xmlSecMSCryptoSymKeyDataDuplicate
  - xmlSecMSCryptoSymKeyDataFinalize
  - xmlSecMSCryptoSymKeyDataXmlRead
  - xmlSecMSCryptoSymKeyDataXmlWrite
  - xmlSecMSCryptoSymKeyDataBinRead
  - xmlSecMSCryptoSymKeyDataBinWrite
  - xmlSecMSCryptoSymKeyDataGenerate
  - xmlSecMSCryptoSymKeyDataGetType
  - xmlSecMSCryptoSymKeyDataGetSize
  - xmlSecMSCryptoSymKeyDataDebugDump
  - xmlSecMSCryptoSymKeyDataDebugXmlDump
  - xmlSecMSCryptoSymKeyDataKlassCheck
  - xmlSecMSCryptoCreatePrivateExponentOneKey
  - xmlSecMSCryptoImportPlainSessionBlob
  - xmlSecMSCryptoKeyDataAesGetKlass
  - xmlSecMSCryptoKeyDataAesSet
  - xmlSecMSCryptoKeyDataDesGetKlass
  - xmlSecMSCryptoKeyDataHmacGetKlass
  - xmlSecMSCryptoKeyDataHmacSet
  source_file: /src/xmlsec/src/mscrypto/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoSignatureCheckId
  - xmlSecMSCryptoSignatureInitialize
  - xmlSecMSCryptoSignatureFinalize
  - xmlSecMSCryptoSignatureSetKey
  - xmlSecMSCryptoSignatureSetKeyReq
  - xmlSecMSCryptoSignatureVerify
  - xmlSecMSCryptoSignatureExecute
  - xmlSecMSCryptoTransformRsaMd5GetKlass
  - xmlSecMSCryptoTransformRsaSha1GetKlass
  - xmlSecMSCryptoTransformRsaSha256GetKlass
  - xmlSecMSCryptoTransformRsaSha384GetKlass
  - xmlSecMSCryptoTransformRsaSha512GetKlass
  - xmlSecMSCryptoTransformDsaSha1GetKlass
  - xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
  - xmlSecMSCryptoTransformGost2012_256GetKlass
  - xmlSecMSCryptoTransformGost2012_512GetKlass
  source_file: /src/xmlsec/src/mscrypto/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoSignatureSize
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/mscrypto/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoSignature)
    structs:
    - fields:
      - name: data
        type: xmlSecKeyDataPtr
      - name: alg_id
        type: ALG_ID
      - name: mscHash
        type: HCRYPTHASH
      - name: digestAlgId
        type: ALG_ID
      - name: keyId
        type: xmlSecKeyDataId
      item_type: struct
      name: _xmlSecMSCryptoSignatureCtx
      pos:
        line_end: 52
        line_start: 46
        source_file: /src/xmlsec/src/mscrypto/signatures.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoSignatureCtx
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/mscrypto/signatures.c
      type: _xmlSecMSCryptoSignatureCtx
    union: []
- function_names:
  - xmlSecMSCryptoDigestCheckId
  - xmlSecMSCryptoDigestInitialize
  - xmlSecMSCryptoDigestFinalize
  - xmlSecMSCryptoDigestVerify
  - xmlSecMSCryptoDigestExecute
  - xmlSecMSCryptoTransformMd5GetKlass
  - xmlSecMSCryptoTransformSha1GetKlass
  - xmlSecMSCryptoTransformSha256GetKlass
  - xmlSecMSCryptoTransformSha384GetKlass
  - xmlSecMSCryptoTransformSha512GetKlass
  - xmlSecMSCryptoTransformGostR3411_94GetKlass
  - xmlSecMSCryptoTransformGostR3411_2012_256GetKlass
  - xmlSecMSCryptoTransformGostR3411_2012_512GetKlass
  source_file: /src/xmlsec/src/mscrypto/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MSCRYPTO_MAX_HASH_SIZE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/mscrypto/digests.c
      type_or_value: '256'
    - item_type: preproc_def
      name: xmlSecMSCryptoDigestSize
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/mscrypto/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoDigest)
    structs:
    - fields:
      - name: provider
        type: HCRYPTPROV
      - name: alg_id
        type: ALG_ID
      - name: '* providers'
        type: xmlSecMSCryptoProviderInfo
      - name: mscHash
        type: HCRYPTHASH
      - name: dgst[MSCRYPTO_MAX_HASH_SIZE]
        type: unsigned char
      - name: dgstSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecMSCryptoDigestCtx
      pos:
        line_end: 43
        line_start: 36
        source_file: /src/xmlsec/src/mscrypto/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoDigestCtx
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/xmlsec/src/mscrypto/digests.c
      type: _xmlSecMSCryptoDigestCtx
    union: []
- function_names:
  - xmlSecMSCryptoKeysStoreGetKlass
  - xmlSecMSCryptoKeysStoreAdoptKey
  - xmlSecMSCryptoKeysStoreLoad
  - xmlSecMSCryptoKeysStoreSave
  - xmlSecMSCryptoKeysStoreInitialize
  - xmlSecMSCryptoKeysStoreFinalize
  - xmlSecMSCryptoKeysStoreFindCert
  - xmlSecMSCryptoKeysStoreFindKey
  source_file: /src/xmlsec/src/mscrypto/keysstore.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME_A
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/src/mscrypto/keysstore.c
      type_or_value: '"MY"'
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME_W
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/src/mscrypto/keysstore.c
      type_or_value: L"MY"
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/mscrypto/keysstore.c
      type_or_value: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME_W
    - item_type: preproc_def
      name: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/src/mscrypto/keysstore.c
      type_or_value: XMLSEC_MSCRYPTO_APP_DEFAULT_CERT_STORE_NAME_A
    - item_type: preproc_def
      name: xmlSecMSCryptoKeysStoreSize
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/src/mscrypto/keysstore.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(MSCryptoKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCryptoGetFunctions_mscrypto
  - xmlSecMSCryptoInit
  - xmlSecMSCryptoShutdown
  - xmlSecMSCryptoKeysMngrInit
  - xmlSecMSCryptoGenerateRandom
  - xmlSecMSCryptoGetErrorMessage
  - xmlSecMSCryptoErrorsDefaultCallback
  - xmlSecMSCryptoFindProvider
  - ConvertEndian
  - ConvertEndianInPlace
  source_file: /src/xmlsec/src/mscrypto/crypto.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_CONTAINER_NAME_A
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/mscrypto/crypto.c
      type_or_value: '"xmlsec-key-container"'
    - item_type: preproc_def
      name: XMLSEC_CONTAINER_NAME_W
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/mscrypto/crypto.c
      type_or_value: L"xmlsec-key-container"
    - item_type: preproc_def
      name: XMLSEC_CONTAINER_NAME
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/mscrypto/crypto.c
      type_or_value: XMLSEC_CONTAINER_NAME_W
    - item_type: preproc_def
      name: XMLSEC_CONTAINER_NAME
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/mscrypto/crypto.c
      type_or_value: XMLSEC_CONTAINER_NAME_A
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecMSCryptoRsaPkcs1OaepCheckId
  - xmlSecMSCryptoRsaPkcs1OaepInitialize
  - xmlSecMSCryptoRsaPkcs1OaepFinalize
  - xmlSecMSCryptoRsaPkcs1OaepSetKeyReq
  - xmlSecMSCryptoRsaPkcs1OaepSetKey
  - xmlSecMSCryptoRsaPkcs1OaepExecute
  - xmlSecMSCryptoRsaPkcs1OaepProcess
  - xmlSecMSCryptoTransformRsaPkcs1GetKlass
  - xmlSecMSCryptoTransformRsaOaepGetKlass
  - xmlSecMSCryptoRsaOaepNodeRead
  source_file: /src/xmlsec/src/mscrypto/kt_rsa.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoRsaPkcs1OaepSize
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/mscrypto/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(MSCryptoRsaPkcs1Oaep)
    structs:
    - fields:
      - name: dwFlags
        type: DWORD
      - name: data
        type: xmlSecKeyDataPtr
      - name: oaepParams
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecMSCryptoRsaPkcs1OaepCtx
      pos:
        line_end: 49
        line_start: 45
        source_file: /src/xmlsec/src/mscrypto/kt_rsa.c
    typedefs:
    - item_type: typedef
      name: xmlSecMSCryptoRsaPkcs1OaepCtx
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/src/mscrypto/kt_rsa.c
      type: _xmlSecMSCryptoRsaPkcs1OaepCtx
    union: []
- function_names:
  - xmlSecGnuTLSGcmCipherCheckId
  - xmlSecGnuTLSGcmCipherInitialize
  - xmlSecGnuTLSGcmCipherFinalize
  - xmlSecGnuTLSGcmCipherSetKeyReq
  - xmlSecGnuTLSGcmCipherSetKey
  - xmlSecGnuTLSGcmCipherEncrypt
  - xmlSecGnuTLSGcmCipherDecrypt
  - xmlSecGnuTLSGcmCipherExecute
  - xmlSecGnuTLSTransformAes128GcmGetKlass
  - xmlSecGnuTLSTransformAes192GcmGetKlass
  - xmlSecGnuTLSTransformAes256GcmGetKlass
  source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_GCM_CIPHER_MAX_BLOCK_SIZE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_GCM_CIPHER_IV_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
      type_or_value: '12'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_GCM_CIPHER_TAG_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
      type_or_value: '16'
    - item_type: preproc_def
      name: xmlSecGnuTLSGcmCipherSize
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSGcmCipher)
    structs:
    - fields:
      - name: cipher
        type: gnutls_aead_cipher_hd_t
      - name: keyId
        type: xmlSecKeyDataId
      - name: algorithm
        type: gnutls_cipher_algorithm_t
      - name: keySize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGnuTLSGcmCipherCtx
      pos:
        line_end: 54
        line_start: 48
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSGcmCipherCtx
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/src/gnutls/ciphers_gcm.c
      type: _xmlSecGnuTLSGcmCipherCtx
    union: []
- function_names:
  - xmlSecGnuTLSError
  - xmlSecGnuTLSError2
  source_file: /src/xmlsec/src/gnutls/globals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_MAX_DIGEST_SIZE
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/gnutls/globals.h
      type_or_value: '128'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGnuTLSKWAesCheckId
  - xmlSecGnuTLSKWAesInitialize
  - xmlSecGnuTLSKWAesFinalize
  - xmlSecGnuTLSKWAesSetKeyReq
  - xmlSecGnuTLSKWAesSetKey
  - xmlSecGnuTLSKWAesExecute
  - xmlSecGnuTLSTransformKWAes128GetKlass
  - xmlSecGnuTLSTransformKWAes192GetKlass
  - xmlSecGnuTLSTransformKWAes256GetKlass
  - xmlSecGnuTLSKWAesInitCipher
  - xmlSecGnuTLSKWAesBlockEncrypt
  - xmlSecGnuTLSKWAesBlockDecrypt
  source_file: /src/xmlsec/src/gnutls/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKWAesSize
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/src/gnutls/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      - name: algorithm
        type: gnutls_cipher_algorithm_t
      - name: blockSize
        type: xmlSecSize
      - name: ivSize
        type: xmlSecSize
      - name: cipher
        type: gnutls_cipher_hd_t
      item_type: struct
      name: _xmlSecGnuTLSKWAesCtx
      pos:
        line_end: 76
        line_start: 69
        source_file: /src/xmlsec/src/gnutls/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSKWAesCtx
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/src/gnutls/kw_aes.c
      type: _xmlSecGnuTLSKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 482
        line_start: 482
        source_file: /src/xmlsec/src/gnutls/kw_aes.c
      type: int
    union: []
- function_names:
  - xmlSecGnuTLSCbcCipherCtxInit
  - xmlSecGnuTLSCbcCipherCtxUpdateBlock
  - xmlSecGnuTLSCbcCipherCtxUpdate
  - xmlSecGnuTLSCbcCipherCtxFinal
  - xmlSecGnuTLSCbcCipherCheckId
  - xmlSecGnuTLSCbcCipherInitialize
  - xmlSecGnuTLSCbcCipherFinalize
  - xmlSecGnuTLSCbcCipherSetKeyReq
  - xmlSecGnuTLSCbcCipherSetKey
  - xmlSecGnuTLSCbcCipherExecute
  - xmlSecGnuTLSTransformAes128CbcGetKlass
  - xmlSecGnuTLSTransformAes192CbcGetKlass
  - xmlSecGnuTLSTransformAes256CbcGetKlass
  - xmlSecGnuTLSTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_CBC_CIPHER_MAX_BLOCK_SIZE
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_CBC_CIPHER_MAX_IV_SIZE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_CBC_CIPHER_PAD_SIZE
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
      type_or_value: (2 * XMLSEC_GNUTLS_CBC_CIPHER_MAX_BLOCK_SIZE)
    - item_type: preproc_def
      name: xmlSecGnuTLSCbcCipherSize
      pos:
        line_end: 352
        line_start: 351
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSCbcCipher)
    structs:
    - fields:
      - name: keyId
        type: xmlSecKeyDataId
      - name: algorithm
        type: gnutls_cipher_algorithm_t
      - name: keySize
        type: xmlSecSize
      - name: blockSize
        type: xmlSecSize
      - name: ivSize
        type: xmlSecSize
      - name: cipher
        type: gnutls_cipher_hd_t
      - name: ctxInitialized
        type: int
      - name: iv[XMLSEC_GNUTLS_CBC_CIPHER_MAX_IV_SIZE]
        type: xmlSecByte
      - name: pad[XMLSEC_GNUTLS_CBC_CIPHER_PAD_SIZE]
        type: xmlSecByte
      item_type: struct
      name: _xmlSecGnuTLSCbcCipherCtx
      pos:
        line_end: 54
        line_start: 43
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSCbcCipherCtx
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/src/gnutls/ciphers_cbc.c
      type: _xmlSecGnuTLSCbcCipherCtx
    union: []
- function_names:
  - xmlSecGnuTLSPbkdf2CheckId
  - xmlSecGnuTLSPbkdf2Initialize
  - xmlSecGnuTLSPbkdf2Finalize
  - xmlSecGnuTLSPbkdf2SetKeyReq
  - xmlSecGnuTLSPbkdf2SetKey
  - xmlSecGnuTLSPbkdf2GetMacFromHref
  - xmlSecGnuTLSPbkdf2NodeRead
  - xmlSecGnuTLSPbkdf2GenerateKey
  - xmlSecGnuTLSPbkdf2Execute
  - xmlSecGnuTLSTransformPbkdf2GetKlass
  source_file: /src/xmlsec/src/gnutls/pbkdf2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_KDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/gnutls/pbkdf2.c
      type_or_value: '64'
    - item_type: preproc_def
      name: xmlSecGnuTLSPbkdf2CtxSize
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/xmlsec/src/gnutls/pbkdf2.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSPbkdf2)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformPbkdf2Params
      - name: mac
        type: gnutls_mac_algorithm_t
      - name: key
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecGnuTLSPbkdf2Ctx
      pos:
        line_end: 54
        line_start: 50
        source_file: /src/xmlsec/src/gnutls/pbkdf2.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSPbkdf2Ctx
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/xmlsec/src/gnutls/pbkdf2.c
      type: _xmlSecGnuTLSPbkdf2Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 406
        line_start: 406
        source_file: /src/xmlsec/src/gnutls/pbkdf2.c
      type: int
    union: []
- function_names:
  - xmlSecGnuTLSAsymKeyDataInitialize
  - xmlSecGnuTLSAsymKeyDataFinalize
  - xmlSecGnuTLSAsymKeyDataAdoptKey
  - xmlSecGnuTLSAsymKeyDataGenerate
  - xmlSecGnuTLSAsymKeyDataDuplicate
  - xmlSecGnuTLSAsymKeyDataGetPublicKey
  - xmlSecGnuTLSAsymKeyDataGetPrivateKey
  - xmlSecGnuTLSAsymKeyDataGetType
  - xmlSecGnuTLSAsymKeyDataGetSize
  - xmlSecGCryptAsymetricKeyCreatePub
  - xmlSecGCryptAsymetricKeyCreatePriv
  - xmlSecGCryptAsymetricKeyGetPub
  - xmlSecGCryptAsymetricKeyGetPriv
  - xmlSecGnuTLSKeyDataDEREncodedKeyValueGetKlass
  - xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlRead
  - xmlSecGnuTLSKeyDataDEREncodedKeyValueXmlWrite
  - xmlSecGnuTLSKeyDataDsaGetKlass
  - xmlSecGnuTLSKeyDataDsaAdoptKey
  - xmlSecGnuTLSKeyDataDsaGetPublicKey
  - xmlSecGnuTLSKeyDataDsaGetPrivateKey
  - xmlSecGnuTLSKeyDataDsaInitialize
  - xmlSecGnuTLSKeyDataDsaFinalize
  - xmlSecGnuTLSKeyDataDsaDuplicate
  - xmlSecGnuTLSKeyDataDsaGenerate
  - xmlSecGnuTLSKeyDataDsaGetType
  - xmlSecGnuTLSKeyDataDsaGetSize
  - xmlSecGnuTLSKeyDataDsaDebugDump
  - xmlSecGnuTLSKeyDataDsaDebugXmlDump
  - xmlSecGnuTLSKeyDataDsaXmlRead
  - xmlSecGnuTLSKeyDataDsaXmlWrite
  - xmlSecGnuTLSKeyDataDsaRead
  - xmlSecGnuTLSKeyDataDsaWrite
  - xmlSecGnuTLSKeyDataDsaPubKeyFromPrivKey
  - xmlSecGnuTLSKeyDataEcGetKlass
  - xmlSecGnuTLSKeyDataEcAdoptKey
  - xmlSecGnuTLSKeyDataEcGetPublicKey
  - xmlSecGnuTLSKeyDataEcGetPrivateKey
  - xmlSecGnuTLSKeyDataEcInitialize
  - xmlSecGnuTLSKeyDataEcDuplicate
  - xmlSecGnuTLSKeyDataEcFinalize
  - xmlSecGnuTLSKeyDataEcGetType
  - xmlSecGnuTLSKeyDataEcGetSize
  - xmlSecGnuTLSKeyDataEcDebugDump
  - xmlSecGnuTLSKeyDataEcDebugXmlDump
  - xmlSecGnuTLSKeyDataEcXmlRead
  - xmlSecGnuTLSKeyDataEcXmlWrite
  - xmlSecGnuTLSKeyDataEcRead
  - xmlSecGnuTLSKeyDataEcWrite
  - xmlSecGnuTLSKeyDataEcPubKeyFromPrivKey
  - xmlSecGnuTLSKeyDataRsaGetKlass
  - xmlSecGnuTLSKeyDataRsaAdoptKey
  - xmlSecGnuTLSKeyDataRsaGetPublicKey
  - xmlSecGnuTLSKeyDataRsaGetPrivateKey
  - xmlSecGnuTLSKeyDataRsaInitialize
  - xmlSecGnuTLSKeyDataRsaFinalize
  - xmlSecGnuTLSKeyDataRsaDuplicate
  - xmlSecGnuTLSKeyDataRsaGenerate
  - xmlSecGnuTLSKeyDataRsaGetType
  - xmlSecGnuTLSKeyDataRsaGetSize
  - xmlSecGnuTLSKeyDataRsaDebugDump
  - xmlSecGnuTLSKeyDataRsaDebugXmlDump
  - xmlSecGnuTLSKeyDataRsaXmlRead
  - xmlSecGnuTLSKeyDataRsaXmlWrite
  - xmlSecGnuTLSKeyDataRsaRead
  - xmlSecGnuTLSKeyDataRsaWrite
  - xmlSecGnuTLSKeyDataRsaPubKeyFromPrivKey
  - xmlSecGnuTLSKeyDataGostPubKeyFromPrivKey
  - xmlSecGnuTLSKeyDataGostAdoptKey
  - xmlSecGnuTLSKeyDataGost2001GetKlass
  - xmlSecGnuTLSKeyDataGost2001AdoptKey
  - xmlSecGnuTLSKeyDataGost2001GetPublicKey
  - xmlSecGnuTLSKeyDataGost2001GetPrivateKey
  - xmlSecGnuTLSKeyDataGost2001Initialize
  - xmlSecGnuTLSKeyDataGost2001Duplicate
  - xmlSecGnuTLSKeyDataGost2001Finalize
  - xmlSecGnuTLSKeyDataGost2001GetType
  - xmlSecGnuTLSKeyDataGost2001GetSize
  - xmlSecGnuTLSKeyDataGost2001DebugDump
  - xmlSecGnuTLSKeyDataGost2001DebugXmlDump
  - xmlSecGnuTLSKeyDataGost2012_256GetKlass
  - xmlSecGnuTLSKeyDataGost2012_256AdoptKey
  - xmlSecGnuTLSKeyDataGost2012_256GetPublicKey
  - xmlSecGnuTLSKeyDataGost2012_256GetPrivateKey
  - xmlSecGnuTLSKeyDataGost2012_256Initialize
  - xmlSecGnuTLSKeyDataGost2012_256Duplicate
  - xmlSecGnuTLSKeyDataGost2012_256Finalize
  - xmlSecGnuTLSKeyDataGost2012_256GetType
  - xmlSecGnuTLSKeyDataGost2012_256GetSize
  - xmlSecGnuTLSKeyDataGost2012_256DebugDump
  - xmlSecGnuTLSKeyDataGost2012_256DebugXmlDump
  - xmlSecGnuTLSKeyDataGost2012_512GetKlass
  - xmlSecGnuTLSKeyDataGost2012_512AdoptKey
  - xmlSecGnuTLSKeyDataGost2012_512GetPublicKey
  - xmlSecGnuTLSKeyDataGost2012_512GetPrivateKey
  - xmlSecGnuTLSKeyDataGost2012_512Initialize
  - xmlSecGnuTLSKeyDataGost2012_512Duplicate
  - xmlSecGnuTLSKeyDataGost2012_512Finalize
  - xmlSecGnuTLSKeyDataGost2012_512GetType
  - xmlSecGnuTLSKeyDataGost2012_512GetSize
  - xmlSecGnuTLSKeyDataGost2012_512DebugDump
  - xmlSecGnuTLSKeyDataGost2012_512DebugXmlDump
  - xmlSecGnuTLSAsymKeyDataCreate
  source_file: /src/xmlsec/src/gnutls/asymkeys.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSAsymKeyDataSize
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/xmlsec/src/gnutls/asymkeys.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(GnuTLSAsymKeyData)
    structs:
    - fields:
      - name: pubkey
        type: gnutls_pubkey_t
      - name: privkey
        type: gnutls_privkey_t
      item_type: struct
      name: _xmlSecGnuTLSAsymKeyDataCtx
      pos:
        line_end: 47
        line_start: 44
        source_file: /src/xmlsec/src/gnutls/asymkeys.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSAsymKeyDataCtx
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/src/gnutls/asymkeys.c
      type: _xmlSecGnuTLSAsymKeyDataCtx
    union: []
- function_names:
  - xmlSecGnuTLSTransformKWDes3GetKlass
  - xmlSecGnuTLSKWDes3Initialize
  - xmlSecGnuTLSKWDes3Finalize
  - xmlSecGnuTLSKWDes3SetKeyReq
  - xmlSecGnuTLSKWDes3SetKey
  - xmlSecGnuTLSKWDes3Execute
  - xmlSecGnuTLSKWDes3Sha1
  - xmlSecGnuTLSKWDes3GenerateRandom
  - xmlSecGnuTLSKWDes3BlockEncrypt
  - xmlSecGnuTLSKWDes3BlockDecrypt
  - xmlSecGnuTLSKWDes3Encrypt
  source_file: /src/xmlsec/src/gnutls/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKWDes3Size
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/src/gnutls/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSKWDes3)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSKWDes3Ctx
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/src/gnutls/kw_des.c
      type: xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 434
        line_start: 434
        source_file: /src/xmlsec/src/gnutls/kw_des.c
      type: int
    union: []
- function_names:
  - xmlSecGnuTLSAppInit
  - xmlSecGnuTLSAppShutdown
  - xmlSecGnuTLSAppKeyLoadEx
  - xmlSecGnuTLSAppKeyLoadMemory
  - xmlSecGnuTLSAppKeyCertLoad
  - xmlSecGnuTLSAppCheckCertMatchesKey
  - xmlSecGnuTLSAppKeyCertLoadMemory
  - xmlSecGnuTLSAppPkcs12Load
  - xmlSecGnuTLSAppPkcs12LoadMemory
  - xmlSecGnuTLSAppPemDerPrivKeyLoadMemory
  - xmlSecGnuTLSAppPemDerPubKeyLoadMemory
  - xmlSecGnuTLSAppPemDerKeyLoadMemory
  - xmlSecGnuTLSAppPkcs8KeyLoadMemory
  - xmlSecGnuTLSAppKeyFromCertLoadMemory
  - xmlSecGnuTLSAppKeysMngrCertLoad
  - xmlSecGnuTLSAppKeysMngrCertLoadMemory
  - xmlSecGnuTLSAppKeysMngrCrlLoad
  - xmlSecGnuTLSAppKeysMngrCrlLoadMemory
  - xmlSecGnuTLSAppDefaultKeysMngrInit
  - xmlSecGnuTLSAppDefaultKeysMngrAdoptKey
  - xmlSecGnuTLSAppDefaultKeysMngrVerifyKey
  - xmlSecGnuTLSAppDefaultKeysMngrLoad
  - xmlSecGnuTLSAppDefaultKeysMngrSave
  - xmlSecGnuTLSAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/gnutls/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/gnutls/private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSX509CrtListId
      pos:
        line_end: 47
        line_start: 45
        source_file: /src/xmlsec/src/gnutls/private.h
      type_or_value: xmlSecGnuTLSX509CrtListGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSX509CrlListId
      pos:
        line_end: 56
        line_start: 54
        source_file: /src/xmlsec/src/gnutls/private.h
      type_or_value: xmlSecGnuTLSX509CrlListGetKlass()
    structs:
    - fields:
      - name: '*subjectName'
        type: xmlChar
      - name: '*issuerName'
        type: xmlChar
      - name: '*issuerSerial'
        type: xmlChar
      - name: '* ski'
        type: xmlSecByte
      - name: skiSize
        type: xmlSecSize
      - name: '* digestValue'
        type: xmlSecByte
      - name: digestLen
        type: size_t
      - name: digestAlgo
        type: gnutls_digest_algorithm_t
      item_type: struct
      name: _xmlSecGnuTLSX509FindCertCtx
      pos:
        line_end: 113
        line_start: 101
        source_file: /src/xmlsec/src/gnutls/private.h
    - fields:
      - name: '* key'
        type: xmlChar
      - name: '* value'
        type: xmlChar
      item_type: struct
      name: _xmlSecGnuTLSDnAttr
      pos:
        line_end: 185
        line_start: 182
        source_file: /src/xmlsec/src/gnutls/private.h
    typedefs: []
    union: []
- function_names:
  - xmlSecGnuTLSKeyDataX509GetKlass
  - xmlSecGnuTLSKeyDataX509GetKeyCert
  - xmlSecGnuTLSKeyDataX509GetCerts
  - xmlSecGnuTLSKeyDataX509GetCrls
  - xmlSecGnuTLSKeyDataX509AddCertInternal
  - xmlSecGnuTLSKeyDataX509AdoptKeyCert
  - xmlSecGnuTLSKeyDataX509AdoptCert
  - xmlSecGnuTLSKeyDataX509GetCert
  - xmlSecGnuTLSKeyDataX509GetCertsSize
  - xmlSecGnuTLSKeyDataX509AdoptCrl
  - xmlSecGnuTLSKeyDataX509GetCrl
  - xmlSecGnuTLSKeyDataX509GetCrlsSize
  - xmlSecGnuTLSKeyDataX509Initialize
  - xmlSecGnuTLSKeyDataX509Duplicate
  - xmlSecGnuTLSKeyDataX509Finalize
  - xmlSecGnuTLSKeyDataX509XmlRead
  - xmlSecGnuTLSKeyDataX509XmlWrite
  - xmlSecGnuTLSKeyDataX509DebugDump
  - xmlSecGnuTLSKeyDataX509DebugXmlDump
  - xmlSecGnuTLSKeyDataX509Read
  - xmlSecGnuTLSKeyDataX509Write
  - xmlSecGnuTLSX509CertSKIWrite
  - xmlSecGnuTLSKVerifyAndAdoptX509KeyData
  - xmlSecGnuTLSX509CertGetKey
  - xmlSecGnuTLSKeyDataRawX509CertGetKlass
  - xmlSecGnuTLSKeyDataRawX509CertBinRead
  source_file: /src/xmlsec/src/gnutls/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSX509DataSize
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/src/gnutls/x509.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(GnuTLSX509Data)
    structs:
    - fields:
      - name: keyCert
        type: gnutls_x509_crt_t
      - name: certsList
        type: xmlSecPtrList
      - name: crlsList
        type: xmlSecPtrList
      item_type: struct
      name: _xmlSecGnuTLSX509DataCtx
      pos:
        line_end: 71
        line_start: 67
        source_file: /src/xmlsec/src/gnutls/x509.c
    - fields:
      - name: crtPos
        type: xmlSecSize
      - name: crtSize
        type: xmlSecSize
      - name: crlPos
        type: xmlSecSize
      - name: crlSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGnuTLSKeyDataX509Context
      pos:
        line_end: 106
        line_start: 101
        source_file: /src/xmlsec/src/gnutls/x509.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSX509DataCtx
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/src/gnutls/x509.c
      type: _xmlSecGnuTLSX509DataCtx
    union: []
- function_names:
  - xmlSecGnuTLSX509StoreGetKlass
  - xmlSecGnuTLSX509StoreFindCertByValue
  - xmlSecGnuTLSX509FindKeyByValue
  - xmlSecGnuTLSX509CheckCrtTime
  - xmlSecGnuTLSX509CheckCrtsTime
  - xmlSecGnuTLSX509StoreGetTrustedCerts
  - xmlSecGnuTLSX509StoreGetCrls
  - xmlSecGnuTLSX509StoreGetCertsChain
  - xmlSecGnuTLSX509StoreVerifyCert
  - xmlSecGnuTLSX509StoreVerifyKey
  - xmlSecGnuTLSX509StoreVerify
  - xmlSecGnuTLSX509StoreAdoptCert
  - xmlSecGnuTLSX509StoreAdoptCrl
  - xmlSecGnuTLSX509StoreInitialize
  - xmlSecGnuTLSX509StoreFinalize
  - xmlSecGnuTLSX509DnsEqual
  - xmlSecGnuTLSX509CertCompareSKI
  - xmlSecGnuTLSX509FindCert
  - xmlSecGnuTLSX509FindSignedCert
  - xmlSecGnuTLSX509FindSignerCert
  source_file: /src/xmlsec/src/gnutls/x509vfy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSX509StoreSize
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/gnutls/x509vfy.c
      type_or_value: XMLSEC_KEY_DATA_STORE_SIZE(GnuTLSX509Store)
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_DN_ATTRS_SIZE
      pos:
        line_end: 845
        line_start: 844
        source_file: /src/xmlsec/src/gnutls/x509vfy.c
      type_or_value: '1024'
    structs:
    - fields:
      - name: certsTrusted
        type: xmlSecPtrList
      - name: certsUntrusted
        type: xmlSecPtrList
      - name: crls
        type: xmlSecPtrList
      item_type: struct
      name: _xmlSecGnuTLSX509StoreCtx
      pos:
        line_end: 49
        line_start: 45
        source_file: /src/xmlsec/src/gnutls/x509vfy.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSX509StoreCtx
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/src/gnutls/x509vfy.c
      type: _xmlSecGnuTLSX509StoreCtx
    union: []
- function_names:
  - xmlSecGnuTLSX509CrtListGetKlass
  - xmlSecGnuTLSX509CrtListDuplicateItem
  - xmlSecGnuTLSX509CrtListDestroyItem
  - xmlSecGnuTLSX509CrtListDebugDumpItem
  - xmlSecGnuTLSX509CrtListDebugXmlDumpItem
  - xmlSecGnuTLSX509CrlListGetKlass
  - xmlSecGnuTLSX509CrlListDuplicateItem
  - xmlSecGnuTLSX509CrlListDestroyItem
  - xmlSecGnuTLSX509CrlListDebugDumpItem
  - xmlSecGnuTLSX509CrlListDebugXmlDumpItem
  - xmlSecGnuTLSX509CertDup
  - xmlSecGnuTLSX509CertIsSelfSigned
  - xmlSecGnuTLSX509CertGetSubjectDN
  - xmlSecGnuTLSX509CertGetIssuerDN
  - xmlSecGnuTLSX509CertGetIssuerSerial
  - xmlSecGnuTLSX509DigestWrite
  - xmlSecGnuTLSX509CertRead
  - xmlSecGnuTLSX509CertDerWrite
  - xmlSecGnuTLSX509CertDebugDump
  - xmlSecGnuTLSX509CertDebugXmlDump
  - xmlSecGnuTLSX509FindCertCtxInitialize
  - xmlSecGnuTLSX509FindCertCtxInitializeFromValue
  - xmlSecGnuTLSX509FindCertCtxFinalize
  - xmlSecGnuTLSX509MatchBySubjectName
  - xmlSecGnuTLSX509MatchByIssuer
  - xmlSecGnuTLSX509MatchBySki
  - xmlSecGnuTLSX509MatchByDigest
  - xmlSecGnuTLSX509FindCertCtxMatch
  - xmlSecGnuTLSX509GetDigestFromAlgorithm
  - xmlSecGnuTLSX509CrlDup
  - xmlSecGnuTLSX509CrlGetIssuerDN
  - xmlSecGnuTLSX509CrlRead
  - xmlSecGnuTLSX509CrlDerWrite
  - xmlSecGnuTLSX509CrlDebugDump
  - xmlSecGnuTLSX509CrlDebugXmlDump
  - xmlSecGnuTLSASN1IntegerWrite
  - xmlSecGnuTLSPkcs12LoadMemory
  - xmlSecGnuTLSDnAttrsInitialize
  - xmlSecGnuTLSDnAttrsDeinitialize
  - xmlSecGnuTLSDnAttrrsFind
  - xmlSecGnuTLSDnAttrsEqual
  - XMLSEC_GNUTLS_IS_SPACE
  - xmlSecGnuTLSDnAttrsParse
  source_file: /src/xmlsec/src/gnutls/x509utils.c
  types:
    enum:
    - enumerators:
      - name: xmlSecGnuTLSDnParseState_BeforeNameComponent
        value: '0'
      - name: xmlSecGnuTLSDnParseState_QuotedString
      - name: xmlSecGnuTLSDnParseState_Key
      - name: xmlSecGnuTLSDnParseState_BeforeString
      - name: xmlSecGnuTLSDnParseState_String
      - name: xmlSecGnuTLSDnParseState_AfterQuotedString
      item_type: enum
      name: xmlSecGnuTLSDnParseState
      pos:
        line_end: 1460
        line_start: 1453
        source_file: /src/xmlsec/src/gnutls/x509utils.c
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_INT_TO_STR_MAX_SIZE
      pos:
        line_end: 999
        line_start: 998
        source_file: /src/xmlsec/src/gnutls/x509utils.c
      type_or_value: '64'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGnuTLSHmacCheckId
  - xmlSecGnuTLSHmacInitialize
  - xmlSecGnuTLSHmacFinalize
  - xmlSecGnuTLSHmacNodeRead
  - xmlSecGnuTLSHmacSetKeyReq
  - xmlSecGnuTLSHmacSetKey
  - xmlSecGnuTLSHmacVerify
  - xmlSecGnuTLSHmacExecute
  - xmlSecGnuTLSTransformHmacSha1GetKlass
  - xmlSecGnuTLSTransformHmacSha256GetKlass
  - xmlSecGnuTLSTransformHmacSha384GetKlass
  - xmlSecGnuTLSTransformHmacSha512GetKlass
  source_file: /src/xmlsec/src/gnutls/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSHmacSize
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/src/gnutls/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSHmac)
    structs:
    - fields:
      - name: hmac
        type: gnutls_hmac_hd_t
      - name: hmacAlgo
        type: gnutls_mac_algorithm_t
      - name: hmacSizeInBits
        type: xmlSecSize
      - name: hmacOutput[XMLSEC_TRANSFORM_HMAC_MAX_OUTPUT_SIZE]
        type: xmlSecByte
      item_type: struct
      name: _xmlSecGnuTLSHmacCtx
      pos:
        line_end: 47
        line_start: 42
        source_file: /src/xmlsec/src/gnutls/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSHmacCtx
      pos:
        line_end: 41
        line_start: 41
        source_file: /src/xmlsec/src/gnutls/hmac.c
      type: _xmlSecGnuTLSHmacCtx
    union: []
- function_names:
  - xmlSecGnuTLSSymKeyDataCheckId
  - xmlSecGnuTLSSymKeyDataInitialize
  - xmlSecGnuTLSSymKeyDataDuplicate
  - xmlSecGnuTLSSymKeyDataFinalize
  - xmlSecGnuTLSSymKeyDataXmlRead
  - xmlSecGnuTLSSymKeyDataXmlWrite
  - xmlSecGnuTLSSymKeyDataBinRead
  - xmlSecGnuTLSSymKeyDataBinWrite
  - xmlSecGnuTLSSymKeyDataGenerate
  - xmlSecGnuTLSSymKeyDataGetType
  - xmlSecGnuTLSSymKeyDataGetSize
  - xmlSecGnuTLSSymKeyDataDebugDump
  - xmlSecGnuTLSSymKeyDataDebugXmlDump
  - xmlSecGnuTLSSymKeyDataKlassCheck
  - xmlSecGnuTLSKeyDataAesGetKlass
  - xmlSecGnuTLSKeyDataAesSet
  - xmlSecGnuTLSKeyDataDesGetKlass
  - xmlSecGnuTLSKeyDataDesSet
  - xmlSecGnuTLSKeyDataHmacGetKlass
  - xmlSecGnuTLSKeyDataHmacSet
  - xmlSecGnuTLSKeyDataPbkdf2GetKlass
  - xmlSecGnuTLSKeyDataPbkdf2Set
  source_file: /src/xmlsec/src/gnutls/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGnuTLSSignatureCheckId
  - xmlSecGnuTLSSignatureInitialize
  - xmlSecGnuTLSSignatureFinalize
  - xmlSecGnuTLSSignatureSetKey
  - xmlSecGnuTLSSignatureSetKeyReq
  - XMLSEC_GNUTLS_GET_SIZE_OF_SIZE
  - XMLSEC_GNUTLS_PUT_LENGTH
  - xmlSecGnuTLSToDer
  - XMLSEC_GNUTLS_GET_BYTE
  - xmlSecGnuTLSReadDerLength
  - xmlSecGnuTLSReadDerInteger
  - xmlSecGnuTLSFromDer
  - xmlSecGnuTLSSignatureGetDerHalfSize
  - xmlSecGnuTLSSignatureVerify
  - xmlSecGnuTLSSignatureSign
  - xmlSecGnuTLSSignatureExecute
  - xmlSecGnuTLSTransformDsaSha1GetKlass
  - xmlSecGnuTLSTransformDsaSha256GetKlass
  - xmlSecGnuTLSTransformEcdsaSha1GetKlass
  - xmlSecGnuTLSTransformEcdsaSha256GetKlass
  - xmlSecGnuTLSTransformEcdsaSha384GetKlass
  - xmlSecGnuTLSTransformEcdsaSha512GetKlass
  - xmlSecGnuTLSTransformEcdsaSha3_256GetKlass
  - xmlSecGnuTLSTransformEcdsaSha3_384GetKlass
  - xmlSecGnuTLSTransformEcdsaSha3_512GetKlass
  - xmlSecGnuTLSTransformGost2001GostR3411_94GetKlass
  - xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_256GetKlass
  - xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_512GetKlass
  - xmlSecGnuTLSTransformRsaSha1GetKlass
  - xmlSecGnuTLSTransformRsaSha256GetKlass
  - xmlSecGnuTLSTransformRsaSha384GetKlass
  - xmlSecGnuTLSTransformRsaSha512GetKlass
  - xmlSecGnuTLSTransformRsaPssSha256GetKlass
  - xmlSecGnuTLSTransformRsaPssSha384GetKlass
  - xmlSecGnuTLSTransformRsaPssSha512GetKlass
  source_file: /src/xmlsec/src/gnutls/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_SIGNATURE_DSA_SHA1_HALF_LEN
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type_or_value: '20'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_SIGNATURE_DSA_SHA256_HALF_LEN
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type_or_value: (256 / 8)
    - item_type: preproc_def
      name: xmlSecGnuTLSSignatureSize
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSSignature)
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_TAG_SEQUENCE
      pos:
        line_end: 548
        line_start: 547
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type_or_value: '0x30'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_TAG_INTEGER
      pos:
        line_end: 549
        line_start: 548
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type_or_value: '0x02'
    structs:
    - fields:
      - name: getPubKey
        type: xmlSecGnuTLSKeyDataGetPublicKeyMethod
      - name: getPrivKey
        type: xmlSecGnuTLSKeyDataGetPrivateKeyMethod
      - name: dgstAlgo
        type: gnutls_digest_algorithm_t
      - name: dgstSize
        type: unsigned int
      - name: hash
        type: gnutls_hash_hd_t
      - name: dgst[XMLSEC_GNUTLS_MAX_DIGEST_SIZE]
        type: xmlSecByte
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyData
        type: xmlSecKeyDataPtr
      - name: signAlgo
        type: gnutls_sign_algorithm_t
      - name: signFlags
        type: unsigned int
      - name: verifyFlags
        type: unsigned int
      item_type: struct
      name: _xmlSecGnuTLSSignatureCtx
      pos:
        line_end: 66
        line_start: 52
        source_file: /src/xmlsec/src/gnutls/signatures.c
    typedefs:
    - item_type: typedef
      name: (*xmlSecGnuTLSKeyDataGetPublicKeyMethod)      (xmlSecKeyDataPtr data)
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type: gnutls_pubkey_t
    - item_type: typedef
      name: (*xmlSecGnuTLSKeyDataGetPrivateKeyMethod)     (xmlSecKeyDataPtr data)
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type: gnutls_privkey_t
    - item_type: typedef
      name: xmlSecGnuTLSSignatureCtx
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/src/gnutls/signatures.c
      type: _xmlSecGnuTLSSignatureCtx
    union: []
- function_names:
  - xmlSecGnuTLSDigestCheckId
  - xmlSecGnuTLSDigestInitialize
  - xmlSecGnuTLSDigestFinalize
  - xmlSecGnuTLSDigestVerify
  - xmlSecGnuTLSDigestExecute
  - xmlSecGnuTLSTransformSha1GetKlass
  - xmlSecGnuTLSTransformSha256GetKlass
  - xmlSecGnuTLSTransformSha384GetKlass
  - xmlSecGnuTLSTransformSha512GetKlass
  - xmlSecGnuTLSTransformSha3_256GetKlass
  - xmlSecGnuTLSTransformSha3_384GetKlass
  - xmlSecGnuTLSTransformSha3_512GetKlass
  - xmlSecGnuTLSTransformGostR3411_94GetKlass
  - xmlSecGnuTLSTransformGostR3411_2012_256GetKlass
  - xmlSecGnuTLSTransformGostR3411_2012_512GetKlass
  source_file: /src/xmlsec/src/gnutls/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSDigestSize
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/gnutls/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSDigest)
    structs:
    - fields:
      - name: hash
        type: gnutls_hash_hd_t
      - name: dgstAlgo
        type: gnutls_digest_algorithm_t
      - name: dgstSize
        type: xmlSecSize
      - name: dgst[XMLSEC_GNUTLS_MAX_DIGEST_SIZE]
        type: xmlSecByte
      item_type: struct
      name: _xmlSecGnuTLSDigestCtx
      pos:
        line_end: 44
        line_start: 39
        source_file: /src/xmlsec/src/gnutls/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSDigestCtx
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/xmlsec/src/gnutls/digests.c
      type: _xmlSecGnuTLSDigestCtx
    union: []
- function_names:
  - xmlSecGnuTLSKeysStoreGetKlass
  - xmlSecGnuTLSKeysStoreInitialize
  - xmlSecGnuTLSKeysStoreFinalize
  - xmlSecGnuTLSKeysStoreFindKey
  - xmlSecGnuTLSKeysStoreFindKeyFromX509Data
  - xmlSecGnuTLSKeysStoreAdoptKey
  - xmlSecGnuTLSKeysStoreLoad
  - xmlSecGnuTLSKeysStoreSave
  source_file: /src/xmlsec/src/gnutls/keysstore.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKeysStoreSize
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/gnutls/keysstore.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(GnuTLSKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCryptoGetFunctions_gnutls
  - xmlSecGnuTLSInit
  - xmlSecGnuTLSShutdown
  - xmlSecGnuTLSKeysMngrInit
  - xmlSecGnuTLSGenerateRandom
  source_file: /src/xmlsec/src/gnutls/crypto.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGnuTLSKeyTransportCheckId
  - xmlSecGnuTLSKeyTransportInitialize
  - xmlSecGnuTLSKeyTransportFinalize
  - xmlSecGnuTLSKeyTransportSetKeyReq
  - xmlSecGnuTLSKeyTransportSetKey
  - xmlSecGnuTLSKeyTransportEncrypt
  - xmlSecGnuTLSKeyTransportDecrypt
  - xmlSecGnuTLSKeyTransportExecute
  - xmlSecGnuTLSTransformRsaPkcs1GetKlass
  source_file: /src/xmlsec/src/gnutls/kt_rsa.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyTransportSize
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GnuTLSKeyTransport)
    structs:
    - fields:
      - name: getPubKey
        type: xmlSecGnuTLSKeyDataGetPublicKeyMethod
      - name: getPrivKey
        type: xmlSecGnuTLSKeyDataGetPrivateKeyMethod
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyData
        type: xmlSecKeyDataPtr
      item_type: struct
      name: _xmlSecGnuTLSKeyTransportCtx
      pos:
        line_end: 54
        line_start: 48
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
    typedefs:
    - item_type: typedef
      name: xmlSecGnuTLSKeyTransportCtx
      pos:
        line_end: 42
        line_start: 42
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
      type: _xmlSecGnuTLSKeyTransportCtx
    - item_type: typedef
      name: '*      xmlSecGnuTLSKeyTransportCtxPtr'
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
      type: _xmlSecGnuTLSKeyTransportCtx
    - item_type: typedef
      name: (*xmlSecGnuTLSKeyDataGetPublicKeyMethod)      (xmlSecKeyDataPtr data)
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
      type: gnutls_pubkey_t
    - item_type: typedef
      name: (*xmlSecGnuTLSKeyDataGetPrivateKeyMethod)     (xmlSecKeyDataPtr data)
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/xmlsec/src/gnutls/kt_rsa.c
      type: gnutls_privkey_t
    union: []
- function_names:
  - xmlSecGCryptAsn1ParseTag
  - xmlSecGCryptAsn1GetCurveFromObjectId
  - xmlSecGCryptAsn1IsECKey
  - xmlSecGCryptAsn1ParseIntegerSequence
  - xmlSecGCryptAsn1GuessKeyType
  - xmlSecGCryptParseDer
  source_file: /src/xmlsec/src/gcrypt/asn1.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_ASN1_MAX_OBJECT_ID_SIZE
      pos:
        line_end: 188
        line_start: 187
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_DSA_PUB_NUM
      pos:
        line_end: 350
        line_start: 349
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 4U
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_DSA_PRIV_NUM
      pos:
        line_end: 351
        line_start: 350
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 6U
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_EDCSA_PUB_NUM
      pos:
        line_end: 353
        line_start: 352
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 1U
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_EDCSA_PRIV_NUM
      pos:
        line_end: 354
        line_start: 353
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 3U
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_RSA_PUB_NUM
      pos:
        line_end: 356
        line_start: 355
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 2U
    - item_type: preproc_def
      name: XMLSEC_GNUTLS_ASN1_RSA_PRIV_NUM
      pos:
        line_end: 357
        line_start: 356
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type_or_value: 9U
    structs:
    - fields:
      - name: class
        type: int
      - name: tag
        type: unsigned long
      - name: length
        type: unsigned long
      - name: nhdr
        type: int
      - name: ndef
        type: unsigned int
      - name: cons
        type: unsigned int
      item_type: struct
      name: tag_info
      pos:
        line_end: 88
        line_start: 80
        source_file: /src/xmlsec/src/gcrypt/asn1.c
    - fields:
      - name: curve[20]
        type: char
      - name: objectId
        type: xmlSecGCryptAsn1ObjectId
      item_type: struct
      name: _xmlSecGCryptAsn1EcObjectIdToCurve
      pos:
        line_end: 193
        line_start: 190
        source_file: /src/xmlsec/src/gcrypt/asn1.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptAsn1ObjectId[XMLSEC_GCRYPT_ASN1_MAX_OBJECT_ID_SIZE]
      pos:
        line_end: 188
        line_start: 188
        source_file: /src/xmlsec/src/gcrypt/asn1.c
      type: xmlSecByte
    union: []
- function_names:
  - xmlSecGCryptError
  - xmlSecGCryptError2
  source_file: /src/xmlsec/src/gcrypt/globals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_MAX_DIGEST_SIZE
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/src/gcrypt/globals.h
      type_or_value: '256'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGCryptKWAesCheckId
  - xmlSecGCryptKWAesInitialize
  - xmlSecGCryptKWAesFinalize
  - xmlSecGCryptKWAesSetKeyReq
  - xmlSecGCryptKWAesSetKey
  - xmlSecGCryptKWAesExecute
  - xmlSecGCryptTransformKWAes128GetKlass
  - xmlSecGCryptTransformKWAes192GetKlass
  - xmlSecGCryptTransformKWAes256GetKlass
  - xmlSecGCryptKWAesBlockEncrypt
  - xmlSecGCryptKWAesBlockDecrypt
  source_file: /src/xmlsec/src/gcrypt/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptKWAesSize
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/src/gcrypt/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      - name: cipher
        type: int
      - name: mode
        type: int
      - name: flags
        type: unsigned int
      - name: blockSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGCryptKWAesCtx
      pos:
        line_end: 75
        line_start: 68
        source_file: /src/xmlsec/src/gcrypt/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptKWAesCtx
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/src/gcrypt/kw_aes.c
      type: _xmlSecGCryptKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 478
        line_start: 478
        source_file: /src/xmlsec/src/gcrypt/kw_aes.c
      type: int
    union: []
- function_names:
  - xmlSecGCryptAsymKeyDataInitialize
  - xmlSecGCryptAsymKeyDataDuplicate
  - xmlSecGCryptAsymKeyDataFinalize
  - xmlSecGCryptAsymKeyDataAdoptKey
  - xmlSecGCryptAsymKeyDataAdoptKeyPair
  - xmlSecGCryptAsymKeyDataGetPublicKey
  - xmlSecGCryptAsymKeyDataGetPrivateKey
  - xmlSecGCryptAsymKeyDataGenerate
  - xmlSecGCryptAsymKeyDataGetType
  - xmlSecGCryptAsymKeyDataGetSize
  - xmlSecGCryptAsymSExpDup
  - xmlSecGCryptSetSExpTokValue
  - xmlSecGCryptKeyDataDsaGetKlass
  - xmlSecGCryptKeyDataDsaAdoptKey
  - xmlSecGCryptKeyDataDsaAdoptKeyPair
  - xmlSecGCryptKeyDataDsaGetPublicKey
  - xmlSecGCryptKeyDataDsaGetPrivateKey
  - xmlSecGCryptKeyDataDsaInitialize
  - xmlSecGCryptKeyDataDsaDuplicate
  - xmlSecGCryptKeyDataDsaFinalize
  - xmlSecGCryptKeyDataDsaGenerate
  - xmlSecGCryptKeyDataDsaGetType
  - xmlSecGCryptKeyDataDsaGetSize
  - xmlSecGCryptKeyDataDsaDebugDump
  - xmlSecGCryptKeyDataDsaDebugXmlDump
  - xmlSecGCryptKeyDataDsaXmlRead
  - xmlSecGCryptKeyDataDsaXmlWrite
  - xmlSecGCryptKeyDataDsaRead
  - xmlSecGCryptKeyDataDsaWrite
  - xmlSecGCryptKeyDataRsaGetKlass
  - xmlSecGCryptKeyDataRsaAdoptKey
  - xmlSecGCryptKeyDataRsaAdoptKeyPair
  - xmlSecGCryptKeyDataRsaGetPublicKey
  - xmlSecGCryptKeyDataRsaGetPrivateKey
  - xmlSecGCryptKeyDataRsaInitialize
  - xmlSecGCryptKeyDataRsaDuplicate
  - xmlSecGCryptKeyDataRsaFinalize
  - xmlSecGCryptKeyDataRsaGenerate
  - xmlSecGCryptKeyDataRsaGetType
  - xmlSecGCryptKeyDataRsaGetSize
  - xmlSecGCryptKeyDataRsaDebugDump
  - xmlSecGCryptKeyDataRsaDebugXmlDump
  - xmlSecGCryptKeyDataRsaXmlRead
  - xmlSecGCryptKeyDataRsaXmlWrite
  - xmlSecGCryptKeyDataRsaRead
  - xmlSecGCryptKeyDataRsaWrite
  - xmlSecGCryptkeyDataEcGetKlass
  - xmlSecGCryptKeyDataEcAdoptKey
  - xmlSecGCryptKeyDataEcAdoptKeyPair
  - xmlSecGCryptKeyDataEcGetPublicKey
  - xmlSecGCryptKeyDataEcGetPrivateKey
  - xmlSecGCryptKeyDataEcInitialize
  - xmlSecGCryptKeyDataEcDuplicate
  - xmlSecGCryptKeyDataEcFinalize
  - xmlSecGCryptKeyDataEcGetType
  - xmlSecGCryptKeyDataEcGetSize
  - xmlSecGCryptKeyDataEcDebugDump
  - xmlSecGCryptKeyDataEcDebugXmlDump
  - xmlSecGCryptKeyDataEcXmlRead
  - xmlSecGCryptKeyDataEcXmlWrite
  - xmlSecGCryptKeyDataEcCurveGetNameFromOid
  - xmlSecGCryptKeyDataEcCurveGetOidFromName
  - xmlSecGCryptKeyDataEcRead
  - xmlSecGCryptGetStringFromSExp
  - xmlSecGCryptKeyDataEcWrite
  source_file: /src/xmlsec/src/gcrypt/asymkeys.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptAsymKeyDataSize
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/src/gcrypt/asymkeys.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(GCryptAsymKeyData)
    structs:
    - fields:
      - name: pub_key
        type: gcry_sexp_t
      - name: priv_key
        type: gcry_sexp_t
      item_type: struct
      name: _xmlSecGCryptAsymKeyDataCtx
      pos:
        line_end: 51
        line_start: 48
        source_file: /src/xmlsec/src/gcrypt/asymkeys.c
    - fields:
      - name: curveName[20]
        type: char
      - name: curveOid[64]
        type: xmlChar
      item_type: struct
      name: _xmlSecGCryptKeyDataEcCurveOidToName
      pos:
        line_end: 1738
        line_start: 1735
        source_file: /src/xmlsec/src/gcrypt/asymkeys.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptAsymKeyDataCtx
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/src/gcrypt/asymkeys.c
      type: _xmlSecGCryptAsymKeyDataCtx
    union: []
- function_names: []
  source_file: /src/xmlsec/src/gcrypt/asn1.h
  types:
    enum:
    - enumerators:
      - name: xmlSecGCryptDerKeyTypeAuto
        value: '0'
      - name: xmlSecGCryptDerKeyTypePublicDsa
      - name: xmlSecGCryptDerKeyTypePrivateRsa
      - name: xmlSecGCryptDerKeyTypePublicRsa
      - name: xmlSecGCryptDerKeyTypePrivateDsa
      - name: xmlSecGCryptDerKeyTypePublicEc
      - name: xmlSecGCryptDerKeyTypePrivateEc
      item_type: enum
      name: xmlSecGCryptDerKeyType
      pos:
        line_end: 29
        line_start: 21
        source_file: /src/xmlsec/src/gcrypt/asn1.h
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGCryptTransformKWDes3GetKlass
  - xmlSecGCryptKWDes3Initialize
  - xmlSecGCryptKWDes3Finalize
  - xmlSecGCryptKWDes3SetKeyReq
  - xmlSecGCryptKWDes3SetKey
  - xmlSecGCryptKWDes3Execute
  - xmlSecGCryptKWDes3Sha1
  - xmlSecGCryptKWDes3GenerateRandom
  - xmlSecGCryptKWDes3BlockEncrypt
  - xmlSecGCryptKWDes3BlockDecrypt
  - xmlSecGCryptKWDes3Encrypt
  source_file: /src/xmlsec/src/gcrypt/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptKWDes3Size
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/src/gcrypt/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptKWDes3)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptKWDes3Ctx
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/src/gcrypt/kw_des.c
      type: xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 467
        line_start: 467
        source_file: /src/xmlsec/src/gcrypt/kw_des.c
      type: int
    union: []
- function_names:
  - xmlSecGCryptAppInit
  - xmlSecGCryptAppShutdown
  - xmlSecGCryptAppKeyLoadEx
  - xmlSecGCryptAppKeyLoadMemory
  - xmlSecGCryptAppKeyCertLoad
  - xmlSecGCryptAppKeyCertLoadMemory
  - xmlSecGCryptAppPkcs12Load
  - xmlSecGCryptAppPkcs12LoadMemory
  - xmlSecGCryptAppKeysMngrCertLoad
  - xmlSecGCryptAppKeysMngrCrlLoad
  - xmlSecGCryptAppKeysMngrCertLoadMemory
  - xmlSecGCryptAppDefaultKeysMngrInit
  - xmlSecGCryptAppDefaultKeysMngrAdoptKey
  - xmlSecGCryptAppDefaultKeysMngrVerifyKey
  - xmlSecGCryptAppDefaultKeysMngrLoad
  - xmlSecGCryptAppDefaultKeysMngrSave
  - xmlSecGCryptAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/gcrypt/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGCryptBlockCipherCtxInit
  - xmlSecGCryptBlockCipherCtxUpdate
  - xmlSecGCryptBlockCipherCtxFinal
  - xmlSecGCryptBlockCipherCheckId
  - xmlSecGCryptBlockCipherInitialize
  - xmlSecGCryptBlockCipherFinalize
  - xmlSecGCryptBlockCipherSetKeyReq
  - xmlSecGCryptBlockCipherSetKey
  - xmlSecGCryptBlockCipherExecute
  - xmlSecGCryptTransformAes128CbcGetKlass
  - xmlSecGCryptTransformAes192CbcGetKlass
  - xmlSecGCryptTransformAes256CbcGetKlass
  - xmlSecGCryptTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/gcrypt/ciphers.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptBlockCipherSize
      pos:
        line_end: 346
        line_start: 345
        source_file: /src/xmlsec/src/gcrypt/ciphers.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptBlockCipher)
    structs:
    - fields:
      - name: cipher
        type: int
      - name: mode
        type: int
      - name: cipherCtx
        type: gcry_cipher_hd_t
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyInitialized
        type: int
      - name: ctxInitialized
        type: int
      item_type: struct
      name: _xmlSecGCryptBlockCipherCtx
      pos:
        line_end: 44
        line_start: 37
        source_file: /src/xmlsec/src/gcrypt/ciphers.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptBlockCipherCtx
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/gcrypt/ciphers.c
      type: _xmlSecGCryptBlockCipherCtx
    union: []
- function_names:
  - xmlSecGCryptHmacCheckId
  - xmlSecGCryptHmacInitialize
  - xmlSecGCryptHmacFinalize
  - xmlSecGCryptHmacNodeRead
  - xmlSecGCryptHmacSetKeyReq
  - xmlSecGCryptHmacSetKey
  - xmlSecGCryptHmacVerify
  - xmlSecGCryptHmacExecute
  - xmlSecGCryptTransformHmacSha1GetKlass
  - xmlSecGCryptTransformHmacSha256GetKlass
  - xmlSecGCryptTransformHmacSha384GetKlass
  - xmlSecGCryptTransformHmacSha512GetKlass
  - xmlSecGCryptTransformHmacRipemd160GetKlass
  - xmlSecGCryptTransformHmacMd5GetKlass
  source_file: /src/xmlsec/src/gcrypt/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptHmacSize
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/gcrypt/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptHmac)
    structs:
    - fields:
      - name: digest
        type: int
      - name: digestCtx
        type: gcry_md_hd_t
      - name: dgst[XMLSEC_TRANSFORM_HMAC_MAX_OUTPUT_SIZE]
        type: xmlSecByte
      - name: dgstSizeInBits
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGCryptHmacCtx
      pos:
        line_end: 44
        line_start: 39
        source_file: /src/xmlsec/src/gcrypt/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptHmacCtx
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/xmlsec/src/gcrypt/hmac.c
      type: _xmlSecGCryptHmacCtx
    union: []
- function_names:
  - xmlSecGCryptSymKeyDataCheckId
  - xmlSecGCryptSymKeyDataInitialize
  - xmlSecGCryptSymKeyDataDuplicate
  - xmlSecGCryptSymKeyDataFinalize
  - xmlSecGCryptSymKeyDataXmlRead
  - xmlSecGCryptSymKeyDataXmlWrite
  - xmlSecGCryptSymKeyDataBinRead
  - xmlSecGCryptSymKeyDataBinWrite
  - xmlSecGCryptSymKeyDataGenerate
  - xmlSecGCryptSymKeyDataGetType
  - xmlSecGCryptSymKeyDataGetSize
  - xmlSecGCryptSymKeyDataDebugDump
  - xmlSecGCryptSymKeyDataDebugXmlDump
  - xmlSecGCryptSymKeyDataKlassCheck
  - xmlSecGCryptKeyDataAesGetKlass
  - xmlSecGCryptKeyDataAesSet
  - xmlSecGCryptKeyDataDesGetKlass
  - xmlSecGCryptKeyDataDesSet
  - xmlSecGCryptKeyDataHmacGetKlass
  - xmlSecGCryptKeyDataHmacSet
  source_file: /src/xmlsec/src/gcrypt/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGCryptPkSignatureCheckId
  - xmlSecGCryptPkSignatureInitialize
  - xmlSecGCryptPkSignatureFinalize
  - xmlSecGCryptPkSignatureSetKey
  - xmlSecGCryptPkSignatureSetKeyReq
  - xmlSecGCryptPkSignatureVerify
  - xmlSecGCryptPkSignatureExecute
  - xmlSecGCryptAppendMpi
  - xmlSecGCryptDsaSign
  - xmlSecGCryptDsaVerify
  - xmlSecGCryptTransformDsaSha1GetKlass
  - xmlSecGCryptRsaPkcs1Sign
  - xmlSecGCryptRsaPkcs1Verify
  - xmlSecGCryptRsaPssSign
  - xmlSecGCryptRsaPssVerify
  - xmlSecGCryptTransformRsaMd5GetKlass
  - xmlSecGCryptTransformRsaRipemd160GetKlass
  - xmlSecGCryptTransformRsaSha1GetKlass
  - xmlSecGCryptTransformRsaSha256GetKlass
  - xmlSecGCryptTransformRsaSha384GetKlass
  - xmlSecGCryptTransformRsaSha512GetKlass
  - xmlSecGCryptTransformRsaPssSha1GetKlass
  - xmlSecGCryptTransformRsaPssSha256GetKlass
  - xmlSecGCryptTransformRsaPssSha384GetKlass
  - xmlSecGCryptTransformRsaPssSha512GetKlass
  - xmlSecGCryptTransformRsaPssSha3_256GetKlass
  - xmlSecGCryptTransformRsaPssSha3_384GetKlass
  - xmlSecGCryptTransformRsaPssSha3_512GetKlass
  - xmlSecGCryptEcdsaSign
  - xmlSecGCryptEcdsaVerify
  - xmlSecGCryptTransformEcdsaSha1GetKlass
  - xmlSecGCryptTransformEcdsaSha256GetKlass
  - xmlSecGCryptTransformEcdsaSha384GetKlass
  - xmlSecGCryptTransformEcdsaSha512GetKlass
  - xmlSecGCryptTransformEcdsaSha3_256GetKlass
  - xmlSecGCryptTransformEcdsaSha3_384GetKlass
  - xmlSecGCryptTransformEcdsaSha3_512GetKlass
  source_file: /src/xmlsec/src/gcrypt/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptPkSignatureSize
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/xmlsec/src/gcrypt/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptPkSignature)
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_DSA_SIG_SIZE
      pos:
        line_end: 826
        line_start: 825
        source_file: /src/xmlsec/src/gcrypt/signatures.c
      type_or_value: '20'
    structs:
    - fields:
      - name: digest
        type: int
      - name: keyId
        type: xmlSecKeyDataId
      - name: sign
        type: xmlSecGCryptPkSignMethod
      - name: verify
        type: xmlSecGCryptPkVerifyMethod
      - name: digestCtx
        type: gcry_md_hd_t
      - name: key_data
        type: xmlSecKeyDataPtr
      - name: dgst[XMLSEC_GCRYPT_MAX_DIGEST_SIZE]
        type: xmlSecByte
      - name: dgstSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGCryptPkSignatureCtx
      pos:
        line_end: 126
        line_start: 115
        source_file: /src/xmlsec/src/gcrypt/signatures.c
    typedefs:
    - item_type: typedef
      name: "(*xmlSecGCryptPkSignMethod)     (int digest,\n                                                 xmlSecKeyDataPtr
        key_data,\n                                                 const xmlSecByte*
        dgst,\n                                                 xmlSecSize dgstSize,\n
        \                                                xmlSecBufferPtr out)"
      pos:
        line_end: 39
        line_start: 35
        source_file: /src/xmlsec/src/gcrypt/signatures.c
      type: int
    - item_type: typedef
      name: "(*xmlSecGCryptPkVerifyMethod)   (int digest,\n                                                 xmlSecKeyDataPtr
        key_data,\n                                                 const xmlSecByte*
        dgst,\n                                                 xmlSecSize dgstSize,\n
        \                                                const xmlSecByte* data,\n
        \                                                xmlSecSize dataSize)"
      pos:
        line_end: 45
        line_start: 40
        source_file: /src/xmlsec/src/gcrypt/signatures.c
      type: int
    - item_type: typedef
      name: xmlSecGCryptPkSignatureCtx
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/xmlsec/src/gcrypt/signatures.c
      type: _xmlSecGCryptPkSignatureCtx
    union: []
- function_names:
  - xmlSecGCryptDigestCheckId
  - xmlSecGCryptDigestInitialize
  - xmlSecGCryptDigestFinalize
  - xmlSecGCryptDigestVerify
  - xmlSecGCryptDigestExecute
  - xmlSecGCryptTransformMd5GetKlass
  - xmlSecGCryptTransformRipemd160GetKlass
  - xmlSecGCryptTransformSha1GetKlass
  - xmlSecGCryptTransformSha256GetKlass
  - xmlSecGCryptTransformSha384GetKlass
  - xmlSecGCryptTransformSha512GetKlass
  - xmlSecGCryptTransformSha3_256GetKlass
  - xmlSecGCryptTransformSha3_384GetKlass
  - xmlSecGCryptTransformSha3_512GetKlass
  source_file: /src/xmlsec/src/gcrypt/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptDigestSize
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/src/gcrypt/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptDigest)
    structs:
    - fields:
      - name: digest
        type: int
      - name: digestCtx
        type: gcry_md_hd_t
      - name: dgst[XMLSEC_GCRYPT_MAX_DIGEST_SIZE]
        type: xmlSecByte
      - name: dgstSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecGCryptDigestCtx
      pos:
        line_end: 41
        line_start: 36
        source_file: /src/xmlsec/src/gcrypt/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptDigestCtx
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/xmlsec/src/gcrypt/digests.c
      type: _xmlSecGCryptDigestCtx
    union: []
- function_names:
  - xmlSecCryptoGetFunctions_gcrypt
  - xmlSecGCryptInit
  - xmlSecGCryptShutdown
  - xmlSecGCryptKeysMngrInit
  - xmlSecGCryptGenerateRandom
  source_file: /src/xmlsec/src/gcrypt/crypto.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecGCryptRsaExtractData
  - xmlSecGCryptRsaKtEncrypt
  - xmlSecGCryptRsaKtDecrypt
  - xmlSecGCryptTransformRsaPkcs1GetKlass
  - xmlSecGCryptRsaPkcs1Initialize
  - xmlSecGCryptRsaPkcs1Finalize
  - xmlSecGCryptRsaPkcs1SetKeyReq
  - xmlSecGCryptRsaPkcs1SetKey
  - xmlSecGCryptRsaPkcs1Encrypt
  - xmlSecGCryptRsaPkcs1Decrypt
  - xmlSecGCryptRsaPkcs1Execute
  - xmlSecGCryptTransformRsaOaepGetKlass
  - xmlSecGCryptTransformRsaOaepEnc11GetKlass
  - xmlSecGCryptRsaOaepCheckId
  - xmlSecGCryptRsaOaepInitialize
  - xmlSecGCryptRsaOaepFinalize
  - xmlSecGCryptRsaOaepNodeRead
  - xmlSecGCryptRsaOaepSetKeyReq
  - xmlSecGCryptRsaOaepSetKey
  - xmlSecGCryptRsaOaepEncrypt
  - xmlSecGCryptRsaOaepDecrypt
  - xmlSecGCryptRsaOaepExecute
  source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptRsaPkcs1Size
      pos:
        line_end: 190
        line_start: 189
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptRsaPkcs1)
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_RSA_OAEP_HASH_SHA1
      pos:
        line_end: 511
        line_start: 510
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: '"sha1"'
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_RSA_OAEP_HASH_SHA224
      pos:
        line_end: 512
        line_start: 511
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: '"sha224"'
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_RSA_OAEP_HASH_SHA256
      pos:
        line_end: 513
        line_start: 512
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: '"sha256"'
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_RSA_OAEP_HASH_SHA384
      pos:
        line_end: 514
        line_start: 513
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: '"sha384"'
    - item_type: preproc_def
      name: XMLSEC_GCRYPT_RSA_OAEP_HASH_SHA512
      pos:
        line_end: 515
        line_start: 514
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: '"sha512"'
    - item_type: preproc_def
      name: xmlSecGCryptRsaOaepSize
      pos:
        line_end: 523
        line_start: 522
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(GCryptRsaOaep)
    structs:
    - fields:
      - name: keyData
        type: xmlSecKeyDataPtr
      item_type: struct
      name: _xmlSecGCryptRsaPkcs1Ctx
      pos:
        line_end: 181
        line_start: 179
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
    - fields:
      - name: keyData
        type: xmlSecKeyDataPtr
      - name: oaepParams
        type: xmlSecBuffer
      - name: '*         hashAlg'
        type: char
      item_type: struct
      name: _xmlSecGCryptRsaOaepCtx
      pos:
        line_end: 508
        line_start: 504
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
    typedefs:
    - item_type: typedef
      name: xmlSecGCryptRsaPkcs1Ctx
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type: _xmlSecGCryptRsaPkcs1Ctx
    - item_type: typedef
      name: xmlSecGCryptRsaOaepCtx
      pos:
        line_end: 503
        line_start: 502
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type: _xmlSecGCryptRsaOaepCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 1068
        line_start: 1068
        source_file: /src/xmlsec/src/gcrypt/kt_rsa.c
      type: int
    union: []
- function_names:
  - xmlSecOpenSSLError
  - xmlSecOpenSSLError2
  - xmlSecOpenSSLError3
  source_file: /src/xmlsec/src/openssl/globals.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_ERROR_BUFFER_SIZE
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/src/openssl/globals.h
      type_or_value: '1024'
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLErrorType
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/xmlsec/src/openssl/globals.h
      type: uint32_t
    - item_type: typedef
      name: xmlSecOpenSSLErrorType
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/xmlsec/src/openssl/globals.h
      type: unsigned long
    union: []
- function_names:
  - xmlSecOpenSSLKdfCheckId
  - xmlSecOpenSSLKdfInitialize
  - xmlSecOpenSSLKdfFinalize
  - xmlSecOpenSSLKdfSetKeyReq
  - xmlSecOpenSSLKdfSetKey
  - xmlSecOpenSSLKdfExecute
  - xmlSecOpenSSLConcatKdfSetDigestNameFromHref
  - xmlSecOpenSSLConcatKdfNodeRead
  - xmlSecOpenSSLTransformConcatKdfGetKlass
  - xmlSecOpenSSLPbkdf2SetDigestNameFromHref
  - xmlSecOpenSSLPbkdf2NodeRead
  - xmlSecOpenSSLTransformPbkdf2GetKlass
  source_file: /src/xmlsec/src/openssl/kdf.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_KDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/src/openssl/kdf.c
      type_or_value: '64'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_KDF_MAX_PARAMS
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/src/openssl/kdf.c
      type_or_value: '16'
    - item_type: preproc_def
      name: xmlSecOpenSSLKdfCtxSize
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/src/openssl/kdf.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLKdf)
    structs:
    - fields:
      - name: '* kdfName'
        type: char
      - name: keyId
        type: xmlSecKeyDataId
      - name: expectedOutputSize
        type: xmlSecSize
      - name: '*kctx'
        type: EVP_KDF_CTX
      - name: params[XMLSEC_OPENSSL_KDF_MAX_PARAMS]
        type: OSSL_PARAM
      - name: paramsPos
        type: xmlSecSize
      - name: paramsInitialized
        type: int
      - name: '* keyParamName'
        type: char
      - name: '* digest'
        type: xmlChar
      - name: '* mac'
        type: xmlChar
      - name: buffer
        type: xmlSecBuffer
      - name: param1
        type: unsigned int
      item_type: struct
      name: _xmlSecOpenSSLKdfCtx
      pos:
        line_end: 72
        line_start: 53
        source_file: /src/xmlsec/src/openssl/kdf.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLKdfCtx
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/xmlsec/src/openssl/kdf.c
      type: _xmlSecOpenSSLKdfCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 789
        line_start: 789
        source_file: /src/xmlsec/src/openssl/kdf.c
      type: int
    union: []
- function_names:
  - xmlSecOpenSSLKWAesCheckId
  - XMLSEC_OPENSSL_KW_AES_SET_CIPHER
  - xmlSecOpenSSLKWAesInitialize
  - xmlSecOpenSSLKWAesFinalize
  - xmlSecOpenSSLKWAesSetKeyReq
  - xmlSecOpenSSLKWAesSetKey
  - xmlSecOpenSSLKWAesExecute
  - xmlSecOpenSSLTransformKWAes128GetKlass
  - xmlSecOpenSSLTransformKWAes192GetKlass
  - xmlSecOpenSSLTransformKWAes256GetKlass
  - xmlSecOpenSSLKWAesEncryptDecrypt
  - xmlSecOpenSSLKWAesEncryptDecrypt
  - xmlSecOpenSSLKWAesBlockEncrypt
  - xmlSecOpenSSLKWAesBlockDecrypt
  source_file: /src/xmlsec/src/openssl/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLKWAesSize
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/src/openssl/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      item_type: struct
      name: _xmlSecOpenSSLKWAesCtx
      pos:
        line_end: 77
        line_start: 70
        source_file: /src/xmlsec/src/openssl/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLKWAesCtx
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/src/openssl/kw_aes.c
      type: _xmlSecOpenSSLKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 547
        line_start: 547
        source_file: /src/xmlsec/src/openssl/kw_aes.c
      type: int
    union: []
- function_names:
  - xmlSecOpenSSLSignatureLegacyCheckId
  - XMLSEC_OPENSSL_SIGNATURE_SET_DIGEST
  - xmlSecOpenSSLSignatureLegacyInitialize
  - xmlSecOpenSSLSignatureLegacyFinalize
  - xmlSecOpenSSLSignatureLegacySetKey
  - xmlSecOpenSSLSignatureLegacySetKeyReq
  - xmlSecOpenSSLSignatureLegacyVerify
  - xmlSecOpenSSLSignatureLegacyExecute
  - xmlSecOpenSSLSignatureLegacyEcdsaSignatureHalfLen
  - xmlSecOpenSSLSignatureLegacyEcdsaSignImpl
  - xmlSecOpenSSLSignatureLegacyEcdsaVerifyImpl
  - xmlSecOpenSSLSignatureLegacyEcdsaSign
  - xmlSecOpenSSLSignatureLegacyEcdsaVerify
  - xmlSecOpenSSLTransformEcdsaRipemd160GetKlass
  - xmlSecOpenSSLTransformEcdsaSha1GetKlass
  - xmlSecOpenSSLTransformEcdsaSha224GetKlass
  - xmlSecOpenSSLTransformEcdsaSha256GetKlass
  - xmlSecOpenSSLTransformEcdsaSha384GetKlass
  - xmlSecOpenSSLTransformEcdsaSha512GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_224GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_256GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_384GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_512GetKlass
  source_file: /src/xmlsec/src/openssl/signatures_legacy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLSignatureLegacySize
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLSignatureLegacy)
    structs:
    - fields:
      - name: '*                        digest'
        type: EVP_MD
      - name: '*                          digestCtx'
        type: EVP_MD_CTX
      - name: keyId
        type: xmlSecKeyDataId
      - name: signCallback
        type: xmlSecOpenSSLSignatureLegacySignCallback
      - name: verifyCallback
        type: xmlSecOpenSSLSignatureLegacyVerifyCallback
      - name: '*                            pKey'
        type: EVP_PKEY
      - name: dgst[EVP_MAX_MD_SIZE]
        type: unsigned char
      - name: dgstSize
        type: unsigned int
      item_type: struct
      name: _xmlSecOpenSSLSignatureLegacyCtx
      pos:
        line_end: 83
        line_start: 74
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLSignatureLegacyCtx
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
      type: _xmlSecOpenSSLSignatureLegacyCtx
    - item_type: typedef
      name: "(*xmlSecOpenSSLSignatureLegacySignCallback)     (xmlSecOpenSSLSignatureLegacyCtxPtr
        ctx,\n                                                              xmlSecBufferPtr
        out)"
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
      type: int
    - item_type: typedef
      name: "(*xmlSecOpenSSLSignatureLegacyVerifyCallback)   (xmlSecOpenSSLSignatureLegacyCtxPtr
        ctx,\n                                                              const
        xmlSecByte* signData,\n                                                              xmlSecSize
        signSize)"
      pos:
        line_end: 67
        line_start: 65
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
      type: int
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 1290
        line_start: 1290
        source_file: /src/xmlsec/src/openssl/signatures_legacy.c
      type: int
    union: []
- function_names:
  - xmlSecOpenSSLTransformKWDes3GetKlass
  - xmlSecOpenSSLKWDes3Initialize
  - xmlSecOpenSSLKWDes3Finalize
  - xmlSecOpenSSLKWDes3SetKeyReq
  - xmlSecOpenSSLKWDes3SetKey
  - xmlSecOpenSSLKWDes3Execute
  - xmlSecOpenSSLKWDes3Sha1
  - xmlSecOpenSSLKWDes3Sha1
  - xmlSecOpenSSLKWDes3GenerateRandom
  - xmlSecOpenSSLKWDes3BlockEncrypt
  - xmlSecOpenSSLKWDes3BlockDecrypt
  - xmlSecOpenSSLKWDes3Encrypt
  source_file: /src/xmlsec/src/openssl/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLKWDes3Size
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/src/openssl/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLKWDes3)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLKWDes3Ctx
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/src/openssl/kw_des.c
      type: xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 521
        line_start: 521
        source_file: /src/xmlsec/src/openssl/kw_des.c
      type: int
    union: []
- function_names:
  - XMLSEC_OPENSSL_PUSH_LIB_CTX
  - XMLSEC_OPENSSL_POP_LIB_CTX
  - xmlSecOpenSSLAppInit
  - xmlSecOpenSSLAppShutdown
  - xmlSecOpenSSLAppKeyLoadEx
  - xmlSecOpenSSLAppKeyLoadMemory
  - xmlSecOpenSSLAppKeyLoadBIO
  - xmlSecOpenSSLAppEngineKeyLoad
  - xmlSecOpenSSLAppCheckCertMatchesKey
  - xmlSecOpenSSLAppFindKeyCert
  - xmlSecOpenSSLAppStoreKeyLoad
  - xmlSecOpenSSLAppKeyCertLoad
  - xmlSecOpenSSLAppKeyCertLoadMemory
  - xmlSecOpenSSLAppKeyCertLoadBIO
  - xmlSecOpenSSLAppPkcs12Load
  - xmlSecOpenSSLAppPkcs12LoadMemory
  - xmlSecOpenSSLAppPkcs12LoadBIO
  - xmlSecOpenSSLAppKeyFromCertLoadBIO
  - xmlSecOpenSSLAppKeysMngrCertLoad
  - xmlSecOpenSSLAppKeysMngrCertLoadMemory
  - xmlSecOpenSSLAppKeysMngrCertLoadBIO
  - xmlSecOpenSSLAppKeysMngrCrlLoad
  - xmlSecOpenSSLAppKeysMngrCrlLoadMemory
  - xmlSecOpenSSLAppKeysMngrCrlLoadBIO
  - xmlSecOpenSSLAppKeysMngrAddCertsPath
  - xmlSecOpenSSLAppKeysMngrAddCertsFile
  - xmlSecOpenSSLAppDefaultKeysMngrInit
  - xmlSecOpenSSLAppDefaultKeysMngrAdoptKey
  - xmlSecOpenSSLAppDefaultKeysMngrVerifyKey
  - xmlSecOpenSSLAppDefaultKeysMngrLoad
  - xmlSecOpenSSLAppDefaultKeysMngrSave
  - xmlSecOpenSSLAppGetDefaultPwdCallback
  - xmlSecOpenSSLDefaultPasswordCallback
  - xmlSecOpenSSLDummyPasswordCallback
  source_file: /src/xmlsec/src/openssl/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/openssl/private.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '* subjectName'
        type: X509_NAME
      - name: '* issuerName'
        type: X509_NAME
      - name: '* issuerSerial'
        type: ASN1_INTEGER
      - name: '* ski'
        type: xmlSecByte
      - name: skiLen
        type: int
      - name: '* digestValue'
        type: xmlSecByte
      - name: digestLen
        type: unsigned int
      - name: '* digestMd'
        type: EVP_MD
      item_type: struct
      name: _xmlSecOpenSSLX509FindCertCtx
      pos:
        line_end: 58
        line_start: 48
        source_file: /src/xmlsec/src/openssl/private.h
    typedefs: []
    union: []
- function_names:
  - xmlSecOpenSSLKeyDataX509GetKlass
  - xmlSecOpenSSLKeyDataX509GetKeyCert
  - xmlSecOpenSSLKeyDataX509AddCertInternal
  - xmlSecOpenSSLKeyDataX509AdoptKeyCert
  - xmlSecOpenSSLKeyDataX509AdoptCert
  - xmlSecOpenSSLKeyDataX509GetCert
  - xmlSecOpenSSLKeyDataX509GetCertsSize
  - xmlSecOpenSSLKeyDataX509AdoptCrl
  - xmlSecOpenSSLKeyDataX509GetCrl
  - xmlSecOpenSSLKeyDataX509GetCrlsSize
  - xmlSecOpenSSLKeyDataX509Initialize
  - xmlSecOpenSSLKeyDataX509Finalize
  - xmlSecOpenSSLKeyDataX509Duplicate
  - xmlSecOpenSSLKeyDataX509XmlRead
  - xmlSecOpenSSLKeyDataX509XmlWrite
  - xmlSecOpenSSLKeyDataX509DebugDump
  - xmlSecOpenSSLKeyDataX509DebugXmlDump
  - xmlSecOpenSSLKeyDataX509Read
  - xmlSecOpenSSLX509CertDerWrite
  - xmlSecOpenSSLX509CrlDerWrite
  - xmlSecOpenSSLX509SKIWrite
  - xmlSecOpenSSLX509GetDigestFromAlgorithm
  - xmlSecOpenSSLX509DigestWrite
  - xmlSecOpenSSLX509NameWrite
  - xmlSecOpenSSLASN1IntegerWrite
  - xmlSecOpenSSLKeyDataX509Write
  - my_timegm
  - timegm
  - my_timegm
  - timegm
  - timegm
  - xmlSecOpenSSLX509Asn1TimeToTime
  - xmlSecOpenSSLX509Asn1TimeToTime
  - g2
  - xmlSecOpenSSLVerifyAndAdoptX509KeyData
  - xmlSecOpenSSLX509CertGetKey
  - xmlSecOpenSSLX509CertLoadBIO
  - xmlSecOpenSSLX509CrlLoadBIO
  - xmlSecOpenSSLX509CertDerRead
  - xmlSecOpenSSLX509CrlDerRead
  - xmlSecOpenSSLX509CertDebugDump
  - xmlSecOpenSSLX509CertDebugXmlDump
  - xmlSecOpenSSLKeyDataRawX509CertGetKlass
  - xmlSecOpenSSLKeyDataRawX509CertBinRead
  source_file: /src/xmlsec/src/openssl/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLX509DataSize
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/src/openssl/x509.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(OpenSSLX509Data)
    structs:
    - fields:
      - name: '*               keyCert'
        type: X509
      - name: '*     certsList'
        type: STACK_OF
      - name: '* crlsList'
        type: STACK_OF
      item_type: struct
      name: _xmlSecOpenSSLX509DataCtx
      pos:
        line_end: 90
        line_start: 86
        source_file: /src/xmlsec/src/openssl/x509.c
    - fields:
      - name: crtPos
        type: xmlSecSize
      - name: crtSize
        type: xmlSecSize
      - name: crlPos
        type: xmlSecSize
      - name: crlSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecOpenSSLKeyDataX509Context
      pos:
        line_end: 124
        line_start: 119
        source_file: /src/xmlsec/src/openssl/x509.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLX509DataCtx
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/src/openssl/x509.c
      type: _xmlSecOpenSSLX509DataCtx
    union: []
- function_names:
  - xmlSecOpenSSLEvpBlockCipherCtxInit
  - xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock
  - xmlSecOpenSSLEvpBlockCipherCtxUpdate
  - xmlSecOpenSSLEvpBlockCipherCBCCtxFinal
  - xmlSecOpenSSLEvpBlockCipherGCMCtxFinal
  - xmlSecOpenSSLEvpBlockCipherCtxFinal
  - xmlSecOpenSSLEvpBlockCipherCheckId
  - XMLSEC_OPENSSL_SET_CIPHER
  - XMLSEC_OPENSSL_SET_CIPHER
  - xmlSecOpenSSLEvpBlockCipherInitialize
  - xmlSecOpenSSLEvpBlockCipherFinalize
  - xmlSecOpenSSLEvpBlockCipherSetKeyReq
  - xmlSecOpenSSLEvpBlockCipherSetKey
  - xmlSecOpenSSLEvpBlockCipherExecute
  - xmlSecOpenSSLTransformAes128CbcGetKlass
  - xmlSecOpenSSLTransformAes192CbcGetKlass
  - xmlSecOpenSSLTransformAes256CbcGetKlass
  - xmlSecOpenSSLTransformAes128GcmGetKlass
  - xmlSecOpenSSLTransformAes192GcmGetKlass
  - xmlSecOpenSSLTransformAes256GcmGetKlass
  - xmlSecOpenSSLTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/openssl/ciphers.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_CIPHER_PAD_SIZE
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/xmlsec/src/openssl/ciphers.c
      type_or_value: (2 * EVP_MAX_BLOCK_LENGTH)
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_AES_GCM_NONCE_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/openssl/ciphers.c
      type_or_value: '12'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_AES_GCM_TAG_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/src/openssl/ciphers.c
      type_or_value: '16'
    - item_type: preproc_def
      name: xmlSecOpenSSLEvpBlockCipherSize
      pos:
        line_end: 622
        line_start: 621
        source_file: /src/xmlsec/src/openssl/ciphers.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLEvpBlockCipher)
    structs:
    - fields:
      - name: keyId
        type: xmlSecKeyDataId
      - name: '*     cipherCtx'
        type: EVP_CIPHER_CTX
      - name: keyInitialized
        type: int
      - name: ctxInitialized
        type: int
      - name: cbcMode
        type: int
      - name: key[EVP_MAX_KEY_LENGTH]
        type: xmlSecByte
      - name: iv[EVP_MAX_IV_LENGTH]
        type: xmlSecByte
      - name: pad[XMLSEC_OPENSSL_EVP_CIPHER_PAD_SIZE]
        type: xmlSecByte
      item_type: struct
      name: _xmlSecOpenSSLEvpBlockCipherCtx
      pos:
        line_end: 60
        line_start: 45
        source_file: /src/xmlsec/src/openssl/ciphers.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLEvpBlockCipherCtx
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/src/openssl/ciphers.c
      type: _xmlSecOpenSSLEvpBlockCipherCtx
    union: []
- function_names:
  - xmlSecOpenSSLEcdhInitialize
  - xmlSecOpenSSLEcdhFinalize
  - xmlSecOpenSSLEcdhSetKeyReq
  - xmlSecOpenSSLEcdhSetKey
  - xmlSecOpenSSLEcdhNodeRead
  - xmlSecOpenSSLEcdhNodeWrite
  - xmlSecOpenSSLEcdhGenerateSecret
  - xmlSecOpenSSLEcdhCreateKdfKey
  - xmlSecOpenSSLEcdhGenerateExecuteKdf
  - xmlSecOpenSSLEcdhExecute
  - xmlSecOpenSSLTransformEcdhGetKlass
  - xmlSecOpenSSLDhInitialize
  - xmlSecOpenSSLDhFinalize
  - xmlSecOpenSSLDhSetKeyReq
  - xmlSecOpenSSLDhSetKey
  - xmlSecOpenSSLDhNodeRead
  - xmlSecOpenSSLDhNodeWrite
  - xmlSecOpenSSLDhGenerateSecret
  - xmlSecOpenSSLDhCreateKdfKey
  - xmlSecOpenSSLDhGenerateExecuteKdf
  - xmlSecOpenSSLDhExecute
  - xmlSecOpenSSLTransformDhEsGetKlass
  source_file: /src/xmlsec/src/openssl/key_agrmnt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLEcdhSize
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLEcdh)
    - item_type: preproc_def
      name: xmlSecOpenSSLDhSize
      pos:
        line_end: 533
        line_start: 532
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLDh)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformKeyAgreementParams
      - name: secretKey
        type: xmlSecKeyPtr
      item_type: struct
      name: _xmlSecOpenSSLEcdhCtx
      pos:
        line_end: 54
        line_start: 51
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
    - fields:
      - name: params
        type: xmlSecTransformKeyAgreementParams
      - name: secretKey
        type: xmlSecKeyPtr
      item_type: struct
      name: _xmlSecOpenSSLDhCtx
      pos:
        line_end: 524
        line_start: 521
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLEcdhCtx
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
      type: _xmlSecOpenSSLEcdhCtx
    - item_type: typedef
      name: xmlSecOpenSSLDhCtx
      pos:
        line_end: 520
        line_start: 520
        source_file: /src/xmlsec/src/openssl/key_agrmnt.c
      type: _xmlSecOpenSSLDhCtx
    union: []
- function_names:
  - xmlSecOpenSSLX509StoreGetKlass
  - xmlSecOpenSSLX509StoreFindCert
  - xmlSecOpenSSLX509StoreFindCert_ex
  - xmlSecOpenSSLX509StoreFindCertByValue
  - xmlSecOpenSSLX509FindKeyByValue
  - xmlSecOpenSSLX509StoreSetCtx
  - xmlSecOpenSSLX509StoreVerify
  - xmlSecOpenSSLX509StoreVerifyKey
  - xmlSecOpenSSLX509StoreAdoptCert
  - xmlSecOpenSSLX509StoreAdoptCrl
  - xmlSecOpenSSLX509StoreAddCertsPath
  - xmlSecOpenSSLX509StoreAddCertsFile
  - xmlSecOpenSSLX509StoreInitialize
  - xmlSecOpenSSLX509StoreFinalize
  - xmlSecOpenSSLX509FindCertCtxInitialize
  - xmlSecOpenSSLX509FindCertCtxInitializeFromValue
  - xmlSecOpenSSLX509FindCertCtxFinalize
  - xmlSecOpenSSLX509MatchBySubjectName
  - xmlSecOpenSSLX509MatchByIssuer
  - xmlSecOpenSSLX509MatchBySki
  - xmlSecOpenSSLX509MatchByDigest
  - xmlSecOpenSSLX509FindCertCtxMatch
  - xmlSecOpenSSLX509GetSubjectHash
  - xmlSecOpenSSLX509GetIssuerHash
  - xmlSecOpenSSLX509FindChildCert
  - xmlSecOpenSSLX509NameReadCallback
  - xmlSecOpenSSLX509NameRead
  - xmlSecOpenSSLX509_NAME_ENTRIES_copy
  - xmlSecOpenSSLX509NamesCompare
  - xmlSecOpenSSLX509_NAME_ENTRY_cmp
  source_file: /src/xmlsec/src/openssl/x509vfy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLX509StoreSize
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/src/openssl/x509vfy.c
      type_or_value: XMLSEC_KEY_DATA_STORE_SIZE(OpenSSLX509Store)
    structs:
    - fields:
      - name: '*         xst'
        type: X509_STORE
      - name: '*     untrusted'
        type: STACK_OF
      - name: '* crls'
        type: STACK_OF
      - name: '* vpm'
        type: X509_VERIFY_PARAM
      item_type: struct
      name: _xmlSecOpenSSLX509StoreCtx
      pos:
        line_end: 59
        line_start: 54
        source_file: /src/xmlsec/src/openssl/x509vfy.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLX509StoreCtx
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/src/openssl/x509vfy.c
      type: _xmlSecOpenSSLX509StoreCtx
    union: []
- function_names:
  - xmlSecOpenSSLHmacCheckId
  - XMLSEC_OPENSSL_HMAC_SET_DIGEST
  - XMLSEC_OPENSSL_HMAC_SET_DIGEST
  - xmlSecOpenSSLHmacInitialize
  - xmlSecOpenSSLHmacFinalize
  - xmlSecOpenSSLHmacNodeRead
  - xmlSecOpenSSLHmacSetKeyReq
  - xmlSecOpenSSLHmacSetKeyImpl
  - xmlSecOpenSSLHmacSetKeyImpl
  - xmlSecOpenSSLHmacSetKey
  - xmlSecOpenSSLHmacVerify
  - xmlSecOpenSSLHmacExecute
  - xmlSecOpenSSLTransformHmacMd5GetKlass
  - xmlSecOpenSSLTransformHmacRipemd160GetKlass
  - xmlSecOpenSSLTransformHmacSha1GetKlass
  - xmlSecOpenSSLTransformHmacSha224GetKlass
  - xmlSecOpenSSLTransformHmacSha256GetKlass
  - xmlSecOpenSSLTransformHmacSha384GetKlass
  - xmlSecOpenSSLTransformHmacSha512GetKlass
  source_file: /src/xmlsec/src/openssl/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLHmacSize
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/src/openssl/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLHmac)
    structs:
    - fields:
      - name: ctxInitialized
        type: int
      - name: dgst[EVP_MAX_MD_SIZE]
        type: xmlSecByte
      - name: dgstSizeInBits
        type: xmlSecSize
      item_type: struct
      name: _xmlSecOpenSSLHmacCtx
      pos:
        line_end: 80
        line_start: 68
        source_file: /src/xmlsec/src/openssl/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLHmacCtx
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/xmlsec/src/openssl/hmac.c
      type: _xmlSecOpenSSLHmacCtx
    union: []
- function_names:
  - xmlSecOpenSSLSymKeyDataCheckId
  - xmlSecOpenSSLSymKeyDataInitialize
  - xmlSecOpenSSLSymKeyDataDuplicate
  - xmlSecOpenSSLSymKeyDataFinalize
  - xmlSecOpenSSLSymKeyDataXmlRead
  - xmlSecOpenSSLSymKeyDataXmlWrite
  - xmlSecOpenSSLSymKeyDataBinRead
  - xmlSecOpenSSLSymKeyDataBinWrite
  - xmlSecOpenSSLSymKeyDataGenerate
  - xmlSecOpenSSLSymKeyDataGetType
  - xmlSecOpenSSLSymKeyDataGetSize
  - xmlSecOpenSSLSymKeyDataDebugDump
  - xmlSecOpenSSLSymKeyDataDebugXmlDump
  - xmlSecOpenSSLSymKeyDataKlassCheck
  - xmlSecOpenSSLKeyDataAesGetKlass
  - xmlSecOpenSSLKeyDataAesSet
  - xmlSecOpenSSLKeyDataConcatKdfGetKlass
  - xmlSecOpenSSLKeyDataConcatKdfSet
  - xmlSecOpenSSLKeyDataDesGetKlass
  - xmlSecOpenSSLKeyDataDesSet
  - xmlSecOpenSSLKeyDataHmacGetKlass
  - xmlSecOpenSSLKeyDataHmacSet
  - xmlSecOpenSSLKeyDataPbkdf2GetKlass
  - xmlSecOpenSSLKeyDataPbkdf2Set
  source_file: /src/xmlsec/src/openssl/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecOpenSSLEvpSignatureCheckId
  - XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
  - XMLSEC_OPENSSL_EVP_SIGNATURE_SET_DIGEST
  - xmlSecOpenSSLEvpSignatureSetLegacyDigest
  - xmlSecOpenSSLEvpSignatureInitialize
  - xmlSecOpenSSLEvpSignatureFinalize
  - xmlSecOpenSSLEvpSignatureSetKey
  - xmlSecOpenSSLEvpSignatureSetKeyReq
  - xmlSecOpenSSLEvpSignatureCalculateDigest
  - xmlSecOpenSSLEvpSignatureCreatePkeyCtx
  - xmlSecOpenSSLEvpSignatureVerify
  - xmlSecOpenSSLEvpSignatureSign
  - xmlSecOpenSSLEvpSignatureExecute
  - xmlSecOpenSSLTransformRsaMd5GetKlass
  - xmlSecOpenSSLTransformRsaRipemd160GetKlass
  - xmlSecOpenSSLTransformRsaSha1GetKlass
  - xmlSecOpenSSLTransformRsaSha224GetKlass
  - xmlSecOpenSSLTransformRsaSha256GetKlass
  - xmlSecOpenSSLTransformRsaSha384GetKlass
  - xmlSecOpenSSLTransformRsaSha512GetKlass
  - xmlSecOpenSSLTransformRsaPssSha1GetKlass
  - xmlSecOpenSSLTransformRsaPssSha224GetKlass
  - xmlSecOpenSSLTransformRsaPssSha256GetKlass
  - xmlSecOpenSSLTransformRsaPssSha384GetKlass
  - xmlSecOpenSSLTransformRsaPssSha512GetKlass
  - xmlSecOpenSSLTransformRsaPssSha3_224GetKlass
  - xmlSecOpenSSLTransformRsaPssSha3_256GetKlass
  - xmlSecOpenSSLTransformRsaPssSha3_384GetKlass
  - xmlSecOpenSSLTransformRsaPssSha3_512GetKlass
  - xmlSecOpenSSLEvpSignatureDsaHalfLen
  - xmlSecOpenSSLEvpSignatureDsa_XmlDSig2OpenSSL
  - xmlSecOpenSSLEvpSignatureDsa_OpenSSL2XmlDSig
  - xmlSecOpenSSLTransformDsaSha1GetKlass
  - xmlSecOpenSSLTransformDsaSha256GetKlass
  - xmlSecOpenSSLEvpSignatureEcdsa_XmlDSig2OpenSSL
  - xmlSecOpenSSLEvpSignatureEcdsa_OpenSSL2XmlDSig
  - xmlSecOpenSSLTransformEcdsaRipemd160GetKlass
  - xmlSecOpenSSLTransformEcdsaSha1GetKlass
  - xmlSecOpenSSLTransformEcdsaSha224GetKlass
  - xmlSecOpenSSLTransformEcdsaSha256GetKlass
  - xmlSecOpenSSLTransformEcdsaSha384GetKlass
  - xmlSecOpenSSLTransformEcdsaSha512GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_224GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_256GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_384GetKlass
  - xmlSecOpenSSLTransformEcdsaSha3_512GetKlass
  - xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass
  - xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass
  - xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass
  source_file: /src/xmlsec/src/openssl/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NO_EC
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/xmlsec/src/openssl/signatures.c
      type_or_value: '1'
    - item_type: preproc_def
      name: xmlSecOpenSSLEvpSignatureSize
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/xmlsec/src/openssl/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLEvpSignature)
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_SIGNATURE_DSA_SHA1_HALF_LEN
      pos:
        line_end: 1585
        line_start: 1584
        source_file: /src/xmlsec/src/openssl/signatures.c
      type_or_value: '20'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_SIGNATURE_DSA_SHA256_HALF_LEN
      pos:
        line_end: 1586
        line_start: 1585
        source_file: /src/xmlsec/src/openssl/signatures.c
      type_or_value: (256 / 8)
    structs:
    - fields:
      - name: '*         digestCtx'
        type: EVP_MD_CTX
      - name: keyId
        type: xmlSecKeyDataId
      - name: '*           pKey'
        type: EVP_PKEY
      - name: keySizeBits
        type: xmlSecSize
      - name: mode
        type: xmlSecOpenSSLEvpSignatureMode
      - name: rsaPadding
        type: int
      item_type: struct
      name: _xmlSecOpenSSLEvpSignatureCtx
      pos:
        line_end: 89
        line_start: 75
        source_file: /src/xmlsec/src/openssl/signatures.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLEvpSignatureCtx
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/src/openssl/signatures.c
      type: _xmlSecOpenSSLEvpSignatureCtx
    union: []
- function_names:
  - xmlSecOpenSSLEvpDigestCheckId
  - XMLSEC_OPENSSL_EVP_DIGEST_SETUP
  - XMLSEC_OPENSSL_EVP_DIGEST_SETUP
  - xmlSecOpenSSLEvpDigestSetLegacyDigest
  - xmlSecOpenSSLEvpDigestInitialize
  - xmlSecOpenSSLEvpDigestFinalize
  - xmlSecOpenSSLEvpDigestVerify
  - xmlSecOpenSSLEvpDigestExecute
  - xmlSecOpenSSLTransformMd5GetKlass
  - xmlSecOpenSSLTransformRipemd160GetKlass
  - xmlSecOpenSSLTransformSha1GetKlass
  - xmlSecOpenSSLTransformSha224GetKlass
  - xmlSecOpenSSLTransformSha256GetKlass
  - xmlSecOpenSSLTransformSha384GetKlass
  - xmlSecOpenSSLTransformSha512GetKlass
  - xmlSecOpenSSLTransformSha3_224GetKlass
  - xmlSecOpenSSLTransformSha3_256GetKlass
  - xmlSecOpenSSLTransformSha3_384GetKlass
  - xmlSecOpenSSLTransformSha3_512GetKlass
  - xmlSecOpenSSLTransformGostR3411_94GetKlass
  - xmlSecOpenSSLTransformGostR3411_2012_256GetKlass
  - xmlSecOpenSSLTransformGostR3411_2012_512GetKlass
  source_file: /src/xmlsec/src/openssl/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLEvpDigestSize
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/openssl/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLEvpDigest)
    structs:
    - fields:
      - name: '*         digestCtx'
        type: EVP_MD_CTX
      - name: dgst[EVP_MAX_MD_SIZE]
        type: xmlSecByte
      - name: dgstSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecOpenSSLEvpDigestCtx
      pos:
        line_end: 52
        line_start: 41
        source_file: /src/xmlsec/src/openssl/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLEvpDigestCtx
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/xmlsec/src/openssl/digests.c
      type: _xmlSecOpenSSLEvpDigestCtx
    union: []
- function_names:
  - xmlSecOpenSSLKeysStoreGetKlass
  - xmlSecOpenSSLKeysStoreInitialize
  - xmlSecOpenSSLKeysStoreFinalize
  - xmlSecOpenSSLKeysStoreFindKey
  - xmlSecOpenSSLKeysStoreFindKeyFromX509Data
  - xmlSecOpenSSLKeysStoreAdoptKey
  - xmlSecOpenSSLKeysStoreLoad
  - xmlSecOpenSSLKeysStoreSave
  source_file: /src/xmlsec/src/openssl/keysstore.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLKeysStoreSize
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/openssl/keysstore.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(OpenSSLKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCryptoGetFunctions_openssl
  - xmlSecOpenSSLInit
  - xmlSecOpenSSLShutdown
  - xmlSecOpenSSLKeysMngrInit
  - xmlSecOpenSSLGenerateRandom
  - xmlSecOpenSSLErrorsDefaultCallback
  - xmlSecOpenSSLErrorsInit
  - xmlSecOpenSSLErrorsShutdown
  - xmlSecOpenSSLSetDefaultTrustedCertsFolder
  - xmlSecOpenSSLGetDefaultTrustedCertsFolder
  - xmlSecOpenSSLSetLibCtx
  - xmlSecOpenSSLGetLibCtx
  - xmlSecOpenSSLCreateMemBio
  - xmlSecOpenSSLCreateMemBufBio
  - xmlSecOpenSSLCreateReadFileBio
  source_file: /src/xmlsec/src/openssl/crypto.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_ERRORS_FUNCTION
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/src/openssl/crypto.c
      type_or_value: '0'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecOpenSSLTransformRsaPkcs1GetKlass
  - xmlSecOpenSSLRsaPkcs1SetKeyImpl
  - xmlSecOpenSSLRsaPkcs1ProcessImpl
  - xmlSecOpenSSLRsaPkcs1SetKeyImpl
  - xmlSecOpenSSLRsaPkcs1ProcessImpl
  - xmlSecOpenSSLRsaPkcs1Initialize
  - xmlSecOpenSSLRsaPkcs1Finalize
  - xmlSecOpenSSLRsaPkcs1SetKeyReq
  - xmlSecOpenSSLRsaPkcs1SetKey
  - xmlSecOpenSSLRsaPkcs1Execute
  - xmlSecOpenSSLRsaPkcs1Process
  - xmlSecOpenSSLTransformRsaOaepGetKlass
  - xmlSecOpenSSLTransformRsaOaepEnc11GetKlass
  - xmlSecOpenSSLRsaOaepCheckId
  - xmlSecOpenSSLRsaOaepSetKeyImpl
  - xmlSecOpenSSLRsaOaepProcessImpl
  - xmlSecOpenSSLRsaOaepSetKeyImpl
  - xmlSecOpenSSSLRsaOaepSetParamsIfNeeded
  - xmlSecOpenSSLRsaOaepProcessImpl
  - xmlSecOpenSSLRsaOaepInitialize
  - xmlSecOpenSSLRsaOaepFinalize
  - XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
  - XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
  - XMLSEC_OPENSSL_OAEP_DIGEST_SETUP
  - XMLSEC_OPENSSL_OAEP_MGF1_DIGEST_SETUP
  - xmlSecOpenSSLRsaOaepNodeRead
  - xmlSecOpenSSLRsaOaepSetKeyReq
  - xmlSecOpenSSLRsaOaepSetKey
  - xmlSecOpenSSLRsaOaepExecute
  - xmlSecOpenSSLRsaOaepProcess
  source_file: /src/xmlsec/src/openssl/kt_rsa.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLRsaPkcs1Size
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLRsaPkcs1)
    - item_type: preproc_def
      name: xmlSecOpenSSLRsaOaepSize
      pos:
        line_end: 545
        line_start: 544
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(OpenSSLRsaOaep)
    structs:
    - fields:
      - name: keySize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecOpenSSLRsaPkcs1Ctx
      pos:
        line_end: 63
        line_start: 56
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
    - fields:
      - name: keySize
        type: xmlSecSize
      - name: oaepParams
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecOpenSSLRsaOaepCtx
      pos:
        line_end: 536
        line_start: 523
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLRsaPkcs1Ctx
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
      type: _xmlSecOpenSSLRsaPkcs1Ctx
    - item_type: typedef
      name: xmlSecOpenSSLRsaOaepCtx
      pos:
        line_end: 522
        line_start: 521
        source_file: /src/xmlsec/src/openssl/kt_rsa.c
      type: _xmlSecOpenSSLRsaOaepCtx
    union: []
- function_names:
  - xmlSecOpenSSLGetBNValue
  - xmlSecOpenSSLSetBNValue
  - xmlSecOpenSSLEvpIsKeyInMemory
  - xmlSecOpenSSLEvpKeyDataIsKeyInMemory
  - xmlSecOpenSSLEvpKeyDataAdoptEvp
  - xmlSecOpenSSLEvpKeyDataGetEvp
  - xmlSecOpenSSLKeyGetEvp
  - xmlSecOpenSSLEvpKeyDataInitialize
  - xmlSecOpenSSLEvpKeyDataDuplicate
  - xmlSecOpenSSLEvpKeyDataFinalize
  - xmlSecOpenSSLKeyDataGetKeySize
  - xmlSecOpenSSLEvpKeyDup
  - xmlSecOpenSSLEvpKeyAdopt
  - xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass
  - xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlRead
  - xmlSecOpenSSLKeyDataDEREncodedKeyValueXmlWrite
  - xmlSecOpenSSLKeyValueDsaInitialize
  - xmlSecOpenSSLKeyValueDsaFinalize
  - xmlSecOpenSSLKeyDataDsaGetKlass
  - xmlSecOpenSSLKeyDataDsaAdoptEvp
  - xmlSecOpenSSLKeyDataDsaGetEvp
  - xmlSecOpenSSLKeyDataDsaInitialize
  - xmlSecOpenSSLKeyDataDsaDuplicate
  - xmlSecOpenSSLKeyDataDsaFinalize
  - xmlSecOpenSSLKeyDataDsaXmlRead
  - xmlSecOpenSSLKeyDataDsaXmlWrite
  - xmlSecOpenSSLKeyDataDsaAdoptDsa
  - xmlSecOpenSSLKeyDataDsaGetDsa
  - xmlSecOpenSSLKeyDataDsaGetValue
  - xmlSecOpenSSLKeyDataDsaSetValue
  - xmlSecOpenSSLKeyDataDsaGenerate
  - xmlSecOpenSSLKeyDataDsaGetSize
  - xmlSecOpenSSLKeyDataDsaGetValue
  - xmlSecOpenSSLKeyDataDsaSetValue
  - xmlSecOpenSSLKeyDataDsaGenerate
  - xmlSecOpenSSLKeyDataDsaGetSize
  - xmlSecOpenSSLKeyDataDsaGetType
  - xmlSecOpenSSLKeyDataDsaDebugDump
  - xmlSecOpenSSLKeyDataDsaDebugXmlDump
  - xmlSecOpenSSLKeyDataDsaRead
  - xmlSecOpenSSLKeyDataDsaWrite
  - xmlSecOpenSSLKeyValueDhInitialize
  - xmlSecOpenSSLKeyValueDhFinalize
  - xmlSecOpenSSLKeyDataDhGetKlass
  - xmlSecOpenSSLKeyDataDhAdoptEvp
  - xmlSecOpenSSLKeyDataDhGetEvp
  - xmlSecOpenSSLKeyDataDhInitialize
  - xmlSecOpenSSLKeyDataDhDuplicate
  - xmlSecOpenSSLKeyDataDhFinalize
  - xmlSecOpenSSLKeyDataDhXmlRead
  - xmlSecOpenSSLKeyDataDhXmlWrite
  - xmlSecOpenSSLKeyDataDhAdoptDh
  - xmlSecOpenSSLKeyDataDhGetDh
  - xmlSecOpenSSLKeyDataDhGetValue
  - xmlSecOpenSSLKeyDataDhSetValue
  - xmlSecOpenSSLKeyDataDhGenerate
  - xmlSecOpenSSLKeyDataDhGetSize
  - xmlSecOpenSSLKeyDataDhGetValue
  - xmlSecOpenSSLKeyDataDhSetValue
  - xmlSecOpenSSLKeyDataDhGenerate
  - xmlSecOpenSSLKeyDataDhGetSize
  - xmlSecOpenSSLKeyDataDhGetType
  - xmlSecOpenSSLKeyDataDhDebugDump
  - xmlSecOpenSSLKeyDataDhDebugXmlDump
  - xmlSecOpenSSLKeyDataDhRead
  - xmlSecOpenSSLKeyDataDhWrite
  - xmlSecOpenSSLKeyDataEcGetKlass
  - xmlSecOpenSSLKeyDataEcAdoptEvp
  - xmlSecOpenSSLKeyDataEcGetEvp
  - xmlSecOpenSSLKeyDataEcInitialize
  - xmlSecOpenSSLKeyDataEcDuplicate
  - xmlSecOpenSSLKeyDataEcFinalize
  - xmlSecOpenSSLKeyDataEcGetType
  - xmlSecOpenSSLKeyDataEcGetOidFromNid
  - xmlSecOpenSSLKeyDataEcGetNidFromOid
  - xmlSecOpenSSLKeyDataEcGetEcKey
  - xmlSecOpenSSLKeyDataEcSetEcKey
  - xmlSecOpenSSLKeyDataEcGetSize
  - xmlSecOpenSSLKeyDataEcWrite
  - xmlSecOpenSSLKeyDataEcSetValue
  - xmlSecOpenSSLKeyDataEcGetOidFromName
  - xmlSecOpenSSLKeyDataEcGetNameFromOid
  - xmlSecOpenSSLKeyDataEcGetSize
  - xmlSecOpenSSLKeyDataEcWrite
  - xmlSecOpenSSLKeyDataEcSetValue
  - xmlSecOpenSSLKeyDataEcXmlRead
  - xmlSecOpenSSLKeyDataEcXmlWrite
  - xmlSecOpenSSLKeyDataEcDebugDump
  - xmlSecOpenSSLKeyDataEcDebugXmlDump
  - xmlSecOpenSSLKeyDataEcRead
  - xmlSecOpenSSLKeyValueRsaCheckKeyType
  - xmlSecOpenSSLKeyValueRsaInitialize
  - xmlSecOpenSSLKeyValueRsaFinalize
  - xmlSecOpenSSLKeyDataRsaGetKlass
  - xmlSecOpenSSLKeyDataRsaAdoptEvp
  - xmlSecOpenSSLKeyDataRsaGetEvp
  - xmlSecOpenSSLKeyDataRsaInitialize
  - xmlSecOpenSSLKeyDataRsaDuplicate
  - xmlSecOpenSSLKeyDataRsaFinalize
  - xmlSecOpenSSLKeyDataRsaXmlRead
  - xmlSecOpenSSLKeyDataRsaXmlWrite
  - xmlSecOpenSSLKeyDataRsaAdoptRsa
  - xmlSecOpenSSLKeyDataRsaGetRsa
  - xmlSecOpenSSLKeyDataRsaGenerate
  - xmlSecOpenSSLKeyDataRsaGetSize
  - xmlSecOpenSSLKeyDataRsaGetValue
  - xmlSecOpenSSLKeyDataRsaSetValue
  - xmlSecOpenSSLKeyDataRsaGenerate
  - xmlSecOpenSSLKeyDataRsaGetSize
  - xmlSecOpenSSLKeyDataRsaGetValue
  - xmlSecOpenSSLKeyDataRsaSetValue
  - xmlSecOpenSSLKeyDataRsaGetType
  - xmlSecOpenSSLKeyDataRsaDebugDump
  - xmlSecOpenSSLKeyDataRsaDebugXmlDump
  - xmlSecOpenSSLKeyDataRsaRead
  - xmlSecOpenSSLKeyDataRsaWrite
  - xmlSecOpenSSLKeyDataGost2001GetKlass
  - xmlSecOpenSSLKeyDataGost2001Initialize
  - xmlSecOpenSSLKeyDataGost2001Duplicate
  - xmlSecOpenSSLKeyDataGost2001Finalize
  - xmlSecOpenSSLKeyDataGost2001GetType
  - xmlSecOpenSSLKeyDataGost2001GetSize
  - xmlSecOpenSSLKeyDataGost2001DebugDump
  - xmlSecOpenSSLKeyDataGost2001DebugXmlDump
  - xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass
  - xmlSecOpenSSLKeyDataGostR3410_2012_256Initialize
  - xmlSecOpenSSLKeyDataGostR3410_2012_256Duplicate
  - xmlSecOpenSSLKeyDataGostR3410_2012_256Finalize
  - xmlSecOpenSSLKeyDataGostR3410_2012_256GetType
  - xmlSecOpenSSLKeyDataGostR3410_2012_256GetSize
  - xmlSecOpenSSLKeyDataGostR3410_2012_256DebugDump
  - xmlSecOpenSSLKeyDataGostR3410_2012_256DebugXmlDump
  - xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass
  - xmlSecOpenSSLKeyDataGostR3410_2012_512Initialize
  - xmlSecOpenSSLKeyDataGostR3410_2012_512Duplicate
  - xmlSecOpenSSLKeyDataGostR3410_2012_512Finalize
  - xmlSecOpenSSLKeyDataGostR3410_2012_512GetType
  - xmlSecOpenSSLKeyDataGostR3410_2012_512GetSize
  - xmlSecOpenSSLKeyDataGostR3410_2012_512DebugDump
  - xmlSecOpenSSLKeyDataGostR3410_2012_512DebugXmlDump
  source_file: /src/xmlsec/src/openssl/evp.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_KEY_IMPLEMENTATION_UNKNOWN
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/src/openssl/evp.c
      type_or_value: '0'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_KEY_IMPLEMENTATION_MEMORY
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/src/openssl/evp.c
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_EVP_KEY_IMPLEMENTATION_PROVIDER_OR_ENGINE
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/src/openssl/evp.c
      type_or_value: '2'
    - item_type: preproc_def
      name: xmlSecOpenSSLEvpKeyDataSize
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/src/openssl/evp.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(OpenSSLEvpKeyData)
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_DH_EVP_NAME
      pos:
        line_end: 1685
        line_start: 1684
        source_file: /src/xmlsec/src/openssl/evp.c
      type_or_value: '"DHX"'
    structs:
    - fields:
      - name: '*           pKey'
        type: EVP_PKEY
      - name: implementation
        type: int
      item_type: struct
      name: _xmlSecOpenSSLEvpKeyDataCtx
      pos:
        line_end: 128
        line_start: 125
        source_file: /src/xmlsec/src/openssl/evp.c
    - fields:
      - name: '* p'
        type: BIGNUM
      - name: '* q'
        type: BIGNUM
      - name: '* g'
        type: BIGNUM
      - name: '* pub_key'
        type: BIGNUM
      - name: '* priv_key'
        type: BIGNUM
      - name: notOwner
        type: int
      item_type: struct
      name: _xmlSecOpenSSLKeyValueDsa
      pos:
        line_end: 789
        line_start: 782
        source_file: /src/xmlsec/src/openssl/evp.c
    - fields:
      - name: '* p'
        type: BIGNUM
      - name: '* q'
        type: BIGNUM
      - name: '* generator'
        type: BIGNUM
      - name: '* public'
        type: BIGNUM
      - name: '* private'
        type: BIGNUM
      - name: '* seed'
        type: BIGNUM
      - name: '* pgenCounter'
        type: BIGNUM
      - name: notOwner
        type: int
      item_type: struct
      name: _xmlSecOpenSSLKeyValueDh
      pos:
        line_end: 1675
        line_start: 1666
        source_file: /src/xmlsec/src/openssl/evp.c
    - fields:
      - name: nid
        type: int
      - name: name[128]
        type: xmlChar
      - name: oid[128]
        type: xmlChar
      item_type: struct
      name: _xmlSecOpenSSLKeyDataEcCurveNameAndOID
      pos:
        line_end: 2823
        line_start: 2819
        source_file: /src/xmlsec/src/openssl/evp.c
    - fields:
      - name: '* n'
        type: BIGNUM
      - name: '* e'
        type: BIGNUM
      - name: '* d'
        type: BIGNUM
      - name: notOwner
        type: int
      item_type: struct
      name: _xmlSecOpenSSLKeyValueRsa
      pos:
        line_end: 3435
        line_start: 3430
        source_file: /src/xmlsec/src/openssl/evp.c
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLEvpKeyDataCtx
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/src/openssl/evp.c
      type: _xmlSecOpenSSLEvpKeyDataCtx
    union: []
- function_names:
  - ENGINE_cleanup
  - CONF_modules_unload
  - RAND_priv_bytes
  - RAND_write_file
  - EVP_PKEY_base_id
  - EVP_CipherFinal
  - EVP_read_pw_string
  - X509_get0_pubkey
  - sk_X509_reserve
  - sk_X509_CRL_reserve
  - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
  - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT
  - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_SIZE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_UINT
  - XMLSEC_OPENSSL_SAFE_CAST_UINT_TO_BYTE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_SIZE
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_TO_SIZE_T
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_UINT
  - XMLSEC_OPENSSL_SAFE_CAST_SIZE_T_TO_INT
  - RAND_priv_bytes
  - sk_X509_reserve
  - sk_X509_CRL_reserve
  - UI_null
  - BIO_new_ex
  - PEM_read_bio_PrivateKey_ex
  - PEM_read_bio_PUBKEY_ex
  - d2i_PrivateKey_ex_bio
  - EVP_SignFinal_ex
  - EVP_VerifyFinal_ex
  - X509_new_ex
  - X509_CRL_new_ex
  - X509_STORE_CTX_new_ex
  - X509_STORE_set_default_paths_ex
  - X509_NAME_hash_ex
  - RAND_priv_bytes_ex
  - xmlSecOpenSSLCompatRand
  source_file: /src/xmlsec/src/openssl/openssl_compat.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_ASN1_TIME_TO_TM
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_STORE
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_DEEP_COPY
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_CRL_VERIFICATION
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_RSA_OAEP
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_DH
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_DSA
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA3
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: X509_STORE_CTX_get_by_subject
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: X509_STORE_get_by_subject
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_ASN1_TIME_TO_TM
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_STORE
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_PWD_CALLBACK
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_NO_DEEP_COPY
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_DH
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA3
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_CONCATKDF
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_PBKDF2
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_DIGEST_NAME_GOST94
      pos:
        line_end: 193
        line_start: 192
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"md_gost94"'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_DIGEST_NAME_GOST12_256
      pos:
        line_end: 197
        line_start: 196
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"md_gost12_256"'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_DIGEST_NAME_GOST12_512
      pos:
        line_end: 198
        line_start: 197
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"md_gost12_512"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_RAND_BYTES_STRENGTH
      pos:
        line_end: 203
        line_start: 202
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '0'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_DES3_EDE
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"DES3"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES128_CBC
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-128-CBC"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES192_CBC
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-192-CBC"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES256_CBC
      pos:
        line_end: 209
        line_start: 208
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-256-CBC"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES128_GCM
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-128-GCM"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES192_GCM
      pos:
        line_end: 211
        line_start: 210
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-192-GCM"'
    - item_type: preproc_def
      name: XMLSEEC_OPENSSL_CIPHER_NAME_AES256_GCM
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type_or_value: '"AES-256-GCM"'
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecOpenSSLUInt
      pos:
        line_end: 57
        line_start: 57
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type: unsigned
    - item_type: typedef
      name: xmlSecOpenSSLSizeT
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type: size_t
    - item_type: typedef
      name: xmlSecOpenSSLUInt
      pos:
        line_end: 86
        line_start: 86
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type: int
    - item_type: typedef
      name: xmlSecOpenSSLSizeT
      pos:
        line_end: 98
        line_start: 98
        source_file: /src/xmlsec/src/openssl/openssl_compat.h
      type: int
    union: []
- function_names:
  - xmlSecNssGcmCipherCheckId
  - xmlSecNssGcmCipherInitialize
  - xmlSecNssGcmCipherFinalize
  - xmlSecNssGcmCipherSetKeyReq
  - xmlSecNssGcmCipherSetKey
  - xmlSecNssGcmCipherGetKey
  - xmlSecNssGcmCipherEncrypt
  - xmlSecNssGcmCipherDecrypt
  - xmlSecNssGcmCipherExecute
  - xmlSecNssTransformAes128GcmGetKlass
  - xmlSecNssTransformAes192GcmGetKlass
  - xmlSecNssTransformAes256GcmGetKlass
  source_file: /src/xmlsec/src/nss/ciphers_gcm.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NSS_GCM_CIPHER_MAX_BLOCK_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_NSS_GCM_CIPHER_IV_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type_or_value: '12'
    - item_type: preproc_def
      name: XMLSEC_NSS_GCM_CIPHER_TAG_SIZE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type_or_value: '16'
    - item_type: preproc_def
      name: CK_NSS_GCM_PARAMS
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type_or_value: CK_GCM_PARAMS
    - item_type: preproc_def
      name: xmlSecNssGcmCipherSize
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssGcmCipher)
    structs:
    - fields:
      - name: keyId
        type: xmlSecKeyDataId
      - name: keySize
        type: xmlSecSize
      - name: keyData
        type: xmlSecKeyDataPtr
      item_type: struct
      name: _xmlSecNssGcmCipherCtx
      pos:
        line_end: 58
        line_start: 54
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssGcmCipherCtx
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/src/nss/ciphers_gcm.c
      type: _xmlSecNssGcmCipherCtx
    union: []
- function_names:
  - xmlSecNssError
  - xmlSecNssError2
  - xmlSecNssError3
  source_file: /src/xmlsec/src/nss/globals.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecNssKWAesCheckId
  - xmlSecNssTransformKWAes128GetKlass
  - xmlSecNssTransformKWAes192GetKlass
  - xmlSecNssTransformKWAes256GetKlass
  - xmlSecNssKWAesInitialize
  - xmlSecNssKWAesFinalize
  - xmlSecNssKWAesSetKeyReq
  - xmlSecNssKWAesSetKey
  - xmlSecNssKWAesExecute
  - xmlSecNSSKWAesBlockEncrypt
  - xmlSecNSSKWAesBlockDecrypt
  - xmlSecNSSKWAesEnsureKey
  - xmlSecNssAesOp
  source_file: /src/xmlsec/src/nss/kw_aes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKWAesSize
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/src/nss/kw_aes.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssKWAes)
    structs:
    - fields:
      - name: parentCtx
        type: xmlSecTransformKWAesCtx
      - name: '* aesKey'
        type: PK11SymKey
      item_type: struct
      name: _xmlSecNssKWAesCtx
      pos:
        line_end: 89
        line_start: 86
        source_file: /src/xmlsec/src/nss/kw_aes.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssKWAesCtx
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/src/nss/kw_aes.c
      type: _xmlSecNssKWAesCtx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 532
        line_start: 532
        source_file: /src/xmlsec/src/nss/kw_aes.c
      type: int
    union: []
- function_names:
  - xmlSecNssPKIKeyDataInitialize
  - xmlSecNssPKIKeyDataFinalize
  - xmlSecNSSPKIKeyDataCtxFree
  - xmlSecNSSPKIKeyDataCtxDup
  - xmlSecNssPKIKeyDataAdoptKey
  - xmlSecNssPKIAdoptKey
  - xmlSecNssPKIKeyDataGetPubKey
  - xmlSecNssPKIKeyDataGetPrivKey
  - xmlSecNssPKIKeyDataGetKeyType
  - xmlSecNssPKIKeyDataDuplicate
  - xmlSecNssGetBigNumValue
  - xmlSecNssSetBigNumValue
  - xmlSecNssKeyDataDEREncodedKeyValueGetKlass
  - xmlSecNssKeyDataDEREncodedKeyValueXmlRead
  - xmlSecNssKeyDataDEREncodedKeyValueXmlWrite
  - xmlSecNssKeyDataDsaGetKlass
  - xmlSecNssKeyDataDsaInitialize
  - xmlSecNssKeyDataDsaDuplicate
  - xmlSecNssKeyDataDsaFinalize
  - xmlSecNssKeyDataDsaXmlRead
  - xmlSecNssKeyDataDsaXmlWrite
  - xmlSecNssKeyDataDsaGenerate
  - xmlSecNssKeyDataDsaGetType
  - xmlSecNssKeyDataDsaGetSize
  - xmlSecNssKeyDataDsaDebugDump
  - xmlSecNssKeyDataDsaDebugXmlDump
  - xmlSecNssKeyDataDsaRead
  - xmlSecNssKeyDataDsaWrite
  - xmlSecNssKeyDataRsaGetKlass
  - xmlSecNssKeyDataRsaInitialize
  - xmlSecNssKeyDataRsaDuplicate
  - xmlSecNssKeyDataRsaFinalize
  - xmlSecNssKeyDataRsaXmlRead
  - xmlSecNssKeyDataRsaXmlWrite
  - xmlSecNssKeyDataRsaGetType
  - xmlSecNssKeyDataRsaGetSize
  - xmlSecNssKeyDataRsaDebugDump
  - xmlSecNssKeyDataRsaDebugXmlDump
  - xmlSecNssKeyDataRsaRead
  - xmlSecNssKeyDataRsaWrite
  - xmlSecNssKeyDataRsaGenerate
  - xmlSecNsskeyDataEcGetKlass
  - xmlSecNssKeyDataEcInitialize
  - xmlSecNssKeyDataEcDuplicate
  - xmlSecNssKeyDataEcFinalize
  - xmlSecNssKeyDataEcGetType
  - xmlSecNssKeyDataEcGetSize
  - xmlSecNssKeyDataEcDebugDump
  - xmlSecNssKeyDataEcDebugXmlDump
  - xmlSecNssKeyDataEcXmlRead
  - xmlSecNssKeyDataEcXmlWrite
  - xmlSecNssKeyDataEcGetOidFromOidTag
  - xmlSecNssKeyDataEcGetOidTagFromOid
  - xmlSecNssKeyDataEcRead
  - xmlSecNssKeyDataEcGetOidTag
  - xmlSecNssKeyDataEcWrite
  source_file: /src/xmlsec/src/nss/pkikeys.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssPKIKeyDataSize
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/src/nss/pkikeys.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(NssPKIKeyData)
    structs:
    - fields:
      - name: '*pubkey'
        type: SECKEYPublicKey
      - name: '*privkey'
        type: SECKEYPrivateKey
      item_type: struct
      name: _xmlSecNssPKIKeyDataCtx
      pos:
        line_end: 52
        line_start: 49
        source_file: /src/xmlsec/src/nss/pkikeys.c
    - fields:
      - name: curveOidTag
        type: SECOidTag
      - name: oid[128]
        type: xmlChar
      item_type: struct
      name: _xmlSecNssKeyDataEcCurveNameAndOID
      pos:
        line_end: 1752
        line_start: 1749
        source_file: /src/xmlsec/src/nss/pkikeys.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssPKIKeyDataCtx
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/src/nss/pkikeys.c
      type: _xmlSecNssPKIKeyDataCtx
    union: []
- function_names:
  - xmlSecNssKeyTransportCheckId
  - xmlSecNssKeyTransportInitialize
  - xmlSecNssKeyTransportFinalize
  - xmlSecNssKeyTransportSetKeyReq
  - xmlSecNssKeyTransportSetKey
  - xmlSecNssKeyTransportCtxInit
  - xmlSecNssKeyTransportCtxUpdate
  - xmlSecNssKeyTransportSetOaepParams
  - xmlSecNssKeyTransportLoadSymKeyUsingPublicKeySlot
  - xmlSecNssKeyTransportCtxFinal
  - xmlSecNssKeyTransportExecute
  - xmlSecNssTransformRsaPkcs1GetKlass
  - xmlSecNssTransformRsaOaepGetKlass
  - xmlSecNssTransformRsaOaepEnc11GetKlass
  - xmlSecNssRsaOaepNodeRead
  source_file: /src/xmlsec/src/nss/keytrans.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKeyTransportSize
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/src/nss/keytrans.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssKeyTransport)
    structs:
    - fields:
      - name: cipher
        type: CK_MECHANISM_TYPE
      - name: '*                pubkey'
        type: SECKEYPublicKey
      - name: '*               prikey'
        type: SECKEYPrivateKey
      - name: keyId
        type: xmlSecKeyDataId
      - name: material
        type: xmlSecBufferPtr
      item_type: struct
      name: _xmlSecNssKeyTransportCtx
      pos:
        line_end: 58
        line_start: 45
        source_file: /src/xmlsec/src/nss/keytrans.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssKeyTransportCtx
      pos:
        line_end: 42
        line_start: 42
        source_file: /src/xmlsec/src/nss/keytrans.c
      type: _xmlSecNssKeyTransportCtx
    - item_type: typedef
      name: '*      xmlSecNssKeyTransportCtxPtr'
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/xmlsec/src/nss/keytrans.c
      type: _xmlSecNssKeyTransportCtx
    union: []
- function_names:
  - xmlSecNssCbcCipherCtxInit
  - xmlSecNssCbcCipherCtxUpdate
  - xmlSecNssCbcCipherCtxFinal
  - xmlSecNssCbcCipherCheckId
  - xmlSecNssCbcCipherInitialize
  - xmlSecNssCbcCipherFinalize
  - xmlSecNssCbcCipherSetKeyReq
  - xmlSecNssCbcCipherSetKey
  - xmlSecNssCbcCipherExecute
  - xmlSecNssTransformAes128CbcGetKlass
  - xmlSecNssTransformAes192CbcGetKlass
  - xmlSecNssTransformAes256CbcGetKlass
  - xmlSecNssTransformDes3CbcGetKlass
  source_file: /src/xmlsec/src/nss/ciphers_cbc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NSS_CBC_CIPHER_MAX_KEY_SIZE
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_NSS_CBC_CIPHER_MAX_IV_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_NSS_CBC_CIPHER_MAX_BLOCK_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
      type_or_value: '32'
    - item_type: preproc_def
      name: xmlSecNssCbcCipherSize
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssCbcCipher)
    structs:
    - fields:
      - name: cipher
        type: CK_MECHANISM_TYPE
      - name: '*        cipherCtx'
        type: PK11Context
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyInitialized
        type: int
      - name: ctxInitialized
        type: int
      - name: key[XMLSEC_NSS_CBC_CIPHER_MAX_KEY_SIZE]
        type: xmlSecByte
      - name: keySize
        type: xmlSecSize
      - name: iv[XMLSEC_NSS_CBC_CIPHER_MAX_IV_SIZE]
        type: xmlSecByte
      item_type: struct
      name: _xmlSecNssCbcCipherCtx
      pos:
        line_end: 54
        line_start: 45
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssCbcCipherCtx
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/src/nss/ciphers_cbc.c
      type: _xmlSecNssCbcCipherCtx
    union: []
- function_names:
  - xmlSecNssPbkdf2CheckId
  - xmlSecNssPbkdf2Initialize
  - xmlSecNssPbkdf2Finalize
  - xmlSecNssPbkdf2SetKeyReq
  - xmlSecNssPbkdf2SetKey
  - xmlSecNssPbkdf2GetMacFromHref
  - xmlSecNssPbkdf2NodeRead
  - xmlSecNssPbkdf2Derive
  - xmlSecNssPbkdf2Execute
  - xmlSecNssTransformPbkdf2GetKlass
  source_file: /src/xmlsec/src/nss/pbkdf2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NSS_KDF_DEFAULT_BUF_SIZE
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/src/nss/pbkdf2.c
      type_or_value: '64'
    - item_type: preproc_def
      name: xmlSecNssPbkdf2CtxSize
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/xmlsec/src/nss/pbkdf2.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssPbkdf2)
    structs:
    - fields:
      - name: params
        type: xmlSecTransformPbkdf2Params
      - name: hashAlgo
        type: SECOidTag
      - name: key
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecNssPbkdf2Ctx
      pos:
        line_end: 53
        line_start: 49
        source_file: /src/xmlsec/src/nss/pbkdf2.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssPbkdf2Ctx
      pos:
        line_end: 48
        line_start: 48
        source_file: /src/xmlsec/src/nss/pbkdf2.c
      type: _xmlSecNssPbkdf2Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 456
        line_start: 456
        source_file: /src/xmlsec/src/nss/pbkdf2.c
      type: int
    union: []
- function_names:
  - xmlSecNssTransformKWDes3GetKlass
  - xmlSecNssKWDes3Initialize
  - xmlSecNssKWDes3Finalize
  - xmlSecNssKWDes3SetKeyReq
  - xmlSecNssKWDes3SetKey
  - xmlSecNssKWDes3Execute
  - xmlSecNssKWDes3Sha1
  - xmlSecNssKWDes3GenerateRandom
  - xmlSecNssKWDes3BlockEncrypt
  - xmlSecNssKWDes3BlockDecrypt
  - xmlSecNssKWDes3Encrypt
  source_file: /src/xmlsec/src/nss/kw_des.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKWDes3Size
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/src/nss/kw_des.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssKWDes3)
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecNssKWDes3Ctx
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/src/nss/kw_des.c
      type: xmlSecTransformKWDes3Ctx
    - item_type: typedef
      name: make_iso_compilers_happy
      pos:
        line_end: 508
        line_start: 508
        source_file: /src/xmlsec/src/nss/kw_des.c
      type: int
    union: []
- function_names:
  - xmlSecNssAppInit
  - xmlSecNssAppShutdown
  - xmlSecNssAppCreateSECItem
  - xmlSecNssAppReadSECItem
  - xmlSecNssAppAscii2UCS2Conv
  - xmlSecNssAppNicknameCollisionCallback
  - xmlSecNssAppKeyLoadEx
  - xmlSecNssAppKeyLoadMemory
  - xmlSecNssAppKeyLoadSECItem
  - xmlSecNssAppDerKeyLoadSECItem
  - xmlSecNssAppCheckCertMatchesKey
  - xmlSecNssAppKeyCertLoad
  - xmlSecNssAppKeyCertLoadMemory
  - xmlSecNssAppKeyCertLoadSECItem
  - xmlSecNssAppPkcs12Load
  - xmlSecNssAppPkcs12LoadMemory
  - xmlSecNssAppPkcs12LoadSECItem
  - xmlSecNssAppKeyFromCertLoadSECItem
  - xmlSecNssAppKeysMngrCertLoad
  - xmlSecNssAppKeysMngrCertLoadMemory
  - xmlSecNssAppKeysMngrCertLoadSECItem
  - xmlSecNssAppKeysMngrCrlLoad
  - xmlSecNssAppKeysMngrCrlLoadMemory
  - xmlSecNssAppDefaultKeysMngrInit
  - xmlSecNssAppDefaultKeysMngrAdoptKey
  - xmlSecNssAppDefaultKeysMngrVerifyKey
  - xmlSecNssAppDefaultKeysMngrLoad
  - xmlSecNssAppDefaultKeysMngrSave
  - xmlSecNssAppGetDefaultPwdCallback
  source_file: /src/xmlsec/src/nss/app.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/src/nss/private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NSS_MAX_DIGEST_SIZE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/src/nss/private.h
      type_or_value: '128'
    structs:
    - fields:
      - name: '*arena'
        type: PRArenaPool
      - name: '* subjectName'
        type: CERTName
      - name: '* subjectNameItem'
        type: SECItem
      - name: '* issuerName'
        type: CERTName
      - name: '* issuerNameItem'
        type: SECItem
      - name: issuerSN
        type: PRUint64
      - name: issuerAndSN
        type: CERTIssuerAndSN
      - name: issuerAndSNInitialized
        type: int
      - name: skiItem
        type: SECItem
      - name: '* digestValue'
        type: xmlSecByte
      - name: digestLen
        type: unsigned int
      - name: digestAlg
        type: SECOidTag
      item_type: struct
      name: _xmlSecNssX509FindCertCtx
      pos:
        line_end: 65
        line_start: 48
        source_file: /src/xmlsec/src/nss/private.h
    - fields:
      - name: next
        type: xmlSecNssX509CrlNodePtr
      - name: '*crl'
        type: CERTSignedCrl
      item_type: struct
      name: _xmlSecNssX509CrlNode
      pos:
        line_end: 97
        line_start: 94
        source_file: /src/xmlsec/src/nss/private.h
    typedefs:
    - item_type: typedef
      name: xmlSecNssX509CrlNode
      pos:
        line_end: 93
        line_start: 93
        source_file: /src/xmlsec/src/nss/private.h
      type: _xmlSecNssX509CrlNode
    union: []
- function_names:
  - xmlSecNssKeyDataX509GetKlass
  - xmlSecNssKeyDataX509GetKeyCert
  - xmlSecNssKeyDataX509GetCerts
  - xmlSecNssKeyDataX509GetCrls
  - xmlSecNssKeyDataX509FindCertInternal
  - xmlSecNssKeyDataX509AddCertInternal
  - xmlSecNssKeyDataX509AdoptKeyCert
  - xmlSecNssKeyDataX509AdoptCert
  - xmlSecNssKeyDataX509GetCert
  - xmlSecNssKeyDataX509GetCertsSize
  - xmlSecNssKeyDataX509AdoptCrl
  - xmlSecNssKeyDataX509GetCrl
  - xmlSecNssKeyDataX509GetCrlsSize
  - xmlSecNssKeyDataX509Initialize
  - xmlSecNssKeyDataX509Finalize
  - xmlSecNssKeyDataX509Duplicate
  - xmlSecNssKeyDataX509XmlRead
  - xmlSecNssKeyDataX509XmlWrite
  - xmlSecNssKeyDataX509DebugDump
  - xmlSecNssKeyDataX509DebugXmlDump
  - xmlSecNssKeyDataX509Read
  - xmlSecNssKeyDataX509Write
  - xmlSecNssVerifyAndAdoptX509KeyData
  - xmlSecNssX509CertGetTime
  - xmlSecNssX509CertGetKey
  - xmlSecNssX509SECItemWrite
  - xmlSecNssX509CertDerRead
  - xmlSecNssX509CrlDerRead
  - xmlSecNssX509CertReadCallback
  - xmlSecNssX509CertPemRead
  - xmlSecNssX509NameWrite
  - xmlSecNssASN1IntegerWrite
  - xmlSecNssX509DigestWrite
  - xmlSecNssX509CertDebugDump
  - xmlSecNssX509CertDebugXmlDump
  - xmlSecNssX509CrlListDuplicate
  - xmlSecNssX509CrlListDestroy
  - xmlSecNssX509CrlListAdoptCrl
  - xmlSecNssKeyDataRawX509CertGetKlass
  - xmlSecNssKeyDataRawX509CertBinRead
  source_file: /src/xmlsec/src/nss/x509.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssX509DataSize
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/src/nss/x509.c
      type_or_value: XMLSEC_KEY_DATA_SIZE(NssX509Data)
    - item_type: preproc_def
      name: XMLSEC_NSS_INT_TO_STR_MAX_SIZE
      pos:
        line_end: 1293
        line_start: 1292
        source_file: /src/xmlsec/src/nss/x509.c
      type_or_value: '64'
    structs:
    - fields:
      - name: '*  keyCert'
        type: CERTCertificate
      - name: '*    certsList'
        type: CERTCertList
      - name: numCerts
        type: unsigned int
      - name: crlsList
        type: xmlSecNssX509CrlNodePtr
      - name: numCrls
        type: unsigned int
      item_type: struct
      name: _xmlSecNssX509DataCtx
      pos:
        line_end: 98
        line_start: 90
        source_file: /src/xmlsec/src/nss/x509.c
    - fields:
      - name: crtPos
        type: xmlSecSize
      - name: crtSize
        type: xmlSecSize
      - name: crlPos
        type: xmlSecSize
      - name: crlSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecNssKeyDataX509Context
      pos:
        line_end: 131
        line_start: 126
        source_file: /src/xmlsec/src/nss/x509.c
    - fields:
      - name: '* arena'
        type: PLArenaPool
      - name: cert
        type: SECItem
      item_type: struct
      name: _xmlSecNssX509CertReadResult
      pos:
        line_end: 1212
        line_start: 1209
        source_file: /src/xmlsec/src/nss/x509.c
    typedefs: []
    union: []
- function_names:
  - xmlSecNssX509StoreGetKlass
  - xmlSecNssX509StoreFindCert
  - xmlSecNssX509StoreFindCert_ex
  - xmlSecNssX509StoreFindCertByValue
  - xmlSecNssX509StoreCheckIfCertIsRevoked
  - xmlSecNssX509StoreFindBestCrl
  - xmlSecNssX509StoreRemoveRevokedCerts
  - xmlSecNssX509StoreFindChildCert
  - xmlSecNssX509StoreVerifyCert
  - xmlSecNssX509StoreVerifyKey
  - xmlSecNssX509StoreVerify
  - xmlSecNssX509StoreAdoptCert
  - xmlSecNssX509StoreAdoptCrl
  - xmlSecNssX509StoreInitialize
  - xmlSecNssX509StoreFinalize
  - xmlSecNssGetCertName
  - xmlSecNssX509FindCert
  - xmlSecNssNumToItem
  - xmlSecNssX509FindKeyByValue
  - xmlSecNssX509GetDigestFromAlgorithm
  - xmlSecNssX509FindCertCtxInitialize
  - xmlSecNssX509FindCertCtxInitializeFromValue
  - xmlSecNssX509FindCertCtxFinalize
  - xmlSecNssX509FindCertCtxMatch
  source_file: /src/xmlsec/src/nss/x509vfy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssX509StoreSize
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/src/nss/x509vfy.c
      type_or_value: XMLSEC_KEY_DATA_STORE_SIZE(NssX509Store)
    structs:
    - fields:
      - name: '* certsList'
        type: CERTCertList
      - name: crlsList
        type: xmlSecNssX509CrlNodePtr
      - name: numCrls
        type: unsigned int
      item_type: struct
      name: _xmlSecNssX509StoreCtx
      pos:
        line_end: 65
        line_start: 51
        source_file: /src/xmlsec/src/nss/x509vfy.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssX509StoreCtx
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/src/nss/x509vfy.c
      type: _xmlSecNssX509StoreCtx
    union: []
- function_names:
  - xmlSecNssHmacCheckId
  - xmlSecNssHmacInitialize
  - xmlSecNssHmacFinalize
  - xmlSecNssHmacNodeRead
  - xmlSecNssHmacSetKeyReq
  - xmlSecNssHmacSetKey
  - xmlSecNssHmacVerify
  - xmlSecNssHmacExecute
  - xmlSecNssTransformHmacRipemd160GetKlass
  - xmlSecNssTransformHmacMd5GetKlass
  - xmlSecNssTransformHmacSha1GetKlass
  - xmlSecNssTransformHmacSha224GetKlass
  - xmlSecNssTransformHmacSha256GetKlass
  - xmlSecNssTransformHmacSha384GetKlass
  - xmlSecNssTransformHmacSha512GetKlass
  source_file: /src/xmlsec/src/nss/hmac.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssHmacSize
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/src/nss/hmac.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssHmac)
    structs:
    - fields:
      - name: digestType
        type: CK_MECHANISM_TYPE
      - name: '*        digestCtx'
        type: PK11Context
      - name: dgst[XMLSEC_TRANSFORM_HMAC_MAX_OUTPUT_SIZE]
        type: xmlSecByte
      - name: dgstSizeInBits
        type: xmlSecSize
      item_type: struct
      name: _xmlSecNssHmacCtx
      pos:
        line_end: 55
        line_start: 50
        source_file: /src/xmlsec/src/nss/hmac.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssHmacCtx
      pos:
        line_end: 49
        line_start: 49
        source_file: /src/xmlsec/src/nss/hmac.c
      type: _xmlSecNssHmacCtx
    union: []
- function_names:
  - xmlSecNssSymKeyDataCheckId
  - xmlSecNssSymKeyDataInitialize
  - xmlSecNssSymKeyDataDuplicate
  - xmlSecNssSymKeyDataFinalize
  - xmlSecNssSymKeyDataXmlRead
  - xmlSecNssSymKeyDataXmlWrite
  - xmlSecNssSymKeyDataBinRead
  - xmlSecNssSymKeyDataBinWrite
  - xmlSecNssSymKeyDataGenerate
  - xmlSecNssSymKeyDataGetType
  - xmlSecNssSymKeyDataGetSize
  - xmlSecNssSymKeyDataDebugDump
  - xmlSecNssSymKeyDataDebugXmlDump
  - xmlSecNssSymKeyDataKlassCheck
  - xmlSecNssKeyDataAesGetKlass
  - xmlSecNssKeyDataAesSet
  - xmlSecNssKeyDataDesGetKlass
  - xmlSecNssKeyDataDesSet
  - xmlSecNssKeyDataHmacGetKlass
  - xmlSecNssKeyDataHmacSet
  - xmlSecNssKeyDataPbkdf2GetKlass
  - xmlSecNssKeyDataPbkdf2Set
  source_file: /src/xmlsec/src/nss/symkeys.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecNssSignatureCheckId
  - xmlSecNssSignatureInitialize
  - xmlSecNssSignatureFinalize
  - xmlSecNssSignatureCreatePssParams
  - xmlSecNssSignatureCreatePssAlgId
  - xmlSecNssSignatureSetKey
  - xmlSecNssSignatureSetKeyReq
  - xmlSecNssSignatureAlgorithmEncoded
  - xmlSecNssSignatureVerify
  - xmlSecNssSignatureDecode
  - xmlSecNssSignatureExecute
  - xmlSecNssTransformDsaSha1GetKlass
  - xmlSecNssTransformDsaSha256GetKlass
  - xmlSecNssTransformEcdsaSha1GetKlass
  - xmlSecNssTransformEcdsaSha224GetKlass
  - xmlSecNssTransformEcdsaSha256GetKlass
  - xmlSecNssTransformEcdsaSha384GetKlass
  - xmlSecNssTransformEcdsaSha512GetKlass
  - xmlSecNssTransformRsaMd5GetKlass
  - xmlSecNssTransformRsaSha1GetKlass
  - xmlSecNssTransformRsaSha224GetKlass
  - xmlSecNssTransformRsaSha256GetKlass
  - xmlSecNssTransformRsaSha384GetKlass
  - xmlSecNssTransformRsaSha512GetKlass
  - xmlSecNssTransformRsaPssSha1GetKlass
  - xmlSecNssTransformRsaPssSha224GetKlass
  - xmlSecNssTransformRsaPssSha256GetKlass
  - xmlSecNssTransformRsaPssSha384GetKlass
  - xmlSecNssTransformRsaPssSha512GetKlass
  source_file: /src/xmlsec/src/nss/signatures.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssSignatureSize
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/src/nss/signatures.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssSignature)
    structs:
    - fields:
      - name: keyId
        type: xmlSecKeyDataId
      - name: alg
        type: SECOidTag
      - name: algId
        type: SECAlgorithmID
      - name: '*        arena'
        type: PLArenaPool
      - name: pssHashAlgTag
        type: SECOidTag
      - name: pssMaskAlgTag
        type: SECOidTag
      - name: pssSaltLength
        type: unsigned int
      - name: u
        type: "union {\n        struct {\n            SGNContext         *sigctx;\n
          \           SECKEYPrivateKey   *privkey;\n        } sig;\n\n        struct
          {\n            VFYContext         *vfyctx;\n            SECKEYPublicKey
          \   *pubkey;\n        } vfy;\n    }"
      item_type: struct
      name: _xmlSecNssSignatureCtx
      pos:
        line_end: 64
        line_start: 42
        source_file: /src/xmlsec/src/nss/signatures.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssSignatureCtx
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/src/nss/signatures.c
      type: _xmlSecNssSignatureCtx
    union: []
- function_names:
  - xmlSecNssDigestCheckId
  - xmlSecNssDigestInitialize
  - xmlSecNssDigestFinalize
  - xmlSecNssDigestVerify
  - xmlSecNssDigestExecute
  - xmlSecNssTransformMd5GetKlass
  - xmlSecNssTransformSha1GetKlass
  - xmlSecNssTransformSha224GetKlass
  - xmlSecNssTransformSha256GetKlass
  - xmlSecNssTransformSha384GetKlass
  - xmlSecNssTransformSha512GetKlass
  source_file: /src/xmlsec/src/nss/digests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssDigestSize
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/xmlsec/src/nss/digests.c
      type_or_value: XMLSEC_TRANSFORM_SIZE(NssDigest)
    structs:
    - fields:
      - name: '*         digest'
        type: SECOidData
      - name: '*        digestCtx'
        type: PK11Context
      - name: dgst[XMLSEC_NSS_MAX_DIGEST_SIZE]
        type: xmlSecByte
      - name: dgstSize
        type: xmlSecSize
      item_type: struct
      name: _xmlSecNssDigestCtx
      pos:
        line_end: 46
        line_start: 41
        source_file: /src/xmlsec/src/nss/digests.c
    typedefs:
    - item_type: typedef
      name: xmlSecNssDigestCtx
      pos:
        line_end: 40
        line_start: 40
        source_file: /src/xmlsec/src/nss/digests.c
      type: _xmlSecNssDigestCtx
    union: []
- function_names:
  - xmlSecNssKeysStoreGetKlass
  - xmlSecNssKeysStoreAdoptKey
  - xmlSecNssKeysStoreLoad
  - xmlSecNssKeysStoreSave
  - xmlSecNssKeysStoreInitialize
  - xmlSecNssKeysStoreFinalize
  - xmlSecNssKeysStoreFindKey
  - xmlSecNssKeysStoreFindKeyFromX509Data
  source_file: /src/xmlsec/src/nss/keysstore.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKeysStoreSize
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/xmlsec/src/nss/keysstore.c
      type_or_value: XMLSEC_KEY_STORE_SIZE(NssKeysStore)
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecNssCryptoCheckAlgorithm
  - xmlSecNssCryptoCheckMechanism
  - xmlSecCryptoGetFunctions_nss
  - xmlSecNssUpdateAvailableCryptoTransforms
  - xmlSecNssInit
  - xmlSecNssShutdown
  - xmlSecNssKeysMngrInit
  - xmlSecNssGetInternalKeySlot
  - xmlSecNssGenerateRandom
  - xmlSecNssErrorsDefaultCallback
  source_file: /src/xmlsec/src/nss/crypto.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/apps/cmdline.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecAppCmdLineParamFlagNone
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/xmlsec/apps/cmdline.h
      type_or_value: '0x0000'
    - item_type: preproc_def
      name: xmlSecAppCmdLineParamFlagParamNameValue
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/xmlsec/apps/cmdline.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecAppCmdLineParamFlagMultipleValues
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/apps/cmdline.h
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: XMLSEC_STDOUT_FILENAME
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/apps/cmdline.h
      type_or_value: '"-"'
    structs:
    - fields:
      - name: topics
        type: xmlSecAppCmdLineParamTopic
      - name: '*                 fullName'
        type: char
      - name: '*                 shortName'
        type: char
      - name: '*                 help'
        type: char
      - name: type
        type: xmlSecAppCmdLineParamType
      - name: flags
        type: int
      - name: value
        type: xmlSecAppCmdLineValuePtr
      item_type: struct
      name: _xmlSecAppCmdLineParam
      pos:
        line_end: 47
        line_start: 39
        source_file: /src/xmlsec/apps/cmdline.h
    - fields:
      - name: param
        type: xmlSecAppCmdLineParamPtr
      - name: pos
        type: int
      - name: '*                 paramNameValue'
        type: char
      - name: '*                 strValue'
        type: char
      - name: '*                 strListValue'
        type: char
      - name: intValue
        type: int
      - name: timeValue
        type: time_t
      - name: next
        type: xmlSecAppCmdLineValuePtr
      item_type: struct
      name: _xmlSecAppCmdLineValue
      pos:
        line_end: 76
        line_start: 67
        source_file: /src/xmlsec/apps/cmdline.h
    typedefs:
    - item_type: typedef
      name: xmlSecAppCmdLineParam
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/xmlsec/apps/cmdline.h
      type: _xmlSecAppCmdLineParam
    - item_type: typedef
      name: xmlSecAppCmdLineValue
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/xmlsec/apps/cmdline.h
      type: _xmlSecAppCmdLineValue
    - item_type: typedef
      name: xmlSecAppCmdLineParamTopic
      pos:
        line_end: 22
        line_start: 22
        source_file: /src/xmlsec/apps/cmdline.h
      type: unsigned int
    union: []
- function_names: []
  source_file: /src/xmlsec/apps/crypto.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - UNREFERENCED_PARAMETER
  - xmlSecAppCryptoInit
  - xmlSecAppCryptoShutdown
  - xmlSecAppCryptoSimpleKeysMngrInit
  - xmlSecAppCryptoSimpleKeysMngrLoad
  - xmlSecAppCryptoSimpleKeysMngrSave
  - xmlSecAppCryptoSimpleKeysMngrCertLoad
  - xmlSecAppCryptoSimpleKeysMngrCrlLoad
  - xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad
  - xmlSecAppCryptoSimpleKeysMngrEngineKeyAndCertsLoad
  - xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad
  - xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad
  - xmlSecAppCryptoSimpleKeysMngrKeyGenerate
  - xmlSecAppCryptoKeyGenerate
  source_file: /src/xmlsec/apps/crypto.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/xmlsec/apps/crypto.c
      type_or_value: _snprintf
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecAppPrintUsage
  - main
  - xmlSecAppExecute
  - xmlSecAppSignFile
  - xmlSecAppVerifyFile
  - xmlSecAppSignTmpl
  - xmlSecAppPrepareDSigCtx
  - xmlSecAppPrintDSigCtx
  - xmlSecAppEncryptFile
  - xmlSecAppDecryptFile
  - xmlSecAppEncryptTmpl
  - xmlSecAppPrepareEncCtx
  - xmlSecAppPrintEncCtx
  - xmlSecAppListKeyData
  - xmlSecAppCheckKeyData
  - xmlSecAppListTransforms
  - xmlSecAppCheckTransform
  - xmlSecAppPrepareKeyInfoCtx
  - xmlSecAppLoadKeys
  - xmlSecAppInputMatchCallback
  - xmlSecAppInputOpenCallback
  - xmlSecAppInputReadCallback
  - xmlSecAppInputCloseCallback
  - xmlSecAppInit
  - xmlSecAppShutdown
  - xmlSecAppXmlDataCreate
  - xmlSecAppXmlDataDestroy
  - xmlSecAppParseCommand
  - xmlSecAppPrintHelp
  - xmlSecAppGetUriType
  - xmlSecAppOpenFile
  - xmlSecAppGetOutputFilename
  - xmlSecAppWriteResult
  - xmlSecAppAddIDAttr
  source_file: /src/xmlsec/apps/xmlsec.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: _snprintf
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicGeneral
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicDSigCommon
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicDSigSign
      pos:
        line_end: 145
        line_start: 144
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0004'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicDSigVerify
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0008'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicEncCommon
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0010'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicEncEncrypt
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0020'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicEncDecrypt
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x0040'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicKeysMngr
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x1000'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicX509Certs
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x2000'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicVersion
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x4000'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicCryptoConfig
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0x8000'
    - item_type: preproc_def
      name: xmlSecAppCmdLineTopicAll
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '0xFFFF'
    - item_type: preproc_def
      name: XMLSEC_OUTPUT_TMPL_PARAM
      pos:
        line_end: 3667
        line_start: 3666
        source_file: /src/xmlsec/apps/xmlsec.c
      type_or_value: '"{inputfile}"'
    structs:
    - fields:
      - name: doc
        type: xmlDocPtr
      - name: dtd
        type: xmlDtdPtr
      - name: startNode
        type: xmlNodePtr
      item_type: struct
      name: _xmlSecAppXmlData
      pos:
        line_end: 1153
        line_start: 1149
        source_file: /src/xmlsec/apps/xmlsec.c
    typedefs:
    - item_type: typedef
      name: xmlSecAppXmlData
      pos:
        line_end: 1148
        line_start: 1147
        source_file: /src/xmlsec/apps/xmlsec.c
      type: _xmlSecAppXmlData
    union: []
- function_names:
  - xmlSecAppCmdLineParamIsSet
  - xmlSecAppCmdLineParamGetString
  - xmlSecAppCmdLineParamGetStringList
  - xmlSecAppCmdLineParamGetInt
  - xmlSecAppCmdLineParamGetTime
  - xmlSecAppCmdLineParamsListParse
  - xmlSecAppCmdLineParamsListClean
  - xmlSecAppCmdLineParamsListPrint
  - xmlSecAppCmdLineValueCreate
  - xmlSecAppCmdLineValueDestroy
  - xmlSecAppCmdLineMatchParam
  - xmlSecAppCmdLineParamsListFind
  - xmlSecAppCmdLineParamRead
  - xmlSecAppGetGmtTime
  - xmlSecAppCmdLineTimeParamRead
  source_file: /src/xmlsec/apps/cmdline.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: snprintf
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/xmlsec/apps/cmdline.c
      type_or_value: _snprintf
    - item_type: preproc_def
      name: XMLSEC_SCANF
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/apps/cmdline.c
      type_or_value: sscanf_s
    - item_type: preproc_def
      name: XMLSEC_MKGMTIME
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/apps/cmdline.c
      type_or_value: _mkgmtime
    - item_type: preproc_def
      name: XMLSEC_SCANF
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/apps/cmdline.c
      type_or_value: sscanf
    - item_type: preproc_def
      name: XMLSEC_MKGMTIME
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/apps/cmdline.c
      type_or_value: xmlSecAppGetGmtTime
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - testGroupStart
  - testGroupFinished
  - testStart
  - testFinishedSuccess
  - testFinishedFailure
  source_file: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_xmlSecX509EscapedStringRead_success
  - test_xmlSecX509EscapedStringRead_failure
  - test_xmlSecX509EscapedStringRead
  - test_xmlSecX509AttrValueStringRead_success
  - test_xmlSecX509AttrValueStringRead_failure
  - test_xmlSecX509AttrValueStringRead
  - test_xmlSecX509NameReadCallback
  - test_xmlSecX509NameRead_success
  - test_xmlSecX509NameRead_failure
  - test_xmlSecX509NameRead
  source_file: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TEST_X509_NAME_MAX_COUNT
      pos:
        line_end: 265
        line_start: 264
        source_file: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
      type_or_value: '16'
    structs:
    - fields:
      - name: names[256][TEST_X509_NAME_MAX_COUNT]
        type: xmlChar
      - name: values[256][TEST_X509_NAME_MAX_COUNT]
        type: xmlChar
      - name: valueSizes[TEST_X509_NAME_MAX_COUNT]
        type: xmlSecSize
      - name: types[TEST_X509_NAME_MAX_COUNT]
        type: int
      - name: pos
        type: int
      item_type: struct
      name: test_X509Name
      pos:
        line_end: 272
        line_start: 266
        source_file: /src/xmlsec/apps/unit_tests/x509_unit_tests.c
    typedefs: []
    union: []
- function_names:
  - test_base64_success
  - test_base64_failure
  - test_base64
  source_file: /src/xmlsec/apps/unit_tests/base64_unit_tests.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_PRIVATE
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/xmlsec/apps/unit_tests/xmlsec_unit_tests.h
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecPtrListGetName
  - xmlSecPtrListIsValid
  - xmlSecPtrListCheckId
  - xmlSecPtrListKlassGetName
  source_file: /src/xmlsec/include/xmlsec/list.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecPtrListIdUnknown
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/list.h
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: xmlSecStringListId
      pos:
        line_end: 190
        line_start: 188
        source_file: /src/xmlsec/include/xmlsec/list.h
      type_or_value: xmlSecStringListGetKlass()
    structs:
    - fields:
      - name: id
        type: xmlSecPtrListId
      - name: '*                  data'
        type: xmlSecPtr
      - name: use
        type: xmlSecSize
      - name: max
        type: xmlSecSize
      - name: allocMode
        type: xmlSecAllocMode
      item_type: struct
      name: _xmlSecPtrList
      pos:
        line_end: 43
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/list.h
    - fields:
      - name: '*                      name'
        type: xmlChar
      - name: duplicateItem
        type: xmlSecPtrDuplicateItemMethod
      - name: destroyItem
        type: xmlSecPtrDestroyItemMethod
      - name: debugDumpItem
        type: xmlSecPtrDebugDumpItemMethod
      - name: debugXmlDumpItem
        type: xmlSecPtrDebugDumpItemMethod
      item_type: struct
      name: _xmlSecPtrListKlass
      pos:
        line_end: 166
        line_start: 160
        source_file: /src/xmlsec/include/xmlsec/list.h
    typedefs:
    - item_type: typedef
      name: xmlSecPtrListKlass
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/xmlsec/include/xmlsec/list.h
      type: _xmlSecPtrListKlass
    - item_type: typedef
      name: xmlSecPtrList
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/include/xmlsec/list.h
      type: _xmlSecPtrList
    - item_type: typedef
      name: (*xmlSecPtrDuplicateItemMethod) (xmlSecPtr ptr)
      pos:
        line_end: 130
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/list.h
      type: xmlSecPtr
    - item_type: typedef
      name: (*xmlSecPtrDestroyItemMethod)   (xmlSecPtr ptr)
      pos:
        line_end: 138
        line_start: 138
        source_file: /src/xmlsec/include/xmlsec/list.h
      type: void
    - item_type: typedef
      name: "(*xmlSecPtrDebugDumpItemMethod) (xmlSecPtr ptr,\n                                                                 FILE*
        output)"
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/xmlsec/include/xmlsec/list.h
      type: void
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/bn.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecBn
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/include/xmlsec/bn.h
      type: xmlSecBuffer
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/dl.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecCryptoDLFunctions
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/dl.h
      type: _xmlSecCryptoDLFunctions
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/templates.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/strings.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecKeyStoreGetName
  - xmlSecKeyStoreIsValid
  - xmlSecKeyStoreCheckId
  - xmlSecKeyStoreCheckSize
  - xmlSecKeyStoreKlassGetName
  source_file: /src/xmlsec/include/xmlsec/keysmngr.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecKeyStoreIdUnknown
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type_or_value: ((xmlSecKeyDataStoreId)NULL)
    - item_type: preproc_def
      name: xmlSecSimpleKeysStoreId
      pos:
        line_end: 289
        line_start: 288
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type_or_value: xmlSecSimpleKeysStoreGetKlass()
    structs:
    - fields:
      - name: keysStore
        type: xmlSecKeyStorePtr
      - name: storesList
        type: xmlSecPtrList
      - name: getKey
        type: xmlSecGetKeyCallback
      item_type: struct
      name: _xmlSecKeysMngr
      pos:
        line_end: 82
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
    - fields:
      - name: id
        type: xmlSecKeyStoreId
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyStore
      pos:
        line_end: 108
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
    - fields:
      - name: klassSize
        type: xmlSecSize
      - name: objSize
        type: xmlSecSize
      - name: '*                      name'
        type: xmlChar
      - name: initialize
        type: xmlSecKeyStoreInitializeMethod
      - name: finalize
        type: xmlSecKeyStoreFinalizeMethod
      - name: findKey
        type: xmlSecKeyStoreFindKeyMethod
      - name: findKeyFromX509Data
        type: xmlSecKeyStoreFindKeyFromX509DataMethod
      - name: '*                               reserved0'
        type: void
      item_type: struct
      name: _xmlSecKeyStoreKlass
      pos:
        line_end: 251
        line_start: 234
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
    typedefs:
    - item_type: typedef
      name: xmlSecKeyKlass
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: _xmlSecKeyKlass
    - item_type: typedef
      name: xmlSecKeyStoreKlass
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: _xmlSecKeyStoreKlass
    - item_type: typedef
      name: xmlSecKeyX509DataValue
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: _xmlSecKeyX509DataValue
    - item_type: typedef
      name: "(*xmlSecGetKeyCallback)         (xmlNodePtr keyInfoNode,\n                                                         xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: (*xmlSecKeyStoreInitializeMethod)       (xmlSecKeyStorePtr store)
      pos:
        line_end: 180
        line_start: 180
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: int
    - item_type: typedef
      name: (*xmlSecKeyStoreFinalizeMethod)         (xmlSecKeyStorePtr store)
      pos:
        line_end: 188
        line_start: 188
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: void
    - item_type: typedef
      name: "(*xmlSecKeyStoreFindKeyMethod)  (xmlSecKeyStorePtr store,\n                                                                 const
        xmlChar* name,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 203
        line_start: 201
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecKeyStoreFindKeyFromX509DataMethod)(xmlSecKeyStorePtr store,\n
        \                                                                xmlSecKeyX509DataValuePtr
        x509Data,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 219
        line_start: 217
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecSimpleKeysStoreAdoptKeyFunc)     (xmlSecKeyStorePtr store,\n
        \                                                                        xmlSecKeyPtr
        key)"
      pos:
        line_end: 280
        line_start: 279
        source_file: /src/xmlsec/include/xmlsec/keysmngr.h
      type: int
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/parser.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecTransformXmlParserId
      pos:
        line_end: 46
        line_start: 44
        source_file: /src/xmlsec/include/xmlsec/parser.h
      type_or_value: xmlSecTransformXmlParserGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/xmlenc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_ENC_RETURN_REPLACED_NODE
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/xmlenc.h
      type_or_value: '0x00000001'
    structs:
    - fields:
      - name: '*                       userData'
        type: void
      - name: flags
        type: unsigned int
      - name: flags2
        type: unsigned int
      - name: mode
        type: xmlEncCtxMode
      - name: keyInfoReadCtx
        type: xmlSecKeyInfoCtx
      - name: keyInfoWriteCtx
        type: xmlSecKeyInfoCtx
      - name: transformCtx
        type: xmlSecTransformCtx
      - name: defEncMethodId
        type: xmlSecTransformId
      - name: encKey
        type: xmlSecKeyPtr
      - name: operation
        type: xmlSecTransformOperation
      - name: result
        type: xmlSecBufferPtr
      - name: resultBase64Encoded
        type: int
      - name: resultReplaced
        type: int
      - name: encMethod
        type: xmlSecTransformPtr
      - name: failureReason
        type: xmlSecEncFailureReason
      - name: '*                    id'
        type: xmlChar
      - name: '*                    type'
        type: xmlChar
      - name: '*                    mimeType'
        type: xmlChar
      - name: '*                    encoding'
        type: xmlChar
      - name: '*                    recipient'
        type: xmlChar
      - name: '*                    carriedKeyName'
        type: xmlChar
      - name: encDataNode
        type: xmlNodePtr
      - name: encMethodNode
        type: xmlNodePtr
      - name: keyInfoNode
        type: xmlNodePtr
      - name: cipherValueNode
        type: xmlNodePtr
      - name: replacedNodeList
        type: xmlNodePtr
      - name: '*                       reserved1'
        type: void
      item_type: struct
      name: _xmlSecEncCtx
      pos:
        line_end: 143
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/xmlenc.h
    typedefs: []
    union: []
- function_names:
  - xmlSecNodeGetName
  - xmlSecIsHex
  - xmlSecGetHex
  - xmlSecFromHex
  - xmlSecFromHex2
  - xmlSecToHex
  source_file: /src/xmlsec/include/xmlsec/xmltree.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*      qnameHref'
        type: xmlChar
      - name: '*      qnameLocalPart'
        type: xmlChar
      - name: intValue
        type: int
      item_type: struct
      name: _xmlSecQName2IntegerInfo
      pos:
        line_end: 196
        line_start: 192
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
    - fields:
      - name: '*      qnameHref'
        type: xmlChar
      - name: '*      qnameLocalPart'
        type: xmlChar
      - name: mask
        type: xmlSecBitMask
      item_type: struct
      name: _xmlSecQName2BitMaskInfo
      pos:
        line_end: 273
        line_start: 269
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
    typedefs:
    - item_type: typedef
      name: xmlSecQName2IntegerInfo
      pos:
        line_end: 191
        line_start: 191
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
      type: _xmlSecQName2IntegerInfo
    - item_type: typedef
      name: '*         xmlSecQName2IntegerInfoConstPtr'
      pos:
        line_end: 203
        line_start: 203
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
      type: xmlSecQName2IntegerInfo
    - item_type: typedef
      name: xmlSecBitMask
      pos:
        line_end: 257
        line_start: 257
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
      type: unsigned int
    - item_type: typedef
      name: xmlSecQName2BitMaskInfo
      pos:
        line_end: 267
        line_start: 267
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
      type: _xmlSecQName2BitMaskInfo
    - item_type: typedef
      name: '*          xmlSecQName2BitMaskInfoConstPtr'
      pos:
        line_end: 280
        line_start: 280
        source_file: /src/xmlsec/include/xmlsec/xmltree.h
      type: xmlSecQName2BitMaskInfo
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/crypto.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecTransformGetName
  - xmlSecTransformIsValid
  - xmlSecTransformCheckId
  - xmlSecTransformCheckSize
  - xmlSecTransformKlassGetName
  source_file: /src/xmlsec/include/xmlsec/transforms.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecTransformUriTypeNone
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0000'
    - item_type: preproc_def
      name: xmlSecTransformUriTypeEmpty
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecTransformUriTypeSameDocument
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: xmlSecTransformUriTypeLocal
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0004'
    - item_type: preproc_def
      name: xmlSecTransformUriTypeRemote
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0008'
    - item_type: preproc_def
      name: xmlSecTransformUriTypeAny
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0xFFFF'
    - item_type: preproc_def
      name: xmlSecTransformDataTypeUnknown
      pos:
        line_end: 177
        line_start: 176
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0000'
    - item_type: preproc_def
      name: xmlSecTransformDataTypeBin
      pos:
        line_end: 184
        line_start: 183
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecTransformDataTypeXml
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: xmlSecTransformUsageUnknown
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0000'
    - item_type: preproc_def
      name: xmlSecTransformUsageDSigTransform
      pos:
        line_end: 217
        line_start: 216
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecTransformUsageC14NMethod
      pos:
        line_end: 224
        line_start: 223
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: xmlSecTransformUsageDigestMethod
      pos:
        line_end: 231
        line_start: 230
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0004'
    - item_type: preproc_def
      name: xmlSecTransformUsageSignatureMethod
      pos:
        line_end: 238
        line_start: 237
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0008'
    - item_type: preproc_def
      name: xmlSecTransformUsageEncryptionMethod
      pos:
        line_end: 245
        line_start: 244
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0010'
    - item_type: preproc_def
      name: xmlSecTransformUsageKeyDerivationMethod
      pos:
        line_end: 252
        line_start: 251
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0020'
    - item_type: preproc_def
      name: xmlSecTransformUsageAgreementMethod
      pos:
        line_end: 259
        line_start: 258
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x0040'
    - item_type: preproc_def
      name: xmlSecTransformUsageAny
      pos:
        line_end: 266
        line_start: 265
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0xFFFF'
    - item_type: preproc_def
      name: XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK
      pos:
        line_end: 294
        line_start: 293
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: XMLSEC_TRANSFORM_FLAGS_USER_SPECIFIED
      pos:
        line_end: 403
        line_start: 402
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: xmlSecTransformIdListId
      pos:
        line_end: 862
        line_start: 861
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformIdListGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformIdUnknown
      pos:
        line_end: 888
        line_start: 887
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: ((xmlSecTransformId)NULL)
    - item_type: preproc_def
      name: xmlSecTransformBase64Id
      pos:
        line_end: 896
        line_start: 894
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformBase64GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformInclC14NId
      pos:
        line_end: 906
        line_start: 904
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformInclC14NGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformInclC14NWithCommentsId
      pos:
        line_end: 915
        line_start: 913
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformInclC14NWithCommentsGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformInclC14N11Id
      pos:
        line_end: 924
        line_start: 922
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformInclC14N11GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformInclC14N11WithCommentsId
      pos:
        line_end: 933
        line_start: 931
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformInclC14N11WithCommentsGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformExclC14NId
      pos:
        line_end: 942
        line_start: 940
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformExclC14NGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformExclC14NWithCommentsId
      pos:
        line_end: 951
        line_start: 949
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformExclC14NWithCommentsGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEnvelopedId
      pos:
        line_end: 960
        line_start: 958
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformEnvelopedGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformXPathId
      pos:
        line_end: 969
        line_start: 967
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformXPathGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformXPath2Id
      pos:
        line_end: 978
        line_start: 976
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformXPath2GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformXPointerId
      pos:
        line_end: 987
        line_start: 985
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformXPointerGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRelationshipId
      pos:
        line_end: 999
        line_start: 997
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformRelationshipGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformXsltId
      pos:
        line_end: 1010
        line_start: 1008
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformXsltGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRemoveXmlTagsC14NId
      pos:
        line_end: 1021
        line_start: 1019
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformRemoveXmlTagsC14NGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformVisa3DHackId
      pos:
        line_end: 1033
        line_start: 1031
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type_or_value: xmlSecTransformVisa3DHackGetKlass()
    structs:
    - fields:
      - name: '*                                       userData'
        type: void
      - name: flags
        type: unsigned int
      - name: flags2
        type: unsigned int
      - name: binaryChunkSize
        type: xmlSecSize
      - name: enabledUris
        type: xmlSecTransformUriType
      - name: enabledTransforms
        type: xmlSecPtrList
      - name: preExecCallback
        type: xmlSecTransformCtxPreExecuteCallback
      - name: parentKeyInfoCtx
        type: xmlSecKeyInfoCtxPtr
      - name: result
        type: xmlSecBufferPtr
      - name: status
        type: xmlSecTransformStatus
      - name: '*                                    uri'
        type: xmlChar
      - name: '*                                    xptrExpr'
        type: xmlChar
      - name: first
        type: xmlSecTransformPtr
      - name: last
        type: xmlSecTransformPtr
      - name: '*                                       reserved0'
        type: void
      - name: '*                                       reserved1'
        type: void
      item_type: struct
      name: _xmlSecTransformCtx
      pos:
        line_end: 349
        line_start: 325
        source_file: /src/xmlsec/include/xmlsec/transforms.h
    - fields:
      - name: id
        type: xmlSecTransformId
      - name: operation
        type: xmlSecTransformOperation
      - name: status
        type: xmlSecTransformStatus
      - name: hereNode
        type: xmlNodePtr
      - name: next
        type: xmlSecTransformPtr
      - name: prev
        type: xmlSecTransformPtr
      - name: inBuf
        type: xmlSecBuffer
      - name: outBuf
        type: xmlSecBuffer
      - name: inNodes
        type: xmlSecNodeSetPtr
      - name: outNodes
        type: xmlSecNodeSetPtr
      - name: expectedOutputSize
        type: xmlSecSize
      - name: flags
        type: uintptr_t
      - name: '*                               reserved0'
        type: void
      item_type: struct
      name: _xmlSecTransform
      pos:
        line_end: 454
        line_start: 428
        source_file: /src/xmlsec/include/xmlsec/transforms.h
    - fields:
      - name: klassSize
        type: xmlSecSize
      - name: objSize
        type: xmlSecSize
      - name: '*                      name'
        type: xmlChar
      - name: '*                      href'
        type: xmlChar
      - name: usage
        type: xmlSecTransformUsage
      - name: initialize
        type: xmlSecTransformInitializeMethod
      - name: finalize
        type: xmlSecTransformFinalizeMethod
      - name: readNode
        type: xmlSecTransformNodeReadMethod
      - name: writeNode
        type: xmlSecTransformNodeWriteMethod
      - name: setKeyReq
        type: xmlSecTransformSetKeyRequirementsMethod
      - name: setKey
        type: xmlSecTransformSetKeyMethod
      - name: verify
        type: xmlSecTransformVerifyMethod
      - name: getDataType
        type: xmlSecTransformGetDataTypeMethod
      - name: pushBin
        type: xmlSecTransformPushBinMethod
      - name: popBin
        type: xmlSecTransformPopBinMethod
      - name: pushXml
        type: xmlSecTransformPushXmlMethod
      - name: popXml
        type: xmlSecTransformPopXmlMethod
      - name: execute
        type: xmlSecTransformExecuteMethod
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecTransformKlass
      pos:
        line_end: 840
        line_start: 809
        source_file: /src/xmlsec/include/xmlsec/transforms.h
    typedefs:
    - item_type: typedef
      name: xmlSecTransformKlass
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: _xmlSecTransformKlass
    - item_type: typedef
      name: xmlSecTransformUriType
      pos:
        line_end: 113
        line_start: 113
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: unsigned int
    - item_type: typedef
      name: xmlSecTransformDataType
      pos:
        line_end: 169
        line_start: 169
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: xmlSecByte
    - item_type: typedef
      name: xmlSecTransformUsage
      pos:
        line_end: 202
        line_start: 202
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: unsigned int
    - item_type: typedef
      name: (*xmlSecTransformCtxPreExecuteCallback)         (xmlSecTransformCtxPtr
        transformCtx)
      pos:
        line_end: 284
        line_start: 284
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: (*xmlSecTransformInitializeMethod)      (xmlSecTransformPtr transform)
      pos:
        line_end: 607
        line_start: 607
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: (*xmlSecTransformFinalizeMethod)        (xmlSecTransformPtr transform)
      pos:
        line_end: 615
        line_start: 615
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: void
    - item_type: typedef
      name: "(*xmlSecTransformGetDataTypeMethod)(xmlSecTransformPtr transform,\n                                                                 xmlSecTransformMode
        mode,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 630
        line_start: 628
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: xmlSecTransformDataType
    - item_type: typedef
      name: "(*xmlSecTransformNodeReadMethod)        (xmlSecTransformPtr transform,\n
        \                                                                xmlNodePtr
        node,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 645
        line_start: 643
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformNodeWriteMethod)       (xmlSecTransformPtr transform,\n
        \                                                                xmlNodePtr
        node,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 659
        line_start: 657
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformSetKeyRequirementsMethod)(xmlSecTransformPtr transform,\n
        \                                                                xmlSecKeyReqPtr
        keyReq)"
      pos:
        line_end: 671
        line_start: 670
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformSetKeyMethod)          (xmlSecTransformPtr transform,\n
        \                                                                xmlSecKeyPtr
        key)"
      pos:
        line_end: 683
        line_start: 682
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformVerifyMethod)          (xmlSecTransformPtr transform,\n
        \                                                                const xmlSecByte*
        data,\n                                                                 xmlSecSize
        dataSize,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 702
        line_start: 699
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformPushBinMethod)         (xmlSecTransformPtr transform,\n
        \                                                                const xmlSecByte*
        data,\n                                                                 xmlSecSize
        dataSize,\n                                                                 int
        final,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 721
        line_start: 717
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformPopBinMethod)          (xmlSecTransformPtr transform,\n
        \                                                                xmlSecByte*
        data,\n                                                                 xmlSecSize
        maxDataSize,\n                                                                 xmlSecSize*
        dataSize,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 740
        line_start: 736
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformPushXmlMethod)         (xmlSecTransformPtr transform,\n
        \                                                                xmlSecNodeSetPtr
        nodes,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 754
        line_start: 752
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformPopXmlMethod)          (xmlSecTransformPtr transform,\n
        \                                                                xmlSecNodeSetPtr*
        nodes,\n                                                                 xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 768
        line_start: 766
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    - item_type: typedef
      name: "(*xmlSecTransformExecuteMethod)         (xmlSecTransformPtr transform,\n
        \                                                                int last,\n
        \                                                                xmlSecTransformCtxPtr
        transformCtx)"
      pos:
        line_end: 781
        line_start: 779
        source_file: /src/xmlsec/include/xmlsec/transforms.h
      type: int
    union: []
- function_names:
  - xmlSecKeyDataGetName
  - xmlSecKeyDataIsValid
  - xmlSecKeyDataCheckId
  - xmlSecKeyDataCheckUsage
  - xmlSecKeyDataCheckSize
  - xmlSecKeyDataKlassGetName
  - xmlSecKeyDataStoreGetName
  - xmlSecKeyDataStoreIsValid
  - xmlSecKeyDataStoreCheckId
  - xmlSecKeyDataStoreCheckSize
  - xmlSecKeyDataStoreKlassGetName
  source_file: /src/xmlsec/include/xmlsec/keysdata.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecKeyDataUsageUnknown
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00000'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyInfoNodeRead
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00001'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyInfoNodeWrite
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00002'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyValueNodeRead
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00004'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyValueNodeWrite
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00008'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageRetrievalMethodNodeXml
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00010'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageRetrievalMethodNodeBin
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00020'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageReadFromFile
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x00040'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageAny
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0xFFFFF'
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyInfoNode
      pos:
        line_end: 121
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: (xmlSecKeyDataUsageKeyInfoNodeRead | xmlSecKeyDataUsageKeyInfoNodeWrite)
    - item_type: preproc_def
      name: xmlSecKeyDataUsageKeyValueNode
      pos:
        line_end: 129
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: (xmlSecKeyDataUsageKeyValueNodeRead | xmlSecKeyDataUsageKeyValueNodeWrite)
    - item_type: preproc_def
      name: xmlSecKeyDataUsageRetrievalMethodNode
      pos:
        line_end: 138
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: (xmlSecKeyDataUsageRetrievalMethodNodeXml | xmlSecKeyDataUsageRetrievalMethodNodeBin)
    - item_type: preproc_def
      name: xmlSecKeyDataTypeUnknown
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0000'
    - item_type: preproc_def
      name: xmlSecKeyDataTypeNone
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: xmlSecKeyDataTypeUnknown
    - item_type: preproc_def
      name: xmlSecKeyDataTypePublic
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: xmlSecKeyDataTypePrivate
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: xmlSecKeyDataTypeSymmetric
      pos:
        line_end: 185
        line_start: 184
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0004'
    - item_type: preproc_def
      name: xmlSecKeyDataTypeSession
      pos:
        line_end: 192
        line_start: 191
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0008'
    - item_type: preproc_def
      name: xmlSecKeyDataTypePermanent
      pos:
        line_end: 199
        line_start: 198
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0010'
    - item_type: preproc_def
      name: xmlSecKeyDataTypeTrusted
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0x0100'
    - item_type: preproc_def
      name: xmlSecKeyDataTypeAny
      pos:
        line_end: 213
        line_start: 212
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: '0xFFFF'
    - item_type: preproc_def
      name: xmlSecKeyDataIdUnknown
      pos:
        line_end: 384
        line_start: 383
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: ((xmlSecKeyDataId)NULL)
    - item_type: preproc_def
      name: xmlSecKeyDataListId
      pos:
        line_end: 623
        line_start: 622
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: xmlSecKeyDataListGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataIdListId
      pos:
        line_end: 637
        line_start: 636
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: xmlSecKeyDataIdListGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataStoreIdUnknown
      pos:
        line_end: 735
        line_start: 734
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: xmlSecKeyDataStorePtrListId
      pos:
        line_end: 802
        line_start: 801
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type_or_value: xmlSecKeyDataStorePtrListGetKlass()
    structs:
    - fields:
      - name: id
        type: xmlSecKeyDataId
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyData
      pos:
        line_end: 279
        line_start: 275
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
    - fields:
      - name: klassSize
        type: xmlSecSize
      - name: objSize
        type: xmlSecSize
      - name: '*                      name'
        type: xmlChar
      - name: usage
        type: xmlSecKeyDataUsage
      - name: '*                      href'
        type: xmlChar
      - name: '*                      dataNodeName'
        type: xmlChar
      - name: '*                      dataNodeNs'
        type: xmlChar
      - name: initialize
        type: xmlSecKeyDataInitMethod
      - name: duplicate
        type: xmlSecKeyDataDuplicateMethod
      - name: finalize
        type: xmlSecKeyDataFinalizeMethod
      - name: generate
        type: xmlSecKeyDataGenerateMethod
      - name: getType
        type: xmlSecKeyDataGetTypeMethod
      - name: getSize
        type: xmlSecKeyDataGetSizeMethod
      - name: '*                               deprecated0'
        type: void
      - name: xmlRead
        type: xmlSecKeyDataXmlReadMethod
      - name: xmlWrite
        type: xmlSecKeyDataXmlWriteMethod
      - name: binRead
        type: xmlSecKeyDataBinReadMethod
      - name: binWrite
        type: xmlSecKeyDataBinWriteMethod
      - name: debugDump
        type: xmlSecKeyDataDebugDumpMethod
      - name: debugXmlDump
        type: xmlSecKeyDataDebugDumpMethod
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyDataKlass
      pos:
        line_end: 587
        line_start: 552
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
    - fields:
      - name: id
        type: xmlSecKeyDataStoreId
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyDataStore
      pos:
        line_end: 677
        line_start: 671
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
    - fields:
      - name: klassSize
        type: xmlSecSize
      - name: objSize
        type: xmlSecSize
      - name: '*                      name'
        type: xmlChar
      - name: initialize
        type: xmlSecKeyDataStoreInitializeMethod
      - name: finalize
        type: xmlSecKeyDataStoreFinalizeMethod
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyDataStoreKlass
      pos:
        line_end: 780
        line_start: 766
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
    typedefs:
    - item_type: typedef
      name: xmlSecKeyDataKlass
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: _xmlSecKeyDataKlass
    - item_type: typedef
      name: xmlSecKeyDataStoreKlass
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: _xmlSecKeyDataStoreKlass
    - item_type: typedef
      name: xmlSecKeyDataList
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: _xmlSecKeyDataList
    - item_type: typedef
      name: xmlSecKeyDataUsage
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: unsigned int
    - item_type: typedef
      name: xmlSecKeyDataType
      pos:
        line_end: 149
        line_start: 149
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: unsigned int
    - item_type: typedef
      name: (*xmlSecKeyDataInitMethod)      (xmlSecKeyDataPtr data)
      pos:
        line_end: 393
        line_start: 393
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataDuplicateMethod) (xmlSecKeyDataPtr dst,\n                                                                 xmlSecKeyDataPtr
        src)"
      pos:
        line_end: 405
        line_start: 404
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: (*xmlSecKeyDataFinalizeMethod)  (xmlSecKeyDataPtr data)
      pos:
        line_end: 414
        line_start: 414
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: void
    - item_type: typedef
      name: "(*xmlSecKeyDataXmlReadMethod)   (xmlSecKeyDataId id,\n                                                                 xmlSecKeyPtr
        key,\n                                                                 xmlNodePtr
        node,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 430
        line_start: 427
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataXmlWriteMethod)  (xmlSecKeyDataId id,\n                                                                 xmlSecKeyPtr
        key,\n                                                                 xmlNodePtr
        node,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 445
        line_start: 442
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataBinReadMethod)   (xmlSecKeyDataId id,\n                                                                 xmlSecKeyPtr
        key,\n                                                                 const
        xmlSecByte* buf,\n                                                                 xmlSecSize
        bufSize,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 462
        line_start: 458
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataBinWriteMethod)  (xmlSecKeyDataId id,\n                                                                 xmlSecKeyPtr
        key,\n                                                                 xmlSecByte**
        buf,\n                                                                 xmlSecSize*
        bufSize,\n                                                                 xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 479
        line_start: 475
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: "(*xmlSecKeyDataGenerateMethod)  (xmlSecKeyDataPtr data,\n                                                                 xmlSecSize
        sizeBits,\n                                                                 xmlSecKeyDataType
        type)"
      pos:
        line_end: 493
        line_start: 491
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: (*xmlSecKeyDataGetTypeMethod)   (xmlSecKeyDataPtr data)
      pos:
        line_end: 503
        line_start: 503
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: xmlSecKeyDataType
    - item_type: typedef
      name: (*xmlSecKeyDataGetSizeMethod)   (xmlSecKeyDataPtr data)
      pos:
        line_end: 513
        line_start: 513
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: xmlSecSize
    - item_type: typedef
      name: "(*xmlSecKeyDataDebugDumpMethod) (xmlSecKeyDataPtr data,\n                                                                 FILE*
        output)"
      pos:
        line_end: 523
        line_start: 522
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: void
    - item_type: typedef
      name: (*xmlSecKeyDataStoreInitializeMethod)   (xmlSecKeyDataStorePtr store)
      pos:
        line_end: 744
        line_start: 744
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: int
    - item_type: typedef
      name: (*xmlSecKeyDataStoreFinalizeMethod)     (xmlSecKeyDataStorePtr store)
      pos:
        line_end: 752
        line_start: 752
        source_file: /src/xmlsec/include/xmlsec/keysdata.h
      type: void
    union: []
- function_names:
  - UNREFERENCED_PARAMETER
  - XMLSEC_PTR_TO_FUNC_IMPL
  - XMLSEC_PTR_TO_FUNC
  - XMLSEC_FUNC_TO_PTR_IMPL
  - XMLSEC_FUNC_TO_PTR
  - XMLSEC_X509DATA_HAS_EMPTY_NODE
  - XMLSEC_X509DATA_HAS_NON_EMPTY_NODE
  - XMLSEC_X509DATA_HAS_NODE
  source_file: /src/xmlsec/include/xmlsec/private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_ATTRIBUTE_UNUSED
      pos:
        line_end: 659
        line_start: 658
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: __attribute__((unused))
    - item_type: preproc_def
      name: XMLSEC_X509DATA_CERTIFICATE_NODE
      pos:
        line_end: 750
        line_start: 749
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_SUBJECTNAME_NODE
      pos:
        line_end: 756
        line_start: 755
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000002'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_ISSUERSERIAL_NODE
      pos:
        line_end: 762
        line_start: 761
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000004'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_SKI_NODE
      pos:
        line_end: 768
        line_start: 767
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000008'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_CRL_NODE
      pos:
        line_end: 774
        line_start: 773
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000010'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_DIGEST_NODE
      pos:
        line_end: 780
        line_start: 779
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '0x00000020'
    - item_type: preproc_def
      name: XMLSEC_X509DATA_DEFAULT
      pos:
        line_end: 789
        line_start: 787
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: (XMLSEC_X509DATA_CERTIFICATE_NODE | XMLSEC_X509DATA_CRL_NODE)
    - item_type: preproc_def
      name: XMLSEC_X509DATA_SHIFT_IF_NOT_EMPTY
      pos:
        line_end: 798
        line_start: 797
        source_file: /src/xmlsec/include/xmlsec/private.h
      type_or_value: '16'
    structs:
    - fields:
      - name: cryptoInit
        type: xmlSecCryptoInitMethod
      - name: cryptoShutdown
        type: xmlSecCryptoShutdownMethod
      - name: cryptoKeysMngrInit
        type: xmlSecCryptoKeysMngrInitMethod
      - name: keyDataAesGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataConcatKdfGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataDesGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataDhGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataDsaGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataEcGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataGost2001GetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataGostR3410_2012_256GetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataGostR3410_2012_512GetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataHmacGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataPbkdf2GetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataRsaGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataX509GetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataRawX509CertGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: keyDataDEREncodedKeyValueGetKlass
        type: xmlSecCryptoKeyDataGetKlassMethod
      - name: x509StoreGetKlass
        type: xmlSecCryptoKeyDataStoreGetKlassMethod
      - name: transformAes128CbcGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformAes192CbcGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformAes256CbcGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformAes128GcmGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformAes192GcmGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformAes256GcmGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformKWAes128GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformKWAes192GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformKWAes256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformConcatKdfGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformDes3CbcGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformKWDes3GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformDhEsGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformDsaSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformDsaSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdhGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaRipemd160GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha3_224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha3_256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha3_384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformEcdsaSha3_512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGost2001GostR3411_94GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGostR3410_2012GostR3411_2012_256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGostR3410_2012GostR3411_2012_512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacMd5GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacRipemd160GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacSha224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacSha384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformHmacSha512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformMd5GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformPbkdf2GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRipemd160GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaMd5GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaRipemd160GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaSha224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaSha384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaSha512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha3_224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha3_256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha3_384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPssSha3_512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaPkcs1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaOaepGetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformRsaOaepEnc11GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGostR3411_94GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGostR3411_2012_256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformGostR3411_2012_512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha1GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha3_224GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha3_256GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha3_384GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: transformSha3_512GetKlass
        type: xmlSecCryptoTransformGetKlassMethod
      - name: cryptoAppInit
        type: xmlSecCryptoAppInitMethod
      - name: cryptoAppShutdown
        type: xmlSecCryptoAppShutdownMethod
      - name: cryptoAppDefaultKeysMngrInit
        type: xmlSecCryptoAppDefaultKeysMngrInitMethod
      - name: cryptoAppDefaultKeysMngrAdoptKey
        type: xmlSecCryptoAppDefaultKeysMngrAdoptKeyMethod
      - name: cryptoAppDefaultKeysMngrVerifyKey
        type: xmlSecCryptoAppDefaultKeysMngVerifyKeyMethod
      - name: cryptoAppDefaultKeysMngrLoad
        type: xmlSecCryptoAppDefaultKeysMngrLoadMethod
      - name: cryptoAppDefaultKeysMngrSave
        type: xmlSecCryptoAppDefaultKeysMngrSaveMethod
      - name: cryptoAppKeysMngrCertLoad
        type: xmlSecCryptoAppKeysMngrCertLoadMethod
      - name: cryptoAppKeysMngrCertLoadMemory
        type: xmlSecCryptoAppKeysMngrCertLoadMemoryMethod
      - name: cryptoAppKeysMngrCrlLoad
        type: xmlSecCryptoAppKeysMngrCrlLoadMethod
      - name: cryptoAppKeysMngrCrlLoadMemory
        type: xmlSecCryptoAppKeysMngrCrlLoadMemoryMethod
      - name: cryptoAppKeyLoad
        type: xmlSecCryptoAppKeyLoadMethod
      - name: cryptoAppKeyLoadEx
        type: xmlSecCryptoAppKeyLoadExMethod
      - name: cryptoAppKeyLoadMemory
        type: xmlSecCryptoAppKeyLoadMemoryMethod
      - name: cryptoAppPkcs12Load
        type: xmlSecCryptoAppPkcs12LoadMethod
      - name: cryptoAppPkcs12LoadMemory
        type: xmlSecCryptoAppPkcs12LoadMemoryMethod
      - name: cryptoAppKeyCertLoad
        type: xmlSecCryptoAppKeyCertLoadMethod
      - name: cryptoAppKeyCertLoadMemory
        type: xmlSecCryptoAppKeyCertLoadMemoryMethod
      - name: '*                                        cryptoAppDefaultPwdCallback'
        type: void
      item_type: struct
      name: _xmlSecCryptoDLFunctions
      pos:
        line_end: 649
        line_start: 517
        source_file: /src/xmlsec/include/xmlsec/private.h
    typedefs:
    - item_type: typedef
      name: (*xmlSecCryptoInitMethod)               (void)
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: (*xmlSecCryptoShutdownMethod)           (void)
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: (*xmlSecCryptoKeysMngrInitMethod)       (xmlSecKeysMngrPtr mngr)
      pos:
        line_end: 71
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: (*xmlSecCryptoKeyDataGetKlassMethod)    (void)
      pos:
        line_end: 87
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyDataId
    - item_type: typedef
      name: (*xmlSecCryptoKeyDataStoreGetKlassMethod)(void)
      pos:
        line_end: 103
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyDataStoreId
    - item_type: typedef
      name: (*xmlSecCryptoTransformGetKlassMethod)  (void)
      pos:
        line_end: 119
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecTransformId
    - item_type: typedef
      name: (*xmlSecCryptoAppInitMethod)            (const char* config)
      pos:
        line_end: 136
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: (*xmlSecCryptoAppShutdownMethod)        (void)
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppDefaultKeysMngrInitMethod)\n                                                                        (xmlSecKeysMngrPtr
        mngr)"
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppDefaultKeysMngrAdoptKeyMethod)\n                                                                        (xmlSecKeysMngrPtr
        mngr,\n                                                                         xmlSecKeyPtr
        key)"
      pos:
        line_end: 170
        line_start: 168
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppDefaultKeysMngVerifyKeyMethod)\n                                                                        (xmlSecKeysMngrPtr
        mngr,\n                                                                         xmlSecKeyPtr
        key,\n                                                                         xmlSecKeyInfoCtxPtr
        keyInfoCtx)"
      pos:
        line_end: 187
        line_start: 184
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppDefaultKeysMngrLoadMethod)\n                                                                        (xmlSecKeysMngrPtr
        mngr,\n                                                                         const
        char* uri)"
      pos:
        line_end: 200
        line_start: 198
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppDefaultKeysMngrSaveMethod)\n                                                                        (xmlSecKeysMngrPtr
        mngr,\n                                                                         const
        char* filename,\n                                                                         xmlSecKeyDataType
        type)"
      pos:
        line_end: 214
        line_start: 211
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeysMngrCertLoadMethod)(xmlSecKeysMngrPtr mngr,\n                                                                         const
        char *filename,\n                                                                         xmlSecKeyDataFormat
        format,\n                                                                         xmlSecKeyDataType
        type)"
      pos:
        line_end: 231
        line_start: 228
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeysMngrCertLoadMemoryMethod)(xmlSecKeysMngrPtr mngr,\n
        \                                                                        const
        xmlSecByte* data,\n                                                                         xmlSecSize
        dataSize,\n                                                                         xmlSecKeyDataFormat
        format,\n                                                                         xmlSecKeyDataType
        type)"
      pos:
        line_end: 250
        line_start: 246
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeysMngrCrlLoadMethod)(xmlSecKeysMngrPtr mngr,\n                                                                         const
        char *filename,\n                                                                         xmlSecKeyDataFormat
        format)"
      pos:
        line_end: 263
        line_start: 261
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeysMngrCrlLoadMemoryMethod)(xmlSecKeysMngrPtr mngr,\n
        \                                                                        const
        xmlSecByte* data,\n                                                                         xmlSecSize
        dataSize,\n                                                                         xmlSecKeyDataFormat
        format)"
      pos:
        line_end: 278
        line_start: 275
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeyLoadMethod)         (const char *filename,\n                                                                         xmlSecKeyDataFormat
        format,\n                                                                         const
        char *pwd,\n                                                                         void*
        pwdCallback,\n                                                                         void*
        pwdCallbackCtx)"
      pos:
        line_end: 296
        line_start: 292
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeyLoadExMethod)       (const char *filename,\n                                                                         xmlSecKeyDataType
        type,\n                                                                         xmlSecKeyDataFormat
        format,\n                                                                         const
        char *pwd,\n                                                                         void*
        pwdCallback,\n                                                                         void*
        pwdCallbackCtx)"
      pos:
        line_end: 316
        line_start: 311
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeyLoadMemoryMethod)   (const xmlSecByte* data,\n                                                                         xmlSecSize
        dataSize,\n                                                                         xmlSecKeyDataFormat
        format,\n                                                                         const
        char *pwd,\n                                                                         void*
        pwdCallback,\n                                                                         void*
        pwdCallbackCtx)"
      pos:
        line_end: 336
        line_start: 331
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecCryptoAppPkcs12LoadMethod)      (const char* filename,\n                                                                         const
        char* pwd,\n                                                                         void*
        pwdCallback,\n                                                                         void*
        pwdCallbackCtx)"
      pos:
        line_end: 355
        line_start: 352
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecCryptoAppPkcs12LoadMemoryMethod)(const xmlSecByte* data,\n                                                                         xmlSecSize
        dataSize,\n                                                                         const
        char* pwd,\n                                                                         void*
        pwdCallback,\n                                                                         void*
        pwdCallbackCtx)"
      pos:
        line_end: 374
        line_start: 370
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: xmlSecKeyPtr
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeyCertLoadMethod)     (xmlSecKeyPtr key,\n                                                                         const
        char* filename,\n                                                                         xmlSecKeyDataFormat
        format)"
      pos:
        line_end: 387
        line_start: 385
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    - item_type: typedef
      name: "(*xmlSecCryptoAppKeyCertLoadMemoryMethod)(xmlSecKeyPtr key,\n                                                                         const
        xmlSecByte* data,\n                                                                         xmlSecSize
        dataSize,\n                                                                         xmlSecKeyDataFormat
        format)"
      pos:
        line_end: 403
        line_start: 400
        source_file: /src/xmlsec/include/xmlsec/private.h
      type: int
    union: []
- function_names:
  - xmlSecKeyIsValid
  - xmlSecKeyCheckId
  source_file: /src/xmlsec/include/xmlsec/keys.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecKeyUsageSign
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: xmlSecKeyUsageVerify
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000002'
    - item_type: preproc_def
      name: xmlSecKeyUsageEncrypt
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000004'
    - item_type: preproc_def
      name: xmlSecKeyUsageDecrypt
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000008'
    - item_type: preproc_def
      name: xmlSecKeyUsageKeyExchange
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000010'
    - item_type: preproc_def
      name: xmlSecKeyUsageKeyDerive
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000020'
    - item_type: preproc_def
      name: xmlSecKeyUsageKeyAgreement
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0x00000040'
    - item_type: preproc_def
      name: xmlSecKeyUsageAny
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: '0xFFFFFFFF'
    - item_type: preproc_def
      name: xmlSecKeyUseWithPtrListId
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: xmlSecKeyUseWithPtrListGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyPtrListId
      pos:
        line_end: 289
        line_start: 288
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type_or_value: xmlSecKeyPtrListGetKlass()
    structs:
    - fields:
      - name: '*                    application'
        type: xmlChar
      - name: '*                    identifier'
        type: xmlChar
      - name: '*                       reserved1'
        type: void
      - name: '*                       reserved2'
        type: void
      item_type: struct
      name: _xmlSecKeyUseWith
      pos:
        line_end: 126
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/keys.h
    - fields:
      - name: keyId
        type: xmlSecKeyDataId
      - name: keyType
        type: xmlSecKeyDataType
      - name: keyUsage
        type: xmlSecKeyUsage
      - name: keyBitsSize
        type: xmlSecSize
      - name: keyUseWithList
        type: xmlSecPtrList
      - name: '*                       reserved1'
        type: void
      - name: '*                       reserved2'
        type: void
      item_type: struct
      name: _xmlSecKeyReq
      pos:
        line_end: 164
        line_start: 155
        source_file: /src/xmlsec/include/xmlsec/keys.h
    - fields:
      - name: '*                            name'
        type: xmlChar
      - name: value
        type: xmlSecKeyDataPtr
      - name: dataList
        type: xmlSecPtrListPtr
      - name: usage
        type: xmlSecKeyUsage
      - name: notValidBefore
        type: time_t
      - name: notValidAfter
        type: time_t
      item_type: struct
      name: _xmlSecKey
      pos:
        line_end: 198
        line_start: 191
        source_file: /src/xmlsec/include/xmlsec/keys.h
    typedefs:
    - item_type: typedef
      name: xmlSecKeyUsage
      pos:
        line_end: 29
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type: unsigned int
    - item_type: typedef
      name: xmlSecKeyUseWith
      pos:
        line_end: 93
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type: _xmlSecKeyUseWith
    - item_type: typedef
      name: xmlSecKeyReq
      pos:
        line_end: 141
        line_start: 141
        source_file: /src/xmlsec/include/xmlsec/keys.h
      type: _xmlSecKeyReq
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/exports.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_WINDOWS
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_WINDOWS
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_WINDOWS
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_WINDOWS
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_EXPORT
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: XMLSEC_EXPORT
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: XMLSEC_EXPORT
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_EXPORT
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_EXPORT
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_EXPORT
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: XMLSEC_CRYPTO_EXPORT
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllexport) extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: __declspec(dllimport) extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    - item_type: preproc_def
      name: XMLSEC_EXPORT_VAR
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/exports.h
      type_or_value: extern
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecErrorsSafeString
  - xmlSecAssert
  - xmlSecAssert2
  source_file: /src/xmlsec/include/xmlsec/errors.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_XMLSEC_FAILED
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MALLOC_FAILED
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '2'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_STRDUP_FAILED
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '3'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CRYPTO_FAILED
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '4'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_XML_FAILED
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '5'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_XSLT_FAILED
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '6'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_IO_FAILED
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '7'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_DISABLED
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '8'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_NOT_IMPLEMENTED
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '9'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_CONFIG
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '10'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_SIZE
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '11'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_DATA
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '12'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_RESULT
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '13'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_TYPE
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '14'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_OPERATION
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '15'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_STATUS
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '16'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_FORMAT
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '17'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_DATA_NOT_MATCH
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '18'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_VERSION
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '19'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_NODE
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '21'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_NODE_CONTENT
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '22'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '23'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE
      pos:
        line_end: 186
        line_start: 185
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '25'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT
      pos:
        line_end: 193
        line_start: 192
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '26'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_UNEXPECTED_NODE
      pos:
        line_end: 200
        line_start: 199
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '27'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_NODE_NOT_FOUND
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '28'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_TRANSFORM
      pos:
        line_end: 214
        line_start: 213
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '31'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY
      pos:
        line_end: 221
        line_start: 220
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '32'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_URI_TYPE
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '33'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED
      pos:
        line_end: 235
        line_start: 234
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '34'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_TRANSFORM_DISABLED
      pos:
        line_end: 242
        line_start: 241
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '35'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_ALGORITHM
      pos:
        line_end: 249
        line_start: 248
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '36'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_KEY_DATA
      pos:
        line_end: 256
        line_start: 255
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '41'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND
      pos:
        line_end: 263
        line_start: 262
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '42'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST
      pos:
        line_end: 270
        line_start: 269
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '43'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE
      pos:
        line_end: 277
        line_start: 276
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '44'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_KEY_NOT_FOUND
      pos:
        line_end: 284
        line_start: 283
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '45'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_KEYDATA_DISABLED
      pos:
        line_end: 291
        line_start: 290
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '46'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL
      pos:
        line_end: 298
        line_start: 297
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '51'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH
      pos:
        line_end: 306
        line_start: 305
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '52'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MAX_KEYINFOREFERENCE_LEVEL
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '51'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL
      pos:
        line_end: 320
        line_start: 319
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '61'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_VERIFY_FAILED
      pos:
        line_end: 327
        line_start: 326
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '71'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_NOT_FOUND
      pos:
        line_end: 334
        line_start: 333
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '72'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_REVOKED
      pos:
        line_end: 341
        line_start: 340
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '73'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_ISSUER_FAILED
      pos:
        line_end: 348
        line_start: 347
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '74'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_NOT_YET_VALID
      pos:
        line_end: 355
        line_start: 354
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '75'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CERT_HAS_EXPIRED
      pos:
        line_end: 362
        line_start: 361
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '76'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CRL_VERIFY_FAILED
      pos:
        line_end: 369
        line_start: 368
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '77'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CRL_NOT_YET_VALID
      pos:
        line_end: 376
        line_start: 375
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '78'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_CRL_HAS_EXPIRED
      pos:
        line_end: 383
        line_start: 382
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '79'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_DSIG_NO_REFERENCES
      pos:
        line_end: 390
        line_start: 389
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '81'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE
      pos:
        line_end: 397
        line_start: 396
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '82'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_R_ASSERTION
      pos:
        line_end: 404
        line_start: 403
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '100'
    - item_type: preproc_def
      name: XMLSEC_ERROR_R_CAST_IMPOSSIBLE
      pos:
        line_end: 411
        line_start: 410
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '101'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_MAX_NUMBER
      pos:
        line_end: 418
        line_start: 417
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '256'
    - item_type: preproc_def
      name: __XMLSEC_FUNCTION__
      pos:
        line_end: 471
        line_start: 470
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: __FUNCTION__
    - item_type: preproc_def
      name: __XMLSEC_FUNCTION__
      pos:
        line_end: 475
        line_start: 474
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: __func__
    - item_type: preproc_def
      name: __XMLSEC_FUNCTION__
      pos:
        line_end: 479
        line_start: 478
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '""'
    - item_type: preproc_def
      name: XMLSEC_ERRORS_HERE
      pos:
        line_end: 490
        line_start: 489
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: __FILE__,__LINE__,__XMLSEC_FUNCTION__
    - item_type: preproc_def
      name: XMLSEC_ERRORS_PRINTF_ATTRIBUTE
      pos:
        line_end: 492
        line_start: 491
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: __attribute__ ((format (printf, 7, 8)))
    - item_type: preproc_def
      name: XMLSEC_ERRORS_NO_MESSAGE
      pos:
        line_end: 511
        line_start: 510
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type_or_value: '" "'
    structs: []
    typedefs:
    - item_type: typedef
      name: "(*xmlSecErrorsCallback)                            (const char* file,\n
        \                                                                int line,\n
        \                                                                const char*
        func,\n                                                                 const
        char* errorObject,\n                                                                 const
        char* errorSubject,\n                                                                 int
        reason,\n                                                                 const
        char* msg)"
      pos:
        line_end: 444
        line_start: 438
        source_file: /src/xmlsec/include/xmlsec/errors.h
      type: void
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/app.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataConcatKdfId
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataDhId
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataDhGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataEcId
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataGost2001Id
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataGost2001GetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataGostR3410_2012_256Id
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataGostR3410_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataGostR3410_2012_512Id
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataGostR3410_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataPbkdf2Id
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataDEREncodedKeyValueId
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecKeyDataDEREncodedKeyValueGetKlass()
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecX509StoreGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 187
        line_start: 186
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 194
        line_start: 193
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes128GcmId
      pos:
        line_end: 201
        line_start: 200
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes128GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes192GcmId
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes192GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformAes256GcmId
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformAes256GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformConcatKdfId
      pos:
        line_end: 243
        line_start: 242
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 250
        line_start: 249
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 257
        line_start: 256
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformDhEsId
      pos:
        line_end: 264
        line_start: 263
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformDhEsGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 271
        line_start: 270
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformDsaSha256Id
      pos:
        line_end: 278
        line_start: 277
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformDsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdhId
      pos:
        line_end: 285
        line_start: 284
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdhGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha1Id
      pos:
        line_end: 292
        line_start: 291
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha224Id
      pos:
        line_end: 300
        line_start: 299
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha256Id
      pos:
        line_end: 307
        line_start: 306
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha384Id
      pos:
        line_end: 314
        line_start: 313
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha512Id
      pos:
        line_end: 321
        line_start: 320
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_224Id
      pos:
        line_end: 329
        line_start: 328
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_256Id
      pos:
        line_end: 336
        line_start: 335
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_384Id
      pos:
        line_end: 343
        line_start: 342
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_512Id
      pos:
        line_end: 350
        line_start: 349
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformEcdsaRipemd160Id
      pos:
        line_end: 358
        line_start: 357
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformEcdsaRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGost2001GostR3411_94Id
      pos:
        line_end: 365
        line_start: 364
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGost2001GostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGostR3410_2012GostR3411_2012_256Id
      pos:
        line_end: 373
        line_start: 372
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGostR3410_2012GostR3411_2012_512Id
      pos:
        line_end: 381
        line_start: 380
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 389
        line_start: 388
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacRipemd160Id
      pos:
        line_end: 396
        line_start: 395
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 403
        line_start: 402
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacSha224Id
      pos:
        line_end: 410
        line_start: 409
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 417
        line_start: 416
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 424
        line_start: 423
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 431
        line_start: 430
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformMd5Id
      pos:
        line_end: 438
        line_start: 437
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformPbkdf2Id
      pos:
        line_end: 445
        line_start: 444
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 452
        line_start: 451
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaMd5Id
      pos:
        line_end: 459
        line_start: 458
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaRipemd160Id
      pos:
        line_end: 466
        line_start: 465
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 473
        line_start: 472
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaSha224Id
      pos:
        line_end: 480
        line_start: 479
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 487
        line_start: 486
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 494
        line_start: 493
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 501
        line_start: 500
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha1Id
      pos:
        line_end: 509
        line_start: 508
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha224Id
      pos:
        line_end: 517
        line_start: 516
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha256Id
      pos:
        line_end: 524
        line_start: 523
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha384Id
      pos:
        line_end: 531
        line_start: 530
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha512Id
      pos:
        line_end: 538
        line_start: 537
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_224Id
      pos:
        line_end: 546
        line_start: 545
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_256Id
      pos:
        line_end: 553
        line_start: 552
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_384Id
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_512Id
      pos:
        line_end: 567
        line_start: 566
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPssSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 575
        line_start: 574
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 582
        line_start: 581
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepEnc11Id
      pos:
        line_end: 589
        line_start: 588
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformRsaOaepEnc11GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_94Id
      pos:
        line_end: 596
        line_start: 595
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_2012_256Id
      pos:
        line_end: 603
        line_start: 602
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_2012_512Id
      pos:
        line_end: 610
        line_start: 609
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformGostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 618
        line_start: 617
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha224Id
      pos:
        line_end: 626
        line_start: 625
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 633
        line_start: 632
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 640
        line_start: 639
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 647
        line_start: 646
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha3_224Id
      pos:
        line_end: 656
        line_start: 655
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha3_256Id
      pos:
        line_end: 663
        line_start: 662
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha3_384Id
      pos:
        line_end: 670
        line_start: 669
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecTransformSha3_512Id
      pos:
        line_end: 677
        line_start: 676
        source_file: /src/xmlsec/include/xmlsec/app.h
      type_or_value: xmlSecTransformSha3_512GetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/keyinfo.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000002'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000004'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000008'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000010'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000020'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000100'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000200'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000400'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00000800'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00001000'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00002000'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00004000'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_LAX_KEY_SEARCH
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00008000'
    - item_type: preproc_def
      name: XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_TIME_CHECKS
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: '0x00010000'
    - item_type: preproc_def
      name: xmlSecKeyDataNameId
      pos:
        line_end: 283
        line_start: 282
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataNameGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataValueId
      pos:
        line_end: 291
        line_start: 290
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataValueGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataRetrievalMethodId
      pos:
        line_end: 299
        line_start: 298
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataRetrievalMethodGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataKeyInfoReferenceId
      pos:
        line_end: 307
        line_start: 306
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataKeyInfoReferenceGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataEncryptedKeyId
      pos:
        line_end: 316
        line_start: 315
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataEncryptedKeyGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataAgreementMethodId
      pos:
        line_end: 324
        line_start: 323
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataAgreementMethodGetKlass()
    - item_type: preproc_def
      name: xmlSecKeyDataDerivedKeyId
      pos:
        line_end: 332
        line_start: 331
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
      type_or_value: xmlSecKeyDataDerivedKeyGetKlass()
    structs:
    - fields:
      - name: '*                               userData'
        type: void
      - name: flags
        type: unsigned int
      - name: flags2
        type: unsigned int
      - name: keysMngr
        type: xmlSecKeysMngrPtr
      - name: mode
        type: xmlSecKeyInfoMode
      - name: enabledKeyData
        type: xmlSecPtrList
      - name: base64LineSize
        type: int
      - name: retrievalMethodCtx
        type: xmlSecTransformCtx
      - name: maxRetrievalMethodLevel
        type: int
      - name: keyInfoReferenceCtx
        type: xmlSecTransformCtx
      - name: maxKeyInfoReferenceLevel
        type: int
      - name: '*                               deprecated0'
        type: void
      - name: curRetrievalMethodLevel
        type: int
      - name: curKeyInfoReferenceLevel
        type: int
      - name: curEncryptedKeyLevel
        type: int
      - name: operation
        type: xmlSecTransformOperation
      - name: keyReq
        type: xmlSecKeyReq
      - name: '*                               reserved0'
        type: void
      - name: '*                               reserved1'
        type: void
      item_type: struct
      name: _xmlSecKeyInfoCtx
      pos:
        line_end: 262
        line_start: 220
        source_file: /src/xmlsec/include/xmlsec/keyinfo.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/x509.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: cert
        type: xmlSecBuffer
      - name: crl
        type: xmlSecBuffer
      - name: ski
        type: xmlSecBuffer
      - name: '* subject'
        type: xmlChar
      - name: '* issuerName'
        type: xmlChar
      - name: '* issuerSerial'
        type: xmlChar
      - name: '* digestAlgorithm'
        type: xmlChar
      - name: digest
        type: xmlSecBuffer
      item_type: struct
      name: _xmlSecKeyX509DataValue
      pos:
        line_end: 37
        line_start: 24
        source_file: /src/xmlsec/include/xmlsec/x509.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nodeset.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: nodes
        type: xmlNodeSetPtr
      - name: doc
        type: xmlDocPtr
      - name: destroyDoc
        type: int
      - name: type
        type: xmlSecNodeSetType
      - name: op
        type: xmlSecNodeSetOp
      - name: next
        type: xmlSecNodeSetPtr
      - name: prev
        type: xmlSecNodeSetPtr
      - name: children
        type: xmlSecNodeSetPtr
      item_type: struct
      name: _xmlSecNodeSet
      pos:
        line_end: 89
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/nodeset.h
    typedefs:
    - item_type: typedef
      name: xmlSecNodeSet
      pos:
        line_end: 23
        line_start: 23
        source_file: /src/xmlsec/include/xmlsec/nodeset.h
      type: _xmlSecNodeSet
    - item_type: typedef
      name: "(*xmlSecNodeSetWalkCallback)                (xmlSecNodeSetPtr nset,\n
        \                                                        xmlNodePtr cur,\n
        \                                                        xmlNodePtr parent,\n
        \                                                        void* data)"
      pos:
        line_end: 106
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/nodeset.h
      type: int
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/base64.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_BASE64_LINESIZE
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/include/xmlsec/base64.h
      type_or_value: '64'
    structs: []
    typedefs:
    - item_type: typedef
      name: xmlSecBase64Ctx
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/include/xmlsec/base64.h
      type: _xmlSecBase64Ctx
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/membuf.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecTransformMemBufId
      pos:
        line_end: 36
        line_start: 34
        source_file: /src/xmlsec/include/xmlsec/membuf.h
      type_or_value: xmlSecTransformMemBufGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/io.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecTransformInputURIId
      pos:
        line_end: 45
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/io.h
      type_or_value: xmlSecTransformInputURIGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names:
  - xmlSecCheckVersionExact
  - xmlSecCheckVersion
  source_file: /src/xmlsec/include/xmlsec/xmlsec.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_DEPRECATED
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: __attribute__((deprecated))
    - item_type: preproc_def
      name: XMLSEC_DEPRECATED
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: __attribute__((deprecated))
    - item_type: preproc_def
      name: XMLSEC_DEPRECATED
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: __declspec(deprecated)
    - item_type: preproc_def
      name: XMLSEC_SIZE_T_FMT
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: '"%llu"'
    - item_type: preproc_def
      name: XMLSEC_SIZE_T_FMT
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: '"%lu"'
    - item_type: preproc_def
      name: XMLSEC_SIZE_T_FMT
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: '"%zu"'
    - item_type: preproc_def
      name: xmlSecSize
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: size_t
    - item_type: preproc_def
      name: XMLSEC_SIZE_MIN
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: ((xmlSecSize)0)
    - item_type: preproc_def
      name: XMLSEC_SIZE_MAX
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: SIZE_MAX
    - item_type: preproc_def
      name: XMLSEC_SIZE_FMT
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type_or_value: XMLSEC_SIZE_T_FMT
    structs: []
    typedefs:
    - item_type: typedef
      name: '*                                   xmlSecPtr'
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: void
    - item_type: typedef
      name: xmlSecSize
      pos:
        line_end: 77
        line_start: 77
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: size_t
    - item_type: typedef
      name: xmlSecByte
      pos:
        line_end: 88
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: unsigned char
    - item_type: typedef
      name: xmlSecKeyData
      pos:
        line_end: 95
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKeyData
    - item_type: typedef
      name: xmlSecKeyDataStore
      pos:
        line_end: 96
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKeyDataStore
    - item_type: typedef
      name: xmlSecKeyInfoCtx
      pos:
        line_end: 97
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKeyInfoCtx
    - item_type: typedef
      name: xmlSecKey
      pos:
        line_end: 98
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKey
    - item_type: typedef
      name: xmlSecKeyStore
      pos:
        line_end: 99
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKeyStore
    - item_type: typedef
      name: xmlSecKeysMngr
      pos:
        line_end: 100
        line_start: 100
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecKeysMngr
    - item_type: typedef
      name: xmlSecTransform
      pos:
        line_end: 101
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecTransform
    - item_type: typedef
      name: xmlSecTransformCtx
      pos:
        line_end: 102
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecTransformCtx
    - item_type: typedef
      name: xmlSecDSigCtx
      pos:
        line_end: 105
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecDSigCtx
    - item_type: typedef
      name: xmlSecEncCtx
      pos:
        line_end: 109
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/xmlsec.h
      type: _xmlSecEncCtx
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/xmldsig.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: '0x00000001'
    - item_type: preproc_def
      name: XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: '0x00000002'
    - item_type: preproc_def
      name: XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: '0x00000004'
    - item_type: preproc_def
      name: XMLSEC_DSIG_FLAGS_STORE_SIGNATURE
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: '0x00000008'
    - item_type: preproc_def
      name: XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: '0x00000010'
    - item_type: preproc_def
      name: xmlSecDSigReferenceCtxListId
      pos:
        line_end: 295
        line_start: 293
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type_or_value: xmlSecDSigReferenceCtxListGetKlass()
    structs:
    - fields:
      - name: '*                       userData'
        type: void
      - name: flags
        type: unsigned int
      - name: flags2
        type: unsigned int
      - name: keyInfoReadCtx
        type: xmlSecKeyInfoCtx
      - name: keyInfoWriteCtx
        type: xmlSecKeyInfoCtx
      - name: transformCtx
        type: xmlSecTransformCtx
      - name: enabledReferenceUris
        type: xmlSecTransformUriType
      - name: enabledReferenceTransforms
        type: xmlSecPtrListPtr
      - name: referencePreExecuteCallback
        type: xmlSecTransformCtxPreExecuteCallback
      - name: defSignMethodId
        type: xmlSecTransformId
      - name: defC14NMethodId
        type: xmlSecTransformId
      - name: defDigestMethodId
        type: xmlSecTransformId
      - name: signKey
        type: xmlSecKeyPtr
      - name: operation
        type: xmlSecTransformOperation
      - name: result
        type: xmlSecBufferPtr
      - name: status
        type: xmlSecDSigStatus
      - name: failureReason
        type: xmlSecDSigFailureReason
      - name: signMethod
        type: xmlSecTransformPtr
      - name: c14nMethod
        type: xmlSecTransformPtr
      - name: preSignMemBufMethod
        type: xmlSecTransformPtr
      - name: signValueNode
        type: xmlNodePtr
      - name: '*                    id'
        type: xmlChar
      - name: signedInfoReferences
        type: xmlSecPtrList
      - name: manifestReferences
        type: xmlSecPtrList
      - name: '*                       reserved0'
        type: void
      - name: '*                       reserved1'
        type: void
      item_type: struct
      name: _xmlSecDSigCtx
      pos:
        line_end: 181
        line_start: 149
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
    - fields:
      - name: '*                       userData'
        type: void
      - name: dsigCtx
        type: xmlSecDSigCtxPtr
      - name: origin
        type: xmlSecDSigReferenceOrigin
      - name: transformCtx
        type: xmlSecTransformCtx
      - name: digestMethod
        type: xmlSecTransformPtr
      - name: result
        type: xmlSecBufferPtr
      - name: status
        type: xmlSecDSigStatus
      - name: preDigestMemBufMethod
        type: xmlSecTransformPtr
      - name: '*                    id'
        type: xmlChar
      - name: '*                    uri'
        type: xmlChar
      - name: '*                    type'
        type: xmlChar
      - name: '*                       reserved0'
        type: void
      - name: '*                       reserved1'
        type: void
      item_type: struct
      name: _xmlSecDSigReferenceCtx
      pos:
        line_end: 265
        line_start: 248
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
    typedefs:
    - item_type: typedef
      name: xmlSecDSigReferenceCtx
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/xmlsec/include/xmlsec/xmldsig.h
      type: _xmlSecDSigReferenceCtx
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/buffer.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*         data'
        type: xmlSecByte
      - name: size
        type: xmlSecSize
      - name: maxSize
        type: xmlSecSize
      - name: allocMode
        type: xmlSecAllocMode
      item_type: struct
      name: _xmlSecBuffer
      pos:
        line_end: 60
        line_start: 55
        source_file: /src/xmlsec/include/xmlsec/buffer.h
    typedefs:
    - item_type: typedef
      name: xmlSecBuffer
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/xmlsec/include/xmlsec/buffer.h
      type: _xmlSecBuffer
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/certkeys.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataConcatKdfId
      pos:
        line_end: 49
        line_start: 47
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformConcatKdfId
      pos:
        line_end: 58
        line_start: 56
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataDsaId
      pos:
        line_end: 75
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformDsaSha1Id
      pos:
        line_end: 85
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataRsaId
      pos:
        line_end: 104
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaMd5Id
      pos:
        line_end: 114
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaSha1Id
      pos:
        line_end: 125
        line_start: 123
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaSha256Id
      pos:
        line_end: 136
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaSha384Id
      pos:
        line_end: 147
        line_start: 145
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaSha512Id
      pos:
        line_end: 158
        line_start: 156
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaPssSha1Id
      pos:
        line_end: 169
        line_start: 167
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaPssSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaPssSha256Id
      pos:
        line_end: 180
        line_start: 178
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaPssSha384Id
      pos:
        line_end: 191
        line_start: 189
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaPssSha512Id
      pos:
        line_end: 202
        line_start: 200
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaPkcs1Id
      pos:
        line_end: 213
        line_start: 211
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaOaepId
      pos:
        line_end: 224
        line_start: 222
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformRsaOaepEnc11Id
      pos:
        line_end: 234
        line_start: 232
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformRsaOaepEnc11GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataEcId
      pos:
        line_end: 252
        line_start: 251
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformEcdsaSha1Id
      pos:
        line_end: 262
        line_start: 260
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformEcdsaSha256Id
      pos:
        line_end: 273
        line_start: 271
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformEcdsaSha384Id
      pos:
        line_end: 284
        line_start: 282
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformEcdsaSha512Id
      pos:
        line_end: 295
        line_start: 293
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformEcdhId
      pos:
        line_end: 305
        line_start: 303
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformEcdhGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataDesId
      pos:
        line_end: 323
        line_start: 321
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformDes3CbcId
      pos:
        line_end: 332
        line_start: 330
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformKWDes3Id
      pos:
        line_end: 341
        line_start: 339
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataHmacId
      pos:
        line_end: 359
        line_start: 357
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformHmacMd5Id
      pos:
        line_end: 369
        line_start: 367
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformHmacSha1Id
      pos:
        line_end: 380
        line_start: 378
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformHmacSha256Id
      pos:
        line_end: 391
        line_start: 389
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformHmacSha384Id
      pos:
        line_end: 402
        line_start: 400
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformHmacSha512Id
      pos:
        line_end: 413
        line_start: 411
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformMd5Id
      pos:
        line_end: 431
        line_start: 429
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataPbkdf2Id
      pos:
        line_end: 448
        line_start: 446
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformPbkdf2Id
      pos:
        line_end: 457
        line_start: 455
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformSha1Id
      pos:
        line_end: 473
        line_start: 471
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformSha256Id
      pos:
        line_end: 489
        line_start: 487
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformSha384Id
      pos:
        line_end: 505
        line_start: 503
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformSha512Id
      pos:
        line_end: 521
        line_start: 519
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataAesId
      pos:
        line_end: 537
        line_start: 535
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes128CbcId
      pos:
        line_end: 546
        line_start: 544
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes192CbcId
      pos:
        line_end: 555
        line_start: 553
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes256CbcId
      pos:
        line_end: 564
        line_start: 562
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes128GcmId
      pos:
        line_end: 573
        line_start: 571
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes128GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes192GcmId
      pos:
        line_end: 582
        line_start: 580
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes192GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformAes256GcmId
      pos:
        line_end: 591
        line_start: 589
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformAes256GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformKWAes128Id
      pos:
        line_end: 600
        line_start: 598
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformKWAes192Id
      pos:
        line_end: 609
        line_start: 607
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngTransformKWAes256Id
      pos:
        line_end: 618
        line_start: 616
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataDEREncodedKeyValueId
      pos:
        line_end: 628
        line_start: 627
        source_file: /src/xmlsec/include/xmlsec/mscng/crypto.h
      type_or_value: xmlSecMSCngKeyDataDEREncodedKeyValueGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataConcatKdfId
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataConcatKdfId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataEcdsaId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataEcId
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataPbkdf2Id
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataPbkdf2Id
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes128GcmId
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes128GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes192GcmId
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes192GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes256GcmId
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformAes256GcmId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformConcatKdfId
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformConcatKdfId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha1Id
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformEcdsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha256Id
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformEcdsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha384Id
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformEcdsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha512Id
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformEcdsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformHmacSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformHmacSha384Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformHmacSha512Id
    - item_type: preproc_def
      name: xmlSecTransformMd5Id
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformMd5Id
    - item_type: preproc_def
      name: xmlSecTransformPbkdf2Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformPbkdf2Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepEnc11Id
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformRsaOaepEnc11Id
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngTransformSha512Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/mscng/symbols.h
      type_or_value: xmlSecMSCngAppGetDefaultPwdCallback
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/keysstore.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKeysStoreId
      pos:
        line_end: 24
        line_start: 23
        source_file: /src/xmlsec/include/xmlsec/mscng/keysstore.h
      type_or_value: xmlSecMSCngKeysStoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscng/x509.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataX509Id
      pos:
        line_end: 32
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/mscng/x509.h
      type_or_value: xmlSecMSCngKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngKeyDataRawX509CertId
      pos:
        line_end: 41
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/mscng/x509.h
      type_or_value: xmlSecMSCngKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCngX509StoreId
      pos:
        line_end: 50
        line_start: 48
        source_file: /src/xmlsec/include/xmlsec/mscng/x509.h
      type_or_value: xmlSecMSCngX509StoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/certkeys.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataDsaId
      pos:
        line_end: 57
        line_start: 55
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformDsaSha1Id
      pos:
        line_end: 66
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataGost2001Id
      pos:
        line_end: 84
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataGost2001GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGost2001GostR3411_94Id
      pos:
        line_end: 93
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataGost2012_256Id
      pos:
        line_end: 112
        line_start: 110
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataGost2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataGost2012_512Id
      pos:
        line_end: 121
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataGost2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGost2012_256Id
      pos:
        line_end: 130
        line_start: 128
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGost2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGost2012_512Id
      pos:
        line_end: 139
        line_start: 137
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGost2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataRsaId
      pos:
        line_end: 157
        line_start: 155
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaMd5Id
      pos:
        line_end: 167
        line_start: 165
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaSha1Id
      pos:
        line_end: 178
        line_start: 176
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaSha256Id
      pos:
        line_end: 189
        line_start: 187
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaSha384Id
      pos:
        line_end: 200
        line_start: 198
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaSha512Id
      pos:
        line_end: 211
        line_start: 209
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaPkcs1Id
      pos:
        line_end: 222
        line_start: 220
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformRsaOaepId
      pos:
        line_end: 233
        line_start: 231
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformMd5Id
      pos:
        line_end: 251
        line_start: 249
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformSha1Id
      pos:
        line_end: 269
        line_start: 267
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformSha256Id
      pos:
        line_end: 286
        line_start: 284
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformSha384Id
      pos:
        line_end: 303
        line_start: 301
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformSha512Id
      pos:
        line_end: 320
        line_start: 318
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGostR3411_94Id
      pos:
        line_end: 337
        line_start: 335
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGostR3411_2012_256Id
      pos:
        line_end: 356
        line_start: 354
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformGostR3411_2012_512Id
      pos:
        line_end: 365
        line_start: 363
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataAesId
      pos:
        line_end: 383
        line_start: 381
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformAes128CbcId
      pos:
        line_end: 394
        line_start: 392
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformAes192CbcId
      pos:
        line_end: 403
        line_start: 401
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformAes256CbcId
      pos:
        line_end: 412
        line_start: 410
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformKWAes128Id
      pos:
        line_end: 421
        line_start: 419
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformKWAes192Id
      pos:
        line_end: 430
        line_start: 428
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformKWAes256Id
      pos:
        line_end: 439
        line_start: 437
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataDesId
      pos:
        line_end: 458
        line_start: 456
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformDes3CbcId
      pos:
        line_end: 467
        line_start: 465
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformKWDes3Id
      pos:
        line_end: 476
        line_start: 474
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataHmacId
      pos:
        line_end: 495
        line_start: 493
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacMd5Id
      pos:
        line_end: 508
        line_start: 506
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacRipemd160Id
      pos:
        line_end: 520
        line_start: 518
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacSha1Id
      pos:
        line_end: 531
        line_start: 529
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacSha224Id
      pos:
        line_end: 542
        line_start: 540
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacSha256Id
      pos:
        line_end: 553
        line_start: 551
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacSha384Id
      pos:
        line_end: 564
        line_start: 562
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoTransformHmacSha512Id
      pos:
        line_end: 575
        line_start: 573
        source_file: /src/xmlsec/include/xmlsec/mscrypto/crypto.h
      type_or_value: xmlSecMSCryptoTransformHmacSha512GetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataGost2001Id
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataGost2001Id
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformHmacRipemd160Id
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformHmacRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformSha512Id
    - item_type: preproc_def
      name: xmlSecTransformGost2012_256Id
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGost2012_256Id
    - item_type: preproc_def
      name: xmlSecTransformGost2012_512Id
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGost2012_512Id
    - item_type: preproc_def
      name: xmlSecTransformGost2001GostR3411_94Id
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGost2001GostR3411_94Id
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_94Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_94Id
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_2012_256Id
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_2012_256Id
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_2012_512Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoTransformGostR3411_2012_512Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/mscrypto/symbols.h
      type_or_value: xmlSecMSCryptoAppGetDefaultPwdCallback
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/keysstore.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoKeysStoreId
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/mscrypto/keysstore.h
      type_or_value: xmlSecMSCryptoKeysStoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/mscrypto/x509.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataX509Id
      pos:
        line_end: 32
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/mscrypto/x509.h
      type_or_value: xmlSecMSCryptoKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoKeyDataRawX509CertId
      pos:
        line_end: 57
        line_start: 55
        source_file: /src/xmlsec/include/xmlsec/mscrypto/x509.h
      type_or_value: xmlSecMSCryptoKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecMSCryptoX509StoreId
      pos:
        line_end: 66
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/mscrypto/x509.h
      type_or_value: xmlSecMSCryptoX509StoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataAesId
      pos:
        line_end: 69
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes128CbcId
      pos:
        line_end: 80
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes192CbcId
      pos:
        line_end: 89
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes256CbcId
      pos:
        line_end: 98
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes128GcmId
      pos:
        line_end: 108
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes128GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes192GcmId
      pos:
        line_end: 117
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes192GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformAes256GcmId
      pos:
        line_end: 126
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformAes256GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformKWAes128Id
      pos:
        line_end: 136
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformKWAes192Id
      pos:
        line_end: 145
        line_start: 143
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformKWAes256Id
      pos:
        line_end: 154
        line_start: 152
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataDesId
      pos:
        line_end: 172
        line_start: 170
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformDes3CbcId
      pos:
        line_end: 184
        line_start: 182
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformKWDes3Id
      pos:
        line_end: 193
        line_start: 191
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataDsaId
      pos:
        line_end: 211
        line_start: 209
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformDsaSha1Id
      pos:
        line_end: 226
        line_start: 224
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformDsaSha256Id
      pos:
        line_end: 237
        line_start: 235
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformDsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataEcId
      pos:
        line_end: 256
        line_start: 255
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha1Id
      pos:
        line_end: 271
        line_start: 269
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha256Id
      pos:
        line_end: 282
        line_start: 280
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha384Id
      pos:
        line_end: 293
        line_start: 291
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha512Id
      pos:
        line_end: 304
        line_start: 302
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha3_256Id
      pos:
        line_end: 316
        line_start: 314
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha3_384Id
      pos:
        line_end: 325
        line_start: 323
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformEcdsaSha3_512Id
      pos:
        line_end: 334
        line_start: 332
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformEcdsaSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataGost2001Id
      pos:
        line_end: 353
        line_start: 352
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataGost2001GetKlass     ()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGostR3411_94Id
      pos:
        line_end: 367
        line_start: 365
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGost2001GostR3411_94Id
      pos:
        line_end: 376
        line_start: 374
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGost2001GostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataGost2012_256Id
      pos:
        line_end: 394
        line_start: 393
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataGost2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataGost2012_512Id
      pos:
        line_end: 407
        line_start: 406
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataGost2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGostR3411_2012_256Id
      pos:
        line_end: 423
        line_start: 421
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGostR3411_2012_512Id
      pos:
        line_end: 433
        line_start: 431
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_256Id
      pos:
        line_end: 443
        line_start: 441
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_512Id
      pos:
        line_end: 453
        line_start: 451
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformGostR3410_2012GostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataHmacId
      pos:
        line_end: 472
        line_start: 470
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformHmacSha1Id
      pos:
        line_end: 485
        line_start: 483
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformHmacSha256Id
      pos:
        line_end: 496
        line_start: 494
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformHmacSha384Id
      pos:
        line_end: 507
        line_start: 505
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformHmacSha512Id
      pos:
        line_end: 518
        line_start: 516
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataPbkdf2Id
      pos:
        line_end: 538
        line_start: 536
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformPbkdf2Id
      pos:
        line_end: 550
        line_start: 548
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataRsaId
      pos:
        line_end: 568
        line_start: 566
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaSha1Id
      pos:
        line_end: 584
        line_start: 582
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaSha256Id
      pos:
        line_end: 595
        line_start: 593
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaSha384Id
      pos:
        line_end: 606
        line_start: 604
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaSha512Id
      pos:
        line_end: 617
        line_start: 615
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaPssSha256Id
      pos:
        line_end: 629
        line_start: 627
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaPssSha384Id
      pos:
        line_end: 640
        line_start: 638
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaPssSha512Id
      pos:
        line_end: 651
        line_start: 649
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformRsaPkcs1Id
      pos:
        line_end: 662
        line_start: 660
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha1Id
      pos:
        line_end: 681
        line_start: 679
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha256Id
      pos:
        line_end: 692
        line_start: 690
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha384Id
      pos:
        line_end: 703
        line_start: 701
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha512Id
      pos:
        line_end: 714
        line_start: 712
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha3_256Id
      pos:
        line_end: 726
        line_start: 724
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha3_384Id
      pos:
        line_end: 735
        line_start: 733
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSTransformSha3_512Id
      pos:
        line_end: 744
        line_start: 742
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSTransformSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataDEREncodedKeyValueId
      pos:
        line_end: 754
        line_start: 753
        source_file: /src/xmlsec/include/xmlsec/gnutls/crypto.h
      type_or_value: xmlSecGnuTLSKeyDataDEREncodedKeyValueGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataPbkdf2Id
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataPbkdf2Id
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes128GcmId
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes128GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes192GcmId
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes192GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes256GcmId
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformAes256GcmId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha256Id
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformDsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha224Id
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacSha224Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacSha384Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacSha512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformPbkdf2Id
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformPbkdf2Id
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha224Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha224Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha512Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_224Id
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha3_224Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_256Id
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_384Id
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_512Id
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformSha3_512Id
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_94Id
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformGostR3411_94Id
    - item_type: preproc_def
      name: xmlSecTransformGost2001GostR3411_94Id
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSTransformGost2001GostR3411_94Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/gnutls/symbols.h
      type_or_value: xmlSecGnuTLSAppGetDefaultPwdCallback
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gnutls/keysstore.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKeysStoreId
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/gnutls/keysstore.h
      type_or_value: xmlSecGnuTLSKeysStoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gnutls/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gnutls/x509.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataX509Id
      pos:
        line_end: 37
        line_start: 35
        source_file: /src/xmlsec/include/xmlsec/gnutls/x509.h
      type_or_value: xmlSecGnuTLSKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSKeyDataRawX509CertId
      pos:
        line_end: 70
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/gnutls/x509.h
      type_or_value: xmlSecGnuTLSKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecGnuTLSX509StoreId
      pos:
        line_end: 84
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/gnutls/x509.h
      type_or_value: xmlSecGnuTLSX509StoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataAesId
      pos:
        line_end: 51
        line_start: 49
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformAes128CbcId
      pos:
        line_end: 62
        line_start: 60
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformAes192CbcId
      pos:
        line_end: 71
        line_start: 69
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformAes256CbcId
      pos:
        line_end: 80
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformKWAes128Id
      pos:
        line_end: 89
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformKWAes192Id
      pos:
        line_end: 98
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformKWAes256Id
      pos:
        line_end: 107
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataDesId
      pos:
        line_end: 125
        line_start: 123
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformDes3CbcId
      pos:
        line_end: 137
        line_start: 135
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformKWDes3Id
      pos:
        line_end: 146
        line_start: 144
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataDsaId
      pos:
        line_end: 164
        line_start: 162
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformDsaSha1Id
      pos:
        line_end: 181
        line_start: 179
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataEcId
      pos:
        line_end: 200
        line_start: 199
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptkeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha1Id
      pos:
        line_end: 218
        line_start: 216
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha256Id
      pos:
        line_end: 229
        line_start: 227
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha384Id
      pos:
        line_end: 240
        line_start: 238
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha512Id
      pos:
        line_end: 251
        line_start: 249
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha3_256Id
      pos:
        line_end: 263
        line_start: 261
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha3_384Id
      pos:
        line_end: 272
        line_start: 270
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformEcdsaSha3_512Id
      pos:
        line_end: 281
        line_start: 279
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformEcdsaSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataHmacId
      pos:
        line_end: 300
        line_start: 298
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacMd5Id
      pos:
        line_end: 313
        line_start: 311
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacRipemd160Id
      pos:
        line_end: 325
        line_start: 323
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacSha1Id
      pos:
        line_end: 336
        line_start: 334
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacSha256Id
      pos:
        line_end: 347
        line_start: 345
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacSha384Id
      pos:
        line_end: 358
        line_start: 356
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformHmacSha512Id
      pos:
        line_end: 369
        line_start: 367
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptKeyDataRsaId
      pos:
        line_end: 388
        line_start: 386
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaMd5Id
      pos:
        line_end: 405
        line_start: 403
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaRipemd160Id
      pos:
        line_end: 416
        line_start: 414
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaSha1Id
      pos:
        line_end: 427
        line_start: 425
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaSha256Id
      pos:
        line_end: 438
        line_start: 436
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaSha384Id
      pos:
        line_end: 449
        line_start: 447
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaSha512Id
      pos:
        line_end: 460
        line_start: 458
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha1Id
      pos:
        line_end: 472
        line_start: 470
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha256Id
      pos:
        line_end: 483
        line_start: 481
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha384Id
      pos:
        line_end: 494
        line_start: 492
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha512Id
      pos:
        line_end: 505
        line_start: 503
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha3_256Id
      pos:
        line_end: 517
        line_start: 515
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha3_384Id
      pos:
        line_end: 526
        line_start: 524
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPssSha3_512Id
      pos:
        line_end: 535
        line_start: 533
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaPkcs1Id
      pos:
        line_end: 546
        line_start: 544
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaOaepId
      pos:
        line_end: 557
        line_start: 555
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRsaOaepEnc11Id
      pos:
        line_end: 566
        line_start: 564
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRsaOaepEnc11GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha1Id
      pos:
        line_end: 585
        line_start: 583
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha256Id
      pos:
        line_end: 596
        line_start: 594
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha384Id
      pos:
        line_end: 607
        line_start: 605
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha512Id
      pos:
        line_end: 618
        line_start: 616
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha3_256Id
      pos:
        line_end: 630
        line_start: 628
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha3_384Id
      pos:
        line_end: 639
        line_start: 637
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformSha3_512Id
      pos:
        line_end: 648
        line_start: 646
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformMd5Id
      pos:
        line_end: 665
        line_start: 663
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecGCryptTransformRipemd160Id
      pos:
        line_end: 682
        line_start: 680
        source_file: /src/xmlsec/include/xmlsec/gcrypt/crypto.h
      type_or_value: xmlSecGCryptTransformRipemd160GetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataEcdId
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataEcdsaId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataEcId
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha1Id
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformEcdsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha256Id
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformEcdsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha384Id
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformEcdsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha512Id
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_256Id
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformEcdsaSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_384Id
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformEcdsaSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_512Id
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacSha384Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacSha512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacRipemd160Id
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha1Id
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha256Id
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha384Id
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha512Id
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_256Id
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_384Id
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_512Id
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPssSha3_512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepEnc11Id
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformRsaOaepEnc11Id
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha512Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_256Id
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_384Id
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_512Id
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptTransformSha3_512Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 145
        line_start: 144
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/xmlsec/include/xmlsec/gcrypt/symbols.h
      type_or_value: xmlSecGCryptAppGetDefaultPwdCallback
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/gcrypt/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/evp.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataDEREncodedKeyValueId
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/xmlsec/include/xmlsec/openssl/evp.h
      type_or_value: xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_API_111
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_API_300
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_OPENSSL_API_111
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_AES
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_CONCATKDF
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_PBKDF2
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_DES
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_DSA
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_EC
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_GOST
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_GOST2012
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_HMAC
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_MD5
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_RIPEMD160
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_RSA
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA1
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA256
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA224
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA384
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_SHA512
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_X509
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataAesId
      pos:
        line_end: 168
        line_start: 166
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes128CbcId
      pos:
        line_end: 179
        line_start: 177
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes192CbcId
      pos:
        line_end: 188
        line_start: 186
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes256CbcId
      pos:
        line_end: 197
        line_start: 195
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes128GcmId
      pos:
        line_end: 206
        line_start: 204
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes128GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes192GcmId
      pos:
        line_end: 215
        line_start: 213
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes192GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformAes256GcmId
      pos:
        line_end: 224
        line_start: 222
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformAes256GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformKWAes128Id
      pos:
        line_end: 234
        line_start: 232
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformKWAes192Id
      pos:
        line_end: 243
        line_start: 241
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformKWAes256Id
      pos:
        line_end: 252
        line_start: 250
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataConcatKdfId
      pos:
        line_end: 270
        line_start: 268
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformConcatKdfId
      pos:
        line_end: 282
        line_start: 280
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformConcatKdfGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataDesId
      pos:
        line_end: 300
        line_start: 298
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformDes3CbcId
      pos:
        line_end: 311
        line_start: 309
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformKWDes3Id
      pos:
        line_end: 320
        line_start: 318
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataDsaId
      pos:
        line_end: 338
        line_start: 336
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformDsaSha1Id
      pos:
        line_end: 353
        line_start: 351
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformDsaSha256Id
      pos:
        line_end: 364
        line_start: 362
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformDsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataDhId
      pos:
        line_end: 383
        line_start: 381
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataDhGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformDhEsId
      pos:
        line_end: 397
        line_start: 395
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformDhEsGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataEcId
      pos:
        line_end: 415
        line_start: 414
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaRipemd160Id
      pos:
        line_end: 431
        line_start: 429
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha1Id
      pos:
        line_end: 443
        line_start: 441
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha224Id
      pos:
        line_end: 454
        line_start: 452
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha256Id
      pos:
        line_end: 465
        line_start: 463
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha384Id
      pos:
        line_end: 476
        line_start: 474
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha512Id
      pos:
        line_end: 487
        line_start: 485
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha3_224Id
      pos:
        line_end: 499
        line_start: 497
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha3_256Id
      pos:
        line_end: 508
        line_start: 506
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha3_384Id
      pos:
        line_end: 517
        line_start: 515
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdsaSha3_512Id
      pos:
        line_end: 526
        line_start: 524
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformEcdhId
      pos:
        line_end: 536
        line_start: 534
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformEcdhGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataGost2001Id
      pos:
        line_end: 555
        line_start: 553
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataGost2001GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGostR3411_94Id
      pos:
        line_end: 564
        line_start: 562
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGost2001GostR3411_94Id
      pos:
        line_end: 573
        line_start: 571
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataGostR3410_2012_256Id
      pos:
        line_end: 592
        line_start: 590
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataGostR3410_2012_512Id
      pos:
        line_end: 602
        line_start: 600
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id
      pos:
        line_end: 612
        line_start: 610
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id
      pos:
        line_end: 622
        line_start: 620
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGostR3411_2012_256Id
      pos:
        line_end: 632
        line_start: 630
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGostR3411_2012_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformGostR3411_2012_512Id
      pos:
        line_end: 642
        line_start: 640
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformGostR3411_2012_512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataHmacId
      pos:
        line_end: 660
        line_start: 658
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacMd5Id
      pos:
        line_end: 673
        line_start: 671
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacRipemd160Id
      pos:
        line_end: 684
        line_start: 682
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacSha1Id
      pos:
        line_end: 695
        line_start: 693
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacSha224Id
      pos:
        line_end: 706
        line_start: 704
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacSha256Id
      pos:
        line_end: 717
        line_start: 715
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacSha384Id
      pos:
        line_end: 728
        line_start: 726
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformHmacSha512Id
      pos:
        line_end: 739
        line_start: 737
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformMd5Id
      pos:
        line_end: 757
        line_start: 755
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataPbkdf2Id
      pos:
        line_end: 774
        line_start: 772
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformPbkdf2Id
      pos:
        line_end: 786
        line_start: 784
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRipemd160Id
      pos:
        line_end: 803
        line_start: 801
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataRsaId
      pos:
        line_end: 820
        line_start: 818
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaMd5Id
      pos:
        line_end: 833
        line_start: 831
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaRipemd160Id
      pos:
        line_end: 844
        line_start: 842
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaSha1Id
      pos:
        line_end: 855
        line_start: 853
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaSha224Id
      pos:
        line_end: 866
        line_start: 864
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaSha256Id
      pos:
        line_end: 877
        line_start: 875
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaSha384Id
      pos:
        line_end: 888
        line_start: 886
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaSha512Id
      pos:
        line_end: 899
        line_start: 897
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPkcs1Id
      pos:
        line_end: 910
        line_start: 908
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaOaepId
      pos:
        line_end: 921
        line_start: 919
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaOaepEnc11Id
      pos:
        line_end: 930
        line_start: 928
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaOaepEnc11GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha1Id
      pos:
        line_end: 941
        line_start: 939
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha224Id
      pos:
        line_end: 952
        line_start: 950
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha256Id
      pos:
        line_end: 963
        line_start: 961
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha384Id
      pos:
        line_end: 974
        line_start: 972
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha512Id
      pos:
        line_end: 985
        line_start: 983
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha3_224Id
      pos:
        line_end: 997
        line_start: 995
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha3_256Id
      pos:
        line_end: 1006
        line_start: 1004
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha3_384Id
      pos:
        line_end: 1015
        line_start: 1013
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformRsaPssSha3_512Id
      pos:
        line_end: 1024
        line_start: 1022
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha1Id
      pos:
        line_end: 1043
        line_start: 1041
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha224Id
      pos:
        line_end: 1060
        line_start: 1058
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha256Id
      pos:
        line_end: 1077
        line_start: 1075
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha384Id
      pos:
        line_end: 1093
        line_start: 1091
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha512Id
      pos:
        line_end: 1109
        line_start: 1107
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha3_224Id
      pos:
        line_end: 1125
        line_start: 1123
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha3_224GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha3_256Id
      pos:
        line_end: 1134
        line_start: 1132
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha3_256GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha3_384Id
      pos:
        line_end: 1143
        line_start: 1141
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha3_384GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLTransformSha3_512Id
      pos:
        line_end: 1152
        line_start: 1150
        source_file: /src/xmlsec/include/xmlsec/openssl/crypto.h
      type_or_value: xmlSecOpenSSLTransformSha3_512GetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDhId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataDhId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataEcdsaId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataEcId
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataEcId
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes128GcmId
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes128GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes192GcmId
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes192GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes256GcmId
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformAes256GcmId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha256Id
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformDsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaRipemd160Id
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha1Id
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha224Id
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha224Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha256Id
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha384Id
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha512Id
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_224Id
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_224Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_256Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_384Id
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha3_512Id
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformEcdsaSha3_512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformHmacRipemd160Id
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha224Id
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacSha224Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacSha384Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformHmacSha512Id
    - item_type: preproc_def
      name: xmlSecTransformMd5Id
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformMd5Id
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformRsaMd5Id
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaMd5Id
    - item_type: preproc_def
      name: xmlSecTransformRsaRipemd160Id
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha224Id
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaSha224Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha1Id
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha224Id
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha224Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha256Id
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha384Id
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha512Id
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_224Id
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_224Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_256Id
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_384Id
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha3_512Id
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPssSha3_512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepEnc11Id
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformRsaOaepEnc11Id
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha224Id
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha224Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha512Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_224Id
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha3_224Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_256Id
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha3_256Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_384Id
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha3_384Id
    - item_type: preproc_def
      name: xmlSecTransformSha3_512Id
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformSha3_512Id
    - item_type: preproc_def
      name: xmlSecTransformGostR3411_94Id
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformGostR3411_94Id
    - item_type: preproc_def
      name: xmlSecTransformGost2001GostR3411_94Id
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLTransformGost2001GostR3411_94Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 159
        line_start: 158
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 168
        line_start: 167
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppGetDefaultPwdCallback
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrAddCertsPath
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/xmlsec/include/xmlsec/openssl/symbols.h
      type_or_value: xmlSecOpenSSLAppKeysMngrAddCertsPath
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/keysstore.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecOpenSSLKeysStoreId
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/openssl/keysstore.h
      type_or_value: xmlSecOpenSSLKeysStoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_STACK_OF_X509
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
      type_or_value: STACK_OF(X509)
    - item_type: preproc_def
      name: XMLSEC_STACK_OF_X509_CRL
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
      type_or_value: STACK_OF(X509_CRL)
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataX509Id
      pos:
        line_end: 45
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
      type_or_value: xmlSecOpenSSLKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLKeyDataRawX509CertId
      pos:
        line_end: 73
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
      type_or_value: xmlSecOpenSSLKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecOpenSSLX509StoreId
      pos:
        line_end: 82
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/openssl/x509.h
      type_or_value: xmlSecOpenSSLX509StoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/pkikeys.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: XMLSEC_NO_RSA_OAEP
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: XMLSEC_NO_MD5
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: '1'
    - item_type: preproc_def
      name: xmlSecNssKeyDataAesId
      pos:
        line_end: 75
        line_start: 73
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataAesGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes128CbcId
      pos:
        line_end: 86
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes128CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes192CbcId
      pos:
        line_end: 95
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes192CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes256CbcId
      pos:
        line_end: 104
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes256CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes128GcmId
      pos:
        line_end: 114
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes128GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes192GcmId
      pos:
        line_end: 123
        line_start: 121
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes192GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformAes256GcmId
      pos:
        line_end: 132
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformAes256GcmGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformKWAes128Id
      pos:
        line_end: 142
        line_start: 140
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformKWAes128GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformKWAes192Id
      pos:
        line_end: 151
        line_start: 149
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformKWAes192GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformKWAes256Id
      pos:
        line_end: 160
        line_start: 158
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformKWAes256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataDesId
      pos:
        line_end: 177
        line_start: 175
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataDesGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformDes3CbcId
      pos:
        line_end: 189
        line_start: 187
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformDes3CbcGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformKWDes3Id
      pos:
        line_end: 198
        line_start: 196
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformKWDes3GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataDsaId
      pos:
        line_end: 217
        line_start: 215
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataDsaGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformDsaSha1Id
      pos:
        line_end: 227
        line_start: 225
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformDsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformDsaSha256Id
      pos:
        line_end: 238
        line_start: 236
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformDsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataEcId
      pos:
        line_end: 257
        line_start: 256
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNsskeyDataEcGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformEcdsaSha1Id
      pos:
        line_end: 267
        line_start: 266
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformEcdsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformEcdsaSha224Id
      pos:
        line_end: 279
        line_start: 278
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformEcdsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformEcdsaSha256Id
      pos:
        line_end: 291
        line_start: 290
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformEcdsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformEcdsaSha384Id
      pos:
        line_end: 303
        line_start: 302
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformEcdsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformEcdsaSha512Id
      pos:
        line_end: 315
        line_start: 314
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformEcdsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataHmacId
      pos:
        line_end: 336
        line_start: 334
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataHmacGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacMd5Id
      pos:
        line_end: 348
        line_start: 346
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacRipemd160Id
      pos:
        line_end: 359
        line_start: 357
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacRipemd160GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacSha1Id
      pos:
        line_end: 370
        line_start: 368
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacSha224Id
      pos:
        line_end: 381
        line_start: 379
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacSha256Id
      pos:
        line_end: 392
        line_start: 390
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacSha384Id
      pos:
        line_end: 403
        line_start: 401
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformHmacSha512Id
      pos:
        line_end: 414
        line_start: 412
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformHmacSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataPbkdf2Id
      pos:
        line_end: 435
        line_start: 433
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformPbkdf2Id
      pos:
        line_end: 446
        line_start: 444
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformPbkdf2GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataRsaId
      pos:
        line_end: 465
        line_start: 463
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataRsaGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaMd5Id
      pos:
        line_end: 475
        line_start: 473
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaSha1Id
      pos:
        line_end: 486
        line_start: 484
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaSha224Id
      pos:
        line_end: 497
        line_start: 495
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaSha256Id
      pos:
        line_end: 508
        line_start: 506
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaSha384Id
      pos:
        line_end: 519
        line_start: 517
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaSha512Id
      pos:
        line_end: 530
        line_start: 528
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPssSha1Id
      pos:
        line_end: 542
        line_start: 540
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPssSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPssSha224Id
      pos:
        line_end: 553
        line_start: 551
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPssSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPssSha256Id
      pos:
        line_end: 564
        line_start: 562
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPssSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPssSha384Id
      pos:
        line_end: 575
        line_start: 573
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPssSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPssSha512Id
      pos:
        line_end: 586
        line_start: 584
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPssSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaPkcs1Id
      pos:
        line_end: 597
        line_start: 595
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaPkcs1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaOaepId
      pos:
        line_end: 608
        line_start: 606
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaOaepGetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformRsaOaepEnc11Id
      pos:
        line_end: 617
        line_start: 615
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformRsaOaepEnc11GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformSha1Id
      pos:
        line_end: 637
        line_start: 635
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformSha1GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformSha224Id
      pos:
        line_end: 653
        line_start: 651
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformSha224GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformSha256Id
      pos:
        line_end: 669
        line_start: 667
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformSha256GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformSha384Id
      pos:
        line_end: 685
        line_start: 683
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformSha384GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformSha512Id
      pos:
        line_end: 701
        line_start: 699
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformSha512GetKlass()
    - item_type: preproc_def
      name: xmlSecNssTransformMd5Id
      pos:
        line_end: 717
        line_start: 715
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssTransformMd5GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataDEREncodedKeyValueId
      pos:
        line_end: 733
        line_start: 732
        source_file: /src/xmlsec/include/xmlsec/nss/crypto.h
      type_or_value: xmlSecNssKeyDataDEREncodedKeyValueGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecCryptoInit
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssInit
    - item_type: preproc_def
      name: xmlSecCryptoShutdown
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssShutdown
    - item_type: preproc_def
      name: xmlSecCryptoKeysMngrInit
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeysMngrInit
    - item_type: preproc_def
      name: xmlSecKeyDataAesId
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataAesId
    - item_type: preproc_def
      name: xmlSecKeyDataDesId
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataDesId
    - item_type: preproc_def
      name: xmlSecKeyDataDsaId
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataDsaId
    - item_type: preproc_def
      name: xmlSecKeyDataHmacId
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataHmacId
    - item_type: preproc_def
      name: xmlSecKeyDataPbkdf2Id
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataPbkdf2Id
    - item_type: preproc_def
      name: xmlSecKeyDataRsaId
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataRsaId
    - item_type: preproc_def
      name: xmlSecKeyDataX509Id
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataX509Id
    - item_type: preproc_def
      name: xmlSecKeyDataRawX509CertId
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssKeyDataRawX509CertId
    - item_type: preproc_def
      name: xmlSecX509StoreId
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssX509StoreId
    - item_type: preproc_def
      name: xmlSecTransformAes128CbcId
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes128CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes192CbcId
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes192CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes256CbcId
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes256CbcId
    - item_type: preproc_def
      name: xmlSecTransformAes128GcmId
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes128GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes192GcmId
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes192GcmId
    - item_type: preproc_def
      name: xmlSecTransformAes256GcmId
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformAes256GcmId
    - item_type: preproc_def
      name: xmlSecTransformKWAes128Id
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformKWAes128Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes192Id
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformKWAes192Id
    - item_type: preproc_def
      name: xmlSecTransformKWAes256Id
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformKWAes256Id
    - item_type: preproc_def
      name: xmlSecTransformDes3CbcId
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformDes3CbcId
    - item_type: preproc_def
      name: xmlSecTransformKWDes3Id
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformKWDes3Id
    - item_type: preproc_def
      name: xmlSecTransformDsaSha1Id
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformDsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha1Id
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformEcdsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha256Id
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformEcdsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformEcdsaSha512Id
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformEcdsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformHmacMd5Id
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacMd5Id
    - item_type: preproc_def
      name: xmlSecTransformHmacRipemd160Id
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha1Id
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacSha1Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha224Id
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacSha224Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha256Id
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacSha256Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha384Id
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacSha384Id
    - item_type: preproc_def
      name: xmlSecTransformHmacSha512Id
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformHmacSha512Id
    - item_type: preproc_def
      name: xmlSecTransformPbkdf2Id
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformPbkdf2Id
    - item_type: preproc_def
      name: xmlSecTransformRipemd160Id
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRipemd160Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha1Id
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha224Id
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaSha224Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha256Id
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha384Id
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaSha512Id
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha1Id
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPssSha1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha224Id
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPssSha224Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha256Id
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPssSha256Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha384Id
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPssSha384Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPssSha512Id
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPssSha512Id
    - item_type: preproc_def
      name: xmlSecTransformRsaPkcs1Id
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaPkcs1Id
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepId
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaOaepId
    - item_type: preproc_def
      name: xmlSecTransformRsaOaepEnc11Id
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformRsaOaepEnc11Id
    - item_type: preproc_def
      name: xmlSecTransformSha1Id
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformSha1Id
    - item_type: preproc_def
      name: xmlSecTransformSha224Id
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformSha224Id
    - item_type: preproc_def
      name: xmlSecTransformSha256Id
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformSha256Id
    - item_type: preproc_def
      name: xmlSecTransformSha384Id
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformSha384Id
    - item_type: preproc_def
      name: xmlSecTransformSha512Id
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssTransformSha512Id
    - item_type: preproc_def
      name: xmlSecCryptoAppInit
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppInit
    - item_type: preproc_def
      name: xmlSecCryptoAppShutdown
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppShutdown
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrInit
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppDefaultKeysMngrInit
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrAdoptKey
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppDefaultKeysMngrAdoptKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrVerifyKey
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppDefaultKeysMngrVerifyKey
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrLoad
      pos:
        line_end: 128
        line_start: 127
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppDefaultKeysMngrLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppDefaultKeysMngrSave
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppDefaultKeysMngrSave
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoad
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeysMngrCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCertLoadMemory
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeysMngrCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoad
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeysMngrCrlLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeysMngrCrlLoadMemory
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeysMngrCrlLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadEx
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeyLoadEx
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12Load
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppPkcs12Load
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoad
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeyCertLoad
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyLoadMemory
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeyLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppPkcs12LoadMemory
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppPkcs12LoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppKeyCertLoadMemory
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppKeyCertLoadMemory
    - item_type: preproc_def
      name: xmlSecCryptoAppGetDefaultPwdCallback
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/xmlsec/include/xmlsec/nss/symbols.h
      type_or_value: xmlSecNssAppGetDefaultPwdCallback
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/keysstore.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKeysStoreId
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/xmlsec/include/xmlsec/nss/keysstore.h
      type_or_value: xmlSecNssKeysStoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/app.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/xmlsec/include/xmlsec/nss/x509.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: xmlSecNssKeyDataX509Id
      pos:
        line_end: 33
        line_start: 31
        source_file: /src/xmlsec/include/xmlsec/nss/x509.h
      type_or_value: xmlSecNssKeyDataX509GetKlass()
    - item_type: preproc_def
      name: xmlSecNssKeyDataRawX509CertId
      pos:
        line_end: 60
        line_start: 58
        source_file: /src/xmlsec/include/xmlsec/nss/x509.h
      type_or_value: xmlSecNssKeyDataRawX509CertGetKlass()
    - item_type: preproc_def
      name: xmlSecNssX509StoreId
      pos:
        line_end: 69
        line_start: 67
        source_file: /src/xmlsec/include/xmlsec/nss/x509.h
      type_or_value: xmlSecNssX509StoreGetKlass()
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - sign_file
  source_file: /src/xmlsec/examples/sign4.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - sign_file
  source_file: /src/xmlsec/examples/sign3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - decrypt_file
  - create_files_keys_mngr
  - files_keys_store_get_klass
  - files_keys_store_find_key
  source_file: /src/xmlsec/examples/decrypt3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_trusted_certs
  - verify_file
  - verify_signature_results
  source_file: /src/xmlsec/examples/verify3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - encrypt_file
  source_file: /src/xmlsec/examples/encrypt1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - encrypt_file
  source_file: /src/xmlsec/examples/encrypt2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - sign_file
  source_file: /src/xmlsec/examples/sign1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_des_keys
  - decrypt_file
  source_file: /src/xmlsec/examples/decrypt2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_trusted_certs
  - verify_file
  - verify_signature_results
  source_file: /src/xmlsec/examples/verify4.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - sign_file
  source_file: /src/xmlsec/examples/sign2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - decrypt_file
  source_file: /src/xmlsec/examples/decrypt1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_keys
  - verify_file
  - verify_signature_results
  source_file: /src/xmlsec/examples/verify2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_trusted_certs
  - verify_file
  - verify_signature_results
  source_file: /src/xmlsec/examples/verify-saml.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - load_rsa_keys
  - encrypt_file
  source_file: /src/xmlsec/examples/encrypt3.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  - verify_file
  - verify_signature_results
  source_file: /src/xmlsec/examples/verify1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
